Machine-Independent MDL for TOPS-20 and VAX.
[pdp10-muddle.git] / mim / development / mim / mimc / cargen.mima
diff --git a/mim/development/mim/mimc/cargen.mima b/mim/development/mim/mimc/cargen.mima
new file mode 100644 (file)
index 0000000..7725d9f
--- /dev/null
@@ -0,0 +1,4548 @@
+
+<PACKAGE "CARGEN">
+
+<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>
+
+<USE "COMPDEC" "CODGEN" "CHKDCL" "STRGEN" "MIMGEN" "ADVMESS">
+
+"      This file contains analyzers and code generators for arithmetic
+ SUBRs and predicates.  For convenience many of the SUBRs that are
+similar are combined into one analyzer/generator.  For more info
+on analyzers see SYMANA and on generators see CODGEN.
+"
+
+"A type TRANS specifies to an inferior node what arithmetic transforms are
+prohibited, permitted or desired.  A transform consists of 3 main elements:
+a NODE, an input, an output.  The input and output are UVECTORS of 7 fixes:
+
+1)     negative ok     0-no, 1-ok, 2-pref
+2)     + or - const ok 0-no, 1-ok, 2-pref
+3)     const for + or -
+4)     * or / const ok 0-no, 1-* ok, 2-* pref, 3-/ ok, 4-/ pref
+5)     hw ok           0-no, 1-ok, 2-pref
+6)     hw swapped also 0-no, 1-ok, 2-pref
+"
+
+<SETG SNODES <UVECTOR ,QUOTE-CODE ,LVAL-CODE ,GVAL-CODE>>
+
+<SETG SNODES1 <REST ,SNODES>>
+
+<GDECL (SNODES SNODES1) <UVECTOR [REST FIX]>>
+
+#WORD *6072042554*
+                   <GFCN \1aCOMMUTE ("VALUE" LIST <LIST [REST NODE]> ANY LIST) K4 OP5 L6>
+                   <TEMP REDO17 KK9:LIST FK8:LIST TEMP24:NODE TYP10 CD114:FIX CD13:FIX N12:NODE TEMP36>
+                   <INTGO>
+                   <SET REDO17 %<> (TYPE FALSE)>
+                   <LOOP>
+AGAIN18
+                   <INTGO>
+                   <EMPL? K4 + PHRASE65 (TYPE LIST)>
+                   <SET FK8 K4>
+                   <RESTL FK8 1 = KK9 (TYPE LIST)>
+                   <EMPL? KK9 + PHRASE65 (TYPE LIST)>
+                   <FRAME '\1aISTYPE?>
+                   <NTHL KK9 1 = TEMP24 (TYPE NODE)>
+                   <NTHUV TEMP24 3 = STACK>
+                   <DEAD TEMP24>
+                   <CALL '\1aISTYPE? 1>
+                   <LOOP>
+AGAIN26
+                   <INTGO>
+                   <EMPL? KK9 + EXIT25 (TYPE LIST)>
+                   <FRAME '\1aISTYPE?>
+                   <NTHL KK9 1 = TEMP24 (TYPE NODE)>
+                   <NTHUV TEMP24 3 = STACK>
+                   <CALL '\1aISTYPE? 1 = TYP10>
+                   <VEQUAL? TYP10 TYP10 - PHRASE38>
+                   <DEAD TYP10>
+                   <NTHUV TEMP24 1 = CD114 (TYPE FIX)>
+                   <NTHL FK8 1 = N12 (TYPE NODE)>
+                   <NTHUV N12 1 = CD13 (TYPE FIX)>
+                   <VEQUAL? CD13 2 - PHRASE32 (TYPE FIX)>
+                   <VEQUAL? CD114 2 - PHRASE32 (TYPE FIX)>
+                   <FRAME>
+                   <GVAL OP5 = TYP10>
+                   <NTHUV N12 4 = STACK>
+                   <NTHUV TEMP24 4 = STACK>
+                   <DEAD TEMP24>
+                   <ACALL TYP10 2 = TEMP36>
+                   <DEAD TYP10>
+                   <PUTUV N12 4 TEMP36>
+                   <DEAD N12 TEMP36>
+                   <RESTL KK9 1 = KK9 (TYPE LIST)>
+                   <PUTREST FK8 KK9>
+                   <SET REDO17 'T (TYPE ATOM)>
+                   <JUMP + AGAIN26>
+PHRASE32
+                   <VEQUAL? CD13 2 - PHRASE37 (TYPE FIX)>
+                   <PUTL KK9 1 N12>
+                   <DEAD N12>
+                   <PUTL FK8 1 TEMP24>
+                   <DEAD FK8 TEMP24>
+                   <SET REDO17 'T (TYPE ATOM)>
+                   <JUMP + PHRASE38>
+PHRASE37
+                   <GVAL 'SNODES = TEMP36>
+                   <EMPUU? TEMP36 + TAG40>
+                   <LOOP (CD114 VALUE) (TEMP36 LENGTH VALUE)>
+TAG41
+                   <NTHUU TEMP36 1 = TYP10>
+                   <VEQUAL? TYP10 CD114 + PHRASE38>
+                   <DEAD TYP10>
+                   <RESTUU TEMP36 1 = TEMP36 (TYPE UVECTOR)>
+                   <EMPUU? TEMP36 - TAG41>
+TAG40
+                   <GVAL 'SNODES = TEMP36>
+                   <EMPUU? TEMP36 + PHRASE38>
+                   <LOOP (CD13 VALUE) (TEMP36 LENGTH VALUE)>
+TAG44
+                   <NTHUU TEMP36 1 = TYP10>
+                   <VEQUAL? TYP10 CD13 + TAG43>
+                   <DEAD TYP10>
+                   <RESTUU TEMP36 1 = TEMP36 (TYPE UVECTOR)>
+                   <EMPUU? TEMP36 - TAG44>
+                   <JUMP + PHRASE38>
+TAG43
+                   <VEQUAL? CD114 68 + PHRASE38 (TYPE FIX)>
+                   <DEAD CD114>
+                   <NTHUV TEMP24 8 = TEMP36>
+                   <TYPE? TEMP36 <TYPE-CODE FALSE> - PHRASE38>
+                   <DEAD TEMP36>
+                   <VEQUAL? CD13 10 - PHRASE47 (TYPE FIX)>
+                   <DEAD CD13>
+                   <NTHUV N12 7 = REDO17 (TYPE LIST)>
+                   <EMPL? REDO17 + PHRASE50>
+                   <RESTL REDO17 1 = TEMP36 (TYPE LIST)>
+                   <EMPL? TEMP36 + PHRASE50>
+                   <RESTL TEMP36 1 = TEMP36 (TYPE LIST)>
+                   <EMPL? TEMP36 - PHRASE50>
+                   <DEAD TEMP36>
+                   <RESTL REDO17 1 = TEMP36 (TYPE LIST)>
+                   <DEAD REDO17>
+                   <NTHL TEMP36 1 = TEMP36>
+                   <TYPE? TEMP36 <TYPE-CODE FALSE> + PHRASE47>
+                   <DEAD TEMP36>
+PHRASE50
+                   <NTHUV N12 4 = REDO17>
+                   <TYPE? REDO17 <TYPE-CODE FALSE> + PHRASE47>
+                   <SET TEMP36 L6 (TYPE LIST)>
+                   <LOOP>
+MAP53
+                   <INTGO>
+                   <EMPL? TEMP36 + MAPAP56>
+                   <NTHL TEMP36 1 = TYP10>
+                   <NTH1 TYP10 = TYP10>
+                   <EQUAL? TYP10 REDO17 + PHRASE47>
+                   <DEAD TYP10>
+                   <RESTL TEMP36 1 = TEMP36 (TYPE LIST)>
+                   <JUMP + MAP53>
+MAPAP56
+                   <CONS %<> () = REDO17>
+                   <NTHUV N12 4 = TEMP36>
+                   <CONS TEMP36 REDO17 = REDO17>
+                   <DEAD TEMP36>
+                   <CONS REDO17 L6 = L6>
+                   <DEAD REDO17>
+PHRASE47
+                   <PUTL KK9 1 N12>
+                   <DEAD N12>
+                   <PUTL FK8 1 TEMP24>
+                   <DEAD FK8 TEMP24>
+                   <SET REDO17 'T (TYPE ATOM)>
+PHRASE38
+                   <SET FK8 KK9>
+                   <DEAD KK9>
+                   <RESTL FK8 1 = KK9 (TYPE LIST)>
+                   <JUMP + AGAIN26>
+EXIT25
+                   <VEQUAL? REDO17 0 + PHRASE65>
+                   <DEAD REDO17>
+                   <SET REDO17 %<> (TYPE FALSE)>
+                   <JUMP + AGAIN18>
+PHRASE65
+                   <RETURN L6>
+                   <DEAD L6>
+                   <END \1aCOMMUTE>
+
+" Generate code for +,-,* and /."
+
+#WORD *22450367276*
+                   <GFCN \1aARITH-GEN ("VALUE" ANY NODE ANY) NOD4 WHERE5>
+                   <TEMP K7 TEMP29 TEMP30 TEMP31 ATYP10:FIX (MODE12:FIX 1) (DONE19 %<>) (NEGF20 %<>) ONO21 TEMP3:LBIND TEMP58 TEMP71 REG6 NXT167>
+                   <INTGO>
+                   <NTHUV NOD4 5 = K7 (TYPE LIST)>
+                   <NTHUV NOD4 4 = TEMP29>
+                   <SET TEMP30 [/ * - +] (TYPE VECTOR)>
+                   <TYPE? TEMP29 <TYPE-CODE ATOM> - TAG25>
+                   <LOOP (TEMP29 VALUE) (TEMP30 LENGTH VALUE)>
+TAG27
+                   <NTHUV TEMP30 1 = TEMP31>
+                   <VEQUAL? TEMP31 TEMP29 + TAG26>
+                   <DEAD TEMP31>
+                   <RESTUV TEMP30 1 = TEMP30 (TYPE VECTOR)>
+                   <EMPUV? TEMP30 - TAG27>
+TAG25
+                   <SET TEMP30 %<> (TYPE FALSE)>
+TAG26
+                   <LENUV TEMP30 = ATYP10 (TYPE FIX)>
+                   <DEAD TEMP30>
+                   <GEN-LVAL 'NO-KILL = ONO21>
+                   <GETS 'BIND = TEMP3 (TYPE LBIND)>
+                   <GEN-LVAL 'NO-KILL = TEMP29>
+                   <BBIND 'NO-KILL 'LIST 'FIX TEMP29>
+                   <DEAD TEMP29>
+                   <FRAME '\1aCOMMUTE>
+                   <NTHUU ![0 1 0 1!] ATYP10 = TEMP29 (TYPE FIX)>
+                   <SET TEMP31 K7>
+                   <GRTR? TEMP29 0 - RESTL44 (TYPE FIX)>
+                   <LOOP (TEMP31 VALUE) (TEMP29 VALUE)>
+RESTL43
+                   <INTGO>
+                   <RESTL TEMP31 1 = TEMP31 (TYPE LIST)>
+                   <SUB TEMP29 1 = TEMP29 (TYPE FIX)>
+                   <GRTR? TEMP29 0 + RESTL43 (TYPE FIX)>
+RESTL44
+                   <PUSH TEMP31>
+                   <DEAD TEMP31>
+                   <NTHUV [+ + * *] ATYP10 = STACK (TYPE ATOM)>
+                   <NTHR 'NO-KILL 2 = TEMP31 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <NTHR TEMP31 1 = STACK (RECORD-TYPE LBIND)>
+                   <DEAD TEMP31>
+                   <CALL '\1aCOMMUTE 3 = TEMP31>
+                   <NTHR 'NO-KILL 2 = TEMP29 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <PUTR TEMP29 1 TEMP31 (RECORD-TYPE LBIND)>
+                   <DEAD TEMP29 TEMP31>
+                   <NTHUV NOD4 3 = TEMP31>
+                   <EQUAL? TEMP31 'FIX - PHRASE85>
+                   <DEAD TEMP31>
+                   <EMPL? K7 + PHRASE85>
+                   <RESTL K7 1 = TEMP31 (TYPE LIST)>
+                   <EMPL? TEMP31 + PHRASE85>
+                   <RESTL TEMP31 1 = TEMP31 (TYPE LIST)>
+                   <EMPL? TEMP31 - PHRASE85>
+                   <DEAD TEMP31>
+                   <RESTL K7 1 = TEMP31 (TYPE LIST)>
+                   <NTHL TEMP31 1 = TEMP31 (TYPE NODE)>
+                   <NTHUV TEMP31 1 = TEMP31 (TYPE FIX)>
+                   <VEQUAL? TEMP31 2 - PHRASE85 (TYPE FIX)>
+                   <DEAD TEMP31>
+                   <GEN-ASSIGNED? 'TRANSFORM - PHRASE53>
+                   <NTHUV NOD4 2 = TEMP29>
+                   <GEN-LVAL 'TRANSFORM = TEMP31>
+                   <NTHUV TEMP31 1 = TEMP58 (TYPE NODE)>
+                   <EQUAL? TEMP29 TEMP58 - PHRASE53>
+                   <DEAD TEMP29 TEMP58>
+                   <NTHUV TEMP31 2 = TEMP30 (TYPE UVECTOR)>
+                   <GRTR? ATYP10 2 + PHRASE60 (TYPE FIX)>
+                   <NTHUU TEMP30 2 = TEMP58 (TYPE FIX)>
+                   <VEQUAL? TEMP58 1 + BOOL62 (TYPE FIX)>
+                   <DEAD TEMP58>
+                   <NTHUU TEMP30 2 = TEMP58 (TYPE FIX)>
+                   <VEQUAL? TEMP58 2 - PHRASE60 (TYPE FIX)>
+                   <DEAD TEMP58>
+                   <NTHUU TEMP30 3 = TEMP58 (TYPE FIX)>
+                   <VEQUAL? ATYP10 1 - PHRASE67 (TYPE FIX)>
+                   <RESTL K7 1 = TEMP29 (TYPE LIST)>
+                   <NTHL TEMP29 1 = TEMP29 (TYPE NODE)>
+                   <NTHUV TEMP29 4 = TEMP29>
+                   <CHTYPE TEMP29 <TYPE-CODE FIX> = TEMP29>
+                   <SUB 0 TEMP29 = TEMP29 (TYPE FIX)>
+                   <JUMP + PHRASE70>
+PHRASE67
+                   <RESTL K7 1 = TEMP71 (TYPE LIST)>
+                   <NTHL TEMP71 1 = TEMP71 (TYPE NODE)>
+                   <NTHUV TEMP71 4 = TEMP29>
+                   <DEAD TEMP71>
+PHRASE70
+                   <EQUAL? TEMP58 TEMP29 - PHRASE60>
+                   <DEAD TEMP58 TEMP29>
+BOOL62
+                   <NTHUV TEMP31 3 = TEMP29 (TYPE UVECTOR)>
+                   <DEAD TEMP31>
+                   <PUTUU TEMP29 2 1>
+                   <VEQUAL? ATYP10 1 - PHRASE73 (TYPE FIX)>
+                   <DEAD ATYP10>
+                   <RESTL K7 1 = TEMP58 (TYPE LIST)>
+                   <NTHL TEMP58 1 = TEMP58 (TYPE NODE)>
+                   <NTHUV TEMP58 4 = TEMP58>
+                   <CHTYPE TEMP58 <TYPE-CODE FIX> = TEMP58>
+                   <SUB 0 TEMP58 = TEMP58 (TYPE FIX)>
+                   <JUMP + PHRASE76>
+PHRASE73
+                   <RESTL K7 1 = TEMP71 (TYPE LIST)>
+                   <NTHL TEMP71 1 = TEMP71 (TYPE NODE)>
+                   <NTHUV TEMP71 4 = TEMP58>
+                   <DEAD TEMP71>
+PHRASE76
+                   <PUTUU TEMP29 3 TEMP58>
+                   <DEAD TEMP29 TEMP58>
+                   <JUMP + PHRASE83>
+PHRASE60
+                   <VEQUAL? ATYP10 3 - PHRASE53 (TYPE FIX)>
+                   <NTHUU TEMP30 4 = TEMP29 (TYPE FIX)>
+                   <VEQUAL? TEMP29 1 + BOOL79 (TYPE FIX)>
+                   <DEAD TEMP29>
+                   <NTHUU TEMP30 4 = TEMP29 (TYPE FIX)>
+                   <VEQUAL? TEMP29 4 - PHRASE53 (TYPE FIX)>
+                   <DEAD TEMP29>
+                   <NTHUU TEMP30 5 = TEMP29 (TYPE FIX)>
+                   <DEAD TEMP30>
+                   <RESTL K7 1 = TEMP58 (TYPE LIST)>
+                   <NTHL TEMP58 1 = TEMP58 (TYPE NODE)>
+                   <NTHUV TEMP58 4 = TEMP58>
+                   <EQUAL? TEMP29 TEMP58 - PHRASE53>
+                   <DEAD TEMP29 TEMP58>
+BOOL79
+                   <NTHUV TEMP31 3 = TEMP58 (TYPE UVECTOR)>
+                   <DEAD TEMP31>
+                   <PUTUU TEMP58 4 4>
+                   <RESTL K7 1 = TEMP29 (TYPE LIST)>
+                   <NTHL TEMP29 1 = TEMP29 (TYPE NODE)>
+                   <NTHUV TEMP29 4 = TEMP29>
+                   <PUTUU TEMP58 5 TEMP29>
+                   <DEAD TEMP58 TEMP29>
+PHRASE83
+                   <FRAME '\1aGEN>
+                   <NTHL K7 1 = STACK (TYPE NODE)>
+                   <DEAD K7>
+                   <PUSH WHERE5>
+                   <DEAD WHERE5>
+                   <CALL '\1aGEN 2 = TEMP58>
+                   <JUMP + RETURN2>
+PHRASE53
+                   <NTHL K7 1 = TEMP30 (TYPE NODE)>
+                   <NTHUV TEMP30 1 = TEMP29 (TYPE FIX)>
+                   <VEQUAL? TEMP29 68 + PHRASE85 (TYPE FIX)>
+                   <DEAD TEMP29>
+                   <GETS 'BIND = TEMP29 (TYPE LBIND)>
+                   <FRAME '\1aMAKE-TRANS>
+                   <PUSH NOD4>
+                   <PUSH 0>
+                   <LESS? ATYP10 3 - PHRASE90 (TYPE FIX)>
+                   <SET TEMP71 2 (TYPE FIX)>
+                   <JUMP + PHRASE91>
+PHRASE90
+                   <SET TEMP71 0 (TYPE FIX)>
+PHRASE91
+                   <PUSH TEMP71>
+                   <DEAD TEMP71>
+                   <VEQUAL? ATYP10 1 - PHRASE93 (TYPE FIX)>
+                   <RESTL K7 1 = TEMP71 (TYPE LIST)>
+                   <NTHL TEMP71 1 = TEMP71 (TYPE NODE)>
+                   <NTHUV TEMP71 4 = TEMP71 (TYPE FIX)>
+                   <JUMP + PHRASE98>
+PHRASE93
+                   <VEQUAL? ATYP10 2 - PHRASE96 (TYPE FIX)>
+                   <RESTL K7 1 = TEMP31 (TYPE LIST)>
+                   <NTHL TEMP31 1 = TEMP31 (TYPE NODE)>
+                   <NTHUV TEMP31 4 = TEMP31>
+                   <CHTYPE TEMP31 <TYPE-CODE FIX> = TEMP71>
+                   <DEAD TEMP31>
+                   <SUB 0 TEMP71 = TEMP71 (TYPE FIX)>
+                   <JUMP + PHRASE98>
+PHRASE96
+                   <SET TEMP71 0 (TYPE FIX)>
+PHRASE98
+                   <PUSH TEMP71>
+                   <DEAD TEMP71>
+                   <GRTR? ATYP10 2 - PHRASE100 (TYPE FIX)>
+                   <VEQUAL? ATYP10 3 - PHRASE102 (TYPE FIX)>
+                   <SET TEMP71 2 (TYPE FIX)>
+                   <JUMP + PHRASE104>
+PHRASE102
+                   <SET TEMP71 4 (TYPE FIX)>
+                   <JUMP + PHRASE104>
+PHRASE100
+                   <SET TEMP71 0 (TYPE FIX)>
+PHRASE104
+                   <PUSH TEMP71>
+                   <DEAD TEMP71>
+                   <GRTR? ATYP10 2 - PHRASE106 (TYPE FIX)>
+                   <RESTL K7 1 = TEMP71 (TYPE LIST)>
+                   <NTHL TEMP71 1 = TEMP71 (TYPE NODE)>
+                   <NTHUV TEMP71 4 = TEMP71 (TYPE FIX)>
+                   <JUMP + PHRASE107>
+PHRASE106
+                   <SET TEMP71 1 (TYPE FIX)>
+PHRASE107
+                   <PUSH TEMP71>
+                   <DEAD TEMP71>
+                   <PUSH 0>
+                   <PUSH 0>
+                   <CALL '\1aMAKE-TRANS 8 = TEMP71>
+                   <BBIND 'TRANSFORM 'TRANS 'FIX TEMP71>
+                   <DEAD TEMP71>
+                   <FRAME '\1aGEN>
+                   <PUSH TEMP30>
+                   <DEAD TEMP30>
+                   <PUSH 'DONT-CARE>
+                   <CALL '\1aGEN 2 = REG6>
+                   <SET DONE19 'T (TYPE ATOM)>
+                   <NTHR 'TRANSFORM 2 = TEMP71 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <NTHR TEMP71 1 = TEMP31 (RECORD-TYPE LBIND)>
+                   <DEAD TEMP71>
+                   <NTHUV TEMP31 3 = TEMP31 (TYPE UVECTOR)>
+                   <LOOP>
+MAP111
+                   <INTGO>
+                   <EMPUU? TEMP31 + MAPAP114>
+                   <NTHUU TEMP31 1 = TEMP30>
+                   <VEQUAL? TEMP30 0 + PHRASE125 (TYPE FIX)>
+                   <DEAD TEMP30>
+                   <FRAME '\1aMOVE-ARG>
+                   <PUSH REG6>
+                   <DEAD REG6>
+                   <PUSH WHERE5>
+                   <DEAD WHERE5>
+                   <CALL '\1aMOVE-ARG 2 = TEMP58>
+                   <JUMP + RETURN2>
+PHRASE125
+                   <RESTUU TEMP31 1 = TEMP31 (TYPE UVECTOR)>
+                   <JUMP + MAP111>
+MAPAP114
+                   <UNBIND TEMP29>
+                   <DEAD TEMP29>
+                   <ADJ -9>
+PHRASE85
+                   <VEQUAL? DONE19 0 - PHRASE156>
+                   <DEAD DONE19>
+                   <NTHL K7 1 = TEMP30 (TYPE NODE)>
+                   <NTHUV TEMP30 1 = TEMP29 (TYPE FIX)>
+                   <VEQUAL? TEMP29 68 - PHRASE130 (TYPE FIX)>
+                   <DEAD TEMP29>
+                   <FRAME '\1aGEN>
+                   <NTHUV TEMP30 5 = TEMP29 (TYPE LIST)>
+                   <DEAD TEMP30>
+                   <NTHL TEMP29 1 = TEMP30 (TYPE NODE)>
+                   <DEAD TEMP29>
+                   <PUSH TEMP30>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TEMP 1 = STACK>
+                   <CALL '\1aGEN 2 = TEMP31>
+                   <FRAME '\1aSEGINS>
+                   <PUSH ATYP10>
+                   <PUSH 'T>
+                   <PUSH TEMP30>
+                   <DEAD TEMP30>
+                   <EQUAL? WHERE5 'DONT-CARE - PHRASE135>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TEMP 1 = WHERE5>
+                   <SET REG6 WHERE5>
+                   <JUMP + PHRASE142>
+PHRASE135
+                   <TYPE? WHERE5 <TYPE-CODE TEMP> - BOOL138>
+                   <NTHUV WHERE5 2 = TEMP29 (TYPE FIX)>
+                   <GRTR? TEMP29 0 - PHRASE137 (TYPE FIX)>
+                   <DEAD TEMP29>
+BOOL138
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TEMP 1 = REG6>
+                   <JUMP + PHRASE142>
+PHRASE137
+                   <SET REG6 WHERE5>
+PHRASE142
+                   <PUSH REG6>
+                   <PUSH TEMP31>
+                   <DEAD TEMP31>
+                   <PUSH 1>
+                   <FRAME '\1aGET-DF>
+                   <NTHUV NOD4 4 = STACK (TYPE ATOM)>
+                   <CALL '\1aGET-DF 1 = STACK>
+                   <CALL '\1aSEGINS 7 = MODE12>
+                   <JUMP + PHRASE156>
+PHRASE130
+                   <FRAME '\1aGEN>
+                   <PUSH TEMP30>
+                   <CALL '\1aGEN 1 = REG6>
+                   <EQUAL? WHERE5 'DONT-CARE - PHRASE147>
+                   <TYPE? REG6 <TYPE-CODE TEMP> - PHRASE147>
+                   <NTHUV REG6 2 = TEMP29 (TYPE FIX)>
+                   <LESS? TEMP29 2 - PHRASE147 (TYPE FIX)>
+                   <DEAD TEMP29>
+                   <SET WHERE5 REG6>
+                   <JUMP + PHRASE149>
+PHRASE147
+                   <EQUAL? WHERE5 'DONT-CARE - PHRASE149>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TEMP 1 = WHERE5>
+PHRASE149
+                   <TYPE? REG6 <TYPE-CODE TEMP> - PHRASE152>
+                   <RESTL K7 1 = TEMP29 (TYPE LIST)>
+                   <EMPL? TEMP29 + PHRASE152 (TYPE LIST)>
+                   <DEAD TEMP29>
+                   <FRAME '\1aINTERF-CHANGE>
+                   <PUSH REG6>
+                   <DEAD REG6>
+                   <RESTL K7 1 = TEMP29 (TYPE LIST)>
+                   <NTHL TEMP29 1 = STACK (TYPE NODE)>
+                   <DEAD TEMP29>
+                   <CALL '\1aINTERF-CHANGE 2 = REG6>
+PHRASE152
+                   <NTHUV TEMP30 3 = TEMP29>
+                   <DEAD TEMP30>
+                   <EQUAL? TEMP29 'FLOAT - PHRASE156>
+                   <DEAD TEMP29>
+                   <SET MODE12 2 (TYPE FIX)>
+PHRASE156
+                   <RESTL K7 1 = TEMP71 (TYPE LIST)>
+                   <DEAD K7>
+                   <LOOP>
+MAP158
+                   <INTGO>
+                   <EMPL? TEMP71 + MAPAP161>
+                   <SET K7 TEMP71>
+                   <GETS 'BIND = TEMP31 (TYPE LBIND)>
+                   <BBIND 'TRANSFORM 'TRANS 'FIX>
+                   <NTHL K7 1 = TEMP30 (TYPE NODE)>
+                   <NTHUV TEMP30 1 = TEMP29 (TYPE FIX)>
+                   <VEQUAL? TEMP29 68 - PHRASE169 (TYPE FIX)>
+                   <DEAD TEMP29>
+                   <SET DONE19 'T (TYPE ATOM)>
+                   <FRAME '\1aGEN>
+                   <NTHUV TEMP30 5 = TEMP29 (TYPE LIST)>
+                   <DEAD TEMP30>
+                   <NTHL TEMP29 1 = TEMP30 (TYPE NODE)>
+                   <DEAD TEMP29>
+                   <PUSH TEMP30>
+                   <CALL '\1aGEN 1 = NXT167>
+                   <JUMP + PHRASE172>
+PHRASE169
+                   <SET DONE19 %<> (TYPE FALSE)>
+                   <FRAME '\1aMAKE-TRANS>
+                   <PUSH NOD4>
+                   <VEQUAL? NEGF20 0 + PHRASE175>
+                   <GRTR? ATYP10 2 - PHRASE175 (TYPE FIX)>
+                   <SET TEMP29 2 (TYPE FIX)>
+                   <JUMP + PHRASE177>
+PHRASE175
+                   <SET TEMP29 1 (TYPE FIX)>
+PHRASE177
+                   <PUSH TEMP29>
+                   <DEAD TEMP29>
+                   <PUSH 0>
+                   <PUSH 0>
+                   <PUSH 0>
+                   <PUSH 0>
+                   <PUSH 0>
+                   <PUSH 0>
+                   <CALL '\1aMAKE-TRANS 8 = TEMP29>
+                   <NTHR 'TRANSFORM 2 = TEMP58 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <PUTR TEMP58 1 TEMP29 (RECORD-TYPE LBIND)>
+                   <DEAD TEMP58 TEMP29>
+                   <FRAME '\1aGEN>
+                   <PUSH TEMP30>
+                   <PUSH 'DONT-CARE>
+                   <CALL '\1aGEN 2 = NXT167>
+PHRASE172
+                   <RESTL K7 1 = TEMP29 (TYPE LIST)>
+                   <DEAD K7>
+                   <EMPL? TEMP29 - TAG184 (TYPE LIST)>
+                   <DEAD TEMP29>
+                   <SET K7 'T (TYPE ATOM)>
+                   <JUMP + TAG185>
+TAG184
+                   <SET K7 %<> (TYPE FALSE)>
+TAG185
+                   <VEQUAL? DONE19 0 + PHRASE187>
+                   <DEAD DONE19>
+                   <TYPE? NXT167 <TYPE-CODE TEMP> - BOOL190>
+                   <NTHUV NXT167 2 = TEMP29 (TYPE FIX)>
+                   <GRTR? TEMP29 1 - PHRASE189 (TYPE FIX)>
+                   <DEAD TEMP29>
+BOOL190
+                   <FRAME '\1aMOVE-ARG>
+                   <PUSH NXT167>
+                   <DEAD NXT167>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TEMP 1 = STACK>
+                   <CALL '\1aMOVE-ARG 2 = NXT167>
+PHRASE189
+                   <FRAME '\1aSEGINS>
+                   <PUSH ATYP10>
+                   <PUSH %<>>
+                   <PUSH TEMP30>
+                   <DEAD TEMP30>
+                   <PUSH REG6>
+                   <PUSH NXT167>
+                   <PUSH MODE12>
+                   <DEAD MODE12>
+                   <PUSH 0>
+                   <CALL '\1aSEGINS 7 = MODE12>
+                   <FRAME '\1aFREE-TEMP>
+                   <PUSH NXT167>
+                   <DEAD NXT167>
+                   <CALL '\1aFREE-TEMP 1>
+                   <JUMP + PHRASE197>
+PHRASE187
+                   <NTHR 'TRANSFORM 2 = TEMP29 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <NTHR TEMP29 1 = TEMP29 (RECORD-TYPE LBIND)>
+                   <TYPE? TEMP29 <TYPE-CODE UNBOUND> + TAG208>
+                   <DEAD TEMP29>
+                   <NTHR 'TRANSFORM 2 = TEMP29 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <NTHR TEMP29 1 = TEMP29 (RECORD-TYPE LBIND)>
+                   <NTHUV TEMP29 3 = TEMP29 (TYPE UVECTOR)>
+                   <NTHUU TEMP29 1 = TEMP29 (TYPE FIX)>
+                   <VEQUAL? TEMP29 0 + TAG208 (TYPE FIX)>
+                   <DEAD TEMP29>
+                   <VEQUAL? NEGF20 0 - TAG207>
+                   <DEAD NEGF20>
+                   <SET NEGF20 'T (TYPE ATOM)>
+                   <JUMP + TAG208>
+TAG207
+                   <SET NEGF20 %<> (TYPE FALSE)>
+TAG208
+                   <VEQUAL? MODE12 2 - PHRASE210 (TYPE FIX)>
+                   <FRAME '\1aISTYPE?>
+                   <NTHUV TEMP30 3 = STACK>
+                   <CALL '\1aISTYPE? 1 = TEMP58>
+                   <VEQUAL? TEMP58 'FIX - PHRASE216>
+                   <DEAD TEMP58>
+                   <FRAME '\1aGEN-FLOAT>
+                   <PUSH NXT167>
+                   <FRAME '\1aPROT>
+                   <PUSH NXT167>
+                   <DEAD NXT167>
+                   <PUSH 'FLOAT>
+                   <CALL '\1aPROT 2 = STACK>
+                   <CALL '\1aGEN-FLOAT 2 = NXT167>
+                   <JUMP + PHRASE216>
+PHRASE210
+                   <FRAME '\1aISTYPE?>
+                   <NTHUV TEMP30 3 = STACK>
+                   <CALL '\1aISTYPE? 1 = TEMP58>
+                   <VEQUAL? TEMP58 'FLOAT - PHRASE216>
+                   <DEAD TEMP58>
+                   <FRAME '\1aGEN-FLOAT>
+                   <PUSH REG6>
+                   <FRAME '\1aPROT>
+                   <PUSH REG6>
+                   <DEAD REG6>
+                   <PUSH 'FLOAT>
+                   <CALL '\1aPROT 2 = STACK>
+                   <CALL '\1aGEN-FLOAT 2 = REG6>
+                   <SET MODE12 2 (TYPE FIX)>
+PHRASE216
+                   <VEQUAL? ATYP10 3 - PHRASE221 (TYPE FIX)>
+                   <VEQUAL? MODE12 1 - PHRASE221 (TYPE FIX)>
+                   <NTHUV TEMP30 1 = TEMP58 (TYPE FIX)>
+                   <VEQUAL? TEMP58 2 - PHRASE221 (TYPE FIX)>
+                   <DEAD TEMP58>
+                   <FRAME '\1aPOPWR2>
+                   <NTHUV TEMP30 4 = STACK (TYPE FIX)>
+                   <DEAD TEMP30>
+                   <CALL '\1aPOPWR2 1 = TEMP29>
+                   <TYPE? TEMP29 <TYPE-CODE FALSE> + PHRASE221>
+                   <FRAME '\1aSHIFT-INS>
+                   <PUSH REG6>
+                   <DEAD REG6>
+                   <PUSH TEMP29>
+                   <DEAD TEMP29>
+                   <PUSH ATYP10>
+                   <PUSH K7>
+                   <DEAD K7>
+                   <PUSH WHERE5>
+                   <CALL '\1aSHIFT-INS 5 = REG6>
+                   <JUMP + PHRASE227>
+PHRASE221
+                   <FRAME '\1aARITH-INS>
+                   <VEQUAL? NEGF20 0 + PHRASE230>
+                   <LESS? ATYP10 3 - PHRASE230 (TYPE FIX)>
+                   <SET NEGF20 %<> (TYPE FALSE)>
+                   <SUB 3 ATYP10 = TEMP58 (TYPE FIX)>
+                   <JUMP + PHRASE232>
+PHRASE230
+                   <SET TEMP58 ATYP10>
+PHRASE232
+                   <PUSH TEMP58>
+                   <DEAD TEMP58>
+                   <PUSH REG6>
+                   <DEAD REG6>
+                   <PUSH NXT167>
+                   <PUSH MODE12>
+                   <PUSH K7>
+                   <DEAD K7>
+                   <PUSH WHERE5>
+                   <CALL '\1aARITH-INS 6 = REG6>
+PHRASE227
+                   <FRAME '\1aFREE-TEMP>
+                   <PUSH NXT167>
+                   <DEAD NXT167>
+                   <CALL '\1aFREE-TEMP 1>
+PHRASE197
+                   <UNBIND TEMP31>
+                   <ADJ -9>
+                   <UNBIND TEMP31>
+                   <DEAD TEMP31>
+                   <RESTL TEMP71 1 = TEMP71 (TYPE LIST)>
+                   <JUMP + MAP158>
+MAPAP161
+                   <VEQUAL? NEGF20 0 + PHRASE243>
+                   <DEAD NEGF20>
+                   <GEN-ASSIGNED? 'TRANSFORM - PHRASE237>
+                   <GEN-LVAL 'TRANSFORM = TEMP31>
+                   <NTHUV TEMP31 1 = TEMP29 (TYPE NODE)>
+                   <NTHUV NOD4 2 = TEMP58>
+                   <DEAD NOD4>
+                   <EQUAL? TEMP29 TEMP58 - PHRASE237>
+                   <DEAD TEMP29 TEMP58>
+                   <NTHUV TEMP31 2 = TEMP58 (TYPE UVECTOR)>
+                   <NTHUU TEMP58 1 = TEMP58 (TYPE FIX)>
+                   <VEQUAL? TEMP58 0 + PHRASE237 (TYPE FIX)>
+                   <DEAD TEMP58>
+                   <NTHUV TEMP31 3 = TEMP58 (TYPE UVECTOR)>
+                   <DEAD TEMP31>
+                   <PUTUU TEMP58 1 1>
+                   <DEAD TEMP58>
+                   <JUMP + PHRASE243>
+PHRASE237
+                   <FRAME '\1aGEN-NEGATE>
+                   <PUSH REG6>
+                   <CALL '\1aGEN-NEGATE 1>
+PHRASE243
+                   <FRAME '\1aDELAY-KILL>
+                   <NTHR 'NO-KILL 2 = TEMP58 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <NTHR TEMP58 1 = STACK (RECORD-TYPE LBIND)>
+                   <DEAD TEMP58>
+                   <PUSH ONO21>
+                   <DEAD ONO21>
+                   <CALL '\1aDELAY-KILL 2>
+                   <FRAME '\1aMOVE-ARG>
+                   <PUSH REG6>
+                   <DEAD REG6>
+                   <PUSH WHERE5>
+                   <DEAD WHERE5>
+                   <CALL '\1aMOVE-ARG 2 = TEMP58>
+RETURN2
+                   <UNBIND TEMP3>
+                   <DEAD TEMP3>
+                   <ADJ -9>
+                   <RETURN TEMP58>
+                   <DEAD TEMP58>
+                   <END \1aARITH-GEN>
+
+#WORD *32425632353*
+                   <GFCN \1aPROT ("VALUE" ANY ANY ANY) DAT4 TYP5>
+                   <TEMP TEMP12>
+                   <INTGO>
+                   <TYPE? DAT4 <TYPE-CODE TEMP> - PHRASE7>
+                   <FRAME '\1aDEALLOCATE-TEMP>
+                   <PUSH DAT4>
+                   <CALL '\1aDEALLOCATE-TEMP 1>
+PHRASE7
+                   <TYPE? DAT4 <TYPE-CODE TEMP> - PHRASE10>
+                   <NTHUV DAT4 2 = TEMP12 (TYPE FIX)>
+                   <GRTR? TEMP12 0 + PHRASE10 (TYPE FIX)>
+                   <DEAD TEMP12>
+                   <FRAME '\1aUSE-TEMP>
+                   <PUSH DAT4>
+                   <PUSH TYP5>
+                   <DEAD TYP5>
+                   <CALL '\1aUSE-TEMP 2>
+                   <RETURN DAT4>
+                   <DEAD DAT4>
+PHRASE10
+                   <TYPE? DAT4 <TYPE-CODE TEMP> - PHRASE16>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH TYP5>
+                   <DEAD TYP5>
+                   <CALL '\1aGEN-TEMP 1 = TEMP12>
+                   <RETURN TEMP12>
+                   <DEAD TEMP12>
+PHRASE16
+                   <RETURN DAT4>
+                   <DEAD DAT4>
+                   <END \1aPROT>
+
+#WORD *32266431174*
+                   <GFCN \1aSHIFT-INS ("VALUE" ANY ANY FIX FIX ANY ANY) REG4 SHFT5 ATYP6 LAST7 W8>
+                   <TEMP TEMP12:FIX>
+                   <INTGO>
+                   <FRAME '\1aGEN-SHIFT>
+                   <PUSH REG4>
+                   <VEQUAL? ATYP6 3 - PHRASE11 (TYPE FIX)>
+                   <DEAD ATYP6>
+                   <SET TEMP12 SHFT5>
+                   <DEAD SHFT5>
+                   <JUMP + PHRASE13>
+PHRASE11
+                   <SET TEMP12 SHFT5>
+                   <DEAD SHFT5>
+                   <SUB 0 TEMP12 = TEMP12 (TYPE FIX)>
+PHRASE13
+                   <PUSH TEMP12>
+                   <DEAD TEMP12>
+                   <TYPE? LAST7 <TYPE-CODE FALSE> + PHRASE15>
+                   <DEAD LAST7>
+                   <EQUAL? REG4 W8 + PHRASE15>
+                   <FRAME '\1aFREE-TEMP>
+                   <PUSH REG4>
+                   <DEAD REG4>
+                   <PUSH %<>>
+                   <CALL '\1aFREE-TEMP 2>
+                   <EQUAL? W8 'DONT-CARE - PHRASE19>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH 'FIX>
+                   <CALL '\1aGEN-TEMP 1 = REG4>
+                   <JUMP + PHRASE25>
+PHRASE19
+                   <TYPE? W8 <TYPE-CODE TEMP> - PHRASE21>
+                   <FRAME '\1aUSE-TEMP>
+                   <PUSH W8>
+                   <PUSH 'FIX>
+                   <CALL '\1aUSE-TEMP 2>
+                   <SET REG4 W8>
+                   <DEAD W8>
+                   <JUMP + PHRASE25>
+PHRASE21
+                   <SET REG4 W8>
+                   <DEAD W8>
+                   <JUMP + PHRASE25>
+PHRASE15
+                   <TYPE? REG4 <TYPE-CODE TEMP> + PHRASE25>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TEMP 1 = REG4>
+PHRASE25
+                   <PUSH REG4>
+                   <CALL '\1aGEN-SHIFT 3>
+                   <RETURN REG4>
+                   <DEAD REG4>
+                   <END \1aSHIFT-INS>
+
+#WORD *27417235355*
+                   <GFCN \1aSEGINS ("VALUE" FIX FIX ANY NODE ANY ANY FIX ANY) ATYP4 FD5 N6 REG7 REG28 MD9 DEFLT10>
+                   <TEMP STYP14 TG15 LOOP16 TEMP23 TYP13:FIX SL12:FIX>
+                   <INTGO>
+                   <NTHUV N6 3 = STYP14>
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0 = TG15>
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0 = LOOP16>
+                   <FRAME '\1aGET-ELE-TYPE>
+                   <PUSH STYP14>
+                   <PUSH 'ALL>
+                   <CALL '\1aGET-ELE-TYPE 2 = TEMP23>
+                   <EQUAL? TEMP23 'FIX - PHRASE21>
+                   <DEAD TEMP23>
+                   <SET TYP13 1 (TYPE FIX)>
+                   <JUMP + PHRASE24>
+PHRASE21
+                   <SET TYP13 2 (TYPE FIX)>
+PHRASE24
+                   <FRAME '\1aSTRUCTYP>
+                   <PUSH STYP14>
+                   <DEAD STYP14>
+                   <CALL '\1aSTRUCTYP 1 = STYP14>
+                   <FRAME '\1aMINL>
+                   <NTHUV N6 3 = STACK>
+                   <DEAD N6>
+                   <CALL '\1aMINL 1 = SL12>
+                   <TYPE? FD5 <TYPE-CODE FALSE> + PHRASE28>
+                   <DEAD FD5>
+                   <SET MD9 TYP13>
+                   <VEQUAL? TYP13 2 - BOOL29 (TYPE FIX)>
+                   <EQUAL? DEFLT10 1 - BOOL29>
+                   <SET DEFLT10 1.0 (TYPE FLOAT)>
+BOOL29
+                   <LESS? SL12 1 - PHRASE31 (TYPE FIX)>
+                   <FRAME '\1aSET-TEMP>
+                   <PUSH REG7>
+                   <PUSH DEFLT10>
+                   <DEAD DEFLT10>
+                   <VEQUAL? TYP13 1 - PHRASE36 (TYPE FIX)>
+                   <SET TEMP23 'FIX (TYPE ATOM)>
+                   <JUMP + PHRASE39>
+PHRASE36
+                   <SET TEMP23 'FLOAT (TYPE ATOM)>
+PHRASE39
+                   <CONS TEMP23 () = TEMP23>
+                   <CONS '`TYPE TEMP23 = STACK>
+                   <DEAD TEMP23>
+                   <CALL '\1aSET-TEMP 3>
+                   <FRAME '\1aEMPTY-JUMP>
+                   <PUSH STYP14>
+                   <PUSH REG28>
+                   <PUSH TG15>
+                   <CALL '\1aEMPTY-JUMP 3>
+PHRASE31
+                   <VEQUAL? ATYP4 2 + BOOL43 (TYPE FIX)>
+                   <VEQUAL? ATYP4 4 - PHRASE42 (TYPE FIX)>
+BOOL43
+                   <FRAME '\1aGETEL>
+                   <PUSH REG7>
+                   <DEAD REG7>
+                   <PUSH REG28>
+                   <PUSH STYP14>
+                   <CALL '\1aGETEL 3 = REG7>
+                   <FRAME '\1aADVANCE>
+                   <PUSH STYP14>
+                   <PUSH REG28>
+                   <CALL '\1aADVANCE 2>
+                   <SUB SL12 1 = SL12 (TYPE FIX)>
+                   <JUMP + PHRASE47>
+PHRASE42
+                   <SET SL12 1 (TYPE FIX)>
+                   <JUMP + PHRASE47>
+PHRASE28
+                   <VEQUAL? MD9 1 - PHRASE47 (TYPE FIX)>
+                   <VEQUAL? TYP13 2 - PHRASE47 (TYPE FIX)>
+                   <FRAME '\1aGEN-FLOAT>
+                   <PUSH REG7>
+                   <FRAME '\1aPROT>
+                   <PUSH REG7>
+                   <DEAD REG7>
+                   <PUSH 'FLOAT>
+                   <CALL '\1aPROT 2 = STACK>
+                   <CALL '\1aGEN-FLOAT 2 = REG7>
+PHRASE47
+                   <LESS? SL12 1 - PHRASE54 (TYPE FIX)>
+                   <DEAD SL12>
+                   <FRAME '\1aEMPTY-JUMP>
+                   <PUSH STYP14>
+                   <PUSH REG28>
+                   <PUSH TG15>
+                   <CALL '\1aEMPTY-JUMP 3>
+PHRASE54
+                   <FRAME '\1aLABEL-TAG>
+                   <PUSH LOOP16>
+                   <CALL '\1aLABEL-TAG 1>
+                   <FRAME '\1aEMITSEG>
+                   <PUSH REG7>
+                   <DEAD REG7>
+                   <PUSH REG28>
+                   <PUSH STYP14>
+                   <PUSH ATYP4>
+                   <DEAD ATYP4>
+                   <PUSH TYP13>
+                   <DEAD TYP13>
+                   <PUSH MD9>
+                   <CALL '\1aEMITSEG 6>
+                   <FRAME '\1aADVANCE-AND-CHECK>
+                   <PUSH STYP14>
+                   <DEAD STYP14>
+                   <PUSH REG28>
+                   <DEAD REG28>
+                   <PUSH LOOP16>
+                   <DEAD LOOP16>
+                   <CALL '\1aADVANCE-AND-CHECK 3>
+                   <FRAME '\1aLABEL-TAG>
+                   <PUSH TG15>
+                   <DEAD TG15>
+                   <CALL '\1aLABEL-TAG 1>
+                   <RETURN MD9>
+                   <DEAD MD9>
+                   <END \1aSEGINS>
+
+#WORD *6210303613*
+                   <GFCN \1aADVANCE ("VALUE" ATOM ATOM ANY) STYP4 SAC5>
+                   <TEMP AMT6>
+                   <INTGO>
+                   <VEQUAL? STYP4 'LIST - PHRASE12>
+                   <FRAME '\1aNTH-LIST>
+                   <PUSH SAC5>
+                   <PUSH 1>
+                   <PUSH SAC5>
+                   <DEAD SAC5>
+                   <CALL '\1aNTH-LIST 3 = AMT6>
+                   <RETURN AMT6>
+                   <DEAD AMT6>
+PHRASE12
+                   <VEQUAL? STYP4 'UVECTOR - PHRASE14>
+                   <DEAD STYP4>
+                   <FRAME '\1aNTH-UVECTOR>
+                   <PUSH SAC5>
+                   <PUSH SAC5>
+                   <DEAD SAC5>
+                   <PUSH 1>
+                   <CALL '\1aNTH-UVECTOR 3 = AMT6>
+                   <RETURN AMT6>
+                   <DEAD AMT6>
+PHRASE14
+                   <FRAME '\1aNTH-VECTOR>
+                   <PUSH SAC5>
+                   <PUSH SAC5>
+                   <DEAD SAC5>
+                   <PUSH 1>
+                   <CALL '\1aNTH-VECTOR 3 = AMT6>
+                   <RETURN AMT6>
+                   <DEAD AMT6>
+                   <END \1aADVANCE>
+
+#WORD *15174264367*
+                   <GFCN \1aADVANCE-AND-CHECK ("VALUE" ATOM ATOM ANY ANY) STYP4 SAC5 TG6>
+                   <TEMP TEMP11:ATOM>
+                   <INTGO>
+                   <VEQUAL? STYP4 'LIST - PHRASE8>
+                   <FRAME '\1aREST-LIST>
+                   <PUSH SAC5>
+                   <PUSH SAC5>
+                   <PUSH 1>
+                   <CALL '\1aREST-LIST 3>
+                   <FRAME '\1aEMPTY-LIST>
+                   <PUSH SAC5>
+                   <DEAD SAC5>
+                   <PUSH TG6>
+                   <DEAD TG6>
+                   <PUSH %<>>
+                   <CALL '\1aEMPTY-LIST 3 = TEMP11>
+                   <RETURN TEMP11>
+                   <DEAD TEMP11>
+PHRASE8
+                   <VEQUAL? STYP4 'VECTOR - PHRASE12>
+                   <DEAD STYP4>
+                   <FRAME '\1aREST-VECTOR>
+                   <PUSH SAC5>
+                   <PUSH SAC5>
+                   <PUSH 1>
+                   <CALL '\1aREST-VECTOR 3>
+                   <FRAME '\1aEMPTY-VECTOR>
+                   <PUSH SAC5>
+                   <DEAD SAC5>
+                   <PUSH TG6>
+                   <DEAD TG6>
+                   <PUSH %<>>
+                   <CALL '\1aEMPTY-VECTOR 3 = TEMP11>
+                   <RETURN TEMP11>
+                   <DEAD TEMP11>
+PHRASE12
+                   <FRAME '\1aREST-UVECTOR>
+                   <PUSH SAC5>
+                   <PUSH SAC5>
+                   <PUSH 1>
+                   <CALL '\1aREST-UVECTOR 3>
+                   <FRAME '\1aEMPTY-UVECTOR>
+                   <PUSH SAC5>
+                   <DEAD SAC5>
+                   <PUSH TG6>
+                   <DEAD TG6>
+                   <PUSH %<>>
+                   <CALL '\1aEMPTY-UVECTOR 3 = TEMP11>
+                   <RETURN TEMP11>
+                   <DEAD TEMP11>
+                   <END \1aADVANCE-AND-CHECK>
+
+#WORD *27301002560*
+                   <GFCN \1aEMPTY-JUMP ("VALUE" ATOM ATOM ANY ATOM) STYP4 SAC5 TG6>
+                   <TEMP TEMP10:ATOM>
+                   <INTGO>
+                   <VEQUAL? STYP4 'LIST - PHRASE8>
+                   <FRAME '\1aEMPTY-LIST>
+                   <PUSH SAC5>
+                   <DEAD SAC5>
+                   <PUSH TG6>
+                   <DEAD TG6>
+                   <PUSH 'T>
+                   <CALL '\1aEMPTY-LIST 3 = TEMP10>
+                   <RETURN TEMP10>
+                   <DEAD TEMP10>
+PHRASE8
+                   <VEQUAL? STYP4 'VECTOR - PHRASE11>
+                   <DEAD STYP4>
+                   <FRAME '\1aEMPTY-VECTOR>
+                   <PUSH SAC5>
+                   <DEAD SAC5>
+                   <PUSH TG6>
+                   <DEAD TG6>
+                   <PUSH 'T>
+                   <CALL '\1aEMPTY-VECTOR 3 = TEMP10>
+                   <RETURN TEMP10>
+                   <DEAD TEMP10>
+PHRASE11
+                   <FRAME '\1aEMPTY-UVECTOR>
+                   <PUSH SAC5>
+                   <DEAD SAC5>
+                   <PUSH TG6>
+                   <DEAD TG6>
+                   <PUSH 'T>
+                   <CALL '\1aEMPTY-UVECTOR 3 = TEMP10>
+                   <RETURN TEMP10>
+                   <DEAD TEMP10>
+                   <END \1aEMPTY-JUMP>
+
+#WORD *20304657773*
+                   <GFCN \1aEMITSEG ("VALUE" <OR TEMP ANY> ANY ANY ANY FIX FIX FIX) RAC4 SAC5 STYP6 ATYP7 TYP8 MD9>
+                   <TEMP TMP11>
+                   <INTGO>
+                   <FRAME '\1aGEN-TEMP>
+                   <CALL '\1aGEN-TEMP 0 = TMP11>
+                   <VEQUAL? MD9 2 - PHRASE14 (TYPE FIX)>
+                   <VEQUAL? TYP8 1 - PHRASE14 (TYPE FIX)>
+                   <DEAD TYP8>
+                   <FRAME '\1aGETEL>
+                   <PUSH TMP11>
+                   <PUSH SAC5>
+                   <DEAD SAC5>
+                   <PUSH STYP6>
+                   <DEAD STYP6>
+                   <CALL '\1aGETEL 3>
+                   <FRAME '\1aGEN-FLOAT>
+                   <PUSH TMP11>
+                   <PUSH TMP11>
+                   <CALL '\1aGEN-FLOAT 2>
+                   <FRAME '\1aGENINS>
+                   <PUSH ATYP7>
+                   <DEAD ATYP7>
+                   <PUSH MD9>
+                   <DEAD MD9>
+                   <PUSH RAC4>
+                   <DEAD RAC4>
+                   <PUSH TMP11>
+                   <CALL '\1aGENINS 4>
+                   <JUMP + PHRASE21>
+PHRASE14
+                   <FRAME '\1aGETEL>
+                   <PUSH TMP11>
+                   <PUSH SAC5>
+                   <DEAD SAC5>
+                   <PUSH STYP6>
+                   <DEAD STYP6>
+                   <CALL '\1aGETEL 3>
+                   <FRAME '\1aGENINS>
+                   <PUSH ATYP7>
+                   <DEAD ATYP7>
+                   <PUSH MD9>
+                   <DEAD MD9>
+                   <PUSH RAC4>
+                   <DEAD RAC4>
+                   <PUSH TMP11>
+                   <CALL '\1aGENINS 4>
+PHRASE21
+                   <FRAME '\1aFREE-TEMP>
+                   <PUSH TMP11>
+                   <DEAD TMP11>
+                   <CALL '\1aFREE-TEMP 1 = TMP11>
+                   <RETURN TMP11>
+                   <DEAD TMP11>
+                   <END \1aEMITSEG>
+
+#WORD *27760057172*
+                   <GFCN \1aGENINS ("VALUE" <OR ATOM <LIST ANY>> FIX FIX ANY ANY) ATYP4 MD5 RAC6 ADD7>
+                   <TEMP TG9 TEMP14>
+                   <INTGO>
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0 = TG9>
+                   <GRTR? ATYP4 4 - PHRASE12 (TYPE FIX)>
+                   <FRAME '\1aIEMIT>
+                   <SUB ATYP4 4 = TEMP14 (TYPE FIX)>
+                   <DEAD ATYP4>
+                   <NTHUV [`GRTR? `LESS?] TEMP14 = STACK (TYPE ATOM)>
+                   <DEAD TEMP14>
+                   <PUSH RAC6>
+                   <PUSH ADD7>
+                   <PUSH '+>
+                   <PUSH TG9>
+                   <CALL '\1aIEMIT 5>
+                   <FRAME '\1aIEMIT>
+                   <PUSH '`SET>
+                   <PUSH RAC6>
+                   <DEAD RAC6>
+                   <PUSH ADD7>
+                   <DEAD ADD7>
+                   <CALL '\1aIEMIT 3>
+                   <FRAME '\1aLABEL-TAG>
+                   <PUSH TG9>
+                   <DEAD TG9>
+                   <CALL '\1aLABEL-TAG 1 = TEMP14>
+                   <RETURN TEMP14>
+                   <DEAD TEMP14>
+PHRASE12
+                   <GVAL 'INS1 = TG9>
+                   <NTHUV TG9 MD5 = TG9 (TYPE VECTOR)>
+                   <NTHUV TG9 ATYP4 = TG9>
+                   <DEAD ATYP4>
+                   <FRAME '\1aIEMIT>
+                   <PUSH TG9>
+                   <DEAD TG9>
+                   <PUSH RAC6>
+                   <PUSH ADD7>
+                   <DEAD ADD7>
+                   <PUSH '=>
+                   <PUSH RAC6>
+                   <DEAD RAC6>
+                   <VEQUAL? MD5 1 - PHRASE21 (TYPE FIX)>
+                   <DEAD MD5>
+                   <SET TG9 'FIX (TYPE ATOM)>
+                   <JUMP + PHRASE24>
+PHRASE21
+                   <SET TG9 'FLOAT (TYPE ATOM)>
+PHRASE24
+                   <CONS TG9 () = TG9>
+                   <CONS '`TYPE TG9 = STACK>
+                   <DEAD TG9>
+                   <CALL '\1aIEMIT 6 = TEMP14>
+                   <RETURN TEMP14>
+                   <DEAD TEMP14>
+                   <END \1aGENINS>
+
+#WORD *11403556045*
+                   <GFCN \1aGETEL ("VALUE" ANY ANY ANY ANY) RAC4 SAC5 STYP6>
+                   <TEMP>
+                   <INTGO>
+                   <EQUAL? RAC4 'DONT-CARE - PHRASE8>
+                   <FRAME '\1aGEN-TEMP>
+                   <CALL '\1aGEN-TEMP 0 = RAC4>
+PHRASE8
+                   <EQUAL? STYP6 'LIST - PHRASE11>
+                   <FRAME '\1aNTH-LIST>
+                   <PUSH SAC5>
+                   <DEAD SAC5>
+                   <PUSH RAC4>
+                   <PUSH 1>
+                   <CALL '\1aNTH-LIST 3>
+                   <RETURN RAC4>
+                   <DEAD RAC4>
+PHRASE11
+                   <EQUAL? STYP6 'VECTOR - PHRASE13>
+                   <DEAD STYP6>
+                   <FRAME '\1aNTH-VECTOR>
+                   <PUSH SAC5>
+                   <DEAD SAC5>
+                   <PUSH RAC4>
+                   <PUSH 1>
+                   <CALL '\1aNTH-VECTOR 3>
+                   <RETURN RAC4>
+                   <DEAD RAC4>
+PHRASE13
+                   <FRAME '\1aNTH-UVECTOR>
+                   <PUSH SAC5>
+                   <DEAD SAC5>
+                   <PUSH RAC4>
+                   <PUSH 1>
+                   <CALL '\1aNTH-UVECTOR 3>
+                   <RETURN RAC4>
+                   <DEAD RAC4>
+                   <END \1aGETEL>
+
+<SETG INS1 [[`ADD `SUB `MUL `DIV] [`ADDF `SUBF `MULF `DIVF]]>
+
+<GDECL (INS1) !<VECTOR [2 !<VECTOR [4 ANY]>]>>
+
+" Do the actual arithmetic code generation here with all args set up."
+
+#WORD *27255605043*
+                   <GFCN \1aARITH-INS ("VALUE" ANY FIX ANY ANY FIX ANY ANY) ATYP4 REG5 REG26 MODE7 LAST8 W9>
+                   <TEMP TEMP11>
+                   <INTGO>
+                   <GVAL 'INS1 = TEMP11>
+                   <NTHUV TEMP11 MODE7 = TEMP11 (TYPE VECTOR)>
+                   <NTHUV TEMP11 ATYP4 = TEMP11>
+                   <DEAD ATYP4>
+                   <FRAME '\1aIEMIT>
+                   <PUSH TEMP11>
+                   <DEAD TEMP11>
+                   <PUSH REG5>
+                   <PUSH REG26>
+                   <DEAD REG26>
+                   <PUSH '=>
+                   <TYPE? LAST8 <TYPE-CODE FALSE> + PHRASE14>
+                   <EQUAL? REG5 W9 + PHRASE14>
+                   <FRAME '\1aFREE-TEMP>
+                   <PUSH REG5>
+                   <DEAD REG5>
+                   <PUSH %<>>
+                   <CALL '\1aFREE-TEMP 2>
+                   <EQUAL? W9 'DONT-CARE - PHRASE18>
+                   <FRAME '\1aGEN-TEMP>
+                   <VEQUAL? MODE7 1 - PHRASE21 (TYPE FIX)>
+                   <SET TEMP11 'FIX (TYPE ATOM)>
+                   <JUMP + PHRASE24>
+PHRASE21
+                   <SET TEMP11 'FLOAT (TYPE ATOM)>
+PHRASE24
+                   <PUSH TEMP11>
+                   <DEAD TEMP11>
+                   <CALL '\1aGEN-TEMP 1 = REG5>
+                   <JUMP + PHRASE49>
+PHRASE18
+                   <TYPE? W9 <TYPE-CODE TEMP> - PHRASE25>
+                   <FRAME '\1aUSE-TEMP>
+                   <PUSH W9>
+                   <VEQUAL? MODE7 1 - PHRASE28 (TYPE FIX)>
+                   <SET TEMP11 'FIX (TYPE ATOM)>
+                   <JUMP + PHRASE31>
+PHRASE28
+                   <SET TEMP11 'FLOAT (TYPE ATOM)>
+PHRASE31
+                   <PUSH TEMP11>
+                   <DEAD TEMP11>
+                   <CALL '\1aUSE-TEMP 2>
+                   <SET REG5 W9>
+                   <DEAD W9>
+                   <JUMP + PHRASE49>
+PHRASE25
+                   <SET REG5 W9>
+                   <DEAD W9>
+                   <JUMP + PHRASE49>
+PHRASE14
+                   <TYPE? LAST8 <TYPE-CODE FALSE> + PHRASE33>
+                   <DEAD LAST8>
+                   <EQUAL? REG5 W9 + PHRASE49>
+PHRASE33
+                   <TYPE? REG5 <TYPE-CODE TEMP> - PHRASE35>
+                   <NTHUV REG5 2 = TEMP11 (TYPE FIX)>
+                   <GRTR? TEMP11 1 - PHRASE49 (TYPE FIX)>
+                   <DEAD TEMP11>
+PHRASE35
+                   <TYPE? W9 <TYPE-CODE TEMP> - PHRASE39>
+                   <NTHUV W9 2 = TEMP11 (TYPE FIX)>
+                   <LESS? TEMP11 1 - PHRASE39 (TYPE FIX)>
+                   <DEAD TEMP11>
+                   <FRAME '\1aUSE-TEMP>
+                   <PUSH W9>
+                   <VEQUAL? MODE7 1 - PHRASE45 (TYPE FIX)>
+                   <SET TEMP11 'FIX (TYPE ATOM)>
+                   <JUMP + PHRASE48>
+PHRASE45
+                   <SET TEMP11 'FLOAT (TYPE ATOM)>
+PHRASE48
+                   <PUSH TEMP11>
+                   <DEAD TEMP11>
+                   <CALL '\1aUSE-TEMP 2>
+                   <SET REG5 W9>
+                   <DEAD W9>
+                   <JUMP + PHRASE49>
+PHRASE39
+                   <FRAME '\1aFREE-TEMP>
+                   <PUSH REG5>
+                   <DEAD REG5>
+                   <CALL '\1aFREE-TEMP 1>
+                   <FRAME '\1aGEN-TEMP>
+                   <VEQUAL? MODE7 1 - PHRASE53 (TYPE FIX)>
+                   <SET TEMP11 'FIX (TYPE ATOM)>
+                   <JUMP + PHRASE56>
+PHRASE53
+                   <SET TEMP11 'FLOAT (TYPE ATOM)>
+PHRASE56
+                   <PUSH TEMP11>
+                   <DEAD TEMP11>
+                   <CALL '\1aGEN-TEMP 1 = REG5>
+PHRASE49
+                   <PUSH REG5>
+                   <VEQUAL? MODE7 2 - PHRASE58 (TYPE FIX)>
+                   <DEAD MODE7>
+                   <SET TEMP11 (`TYPE FLOAT) (TYPE LIST)>
+                   <JUMP + PHRASE59>
+PHRASE58
+                   <SET TEMP11 (`TYPE FIX) (TYPE LIST)>
+PHRASE59
+                   <PUSH TEMP11>
+                   <DEAD TEMP11>
+                   <CALL '\1aIEMIT 6>
+                   <RETURN REG5>
+                   <DEAD REG5>
+                   <END \1aARITH-INS>
+
+#WORD *24460063375*
+                   <GFCN \1aMIN-MAX ("VALUE" ANY NODE ANY) NOD4 WHERE5>
+                   <TEMP TEMP17 MAX?6 K7 (MODE9:FIX 1) C12:FIX ONO14 TEMP3:LBIND TEMP28 TEM13:NODE REG110 NXT53>
+                   <INTGO>
+                   <NTHUV NOD4 4 = TEMP17>
+                   <EQUAL? TEMP17 'MAX - TAG16>
+                   <DEAD TEMP17>
+                   <SET MAX?6 'T (TYPE ATOM)>
+                   <JUMP + TAG18>
+TAG16
+                   <SET MAX?6 %<> (TYPE FALSE)>
+TAG18
+                   <NTHUV NOD4 5 = K7 (TYPE LIST)>
+                   <VEQUAL? MAX?6 0 + BOOL20>
+                   <SET TEMP17 5 (TYPE FIX)>
+                   <JUMP + BOOL19>
+BOOL20
+                   <SET TEMP17 6 (TYPE FIX)>
+BOOL19
+                   <SET C12 TEMP17>
+                   <DEAD TEMP17>
+                   <GEN-LVAL 'NO-KILL = ONO14>
+                   <GETS 'BIND = TEMP3 (TYPE LBIND)>
+                   <BBIND 'NO-KILL 'LIST 'FIX ONO14>
+                   <FRAME '\1aCOMMUTE>
+                   <PUSH K7>
+                   <NTHUV NOD4 4 = STACK>
+                   <NTHR 'NO-KILL 2 = TEMP17 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <NTHR TEMP17 1 = STACK (RECORD-TYPE LBIND)>
+                   <DEAD TEMP17>
+                   <CALL '\1aCOMMUTE 3 = TEMP17>
+                   <NTHR 'NO-KILL 2 = TEMP28 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <PUTR TEMP28 1 TEMP17 (RECORD-TYPE LBIND)>
+                   <DEAD TEMP28 TEMP17>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TEMP 1 = TEMP28>
+                   <NTHL K7 1 = TEM13 (TYPE NODE)>
+                   <NTHUV TEM13 1 = TEMP17 (TYPE FIX)>
+                   <VEQUAL? TEMP17 68 - PHRASE31 (TYPE FIX)>
+                   <DEAD TEMP17>
+                   <FRAME '\1aGEN>
+                   <NTHUV TEM13 5 = TEMP17 (TYPE LIST)>
+                   <DEAD TEM13>
+                   <NTHL TEMP17 1 = TEM13 (TYPE NODE)>
+                   <DEAD TEMP17>
+                   <PUSH TEM13>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TEMP 1 = STACK>
+                   <CALL '\1aGEN 2 = REG110>
+                   <FRAME '\1aSEGINS>
+                   <PUSH C12>
+                   <PUSH 'T>
+                   <PUSH TEM13>
+                   <DEAD TEM13>
+                   <PUSH TEMP28>
+                   <PUSH REG110>
+                   <PUSH 1>
+                   <FRAME '\1aCHTYPE>
+                   <VEQUAL? MAX?6 0 + BOOL37>
+                   <SET TEMP17 %<CHTYPE <MAX> FIX> (TYPE FIX)>
+                   <JUMP + BOOL36>
+BOOL37
+                   <SET TEMP17 %<CHTYPE <MIN> FIX> (TYPE FIX)>
+BOOL36
+                   <PUSH TEMP17>
+                   <DEAD TEMP17>
+                   <NTHUV NOD4 3 = STACK (TYPE ATOM)>
+                   <DEAD NOD4>
+                   <CALL '\1aCHTYPE 2 = STACK>
+                   <CALL '\1aSEGINS 7 = MODE9>
+                   <FRAME '\1aFREE-TEMP>
+                   <PUSH REG110>
+                   <DEAD REG110>
+                   <CALL '\1aFREE-TEMP 1>
+                   <JUMP + BOOL41>
+PHRASE31
+                   <FRAME '\1aGEN>
+                   <PUSH TEM13>
+                   <PUSH TEMP28>
+                   <DEAD TEMP28>
+                   <CALL '\1aGEN 2 = TEMP28>
+                   <NTHUV TEM13 3 = TEMP17>
+                   <DEAD TEM13>
+                   <EQUAL? TEMP17 'FLOAT - BOOL41>
+                   <DEAD TEMP17>
+                   <SET MODE9 2 (TYPE FIX)>
+BOOL41
+                   <RESTL K7 1 = TEMP17 (TYPE LIST)>
+                   <DEAD K7>
+                   <LOOP>
+MAP43
+                   <INTGO>
+                   <EMPL? TEMP17 + MAPAP46>
+                   <NTHL TEMP17 1 = TEM13>
+                   <NTHUV TEM13 1 = REG110 (TYPE FIX)>
+                   <VEQUAL? REG110 68 - PHRASE55 (TYPE FIX)>
+                   <DEAD REG110>
+                   <SET K7 'T (TYPE ATOM)>
+                   <FRAME '\1aGEN>
+                   <NTHUV TEM13 5 = REG110 (TYPE LIST)>
+                   <DEAD TEM13>
+                   <NTHL REG110 1 = TEM13 (TYPE NODE)>
+                   <DEAD REG110>
+                   <PUSH TEM13>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TEMP 1 = STACK>
+                   <CALL '\1aGEN 2 = NXT53>
+                   <JUMP + PHRASE59>
+PHRASE55
+                   <SET K7 %<> (TYPE FALSE)>
+                   <FRAME '\1aGEN>
+                   <PUSH TEM13>
+                   <PUSH 'DONT-CARE>
+                   <CALL '\1aGEN 2 = NXT53>
+PHRASE59
+                   <VEQUAL? K7 0 + PHRASE63>
+                   <DEAD K7>
+                   <FRAME '\1aSEGINS>
+                   <PUSH C12>
+                   <PUSH %<>>
+                   <PUSH TEM13>
+                   <DEAD TEM13>
+                   <PUSH TEMP28>
+                   <PUSH NXT53>
+                   <DEAD NXT53>
+                   <PUSH MODE9>
+                   <DEAD MODE9>
+                   <PUSH 0>
+                   <CALL '\1aSEGINS 7 = MODE9>
+                   <JUMP + PHRASE65>
+PHRASE63
+                   <VEQUAL? MODE9 2 - PHRASE67 (TYPE FIX)>
+                   <FRAME '\1aISTYPE?>
+                   <NTHUV TEM13 3 = STACK>
+                   <DEAD TEM13>
+                   <CALL '\1aISTYPE? 1 = REG110>
+                   <VEQUAL? REG110 'FIX - PHRASE73>
+                   <DEAD REG110>
+                   <FRAME '\1aGEN-FLOAT>
+                   <PUSH NXT53>
+                   <FRAME '\1aPROT>
+                   <PUSH NXT53>
+                   <DEAD NXT53>
+                   <PUSH 'FLOAT>
+                   <CALL '\1aPROT 2 = STACK>
+                   <CALL '\1aGEN-FLOAT 2 = NXT53>
+                   <JUMP + PHRASE73>
+PHRASE67
+                   <FRAME '\1aISTYPE?>
+                   <NTHUV TEM13 3 = STACK>
+                   <DEAD TEM13>
+                   <CALL '\1aISTYPE? 1 = REG110>
+                   <VEQUAL? REG110 'FLOAT - PHRASE73>
+                   <DEAD REG110>
+                   <FRAME '\1aGEN-FLOAT>
+                   <PUSH TEMP28>
+                   <FRAME '\1aPROT>
+                   <PUSH TEMP28>
+                   <DEAD TEMP28>
+                   <PUSH 'FLOAT>
+                   <CALL '\1aPROT 2 = STACK>
+                   <CALL '\1aGEN-FLOAT 2 = TEMP28>
+                   <SET MODE9 2 (TYPE FIX)>
+PHRASE73
+                   <FRAME '\1aIEMIT>
+                   <VEQUAL? MAX?6 0 + PHRASE79>
+                   <SET REG110 '`LESS? (TYPE ATOM)>
+                   <JUMP + PHRASE80>
+PHRASE79
+                   <SET REG110 '`GRTR? (TYPE ATOM)>
+PHRASE80
+                   <PUSH REG110>
+                   <DEAD REG110>
+                   <PUSH TEMP28>
+                   <PUSH NXT53>
+                   <PUSH '->
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0 = K7>
+                   <PUSH K7>
+                   <CALL '\1aIEMIT 5>
+                   <FRAME '\1aSET-TEMP>
+                   <PUSH TEMP28>
+                   <PUSH NXT53>
+                   <VEQUAL? MODE9 2 - PHRASE84 (TYPE FIX)>
+                   <SET REG110 'FLOAT (TYPE ATOM)>
+                   <JUMP + PHRASE85>
+PHRASE84
+                   <SET REG110 'FIX (TYPE ATOM)>
+PHRASE85
+                   <CONS REG110 () = REG110>
+                   <CONS '`TYPE REG110 = STACK>
+                   <DEAD REG110>
+                   <CALL '\1aSET-TEMP 3>
+                   <FRAME '\1aFREE-TEMP>
+                   <PUSH NXT53>
+                   <DEAD NXT53>
+                   <CALL '\1aFREE-TEMP 1>
+                   <FRAME '\1aLABEL-TAG>
+                   <PUSH K7>
+                   <DEAD K7>
+                   <CALL '\1aLABEL-TAG 1>
+PHRASE65
+                   <RESTL TEMP17 1 = TEMP17 (TYPE LIST)>
+                   <JUMP + MAP43>
+MAPAP46
+                   <FRAME '\1aDELAY-KILL>
+                   <NTHR 'NO-KILL 2 = TEMP17 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <NTHR TEMP17 1 = STACK (RECORD-TYPE LBIND)>
+                   <DEAD TEMP17>
+                   <PUSH ONO14>
+                   <DEAD ONO14>
+                   <CALL '\1aDELAY-KILL 2>
+                   <FRAME '\1aMOVE-ARG>
+                   <PUSH TEMP28>
+                   <DEAD TEMP28>
+                   <PUSH WHERE5>
+                   <DEAD WHERE5>
+                   <CALL '\1aMOVE-ARG 2 = TEMP17>
+                   <UNBIND TEMP3>
+                   <DEAD TEMP3>
+                   <ADJ -9>
+                   <RETURN TEMP17>
+                   <DEAD TEMP17>
+                   <END \1aMIN-MAX>
+
+#WORD *2703756366*
+                   <GFCN \1aABS-GEN ("VALUE" ANY NODE ANY) N4 W5>
+                   <TEMP (TEMP15 %<>) K16 (TRIN8 %<>) ABSFLG9 RT13 TEMP21>
+                   <INTGO>
+                   <NTHUV N4 5 = TEMP15 (TYPE LIST)>
+                   <NTHL TEMP15 1 = K16 (TYPE NODE)>
+                   <DEAD TEMP15>
+                   <NTHUV N4 4 = TEMP15>
+                   <EQUAL? TEMP15 'ABS - TAG16>
+                   <DEAD TEMP15>
+                   <SET ABSFLG9 'T (TYPE ATOM)>
+                   <JUMP + TAG17>
+TAG16
+                   <SET ABSFLG9 %<> (TYPE FALSE)>
+TAG17
+                   <NTHUV N4 3 = RT13>
+                   <GETS 'BIND = TEMP15 (TYPE LBIND)>
+                   <FRAME '\1aMAKE-TRANS>
+                   <PUSH N4>
+                   <PUSH 2>
+                   <PUSH 0>
+                   <PUSH 0>
+                   <PUSH 0>
+                   <PUSH 1>
+                   <PUSH 0>
+                   <PUSH 0>
+                   <CALL '\1aMAKE-TRANS 8 = TEMP21>
+                   <BBIND 'TRANSFORM 'TRANS 'FIX TEMP21>
+                   <DEAD TEMP21>
+                   <FRAME '\1aGEN>
+                   <PUSH K16>
+                   <DEAD K16>
+                   <GVAL 'POP-STACK = TEMP21>
+                   <EQUAL? TEMP21 W5 - PHRASE25>
+                   <DEAD TEMP21>
+                   <SET TEMP21 'DONT-CARE (TYPE ATOM)>
+                   <JUMP + PHRASE26>
+PHRASE25
+                   <SET TEMP21 W5>
+PHRASE26
+                   <PUSH TEMP21>
+                   <DEAD TEMP21>
+                   <CALL '\1aGEN 2 = K16>
+                   <NTHR 'TRANSFORM 2 = TEMP21 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <NTHR TEMP21 1 = TEMP21 (RECORD-TYPE LBIND)>
+                   <NTHUV TEMP21 3 = TEMP21 (TYPE UVECTOR)>
+                   <NTHUU TEMP21 1 = TEMP21 (TYPE FIX)>
+                   <VEQUAL? TEMP21 0 + PHRASE28 (TYPE FIX)>
+                   <DEAD TEMP21>
+                   <FRAME '\1aMOVE-ARG>
+                   <PUSH K16>
+                   <DEAD K16>
+                   <PUSH W5>
+                   <DEAD W5>
+                   <CALL '\1aMOVE-ARG 2 = TEMP21>
+                   <RETURN TEMP21>
+                   <DEAD TEMP21>
+PHRASE28
+                   <UNBIND TEMP15>
+                   <DEAD TEMP15>
+                   <ADJ -9>
+                   <GEN-ASSIGNED? 'TRANSFORM - PHRASE35>
+                   <GEN-LVAL 'TRANSFORM = TEMP15>
+                   <NTHUV TEMP15 1 = TEMP15 (TYPE NODE)>
+                   <NTHUV N4 2 = TEMP21>
+                   <DEAD N4>
+                   <EQUAL? TEMP15 TEMP21 - PHRASE35>
+                   <DEAD TEMP15 TEMP21>
+                   <VEQUAL? ABSFLG9 0 - PHRASE35>
+                   <GEN-LVAL 'TRANSFORM = TEMP21>
+                   <NTHUV TEMP21 2 = TRIN8 (TYPE UVECTOR)>
+                   <DEAD TEMP21>
+PHRASE35
+                   <VEQUAL? TRIN8 0 + PHRASE44>
+                   <NTHUU TRIN8 1 = TEMP21 (TYPE FIX)>
+                   <DEAD TRIN8>
+                   <VEQUAL? TEMP21 0 + PHRASE44 (TYPE FIX)>
+                   <DEAD TEMP21>
+                   <GEN-LVAL 'TRANSFORM = TEMP21>
+                   <NTHUV TEMP21 3 = TEMP21 (TYPE UVECTOR)>
+                   <PUTUU TEMP21 1 1>
+                   <DEAD TEMP21>
+                   <FRAME '\1aMOVE-ARG>
+                   <PUSH K16>
+                   <DEAD K16>
+                   <PUSH W5>
+                   <DEAD W5>
+                   <CALL '\1aMOVE-ARG 2 = TEMP21>
+                   <JUMP + PHRASE51>
+PHRASE44
+                   <VEQUAL? ABSFLG9 0 + PHRASE53>
+                   <DEAD ABSFLG9>
+                   <TYPE? W5 <TYPE-CODE TEMP> - PHRASE55>
+                   <FRAME '\1aUSE-TEMP>
+                   <SET TEMP15 W5>
+                   <PUSH TEMP15>
+                   <PUSH RT13>
+                   <CALL '\1aUSE-TEMP 2>
+                   <JUMP + PHRASE61>
+PHRASE55
+                   <TYPE? K16 <TYPE-CODE TEMP> - PHRASE57>
+                   <NTHUV K16 2 = TEMP15 (TYPE FIX)>
+                   <GRTR? TEMP15 1 + PHRASE57 (TYPE FIX)>
+                   <DEAD TEMP15>
+                   <SET TEMP15 K16>
+                   <JUMP + PHRASE61>
+PHRASE57
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH RT13>
+                   <CALL '\1aGEN-TEMP 1 = TEMP15>
+PHRASE61
+                   <EQUAL? K16 TEMP15 + PHRASE64>
+                   <FRAME '\1aDEALLOCATE-TEMP>
+                   <FRAME '\1aMOVE-ARG>
+                   <PUSH K16>
+                   <DEAD K16>
+                   <PUSH TEMP15>
+                   <CALL '\1aMOVE-ARG 2 = K16>
+                   <PUSH K16>
+                   <CALL '\1aDEALLOCATE-TEMP 1>
+PHRASE64
+                   <FRAME '\1aDO-LESS?>
+                   <PUSH K16>
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0 = TRIN8>
+                   <PUSH TRIN8>
+                   <PUSH RT13>
+                   <CALL '\1aDO-LESS? 3>
+                   <FRAME '\1aDO-SUB>
+                   <PUSH K16>
+                   <DEAD K16>
+                   <PUSH TEMP15>
+                   <PUSH RT13>
+                   <DEAD RT13>
+                   <CALL '\1aDO-SUB 3>
+                   <FRAME '\1aLABEL-TAG>
+                   <PUSH TRIN8>
+                   <DEAD TRIN8>
+                   <CALL '\1aLABEL-TAG 1>
+                   <FRAME '\1aMOVE-ARG>
+                   <PUSH TEMP15>
+                   <DEAD TEMP15>
+                   <PUSH W5>
+                   <DEAD W5>
+                   <CALL '\1aMOVE-ARG 2 = W5>
+                   <JUMP + PHRASE82>
+PHRASE53
+                   <EQUAL? W5 'DONT-CARE - PHRASE74>
+                   <TYPE? K16 <TYPE-CODE TEMP> - PHRASE74>
+                   <NTHUV K16 2 = TEMP15 (TYPE FIX)>
+                   <GRTR? TEMP15 1 + PHRASE74 (TYPE FIX)>
+                   <DEAD TEMP15>
+                   <SET W5 K16>
+                   <JUMP + PHRASE78>
+PHRASE74
+                   <EQUAL? W5 'DONT-CARE - PHRASE78>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH RT13>
+                   <CALL '\1aGEN-TEMP 1 = W5>
+PHRASE78
+                   <FRAME '\1aDO-SUB>
+                   <PUSH K16>
+                   <PUSH W5>
+                   <PUSH RT13>
+                   <DEAD RT13>
+                   <CALL '\1aDO-SUB 3>
+                   <EQUAL? W5 K16 + PHRASE82>
+                   <FRAME '\1aFREE-TEMP>
+                   <PUSH K16>
+                   <DEAD K16>
+                   <CALL '\1aFREE-TEMP 1>
+PHRASE82
+                   <SET TEMP21 W5>
+                   <DEAD W5>
+PHRASE51
+                   <RETURN TEMP21>
+                   <DEAD TEMP21>
+                   <END \1aABS-GEN>
+
+#WORD *13044703205*
+                   <GFCN \1aDO-SUB ("VALUE" <OR ATOM <LIST ANY>> ANY ANY ANY) NUM4 W5 TY6>
+                   <TEMP TEMP12 TG28:ATOM>
+                   <INTGO>
+                   <FRAME '\1aISTYPE?>
+                   <PUSH TY6>
+                   <CALL '\1aISTYPE? 1 = TEMP12>
+                   <VEQUAL? TEMP12 'FIX - PHRASE10>
+                   <DEAD TEMP12>
+                   <FRAME '\1aIEMIT>
+                   <PUSH '`SUB>
+                   <PUSH 0>
+                   <PUSH NUM4>
+                   <DEAD NUM4>
+                   <PUSH '=>
+                   <PUSH W5>
+                   <DEAD W5>
+                   <PUSH (`TYPE FIX)>
+                   <CALL '\1aIEMIT 6 = TEMP12>
+                   <RETURN TEMP12>
+                   <DEAD TEMP12>
+PHRASE10
+                   <FRAME '\1aISTYPE?>
+                   <PUSH TY6>
+                   <CALL '\1aISTYPE? 1 = TEMP12>
+                   <VEQUAL? TEMP12 'FLOAT - PHRASE14>
+                   <DEAD TEMP12>
+                   <FRAME '\1aIEMIT>
+                   <PUSH '`SUBF>
+                   <PUSH 0>
+                   <PUSH NUM4>
+                   <DEAD NUM4>
+                   <PUSH '=>
+                   <PUSH W5>
+                   <DEAD W5>
+                   <PUSH (`TYPE FLOAT)>
+                   <CALL '\1aIEMIT 6 = TEMP12>
+                   <RETURN TEMP12>
+                   <DEAD TEMP12>
+PHRASE14
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0 = TEMP12>
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0 = TG28>
+                   <FRAME '\1aGEN-TYPE?>
+                   <PUSH NUM4>
+                   <PUSH 'FIX>
+                   <PUSH TEMP12>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TYPE? 4>
+                   <FRAME '\1aIEMIT>
+                   <PUSH '`SUB>
+                   <PUSH 0>
+                   <PUSH NUM4>
+                   <PUSH '=>
+                   <PUSH W5>
+                   <PUSH (`TYPE FIX)>
+                   <CALL '\1aIEMIT 6>
+                   <FRAME '\1aBRANCH-TAG>
+                   <PUSH TG28>
+                   <CALL '\1aBRANCH-TAG 1>
+                   <FRAME '\1aLABEL-TAG>
+                   <PUSH TEMP12>
+                   <DEAD TEMP12>
+                   <CALL '\1aLABEL-TAG 1>
+                   <FRAME '\1aTYPE-OK?>
+                   <PUSH TY6>
+                   <DEAD TY6>
+                   <PUSH <NOT <OR FIX FLOAT>>>
+                   <CALL '\1aTYPE-OK? 2 = TEMP12>
+                   <TYPE? TEMP12 <TYPE-CODE FALSE> + PHRASE26>
+                   <DEAD TEMP12>
+                   <FRAME '\1aGEN-TYPE?>
+                   <PUSH NUM4>
+                   <PUSH 'FLOAT>
+                   <PUSH '`COMPERR>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TYPE? 4>
+PHRASE26
+                   <FRAME '\1aIEMIT>
+                   <PUSH '`SUBF>
+                   <PUSH 0.0>
+                   <PUSH NUM4>
+                   <DEAD NUM4>
+                   <PUSH '=>
+                   <PUSH W5>
+                   <DEAD W5>
+                   <PUSH (`TYPE FLOAT)>
+                   <CALL '\1aIEMIT 6>
+                   <FRAME '\1aLABEL-TAG>
+                   <PUSH TG28>
+                   <DEAD TG28>
+                   <CALL '\1aLABEL-TAG 1 = TEMP12>
+                   <RETURN TEMP12>
+                   <DEAD TEMP12>
+                   <END \1aDO-SUB>
+
+#WORD *6101511567*
+                   <GFCN \1aDO-LESS? ("VALUE" <OR ATOM <LIST ANY>> ANY ANY ANY) NUM4 TG5 TY6>
+                   <TEMP TEMP12 TG28:ATOM>
+                   <INTGO>
+                   <FRAME '\1aISTYPE?>
+                   <PUSH TY6>
+                   <CALL '\1aISTYPE? 1 = TEMP12>
+                   <VEQUAL? TEMP12 'FIX - PHRASE10>
+                   <DEAD TEMP12>
+                   <FRAME '\1aIEMIT>
+                   <PUSH '`LESS?>
+                   <PUSH NUM4>
+                   <DEAD NUM4>
+                   <PUSH 0>
+                   <PUSH '->
+                   <PUSH TG5>
+                   <DEAD TG5>
+                   <PUSH (`TYPE FIX)>
+                   <CALL '\1aIEMIT 6 = TEMP12>
+                   <RETURN TEMP12>
+                   <DEAD TEMP12>
+PHRASE10
+                   <FRAME '\1aISTYPE?>
+                   <PUSH TY6>
+                   <CALL '\1aISTYPE? 1 = TEMP12>
+                   <VEQUAL? TEMP12 'FLOAT - PHRASE14>
+                   <DEAD TEMP12>
+                   <FRAME '\1aIEMIT>
+                   <PUSH '`LESS?>
+                   <PUSH NUM4>
+                   <DEAD NUM4>
+                   <PUSH 0.0>
+                   <PUSH '->
+                   <PUSH TG5>
+                   <DEAD TG5>
+                   <PUSH (`TYPE FLOAT)>
+                   <CALL '\1aIEMIT 6 = TEMP12>
+                   <RETURN TEMP12>
+                   <DEAD TEMP12>
+PHRASE14
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0 = TEMP12>
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0 = TG28>
+                   <FRAME '\1aGEN-TYPE?>
+                   <PUSH NUM4>
+                   <PUSH 'FIX>
+                   <PUSH TEMP12>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TYPE? 4>
+                   <FRAME '\1aIEMIT>
+                   <PUSH '`LESS?>
+                   <PUSH NUM4>
+                   <PUSH 0>
+                   <PUSH '->
+                   <PUSH TG5>
+                   <PUSH (`TYPE FIX)>
+                   <CALL '\1aIEMIT 6>
+                   <FRAME '\1aBRANCH-TAG>
+                   <PUSH TG28>
+                   <CALL '\1aBRANCH-TAG 1>
+                   <FRAME '\1aLABEL-TAG>
+                   <PUSH TEMP12>
+                   <DEAD TEMP12>
+                   <CALL '\1aLABEL-TAG 1>
+                   <GEN-LVAL 'CAREFUL = TEMP12>
+                   <TYPE? TEMP12 <TYPE-CODE FALSE> + PHRASE26>
+                   <DEAD TEMP12>
+                   <FRAME '\1aTYPE-OK?>
+                   <PUSH TY6>
+                   <DEAD TY6>
+                   <PUSH <NOT <OR FIX FLOAT>>>
+                   <CALL '\1aTYPE-OK? 2 = TEMP12>
+                   <TYPE? TEMP12 <TYPE-CODE FALSE> + PHRASE26>
+                   <DEAD TEMP12>
+                   <FRAME '\1aGEN-TYPE?>
+                   <PUSH NUM4>
+                   <PUSH 'FLOAT>
+                   <PUSH '`COMPERR>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TYPE? 4>
+PHRASE26
+                   <FRAME '\1aIEMIT>
+                   <PUSH '`LESS?>
+                   <PUSH NUM4>
+                   <DEAD NUM4>
+                   <PUSH 0.0>
+                   <PUSH '->
+                   <PUSH TG5>
+                   <DEAD TG5>
+                   <PUSH (`TYPE FLOAT)>
+                   <CALL '\1aIEMIT 6>
+                   <FRAME '\1aLABEL-TAG>
+                   <PUSH TG28>
+                   <DEAD TG28>
+                   <CALL '\1aLABEL-TAG 1 = TEMP12>
+                   <RETURN TEMP12>
+                   <DEAD TEMP12>
+                   <END \1aDO-LESS?>
+
+#WORD *1656556455*
+                   <GFCN \1aMOD-GEN ("VALUE" ANY NODE ANY) N4 W5>
+                   <TEMP TEMP10 N16:NODE N27:NODE TEMP31 TEMP32>
+                   <INTGO>
+                   <NTHUV N4 5 = TEMP10 (TYPE LIST)>
+                   <NTHL TEMP10 1 = N16 (TYPE NODE)>
+                   <DEAD TEMP10>
+                   <NTHUV N4 5 = TEMP10 (TYPE LIST)>
+                   <DEAD N4>
+                   <RESTL TEMP10 1 = TEMP10 (TYPE LIST)>
+                   <NTHL TEMP10 1 = N27 (TYPE NODE)>
+                   <DEAD TEMP10>
+                   <NTHUV N27 1 = TEMP10 (TYPE FIX)>
+                   <VEQUAL? TEMP10 2 - PHRASE12 (TYPE FIX)>
+                   <DEAD TEMP10>
+                   <FRAME '\1aPOPWR2>
+                   <NTHUV N27 4 = STACK (TYPE FIX)>
+                   <CALL '\1aPOPWR2 1 = TEMP10>
+                   <TYPE? TEMP10 <TYPE-CODE FALSE> + PHRASE12>
+                   <DEAD TEMP10>
+                   <FRAME '\1aFREE-TEMP>
+                   <FRAME '\1aGEN>
+                   <PUSH N16>
+                   <DEAD N16>
+                   <PUSH 'DONT-CARE>
+                   <CALL '\1aGEN 2 = TEMP10>
+                   <PUSH TEMP10>
+                   <CALL '\1aFREE-TEMP 1>
+                   <FRAME '\1aIEMIT>
+                   <PUSH '`AND>
+                   <PUSH TEMP10>
+                   <DEAD TEMP10>
+                   <NTHUV N27 4 = TEMP10>
+                   <DEAD N27>
+                   <SUB TEMP10 1 = STACK (TYPE FIX)>
+                   <DEAD TEMP10>
+                   <PUSH '=>
+                   <TYPE? W5 <TYPE-CODE TEMP> - PHRASE19>
+                   <FRAME '\1aUSE-TEMP>
+                   <PUSH W5>
+                   <PUSH 'FIX>
+                   <CALL '\1aUSE-TEMP 2>
+                   <SET TEMP10 W5>
+                   <JUMP + PHRASE23>
+PHRASE19
+                   <EQUAL? W5 'DONT-CARE - PHRASE21>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH 'FIX>
+                   <CALL '\1aGEN-TEMP 1 = W5>
+                   <SET TEMP10 W5>
+                   <JUMP + PHRASE23>
+PHRASE21
+                   <SET TEMP10 W5>
+PHRASE23
+                   <PUSH TEMP10>
+                   <DEAD TEMP10>
+                   <CALL '\1aIEMIT 5>
+                   <RETURN W5>
+                   <DEAD W5>
+PHRASE12
+                   <NTHUV N16 1 = TEMP10 (TYPE FIX)>
+                   <GVAL 'SNODES = TEMP31>
+                   <EMPUU? TEMP31 + PHRASE26>
+                   <LOOP (TEMP10 VALUE) (TEMP31 LENGTH VALUE)>
+TAG29
+                   <NTHUU TEMP31 1 = TEMP32>
+                   <VEQUAL? TEMP32 TEMP10 + TAG28>
+                   <DEAD TEMP32>
+                   <RESTUU TEMP31 1 = TEMP31 (TYPE UVECTOR)>
+                   <EMPUU? TEMP31 - TAG29>
+                   <JUMP + PHRASE26>
+TAG28
+                   <NTHUV N27 1 = TEMP31 (TYPE FIX)>
+                   <GVAL 'SNODES = TEMP10>
+                   <EMPUU? TEMP10 + TAG33>
+                   <LOOP (TEMP31 VALUE) (TEMP10 LENGTH VALUE)>
+TAG34
+                   <NTHUU TEMP10 1 = TEMP32>
+                   <VEQUAL? TEMP32 TEMP31 + PHRASE26>
+                   <DEAD TEMP32>
+                   <RESTUU TEMP10 1 = TEMP10 (TYPE UVECTOR)>
+                   <EMPUU? TEMP10 - TAG34>
+TAG33
+                   <NTHUV N27 8 = TEMP10>
+                   <TYPE? TEMP10 <TYPE-CODE FALSE> - PHRASE26>
+                   <DEAD TEMP10>
+                   <FRAME '\1aGEN>
+                   <PUSH N27>
+                   <DEAD N27>
+                   <PUSH 'DONT-CARE>
+                   <CALL '\1aGEN 2 = TEMP31>
+                   <FRAME '\1aINTERF-CHANGE>
+                   <PUSH TEMP31>
+                   <DEAD TEMP31>
+                   <PUSH N16>
+                   <CALL '\1aINTERF-CHANGE 2 = TEMP31>
+                   <FRAME '\1aGEN>
+                   <PUSH N16>
+                   <DEAD N16>
+                   <PUSH 'DONT-CARE>
+                   <CALL '\1aGEN 2 = TEMP10>
+                   <JUMP + PHRASE39>
+PHRASE26
+                   <FRAME '\1aGEN>
+                   <PUSH N16>
+                   <DEAD N16>
+                   <PUSH 'DONT-CARE>
+                   <CALL '\1aGEN 2 = TEMP10>
+                   <FRAME '\1aINTERF-CHANGE>
+                   <PUSH TEMP10>
+                   <DEAD TEMP10>
+                   <PUSH N27>
+                   <CALL '\1aINTERF-CHANGE 2 = TEMP10>
+                   <FRAME '\1aGEN>
+                   <PUSH N27>
+                   <DEAD N27>
+                   <PUSH 'DONT-CARE>
+                   <CALL '\1aGEN 2 = TEMP31>
+PHRASE39
+                   <FRAME '\1aFREE-TEMP>
+                   <PUSH TEMP10>
+                   <PUSH %<>>
+                   <CALL '\1aFREE-TEMP 2>
+                   <FRAME '\1aFREE-TEMP>
+                   <PUSH TEMP31>
+                   <PUSH %<>>
+                   <CALL '\1aFREE-TEMP 2>
+                   <EQUAL? W5 'DONT-CARE - PHRASE46>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH 'FIX>
+                   <CALL '\1aGEN-TEMP 1 = W5>
+                   <JUMP + PHRASE48>
+PHRASE46
+                   <TYPE? W5 <TYPE-CODE TEMP> - PHRASE48>
+                   <FRAME '\1aUSE-TEMP>
+                   <PUSH W5>
+                   <PUSH 'FIX>
+                   <CALL '\1aUSE-TEMP 2>
+PHRASE48
+                   <FRAME '\1aIEMIT>
+                   <PUSH '`MOD>
+                   <PUSH TEMP10>
+                   <DEAD TEMP10>
+                   <PUSH TEMP31>
+                   <DEAD TEMP31>
+                   <PUSH '=>
+                   <PUSH W5>
+                   <PUSH (`TYPE FIX)>
+                   <CALL '\1aIEMIT 6>
+                   <RETURN W5>
+                   <DEAD W5>
+                   <END \1aMOD-GEN>
+
+#WORD *13352506300*
+                   <GFCN \1aROT-GEN ("VALUE" ANY ANY ANY) N4 W5>
+                   <TEMP TEMP7>
+                   <INTGO>
+                   <FRAME '\1aROT-LSH-GEN>
+                   <PUSH N4>
+                   <DEAD N4>
+                   <PUSH W5>
+                   <DEAD W5>
+                   <PUSH '`ROT>
+                   <CALL '\1aROT-LSH-GEN 3 = TEMP7>
+                   <RETURN TEMP7>
+                   <DEAD TEMP7>
+                   <END \1aROT-GEN>
+
+#WORD *13012505200*
+                   <GFCN \1aLSH-GEN ("VALUE" ANY ANY ANY) N4 W5>
+                   <TEMP TEMP7>
+                   <INTGO>
+                   <FRAME '\1aROT-LSH-GEN>
+                   <PUSH N4>
+                   <DEAD N4>
+                   <PUSH W5>
+                   <DEAD W5>
+                   <PUSH '`LSH>
+                   <CALL '\1aROT-LSH-GEN 3 = TEMP7>
+                   <RETURN TEMP7>
+                   <DEAD TEMP7>
+                   <END \1aLSH-GEN>
+
+#WORD *4152556114*
+                   <GFCN \1aROT-LSH-GEN ("VALUE" ANY NODE ANY ANY) N4 W5 INS6>
+                   <TEMP K7 A18:NODE A29:NODE TEMP30 TEMP31>
+                   <INTGO>
+                   <NTHUV N4 5 = K7 (TYPE LIST)>
+                   <DEAD N4>
+                   <NTHL K7 1 = A18 (TYPE NODE)>
+                   <RESTL K7 1 = K7 (TYPE LIST)>
+                   <NTHL K7 1 = A29 (TYPE NODE)>
+                   <DEAD K7>
+                   <NTHUV A29 1 = K7 (TYPE FIX)>
+                   <VEQUAL? K7 2 - PHRASE14 (TYPE FIX)>
+                   <DEAD K7>
+                   <FRAME '\1aGEN>
+                   <PUSH A18>
+                   <DEAD A18>
+                   <PUSH 'DONT-CARE>
+                   <CALL '\1aGEN 2 = K7>
+                   <FRAME '\1aFREE-TEMP>
+                   <PUSH K7>
+                   <PUSH %<>>
+                   <CALL '\1aFREE-TEMP 2>
+                   <EQUAL? W5 'DONT-CARE - PHRASE18>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH 'FIX>
+                   <CALL '\1aGEN-TEMP 1 = W5>
+                   <JUMP + PHRASE20>
+PHRASE18
+                   <TYPE? W5 <TYPE-CODE TEMP> - PHRASE20>
+                   <FRAME '\1aUSE-TEMP>
+                   <PUSH W5>
+                   <PUSH 'FIX>
+                   <CALL '\1aUSE-TEMP 2>
+PHRASE20
+                   <FRAME '\1aIEMIT>
+                   <PUSH INS6>
+                   <DEAD INS6>
+                   <PUSH K7>
+                   <DEAD K7>
+                   <NTHUV A29 4 = STACK>
+                   <DEAD A29>
+                   <PUSH '=>
+                   <PUSH W5>
+                   <PUSH (`TYPE FIX)>
+                   <CALL '\1aIEMIT 6>
+                   <RETURN W5>
+                   <DEAD W5>
+PHRASE14
+                   <NTHUV A18 1 = K7 (TYPE FIX)>
+                   <GVAL 'SNODES = TEMP30>
+                   <EMPUU? TEMP30 + PHRASE25>
+                   <LOOP (K7 VALUE) (TEMP30 LENGTH VALUE)>
+TAG28
+                   <NTHUU TEMP30 1 = TEMP31>
+                   <VEQUAL? TEMP31 K7 + TAG27>
+                   <DEAD TEMP31>
+                   <RESTUU TEMP30 1 = TEMP30 (TYPE UVECTOR)>
+                   <EMPUU? TEMP30 - TAG28>
+                   <JUMP + PHRASE25>
+TAG27
+                   <NTHUV A29 1 = TEMP30 (TYPE FIX)>
+                   <GVAL 'SNODES = K7>
+                   <EMPUU? K7 + TAG32>
+                   <LOOP (TEMP30 VALUE) (K7 LENGTH VALUE)>
+TAG33
+                   <NTHUU K7 1 = TEMP31>
+                   <VEQUAL? TEMP31 TEMP30 + PHRASE25>
+                   <DEAD TEMP31>
+                   <RESTUU K7 1 = K7 (TYPE UVECTOR)>
+                   <EMPUU? K7 - TAG33>
+TAG32
+                   <NTHUV A29 8 = K7>
+                   <TYPE? K7 <TYPE-CODE FALSE> - PHRASE25>
+                   <DEAD K7>
+                   <FRAME '\1aGEN>
+                   <PUSH A29>
+                   <DEAD A29>
+                   <PUSH 'DONT-CARE>
+                   <CALL '\1aGEN 2 = TEMP30>
+                   <FRAME '\1aINTERF-CHANGE>
+                   <PUSH TEMP30>
+                   <DEAD TEMP30>
+                   <PUSH A18>
+                   <CALL '\1aINTERF-CHANGE 2 = TEMP30>
+                   <FRAME '\1aGEN>
+                   <PUSH A18>
+                   <DEAD A18>
+                   <PUSH 'DONT-CARE>
+                   <CALL '\1aGEN 2 = K7>
+                   <JUMP + PHRASE38>
+PHRASE25
+                   <FRAME '\1aGEN>
+                   <PUSH A18>
+                   <DEAD A18>
+                   <PUSH 'DONT-CARE>
+                   <CALL '\1aGEN 2 = K7>
+                   <FRAME '\1aINTERF-CHANGE>
+                   <PUSH K7>
+                   <DEAD K7>
+                   <PUSH A29>
+                   <CALL '\1aINTERF-CHANGE 2 = K7>
+                   <FRAME '\1aGEN>
+                   <PUSH A29>
+                   <DEAD A29>
+                   <PUSH 'DONT-CARE>
+                   <CALL '\1aGEN 2 = TEMP30>
+PHRASE38
+                   <FRAME '\1aFREE-TEMP>
+                   <PUSH K7>
+                   <PUSH %<>>
+                   <CALL '\1aFREE-TEMP 2>
+                   <FRAME '\1aFREE-TEMP>
+                   <PUSH TEMP30>
+                   <PUSH %<>>
+                   <CALL '\1aFREE-TEMP 2>
+                   <EQUAL? W5 'DONT-CARE - PHRASE45>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH 'FIX>
+                   <CALL '\1aGEN-TEMP 1 = W5>
+                   <JUMP + PHRASE47>
+PHRASE45
+                   <TYPE? W5 <TYPE-CODE TEMP> - PHRASE47>
+                   <FRAME '\1aUSE-TEMP>
+                   <PUSH W5>
+                   <PUSH 'FIX>
+                   <CALL '\1aUSE-TEMP 2>
+PHRASE47
+                   <FRAME '\1aIEMIT>
+                   <PUSH INS6>
+                   <DEAD INS6>
+                   <PUSH K7>
+                   <DEAD K7>
+                   <PUSH TEMP30>
+                   <DEAD TEMP30>
+                   <PUSH '=>
+                   <PUSH W5>
+                   <PUSH (`TYPE FIX)>
+                   <CALL '\1aIEMIT 6>
+                   <RETURN W5>
+                   <DEAD W5>
+                   <END \1aROT-LSH-GEN>
+
+#WORD *16753451763*
+                   <GFCN \1aFLOAT-GEN ("VALUE" ANY NODE ANY) N4 W5>
+                   <TEMP TEMP11 NUM6>
+                   <INTGO>
+                   <NTHUV N4 5 = TEMP11 (TYPE LIST)>
+                   <NTHL TEMP11 1 = NUM6 (TYPE NODE)>
+                   <DEAD TEMP11>
+                   <NTHUV NUM6 3 = TEMP11>
+                   <EQUAL? TEMP11 'FLOAT - PHRASE13>
+                   <FRAME '\1aCOMPILE-WARNING>
+                   <PUSH "Unnecessary FLOAT: ">
+                   <PUSH N4>
+                   <DEAD N4>
+                   <CALL '\1aCOMPILE-WARNING 2>
+                   <FRAME '\1aGEN>
+                   <PUSH NUM6>
+                   <DEAD NUM6>
+                   <PUSH W5>
+                   <DEAD W5>
+                   <CALL '\1aGEN 2 = TEMP11>
+                   <RETURN TEMP11>
+                   <DEAD TEMP11>
+PHRASE13
+                   <FRAME '\1aISTYPE?>
+                   <PUSH TEMP11>
+                   <DEAD TEMP11>
+                   <CALL '\1aISTYPE? 1 = TEMP11>
+                   <VEQUAL? TEMP11 'FIX - PHRASE16>
+                   <DEAD TEMP11>
+                   <FRAME '\1aGEN>
+                   <PUSH NUM6>
+                   <DEAD NUM6>
+                   <CALL '\1aGEN 1 = TEMP11>
+                   <FRAME '\1aFREE-TEMP>
+                   <PUSH TEMP11>
+                   <PUSH %<>>
+                   <CALL '\1aFREE-TEMP 2>
+                   <EQUAL? W5 'DONT-CARE - PHRASE22>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH 'FLOAT>
+                   <CALL '\1aGEN-TEMP 1 = W5>
+                   <JUMP + PHRASE24>
+PHRASE22
+                   <TYPE? W5 <TYPE-CODE TEMP> - PHRASE24>
+                   <FRAME '\1aUSE-TEMP>
+                   <PUSH W5>
+                   <PUSH 'FLOAT>
+                   <CALL '\1aUSE-TEMP 2>
+PHRASE24
+                   <FRAME '\1aGEN-FLOAT>
+                   <PUSH TEMP11>
+                   <DEAD TEMP11>
+                   <PUSH W5>
+                   <CALL '\1aGEN-FLOAT 2>
+                   <RETURN W5>
+                   <DEAD W5>
+PHRASE16
+                   <TYPE? W5 <TYPE-CODE TEMP> - BOOL30>
+                   <NTHUV W5 5 = TEMP11>
+                   <TYPE? TEMP11 <TYPE-CODE FALSE> + BOOL30>
+                   <DEAD TEMP11>
+                   <NTHUV W5 5 = TEMP11>
+                   <EQUAL? TEMP11 'ANY + PHRASE29>
+                   <DEAD TEMP11>
+BOOL30
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TEMP 1 = TEMP11>
+                   <JUMP + PHRASE32>
+PHRASE29
+                   <SET TEMP11 W5>
+PHRASE32
+                   <FRAME '\1aGEN>
+                   <PUSH NUM6>
+                   <DEAD NUM6>
+                   <PUSH TEMP11>
+                   <DEAD TEMP11>
+                   <CALL '\1aGEN 2 = TEMP11>
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0 = NUM6>
+                   <FRAME '\1aGEN-TYPE?>
+                   <PUSH TEMP11>
+                   <PUSH 'FLOAT>
+                   <PUSH NUM6>
+                   <PUSH 'T>
+                   <CALL '\1aGEN-TYPE? 4>
+                   <FRAME '\1aGEN-FLOAT>
+                   <PUSH TEMP11>
+                   <PUSH TEMP11>
+                   <CALL '\1aGEN-FLOAT 2>
+                   <FRAME '\1aLABEL-TAG>
+                   <PUSH NUM6>
+                   <DEAD NUM6>
+                   <CALL '\1aLABEL-TAG 1>
+                   <EQUAL? TEMP11 W5 + PHRASE39>
+                   <FRAME '\1aMOVE-ARG>
+                   <PUSH TEMP11>
+                   <DEAD TEMP11>
+                   <PUSH W5>
+                   <DEAD W5>
+                   <CALL '\1aMOVE-ARG 2 = TEMP11>
+                   <RETURN TEMP11>
+                   <DEAD TEMP11>
+PHRASE39
+                   <RETURN W5>
+                   <DEAD W5>
+                   <END \1aFLOAT-GEN>
+
+#WORD *24423177775*
+                   <GFCN \1aFIX-GEN ("VALUE" ANY NODE ANY) N4 W5>
+                   <TEMP TEMP11 NUM6 RT7>
+                   <INTGO>
+                   <NTHUV N4 5 = TEMP11 (TYPE LIST)>
+                   <NTHL TEMP11 1 = NUM6 (TYPE NODE)>
+                   <DEAD TEMP11>
+                   <NTHUV NUM6 3 = RT7>
+                   <FRAME '\1aISTYPE?>
+                   <PUSH RT7>
+                   <CALL '\1aISTYPE? 1 = TEMP11>
+                   <VEQUAL? TEMP11 'FIX - PHRASE13>
+                   <DEAD TEMP11>
+                   <FRAME '\1aCOMPILE-WARNING>
+                   <PUSH "Unnecessary  FIX: ">
+                   <PUSH N4>
+                   <DEAD N4>
+                   <CALL '\1aCOMPILE-WARNING 2>
+                   <FRAME '\1aGEN>
+                   <PUSH NUM6>
+                   <DEAD NUM6>
+                   <PUSH W5>
+                   <DEAD W5>
+                   <CALL '\1aGEN 2 = TEMP11>
+                   <RETURN TEMP11>
+                   <DEAD TEMP11>
+PHRASE13
+                   <EQUAL? RT7 'FLOAT - PHRASE17>
+                   <DEAD RT7>
+                   <FRAME '\1aGEN>
+                   <PUSH NUM6>
+                   <DEAD NUM6>
+                   <CALL '\1aGEN 1 = TEMP11>
+                   <FRAME '\1aFREE-TEMP>
+                   <PUSH TEMP11>
+                   <PUSH %<>>
+                   <CALL '\1aFREE-TEMP 2>
+                   <EQUAL? W5 'DONT-CARE - PHRASE21>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH 'FIX>
+                   <CALL '\1aGEN-TEMP 1 = W5>
+                   <JUMP + PHRASE23>
+PHRASE21
+                   <TYPE? W5 <TYPE-CODE TEMP> - PHRASE23>
+                   <FRAME '\1aUSE-TEMP>
+                   <PUSH W5>
+                   <PUSH 'FIX>
+                   <CALL '\1aUSE-TEMP 2>
+PHRASE23
+                   <FRAME '\1aGEN-FIX>
+                   <PUSH TEMP11>
+                   <DEAD TEMP11>
+                   <PUSH W5>
+                   <CALL '\1aGEN-FIX 2>
+                   <RETURN W5>
+                   <DEAD W5>
+PHRASE17
+                   <TYPE? W5 <TYPE-CODE TEMP> - BOOL29>
+                   <NTHUV W5 5 = TEMP11>
+                   <TYPE? TEMP11 <TYPE-CODE FALSE> + BOOL29>
+                   <DEAD TEMP11>
+                   <NTHUV W5 5 = TEMP11>
+                   <EQUAL? TEMP11 'ANY + PHRASE28>
+                   <DEAD TEMP11>
+BOOL29
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TEMP 1 = TEMP11>
+                   <JUMP + PHRASE32>
+PHRASE28
+                   <SET TEMP11 W5>
+PHRASE32
+                   <FRAME '\1aGEN>
+                   <PUSH NUM6>
+                   <DEAD NUM6>
+                   <PUSH TEMP11>
+                   <DEAD TEMP11>
+                   <CALL '\1aGEN 2 = TEMP11>
+                   <FRAME '\1aGEN-TYPE?>
+                   <PUSH TEMP11>
+                   <PUSH 'FIX>
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0 = NUM6>
+                   <PUSH NUM6>
+                   <PUSH 'T>
+                   <CALL '\1aGEN-TYPE? 4>
+                   <FRAME '\1aGEN-FIX>
+                   <PUSH TEMP11>
+                   <PUSH TEMP11>
+                   <CALL '\1aGEN-FIX 2>
+                   <FRAME '\1aLABEL-TAG>
+                   <PUSH NUM6>
+                   <DEAD NUM6>
+                   <CALL '\1aLABEL-TAG 1>
+                   <EQUAL? TEMP11 W5 + PHRASE39>
+                   <FRAME '\1aMOVE-ARG>
+                   <PUSH TEMP11>
+                   <DEAD TEMP11>
+                   <PUSH W5>
+                   <DEAD W5>
+                   <CALL '\1aMOVE-ARG 2 = TEMP11>
+                   <RETURN TEMP11>
+                   <DEAD TEMP11>
+PHRASE39
+                   <RETURN W5>
+                   <DEAD W5>
+                   <END \1aFIX-GEN>
+
+#WORD *22402451725*
+                   <GFCN \1aGEN-FLOAT ("VALUE" ANY ANY ANY) DAT4 W5>
+                   <TEMP TEMP8>
+                   <INTGO>
+                   <TYPE? DAT4 <TYPE-CODE FIX> - PHRASE7>
+                   <FLOAT DAT4 = TEMP8 (TYPE FLOAT)>
+                   <DEAD DAT4>
+                   <RETURN TEMP8>
+                   <DEAD TEMP8>
+PHRASE7
+                   <FRAME '\1aIEMIT>
+                   <PUSH '`FLOAT>
+                   <PUSH DAT4>
+                   <DEAD DAT4>
+                   <PUSH '=>
+                   <PUSH W5>
+                   <PUSH (`TYPE FLOAT)>
+                   <CALL '\1aIEMIT 5>
+                   <RETURN W5>
+                   <DEAD W5>
+                   <END \1aGEN-FLOAT>
+
+#WORD *32652223116*
+                   <GFCN \1aGEN-FIX ("VALUE" ANY ANY "OPTIONAL" ANY) DAT6 W7>
+                   <OPT-DISPATCH 1 %<> OPT4 OPT5>
+OPT4
+                   <PUSH #T$UNBOUND 0>
+OPT5
+                   <TEMP TEMP13>
+                   <INTGO>
+                   <TYPE? W7 <TYPE-CODE UNBOUND> - TAG8>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TEMP 1 = W7>
+TAG8
+                   <TYPE? DAT6 <TYPE-CODE FLOAT> - PHRASE12>
+                   <FIX DAT6 = TEMP13 (TYPE FIX)>
+                   <DEAD DAT6>
+                   <RETURN TEMP13>
+                   <DEAD TEMP13>
+PHRASE12
+                   <FRAME '\1aIEMIT>
+                   <PUSH '`FIX>
+                   <PUSH DAT6>
+                   <DEAD DAT6>
+                   <PUSH '=>
+                   <PUSH W7>
+                   <PUSH (`TYPE FIX)>
+                   <CALL '\1aIEMIT 5>
+                   <RETURN W7>
+                   <DEAD W7>
+                   <END \1aGEN-FIX>
+
+#WORD *5277444307*
+                   <GFCN \1aFLOP ("VALUE" ATOM ATOM) SUBR4>
+                   <TEMP TEMP9 TEMP10>
+                   <INTGO>
+                   <SET TEMP9 [G? L? G? G=? L=? G=? ==? ==? N==? N==? 1? -1? 1? 0? 0?] (TYPE VECTOR)>
+                   <LOOP (SUBR4 VALUE) (TEMP9 LENGTH VALUE)>
+TAG7
+                   <NTHUV TEMP9 1 = TEMP10>
+                   <VEQUAL? TEMP10 SUBR4 + TAG6>
+                   <DEAD TEMP10>
+                   <RESTUV TEMP9 1 = TEMP9 (TYPE VECTOR)>
+                   <EMPUV? TEMP9 - TAG7>
+                   <SET TEMP9 %<> (TYPE FALSE)>
+TAG6
+                   <RESTUV TEMP9 1 = TEMP9 (TYPE VECTOR)>
+                   <NTHUV TEMP9 1 = TEMP9 (TYPE ATOM)>
+                   <RETURN TEMP9>
+                   <DEAD TEMP9>
+                   <END \1aFLOP>
+
+#WORD *5320332642*
+                   <GFCN \1aFLIP ("VALUE" ATOM ATOM) SUBR4>
+                   <TEMP TEMP6:VECTOR N5 TEMP13>
+                   <INTGO>
+                   <GVAL '0SUBRS = TEMP6>
+                   <GVAL '0SUBRS = N5>
+                   <EMPUV? N5 + TAG8>
+                   <LOOP (SUBR4 VALUE) (N5 LENGTH VALUE)>
+TAG10
+                   <NTHUV N5 1 = TEMP13>
+                   <VEQUAL? TEMP13 SUBR4 + TAG9>
+                   <DEAD TEMP13>
+                   <RESTUV N5 1 = N5 (TYPE VECTOR)>
+                   <EMPUV? N5 - TAG10>
+TAG8
+                   <SET N5 %<> (TYPE FALSE)>
+TAG9
+                   <LENUV N5 = N5 (TYPE FIX)>
+                   <SUB 13 N5 = TEMP13 (TYPE FIX)>
+                   <AND N5 1 = N5>
+                   <VEQUAL? N5 0 - PHRASE15 (TYPE FIX)>
+                   <DEAD N5>
+                   <SET N5 -1 (TYPE FIX)>
+                   <JUMP + PHRASE18>
+PHRASE15
+                   <SET N5 1 (TYPE FIX)>
+PHRASE18
+                   <SUB TEMP13 N5 = TEMP13 (TYPE FIX)>
+                   <DEAD N5>
+                   <NTHUV TEMP6 TEMP13 = TEMP13 (TYPE ATOM)>
+                   <DEAD TEMP6>
+                   <RETURN TEMP13>
+                   <DEAD TEMP13>
+                   <END \1aFLIP>
+
+#WORD *35521622600*
+                   <GFCN \1aPRED? ("VALUE" <OR ATOM !<FALSE>> FIX) N4>
+                   <TEMP TEMP6>
+                   <INTGO>
+                   <GVAL 'PREDV = TEMP6>
+                   <NTHUU TEMP6 N4 = TEMP6 (TYPE FIX)>
+                   <DEAD N4>
+                   <VEQUAL? TEMP6 0 + TAG7 (TYPE FIX)>
+                   <DEAD TEMP6>
+                   <RETURN 'T>
+TAG7
+                   <RETURN %<>>
+                   <END \1aPRED?>
+
+#WORD *416050110*
+                   <GFCN \1aLN-LST ("VALUE" <OR ATOM FALSE> NODE) N4>
+                   <TEMP TEMP7>
+                   <INTGO>
+                   <NTHUV N4 1 = TEMP7 (TYPE FIX)>
+                   <VEQUAL? TEMP7 25 + TAG8 (TYPE FIX)>
+                   <DEAD TEMP7>
+                   <RETURN %<>>
+TAG8
+                   <FRAME '\1aSTRUCTYP>
+                   <NTHUV N4 5 = TEMP7 (TYPE LIST)>
+                   <DEAD N4>
+                   <NTHL TEMP7 1 = TEMP7 (TYPE NODE)>
+                   <NTHUV TEMP7 3 = STACK>
+                   <DEAD TEMP7>
+                   <CALL '\1aSTRUCTYP 1 = TEMP7>
+                   <EQUAL? TEMP7 'LIST - TAG9>
+                   <DEAD TEMP7>
+                   <RETURN 'T>
+TAG9
+                   <RETURN %<>>
+                   <END \1aLN-LST>
+
+#WORD *14777330057*
+                   <GFCN \1a0-TEST ("VALUE" ANY NODE ANY "OPTIONAL" ANY ANY ANY ANY) NOD9 WHERE10 NOTF11 BRANCH12 DIR13 SETF14>
+                   <OPT-DISPATCH 2 %<> OPT4 OPT5 OPT6 OPT7 OPT8>
+OPT4
+                   <PUSH %<>>
+OPT5
+                   <PUSH %<>>
+OPT6
+                   <PUSH %<>>
+OPT7
+                   <PUSH %<>>
+OPT8
+                   <TEMP REG15 TEMP18 NN16:NODE TEMP3:LBIND>
+                   <INTGO>
+                   <GVAL 'NO-DATUM = REG15>
+                   <NTHUV NOD9 5 = TEMP18 (TYPE LIST)>
+                   <NTHL TEMP18 1 = NN16 (TYPE NODE)>
+                   <DEAD TEMP18>
+                   <GETS 'BIND = TEMP3 (TYPE LBIND)>
+                   <FRAME '\1aMAKE-TRANS>
+                   <PUSH NOD9>
+                   <PUSH 1>
+                   <PUSH 1>
+                   <PUSH 0>
+                   <PUSH 1>
+                   <PUSH 1>
+                   <PUSH 1>
+                   <FRAME '\1aSW?>
+                   <NTHUV NOD9 4 = STACK (TYPE ATOM)>
+                   <CALL '\1aSW? 1 = STACK>
+                   <CALL '\1aMAKE-TRANS 8 = TEMP18>
+                   <BBIND 'TRANSFORM 'TRANS 'FIX TEMP18>
+                   <DEAD TEMP18>
+                   <FRAME '\1aLN-LST>
+                   <PUSH NN16>
+                   <CALL '\1aLN-LST 1 = TEMP18>
+                   <TYPE? TEMP18 <TYPE-CODE FALSE> - PHRASE22>
+                   <DEAD TEMP18>
+                   <FRAME '\1aGEN>
+                   <PUSH NN16>
+                   <DEAD NN16>
+                   <PUSH 'DONT-CARE>
+                   <CALL '\1aGEN 2 = REG15>
+PHRASE22
+                   <FRAME '\1aTEST-DISP>
+                   <PUSH NOD9>
+                   <DEAD NOD9>
+                   <PUSH WHERE10>
+                   <DEAD WHERE10>
+                   <PUSH NOTF11>
+                   <DEAD NOTF11>
+                   <PUSH BRANCH12>
+                   <DEAD BRANCH12>
+                   <PUSH DIR13>
+                   <DEAD DIR13>
+                   <PUSH REG15>
+                   <DEAD REG15>
+                   <FRAME '\1aDO-A-TRANS>
+                   <PUSH 0>
+                   <NTHR 'TRANSFORM 2 = TEMP18 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <NTHR TEMP18 1 = STACK (RECORD-TYPE LBIND)>
+                   <DEAD TEMP18>
+                   <CALL '\1aDO-A-TRANS 2 = STACK>
+                   <NTHR 'TRANSFORM 2 = TEMP18 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <NTHR TEMP18 1 = TEMP18 (RECORD-TYPE LBIND)>
+                   <NTHUV TEMP18 3 = TEMP18 (TYPE UVECTOR)>
+                   <NTHUU TEMP18 1 = TEMP18 (TYPE FIX)>
+                   <VEQUAL? TEMP18 0 - TAG29 (TYPE FIX)>
+                   <DEAD TEMP18>
+                   <SET TEMP18 %<> (TYPE FALSE)>
+                   <JUMP + TAG30>
+TAG29
+                   <SET TEMP18 'T (TYPE ATOM)>
+TAG30
+                   <PUSH TEMP18>
+                   <DEAD TEMP18>
+                   <PUSH SETF14>
+                   <DEAD SETF14>
+                   <CALL '\1aTEST-DISP 9 = TEMP18>
+                   <UNBIND TEMP3>
+                   <DEAD TEMP3>
+                   <ADJ -9>
+                   <RETURN TEMP18>
+                   <DEAD TEMP18>
+                   <END \1a0-TEST>
+
+#WORD *12576204054*
+                   <GFCN \1aSW? ("VALUE" FIX ATOM) SBR4>
+                   <TEMP TEMP10 TEMP11>
+                   <INTGO>
+                   <SET TEMP10 [0? N0? 1? -1? N1? N-1? ==? N==?] (TYPE VECTOR)>
+                   <LOOP (SBR4 VALUE) (TEMP10 LENGTH VALUE)>
+TAG8
+                   <NTHUV TEMP10 1 = TEMP11>
+                   <VEQUAL? TEMP11 SBR4 + TAG7>
+                   <DEAD TEMP11>
+                   <RESTUV TEMP10 1 = TEMP10 (TYPE VECTOR)>
+                   <EMPUV? TEMP10 - TAG8>
+                   <JUMP + PHRASE6>
+TAG7
+                   <RETURN 0>
+PHRASE6
+                   <RETURN 1>
+                   <END \1aSW?>
+
+#WORD *5077200515*
+                   <GFCN \1aMAKE-TRANS ("VALUE" TRANS NODE FIX FIX FIX FIX FIX FIX FIX) N4 NEG5 +-6 +-V7 */8 */V9 HW10 SW11>
+                   <TEMP TEMP14 TEMP15>
+                   <INTGO>
+                   <PUSH N4>
+                   <DEAD N4>
+                   <PUSH NEG5>
+                   <DEAD NEG5>
+                   <PUSH +-6>
+                   <DEAD +-6>
+                   <PUSH +-V7>
+                   <DEAD +-V7>
+                   <PUSH */8>
+                   <DEAD */8>
+                   <PUSH */V9>
+                   <DEAD */V9>
+                   <PUSH HW10>
+                   <DEAD HW10>
+                   <PUSH SW11>
+                   <DEAD SW11>
+                   <UBLOCK <TYPE-CODE UVECTOR> 7 = STACK (TYPE UVECTOR)>
+                   <UUBLOCK <TYPE-CODE UVECTOR> 7 = TEMP14>
+                   <SET TEMP15 TEMP14>
+                   <LOOP (TEMP15 VALUE LENGTH)>
+ISTR16
+                   <EMPUU? TEMP15 + ISTRE17>
+                   <PUTUU TEMP15 1 0>
+                   <RESTUU TEMP15 1 = TEMP15>
+                   <JUMP + ISTR16>
+ISTRE17
+                   <PUSH TEMP14>
+                   <DEAD TEMP14>
+                   <UBLOCK <TYPE-CODE VECTOR> 3 = TEMP14>
+                   <CHTYPE TEMP14 <TYPE-CODE TRANS> = TEMP14>
+                   <RETURN TEMP14>
+                   <DEAD TEMP14>
+                   <END \1aMAKE-TRANS>
+
+#WORD *31640404641*
+                   <GFCN \1aDO-A-TRANS ("VALUE" FIX FIX TRANS) N4 TR5>
+                   <TEMP X6:UVECTOR TEMP8 NN7>
+                   <INTGO>
+                   <NTHUV TR5 3 = X6 (TYPE UVECTOR)>
+                   <NTHUV TR5 1 = TEMP8 (TYPE NODE)>
+                   <DEAD TR5>
+                   <NTHUV TEMP8 4 = NN7>
+                   <DEAD TEMP8>
+                   <VEQUAL? N4 0 + PHRASE20 (TYPE FIX)>
+                   <NTHUU X6 6 = TEMP8 (TYPE FIX)>
+                   <VEQUAL? TEMP8 0 + PHRASE20 (TYPE FIX)>
+                   <DEAD TEMP8>
+                   <NTHUU X6 7 = TEMP8 (TYPE FIX)>
+                   <VEQUAL? TEMP8 0 + PHRASE20 (TYPE FIX)>
+                   <DEAD TEMP8>
+                   <EQUAL? NN7 'G? - PHRASE19>
+                   <SUB N4 1 = N4 (TYPE FIX)>
+                   <JUMP + PHRASE20>
+PHRASE19
+                   <EQUAL? NN7 'L=? - PHRASE20>
+                   <DEAD NN7>
+                   <SUB N4 1 = N4 (TYPE FIX)>
+PHRASE20
+                   <NTHUU X6 1 = TEMP8 (TYPE FIX)>
+                   <VEQUAL? TEMP8 0 + PHRASE22 (TYPE FIX)>
+                   <DEAD TEMP8>
+                   <SUB 0 N4 = N4 (TYPE FIX)>
+PHRASE22
+                   <NTHUU X6 2 = TEMP8 (TYPE FIX)>
+                   <VEQUAL? TEMP8 0 + PHRASE26 (TYPE FIX)>
+                   <DEAD TEMP8>
+                   <NTHUU X6 3 = TEMP8 (TYPE FIX)>
+                   <ADD TEMP8 N4 = N4 (TYPE FIX)>
+                   <DEAD TEMP8>
+PHRASE26
+                   <NTHUU X6 4 = TEMP8 (TYPE FIX)>
+                   <GRTR? TEMP8 2 - PHRASE30 (TYPE FIX)>
+                   <DEAD TEMP8>
+                   <NTHUU X6 5 = TEMP8 (TYPE FIX)>
+                   <DIV N4 TEMP8 = N4 (TYPE FIX)>
+                   <DEAD TEMP8>
+                   <JUMP + PHRASE31>
+PHRASE30
+                   <NTHUU X6 4 = TEMP8 (TYPE FIX)>
+                   <VEQUAL? TEMP8 0 + PHRASE31 (TYPE FIX)>
+                   <DEAD TEMP8>
+                   <NTHUU X6 5 = TEMP8 (TYPE FIX)>
+                   <MUL TEMP8 N4 = N4 (TYPE FIX)>
+                   <DEAD TEMP8>
+PHRASE31
+                   <NTHUU X6 6 = TEMP8 (TYPE FIX)>
+                   <VEQUAL? TEMP8 0 + PHRASE39 (TYPE FIX)>
+                   <DEAD TEMP8>
+                   <AND N4 #WORD *777777* = N4>
+                   <NTHUU X6 7 = TEMP8 (TYPE FIX)>
+                   <DEAD X6>
+                   <VEQUAL? TEMP8 0 + PHRASE39 (TYPE FIX)>
+                   <DEAD TEMP8>
+                   <PUTBITS 0 18 18 N4 = N4>
+PHRASE39
+                   <RETURN N4>
+                   <DEAD N4>
+                   <END \1aDO-A-TRANS>
+
+#WORD *17716324565*
+                   <GFCN \1aUPDATE-TRANS ("VALUE" TRANS ANY TRANS) NOD4 TR5>
+                   <TEMP X6:UVECTOR TEMP11 FLG7>
+                   <INTGO>
+                   <NTHUV TR5 3 = X6 (TYPE UVECTOR)>
+                   <DEAD TR5>
+                   <FRAME '\1aMAKE-TRANS>
+                   <PUSH NOD4>
+                   <DEAD NOD4>
+                   <NTHUU X6 1 = TEMP11 (TYPE FIX)>
+                   <VEQUAL? TEMP11 0 + PHRASE10 (TYPE FIX)>
+                   <DEAD TEMP11>
+                   <SET TEMP11 2 (TYPE FIX)>
+                   <JUMP + PHRASE14>
+PHRASE10
+                   <SET TEMP11 0 (TYPE FIX)>
+PHRASE14
+                   <PUSH TEMP11>
+                   <DEAD TEMP11>
+                   <NTHUU X6 2 = TEMP11 (TYPE FIX)>
+                   <SET FLG7 'T (TYPE ATOM)>
+                   <VEQUAL? TEMP11 0 - TAG17 (TYPE FIX)>
+                   <DEAD TEMP11>
+                   <SET FLG7 %<> (TYPE FALSE)>
+                   <JUMP + PHRASE16>
+TAG17
+                   <SET TEMP11 2 (TYPE FIX)>
+                   <JUMP + PHRASE20>
+PHRASE16
+                   <SET TEMP11 0 (TYPE FIX)>
+PHRASE20
+                   <PUSH TEMP11>
+                   <DEAD TEMP11>
+                   <VEQUAL? FLG7 0 + PHRASE22>
+                   <DEAD FLG7>
+                   <NTHUU X6 3 = TEMP11 (TYPE FIX)>
+                   <JUMP + PHRASE23>
+PHRASE22
+                   <SET TEMP11 0 (TYPE FIX)>
+PHRASE23
+                   <PUSH TEMP11>
+                   <DEAD TEMP11>
+                   <NTHUU X6 4 = TEMP11 (TYPE FIX)>
+                   <SET FLG7 'T (TYPE ATOM)>
+                   <GRTR? TEMP11 2 - PHRASE25 (TYPE FIX)>
+                   <DEAD TEMP11>
+                   <SET TEMP11 4 (TYPE FIX)>
+                   <JUMP + PHRASE32>
+PHRASE25
+                   <NTHUU X6 4 = TEMP11 (TYPE FIX)>
+                   <SET FLG7 'T (TYPE ATOM)>
+                   <VEQUAL? TEMP11 0 - TAG29 (TYPE FIX)>
+                   <DEAD TEMP11>
+                   <SET FLG7 %<> (TYPE FALSE)>
+                   <JUMP + PHRASE27>
+TAG29
+                   <SET TEMP11 2 (TYPE FIX)>
+                   <JUMP + PHRASE32>
+PHRASE27
+                   <SET TEMP11 0 (TYPE FIX)>
+PHRASE32
+                   <PUSH TEMP11>
+                   <DEAD TEMP11>
+                   <VEQUAL? FLG7 0 + PHRASE34>
+                   <DEAD FLG7>
+                   <NTHUU X6 5 = TEMP11 (TYPE FIX)>
+                   <JUMP + PHRASE35>
+PHRASE34
+                   <SET TEMP11 1 (TYPE FIX)>
+PHRASE35
+                   <PUSH TEMP11>
+                   <DEAD TEMP11>
+                   <NTHUU X6 6 = TEMP11 (TYPE FIX)>
+                   <VEQUAL? TEMP11 0 + PHRASE37 (TYPE FIX)>
+                   <DEAD TEMP11>
+                   <SET TEMP11 2 (TYPE FIX)>
+                   <JUMP + PHRASE40>
+PHRASE37
+                   <SET TEMP11 0 (TYPE FIX)>
+PHRASE40
+                   <PUSH TEMP11>
+                   <DEAD TEMP11>
+                   <NTHUU X6 7 = TEMP11 (TYPE FIX)>
+                   <DEAD X6>
+                   <VEQUAL? TEMP11 0 + PHRASE42 (TYPE FIX)>
+                   <DEAD TEMP11>
+                   <SET TEMP11 2 (TYPE FIX)>
+                   <JUMP + PHRASE45>
+PHRASE42
+                   <SET TEMP11 0 (TYPE FIX)>
+PHRASE45
+                   <PUSH TEMP11>
+                   <DEAD TEMP11>
+                   <CALL '\1aMAKE-TRANS 8 = TEMP11>
+                   <RETURN TEMP11>
+                   <DEAD TEMP11>
+                   <END \1aUPDATE-TRANS>
+
+#WORD *37407267175*
+                   <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>
+                   <TEMP TEMP15>
+                   <INTGO>
+                   <GVAL 'NO-DATUM = TEMP15>
+                   <EQUAL? TEMP15 REG9 - PHRASE14>
+                   <DEAD TEMP15>
+                   <FRAME '\1aLIST-LNT-SPEC>
+                   <PUSH N4>
+                   <DEAD N4>
+                   <PUSH W5>
+                   <DEAD W5>
+                   <PUSH NF6>
+                   <DEAD NF6>
+                   <PUSH BR7>
+                   <DEAD BR7>
+                   <PUSH DI8>
+                   <DEAD DI8>
+                   <PUSH NUM10>
+                   <DEAD NUM10>
+                   <PUSH SF12>
+                   <DEAD SF12>
+                   <CALL '\1aLIST-LNT-SPEC 7 = TEMP15>
+                   <RETURN TEMP15>
+                   <DEAD TEMP15>
+PHRASE14
+                   <VEQUAL? NUM10 0 - PHRASE17 (TYPE FIX)>
+                   <FRAME '\1a0-TEST1>
+                   <PUSH N4>
+                   <DEAD N4>
+                   <PUSH W5>
+                   <DEAD W5>
+                   <PUSH NF6>
+                   <DEAD NF6>
+                   <PUSH BR7>
+                   <DEAD BR7>
+                   <PUSH DI8>
+                   <DEAD DI8>
+                   <PUSH REG9>
+                   <DEAD REG9>
+                   <PUSH NEG11>
+                   <DEAD NEG11>
+                   <PUSH SF12>
+                   <DEAD SF12>
+                   <CALL '\1a0-TEST1 8 = TEMP15>
+                   <RETURN TEMP15>
+                   <DEAD TEMP15>
+PHRASE17
+                   <EQUAL? NUM10 1 + BOOL23>
+                   <EQUAL? NUM10 1.0 + BOOL23>
+                   <EQUAL? NUM10 -1 - PHRASE21>
+BOOL23
+                   <NTHUV N4 4 = TEMP15>
+                   <EQUAL? TEMP15 '1? + BOOL24>
+                   <DEAD TEMP15>
+                   <FRAME '\1aISTYPE?>
+                   <NTHUV N4 5 = TEMP15 (TYPE LIST)>
+                   <NTHL TEMP15 1 = TEMP15 (TYPE NODE)>
+                   <NTHUV TEMP15 3 = STACK>
+                   <DEAD TEMP15>
+                   <CALL '\1aISTYPE? 1 = TEMP15>
+                   <VEQUAL? TEMP15 'FIX - PHRASE21>
+                   <DEAD TEMP15>
+BOOL24
+                   <EQUAL? NUM10 -1 - PHRASE28>
+                   <DEAD NUM10>
+                   <SET NEG11 'T (TYPE ATOM)>
+PHRASE28
+                   <FRAME '\1a1?-TEST>
+                   <PUSH N4>
+                   <DEAD N4>
+                   <PUSH W5>
+                   <DEAD W5>
+                   <PUSH NF6>
+                   <DEAD NF6>
+                   <PUSH BR7>
+                   <DEAD BR7>
+                   <PUSH DI8>
+                   <DEAD DI8>
+                   <PUSH REG9>
+                   <DEAD REG9>
+                   <PUSH NEG11>
+                   <DEAD NEG11>
+                   <PUSH SF12>
+                   <DEAD SF12>
+                   <CALL '\1a1?-TEST 8 = TEMP15>
+                   <RETURN TEMP15>
+                   <DEAD TEMP15>
+PHRASE21
+                   <FRAME '\1aTEST-GEN2>
+                   <PUSH N4>
+                   <DEAD N4>
+                   <PUSH W5>
+                   <DEAD W5>
+                   <PUSH NF6>
+                   <DEAD NF6>
+                   <PUSH BR7>
+                   <DEAD BR7>
+                   <PUSH DI8>
+                   <DEAD DI8>
+                   <PUSH REG9>
+                   <DEAD REG9>
+                   <PUSH NUM10>
+                   <DEAD NUM10>
+                   <PUSH NEG11>
+                   <DEAD NEG11>
+                   <PUSH SF12>
+                   <DEAD SF12>
+                   <CALL '\1aTEST-GEN2 9 = TEMP15>
+                   <RETURN TEMP15>
+                   <DEAD TEMP15>
+                   <END \1aTEST-DISP>
+
+#WORD *14253235376*
+                   <GFCN \1a0-TEST1 ("VALUE" ANY NODE ANY ANY ANY ANY ANY ANY ANY) NOD4 WHERE5 NOTF6 BRANCH7 DIR8 REG9 NEG10 SF11>
+                   <TEMP (SBR12 %<>) RW14 TEMP21 SDIR16 ATYP17 TT20>
+                   <INTGO>
+                   <NTHUV NOD4 4 = SBR12>
+                   <SET RW14 WHERE5>
+                   <NTHUV NOD4 5 = TEMP21 (TYPE LIST)>
+                   <NTHL TEMP21 1 = TEMP21 (TYPE NODE)>
+                   <SET SDIR16 DIR8>
+                   <FRAME '\1aISTYPE?>
+                   <NTHUV TEMP21 3 = STACK>
+                   <DEAD TEMP21>
+                   <CALL '\1aISTYPE? 1 = ATYP17>
+                   <EQUAL? WHERE5 'DONT-CARE - PHRASE24>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TEMP 1 = WHERE5>
+PHRASE24
+                   <TYPE? NEG10 <TYPE-CODE FALSE> + PHRASE34>
+                   <DEAD NEG10>
+                   <NTHUV NOD4 1 = TEMP21 (TYPE FIX)>
+                   <DEAD NOD4>
+                   <VEQUAL? TEMP21 19 - PHRASE30 (TYPE FIX)>
+                   <DEAD TEMP21>
+                   <FRAME '\1aFLOP>
+                   <PUSH SBR12>
+                   <DEAD SBR12>
+                   <CALL '\1aFLOP 1 = SBR12>
+                   <JUMP + PHRASE34>
+PHRASE30
+                   <SET TT20 [G? G=? G? L? L=? L?] (TYPE VECTOR)>
+                   <TYPE? SBR12 <TYPE-CODE ATOM> - PHRASE34>
+                   <LOOP (SBR12 VALUE) (TT20 LENGTH VALUE)>
+TAG37
+                   <NTHUV TT20 1 = TEMP21>
+                   <VEQUAL? TEMP21 SBR12 + TAG36>
+                   <DEAD TEMP21>
+                   <RESTUV TT20 1 = TT20 (TYPE VECTOR)>
+                   <EMPUV? TT20 - TAG37>
+                   <JUMP + PHRASE34>
+TAG36
+                   <NTHUV TT20 2 = SBR12 (TYPE ATOM)>
+                   <DEAD TT20>
+PHRASE34
+                   <TYPE? BRANCH7 <TYPE-CODE FALSE> + PHRASE40>
+                   <TYPE? NOTF6 <TYPE-CODE FALSE> + TAG43>
+                   <DEAD NOTF6>
+                   <TYPE? DIR8 <TYPE-CODE FALSE> - TAG42>
+                   <DEAD DIR8>
+                   <SET DIR8 'T (TYPE ATOM)>
+                   <JUMP + TAG43>
+TAG42
+                   <SET DIR8 %<> (TYPE FALSE)>
+TAG43
+                   <TYPE? DIR8 <TYPE-CODE FALSE> + BOOL44>
+                   <DEAD DIR8>
+                   <FRAME '\1aFLIP>
+                   <PUSH SBR12>
+                   <DEAD SBR12>
+                   <CALL '\1aFLIP 1 = SBR12>
+BOOL44
+                   <TYPE? SF11 <TYPE-CODE FALSE> + PHRASE47>
+                   <DEAD SF11>
+                   <FRAME '\1aDEALLOCATE-TEMP>
+                   <FRAME '\1aMOVE-ARG>
+                   <FRAME '\1aREFERENCE>
+                   <TYPE? SDIR16 <TYPE-CODE FALSE> - TAG51>
+                   <SET TEMP21 'T (TYPE ATOM)>
+                   <JUMP + TAG52>
+TAG51
+                   <SET TEMP21 %<> (TYPE FALSE)>
+TAG52
+                   <PUSH TEMP21>
+                   <DEAD TEMP21>
+                   <CALL '\1aREFERENCE 1 = STACK>
+                   <PUSH WHERE5>
+                   <DEAD WHERE5>
+                   <CALL '\1aMOVE-ARG 2 = STACK>
+                   <CALL '\1aDEALLOCATE-TEMP 1>
+PHRASE47
+                   <EQUAL? RW14 'FLUSHED - PHRASE54>
+                   <FRAME '\1aZER-JMP>
+                   <PUSH SBR12>
+                   <DEAD SBR12>
+                   <PUSH REG9>
+                   <DEAD REG9>
+                   <PUSH BRANCH7>
+                   <DEAD BRANCH7>
+                   <PUSH ATYP17>
+                   <DEAD ATYP17>
+                   <CALL '\1aZER-JMP 4>
+                   <GVAL 'NO-DATUM = TEMP21>
+                   <RETURN TEMP21>
+                   <DEAD TEMP21>
+PHRASE54
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0 = TEMP21>
+                   <FRAME '\1aFLIP>
+                   <PUSH SBR12>
+                   <DEAD SBR12>
+                   <CALL '\1aFLIP 1 = SBR12>
+                   <FRAME '\1aZER-JMP>
+                   <PUSH SBR12>
+                   <DEAD SBR12>
+                   <PUSH REG9>
+                   <DEAD REG9>
+                   <PUSH TEMP21>
+                   <PUSH ATYP17>
+                   <DEAD ATYP17>
+                   <CALL '\1aZER-JMP 4>
+                   <FRAME '\1aMOVE-ARG>
+                   <FRAME '\1aREFERENCE>
+                   <PUSH SDIR16>
+                   <DEAD SDIR16>
+                   <CALL '\1aREFERENCE 1 = STACK>
+                   <EQUAL? RW14 'DONT-CARE - PHRASE63>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TEMP 1 = RW14>
+PHRASE63
+                   <PUSH RW14>
+                   <DEAD RW14>
+                   <CALL '\1aMOVE-ARG 2 = RW14>
+                   <FRAME '\1aBRANCH-TAG>
+                   <PUSH BRANCH7>
+                   <DEAD BRANCH7>
+                   <CALL '\1aBRANCH-TAG 1>
+                   <FRAME '\1aLABEL-TAG>
+                   <PUSH TEMP21>
+                   <DEAD TEMP21>
+                   <CALL '\1aLABEL-TAG 1>
+                   <RETURN RW14>
+                   <DEAD RW14>
+PHRASE40
+                   <TYPE? NOTF6 <TYPE-CODE FALSE> + BOOL70>
+                   <DEAD NOTF6>
+                   <FRAME '\1aFLIP>
+                   <PUSH SBR12>
+                   <DEAD SBR12>
+                   <CALL '\1aFLIP 1 = SBR12>
+BOOL70
+                   <FRAME '\1aZER-JMP>
+                   <PUSH SBR12>
+                   <DEAD SBR12>
+                   <PUSH REG9>
+                   <DEAD REG9>
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0 = BRANCH7>
+                   <PUSH BRANCH7>
+                   <PUSH ATYP17>
+                   <DEAD ATYP17>
+                   <CALL '\1aZER-JMP 4>
+                   <FRAME '\1aMOVE-ARG>
+                   <FRAME '\1aREFERENCE>
+                   <PUSH 'T>
+                   <CALL '\1aREFERENCE 1 = STACK>
+                   <PUSH WHERE5>
+                   <CALL '\1aMOVE-ARG 2>
+                   <FRAME '\1aBRANCH-TAG>
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0 = TEMP21>
+                   <PUSH TEMP21>
+                   <CALL '\1aBRANCH-TAG 1>
+                   <FRAME '\1aLABEL-TAG>
+                   <PUSH BRANCH7>
+                   <DEAD BRANCH7>
+                   <CALL '\1aLABEL-TAG 1>
+                   <FRAME '\1aMOVE-ARG>
+                   <FRAME '\1aREFERENCE>
+                   <PUSH %<>>
+                   <CALL '\1aREFERENCE 1 = STACK>
+                   <PUSH WHERE5>
+                   <CALL '\1aMOVE-ARG 2>
+                   <FRAME '\1aLABEL-TAG>
+                   <PUSH TEMP21>
+                   <DEAD TEMP21>
+                   <CALL '\1aLABEL-TAG 1>
+                   <FRAME '\1aMOVE-ARG>
+                   <PUSH WHERE5>
+                   <DEAD WHERE5>
+                   <PUSH RW14>
+                   <DEAD RW14>
+                   <CALL '\1aMOVE-ARG 2 = TEMP21>
+                   <RETURN TEMP21>
+                   <DEAD TEMP21>
+                   <END \1a0-TEST1>
+
+#WORD *12135367664*
+                   <GFCN \1aZER-JMP ("VALUE" <OR TEMP ANY> ANY ANY ANY ANY) SBR4 REG5 BR6 ATYP7>
+                   <TEMP TEMP15 TEMP16 TEM8:FIX>
+                   <INTGO>
+                   <GVAL '0SUBRS = TEMP15>
+                   <TYPE? SBR4 <TYPE-CODE ATOM> - TAG11>
+                   <EMPUV? TEMP15 + TAG11>
+                   <LOOP (SBR4 VALUE) (TEMP15 LENGTH VALUE)>
+TAG13
+                   <NTHUV TEMP15 1 = TEMP16>
+                   <VEQUAL? TEMP16 SBR4 + TAG12>
+                   <DEAD TEMP16>
+                   <RESTUV TEMP15 1 = TEMP15 (TYPE VECTOR)>
+                   <EMPUV? TEMP15 - TAG13>
+TAG11
+                   <SET TEMP15 %<> (TYPE FALSE)>
+TAG12
+                   <LENUV TEMP15 = TEM8 (TYPE FIX)>
+                   <DEAD TEMP15>
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0>
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0>
+                   <TYPE? ATYP7 <TYPE-CODE FALSE> + PHRASE20>
+                   <FRAME '\1aIEMIT>
+                   <GVAL '0SKPS = TEMP15>
+                   <NTHUV TEMP15 TEM8 = STACK (TYPE ATOM)>
+                   <DEAD TEMP15>
+                   <PUSH REG5>
+                   <EQUAL? ATYP7 'FIX - PHRASE23>
+                   <SET TEMP15 0 (TYPE FIX)>
+                   <JUMP + PHRASE24>
+PHRASE23
+                   <SET TEMP15 0.0 (TYPE FLOAT)>
+PHRASE24
+                   <PUSH TEMP15>
+                   <DEAD TEMP15>
+                   <GVAL '0JSENS = TEMP15>
+                   <NTHUV TEMP15 TEM8 = STACK (TYPE ATOM)>
+                   <DEAD TEMP15 TEM8>
+                   <PUSH BR6>
+                   <DEAD BR6>
+                   <CONS ATYP7 () = TEMP15>
+                   <DEAD ATYP7>
+                   <CONS '`TYPE TEMP15 = STACK>
+                   <DEAD TEMP15>
+                   <CALL '\1aIEMIT 6>
+                   <FRAME '\1aFREE-TEMP>
+                   <PUSH REG5>
+                   <DEAD REG5>
+                   <CALL '\1aFREE-TEMP 1 = TEMP15>
+                   <RETURN TEMP15>
+                   <DEAD TEMP15>
+PHRASE20
+                   <GVAL '0SKPS = TEMP16>
+                   <NTHUV TEMP16 TEM8 = TEMP16 (TYPE ATOM)>
+                   <VEQUAL? TEMP16 '`VEQUAL? - PHRASE26>
+                   <DEAD TEMP16>
+                   <FRAME '\1aIEMIT>
+                   <PUSH '`VEQUAL?>
+                   <PUSH REG5>
+                   <PUSH 0>
+                   <GVAL '0JSENS = TEMP16>
+                   <NTHUV TEMP16 TEM8 = STACK (TYPE ATOM)>
+                   <DEAD TEMP16 TEM8>
+                   <PUSH BR6>
+                   <DEAD BR6>
+                   <PUSH (`TYPE FIX)>
+                   <CALL '\1aIEMIT 6>
+                   <FRAME '\1aFREE-TEMP>
+                   <PUSH REG5>
+                   <DEAD REG5>
+                   <CALL '\1aFREE-TEMP 1 = TEMP15>
+                   <RETURN TEMP15>
+                   <DEAD TEMP15>
+PHRASE26
+                   <FRAME '\1aIEMIT>
+                   <GVAL '0SKPS = TEMP16>
+                   <NTHUV TEMP16 TEM8 = STACK (TYPE ATOM)>
+                   <DEAD TEMP16>
+                   <PUSH REG5>
+                   <PUSH 0>
+                   <GVAL '0JSENS = TEMP16>
+                   <NTHUV TEMP16 TEM8 = STACK (TYPE ATOM)>
+                   <DEAD TEMP16 TEM8>
+                   <PUSH BR6>
+                   <DEAD BR6>
+                   <CALL '\1aIEMIT 5>
+                   <FRAME '\1aFREE-TEMP>
+                   <PUSH REG5>
+                   <DEAD REG5>
+                   <CALL '\1aFREE-TEMP 1 = TEMP15>
+                   <RETURN TEMP15>
+                   <DEAD TEMP15>
+                   <END \1aZER-JMP>
+
+<SETG 0SKPS [`VEQUAL? `VEQUAL? `LESS? `LESS? `GRTR? `GRTR? `VEQUAL? `VEQUAL?]>
+
+<SETG 0JSENS [+ - + - + - + -]>
+
+<SETG 0SUBRS [1? N1? -1? N-1? 0? N0? G? L=? L? G=? ==? N==?]>
+
+#WORD *1461052705*
+                   <GFCN \1a1?-GEN ("VALUE" ANY NODE ANY "OPTIONAL" ANY ANY ANY ANY) NOD9 WHERE10 NOTF11 BRANCH12 DIR13 SETF14>
+                   <OPT-DISPATCH 2 %<> OPT4 OPT5 OPT6 OPT7 OPT8>
+OPT4
+                   <PUSH %<>>
+OPT5
+                   <PUSH %<>>
+OPT6
+                   <PUSH %<>>
+OPT7
+                   <PUSH %<>>
+OPT8
+                   <TEMP REG15 TEMP18 NN16:NODE TEMP3:LBIND>
+                   <INTGO>
+                   <GVAL 'NO-DATUM = REG15>
+                   <NTHUV NOD9 5 = TEMP18 (TYPE LIST)>
+                   <NTHL TEMP18 1 = NN16 (TYPE NODE)>
+                   <DEAD TEMP18>
+                   <GETS 'BIND = TEMP3 (TYPE LBIND)>
+                   <FRAME '\1aMAKE-TRANS>
+                   <PUSH NOD9>
+                   <PUSH 1>
+                   <PUSH 2>
+                   <PUSH -1>
+                   <PUSH 1>
+                   <PUSH 1>
+                   <PUSH 1>
+                   <FRAME '\1aSW?>
+                   <NTHUV NOD9 4 = STACK (TYPE ATOM)>
+                   <CALL '\1aSW? 1 = STACK>
+                   <CALL '\1aMAKE-TRANS 8 = TEMP18>
+                   <BBIND 'TRANSFORM 'TRANS 'FIX TEMP18>
+                   <DEAD TEMP18>
+                   <FRAME '\1aLN-LST>
+                   <PUSH NN16>
+                   <CALL '\1aLN-LST 1 = TEMP18>
+                   <TYPE? TEMP18 <TYPE-CODE FALSE> - PHRASE22>
+                   <DEAD TEMP18>
+                   <FRAME '\1aGEN>
+                   <PUSH NN16>
+                   <DEAD NN16>
+                   <PUSH 'DONT-CARE>
+                   <CALL '\1aGEN 2 = REG15>
+PHRASE22
+                   <FRAME '\1aTEST-DISP>
+                   <PUSH NOD9>
+                   <DEAD NOD9>
+                   <PUSH WHERE10>
+                   <DEAD WHERE10>
+                   <PUSH NOTF11>
+                   <DEAD NOTF11>
+                   <PUSH BRANCH12>
+                   <DEAD BRANCH12>
+                   <PUSH DIR13>
+                   <DEAD DIR13>
+                   <PUSH REG15>
+                   <DEAD REG15>
+                   <FRAME '\1aDO-A-TRANS>
+                   <PUSH 1>
+                   <NTHR 'TRANSFORM 2 = TEMP18 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <NTHR TEMP18 1 = STACK (RECORD-TYPE LBIND)>
+                   <DEAD TEMP18>
+                   <CALL '\1aDO-A-TRANS 2 = STACK>
+                   <NTHR 'TRANSFORM 2 = TEMP18 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <NTHR TEMP18 1 = TEMP18 (RECORD-TYPE LBIND)>
+                   <NTHUV TEMP18 3 = TEMP18 (TYPE UVECTOR)>
+                   <NTHUU TEMP18 1 = TEMP18 (TYPE FIX)>
+                   <VEQUAL? TEMP18 0 - TAG29 (TYPE FIX)>
+                   <DEAD TEMP18>
+                   <SET TEMP18 %<> (TYPE FALSE)>
+                   <JUMP + TAG30>
+TAG29
+                   <SET TEMP18 'T (TYPE ATOM)>
+TAG30
+                   <PUSH TEMP18>
+                   <DEAD TEMP18>
+                   <PUSH SETF14>
+                   <DEAD SETF14>
+                   <CALL '\1aTEST-DISP 9 = TEMP18>
+                   <UNBIND TEMP3>
+                   <DEAD TEMP3>
+                   <ADJ -9>
+                   <RETURN TEMP18>
+                   <DEAD TEMP18>
+                   <END \1a1?-GEN>
+
+#WORD *3351230454*
+                   <GFCN \1a1?-TEST ("VALUE" ANY NODE ANY ANY ANY ANY ANY ANY ANY) NOD4 WHERE5 NOTF6 BRANCH7 DIR8 REG9 NEG10 SF11>
+                   <TEMP SBR12 RW14 TEMP19 SDIR16 (NM17:FALSE %<>) ATYP18>
+                   <INTGO>
+                   <NTHUV NOD4 4 = SBR12>
+                   <SET RW14 WHERE5>
+                   <NTHUV NOD4 5 = TEMP19 (TYPE LIST)>
+                   <DEAD NOD4>
+                   <NTHL TEMP19 1 = TEMP19 (TYPE NODE)>
+                   <SET SDIR16 DIR8>
+                   <FRAME '\1aISTYPE?>
+                   <NTHUV TEMP19 3 = STACK>
+                   <DEAD TEMP19>
+                   <CALL '\1aISTYPE? 1 = ATYP18>
+                   <EQUAL? WHERE5 'DONT-CARE - PHRASE22>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TEMP 1 = WHERE5>
+PHRASE22
+                   <TYPE? BRANCH7 <TYPE-CODE FALSE> + PHRASE26>
+                   <TYPE? NOTF6 <TYPE-CODE FALSE> + TAG29>
+                   <DEAD NOTF6>
+                   <TYPE? DIR8 <TYPE-CODE FALSE> - TAG28>
+                   <DEAD DIR8>
+                   <SET DIR8 'T (TYPE ATOM)>
+                   <JUMP + TAG29>
+TAG28
+                   <SET DIR8 %<> (TYPE FALSE)>
+TAG29
+                   <TYPE? SF11 <TYPE-CODE FALSE> + PHRASE31>
+                   <DEAD SF11>
+                   <FRAME '\1aDEALLOCATE-TEMP>
+                   <FRAME '\1aMOVE-ARG>
+                   <FRAME '\1aREFERENCE>
+                   <TYPE? SDIR16 <TYPE-CODE FALSE> - TAG35>
+                   <SET TEMP19 'T (TYPE ATOM)>
+                   <JUMP + TAG36>
+TAG35
+                   <SET TEMP19 %<> (TYPE FALSE)>
+TAG36
+                   <PUSH TEMP19>
+                   <DEAD TEMP19>
+                   <CALL '\1aREFERENCE 1 = STACK>
+                   <PUSH WHERE5>
+                   <CALL '\1aMOVE-ARG 2 = STACK>
+                   <CALL '\1aDEALLOCATE-TEMP 1>
+PHRASE31
+                   <EQUAL? RW14 'FLUSHED - PHRASE38>
+                   <FRAME '\1aGEN-COMP>
+                   <PUSH ATYP18>
+                   <DEAD ATYP18>
+                   <PUSH REG9>
+                   <DEAD REG9>
+                   <PUSH DIR8>
+                   <DEAD DIR8>
+                   <PUSH BRANCH7>
+                   <DEAD BRANCH7>
+                   <PUSH SBR12>
+                   <DEAD SBR12>
+                   <PUSH NEG10>
+                   <DEAD NEG10>
+                   <PUSH NM17>
+                   <DEAD NM17>
+                   <CALL '\1aGEN-COMP 7>
+                   <GVAL 'NO-DATUM = TEMP19>
+                   <RETURN TEMP19>
+                   <DEAD TEMP19>
+PHRASE38
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0 = TEMP19>
+                   <FRAME '\1aGEN-COMP>
+                   <PUSH ATYP18>
+                   <DEAD ATYP18>
+                   <PUSH REG9>
+                   <DEAD REG9>
+                   <TYPE? DIR8 <TYPE-CODE FALSE> - TAG43>
+                   <DEAD DIR8>
+                   <SET ATYP18 'T (TYPE ATOM)>
+                   <JUMP + TAG44>
+TAG43
+                   <SET ATYP18 %<> (TYPE FALSE)>
+TAG44
+                   <PUSH ATYP18>
+                   <DEAD ATYP18>
+                   <PUSH TEMP19>
+                   <PUSH SBR12>
+                   <DEAD SBR12>
+                   <PUSH NEG10>
+                   <DEAD NEG10>
+                   <PUSH NM17>
+                   <DEAD NM17>
+                   <CALL '\1aGEN-COMP 7>
+                   <FRAME '\1aMOVE-ARG>
+                   <FRAME '\1aMOVE-ARG>
+                   <FRAME '\1aREFERENCE>
+                   <PUSH SDIR16>
+                   <DEAD SDIR16>
+                   <CALL '\1aREFERENCE 1 = STACK>
+                   <PUSH WHERE5>
+                   <DEAD WHERE5>
+                   <CALL '\1aMOVE-ARG 2 = STACK>
+                   <PUSH RW14>
+                   <DEAD RW14>
+                   <CALL '\1aMOVE-ARG 2 = RW14>
+                   <FRAME '\1aBRANCH-TAG>
+                   <PUSH BRANCH7>
+                   <DEAD BRANCH7>
+                   <CALL '\1aBRANCH-TAG 1>
+                   <FRAME '\1aLABEL-TAG>
+                   <PUSH TEMP19>
+                   <DEAD TEMP19>
+                   <CALL '\1aLABEL-TAG 1>
+                   <RETURN RW14>
+                   <DEAD RW14>
+PHRASE26
+                   <EQUAL? WHERE5 'DONT-CARE - PHRASE53>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TEMP 1 = WHERE5>
+PHRASE53
+                   <FRAME '\1aGEN-COMP>
+                   <PUSH ATYP18>
+                   <DEAD ATYP18>
+                   <PUSH REG9>
+                   <DEAD REG9>
+                   <PUSH NOTF6>
+                   <DEAD NOTF6>
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0 = BRANCH7>
+                   <PUSH BRANCH7>
+                   <PUSH SBR12>
+                   <DEAD SBR12>
+                   <PUSH NEG10>
+                   <DEAD NEG10>
+                   <PUSH NM17>
+                   <DEAD NM17>
+                   <CALL '\1aGEN-COMP 7>
+                   <FRAME '\1aMOVE-ARG>
+                   <FRAME '\1aREFERENCE>
+                   <PUSH 'T>
+                   <CALL '\1aREFERENCE 1 = STACK>
+                   <PUSH WHERE5>
+                   <CALL '\1aMOVE-ARG 2>
+                   <FRAME '\1aBRANCH-TAG>
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0 = TEMP19>
+                   <PUSH TEMP19>
+                   <CALL '\1aBRANCH-TAG 1>
+                   <FRAME '\1aLABEL-TAG>
+                   <PUSH BRANCH7>
+                   <DEAD BRANCH7>
+                   <CALL '\1aLABEL-TAG 1>
+                   <FRAME '\1aMOVE-ARG>
+                   <FRAME '\1aREFERENCE>
+                   <PUSH %<>>
+                   <CALL '\1aREFERENCE 1 = STACK>
+                   <PUSH WHERE5>
+                   <CALL '\1aMOVE-ARG 2>
+                   <FRAME '\1aLABEL-TAG>
+                   <PUSH TEMP19>
+                   <DEAD TEMP19>
+                   <CALL '\1aLABEL-TAG 1>
+                   <FRAME '\1aMOVE-ARG>
+                   <PUSH WHERE5>
+                   <DEAD WHERE5>
+                   <PUSH RW14>
+                   <DEAD RW14>
+                   <CALL '\1aMOVE-ARG 2 = TEMP19>
+                   <RETURN TEMP19>
+                   <DEAD TEMP19>
+                   <END \1a1?-TEST>
+
+#WORD *17232732627*
+                   <GFCN \1aGEN-COMP ("VALUE" <OR TEMP ANY> ANY ANY ANY ATOM ANY ANY ANY) TYP4 REG5 DIR6 BR7 SBR8 NEG9 NM10>
+                   <TEMP LBL12 LBL213 TEMP23>
+                   <INTGO>
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0 = LBL12>
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0 = LBL213>
+                   <EQUAL? TYP4 'FIX + BOOL18>
+                   <EQUAL? TYP4 'FLOAT - PHRASE17>
+BOOL18
+                   <TYPE? DIR6 <TYPE-CODE FALSE> + PHRASE20>
+                   <DEAD DIR6>
+                   <FRAME '\1aFLIP>
+                   <PUSH SBR8>
+                   <DEAD SBR8>
+                   <CALL '\1aFLIP 1 = SBR8>
+PHRASE20
+                   <FRAME '\1aIEMIT>
+                   <GVAL 'SKIPS = TEMP23>
+                   <GVAL 'CMSUBRS = LBL12>
+                   <TYPE? SBR8 <TYPE-CODE ATOM> - TAG24>
+                   <EMPUV? LBL12 + TAG24>
+                   <LOOP (SBR8 VALUE) (LBL12 LENGTH VALUE)>
+TAG26
+                   <NTHUV LBL12 1 = LBL213>
+                   <VEQUAL? LBL213 SBR8 + TAG25>
+                   <DEAD LBL213>
+                   <RESTUV LBL12 1 = LBL12 (TYPE VECTOR)>
+                   <EMPUV? LBL12 - TAG26>
+TAG24
+                   <SET LBL12 %<> (TYPE FALSE)>
+TAG25
+                   <LENUV LBL12 = LBL12 (TYPE FIX)>
+                   <NTHUV TEMP23 LBL12 = LBL213 (TYPE LIST)>
+                   <DEAD TEMP23 LBL12>
+                   <NTHL LBL213 1 = STACK (TYPE ATOM)>
+                   <PUSH REG5>
+                   <EQUAL? TYP4 'FIX - PHRASE31>
+                   <TYPE? NEG9 <TYPE-CODE FALSE> + PHRASE33>
+                   <DEAD NEG9>
+                   <SET LBL12 -1 (TYPE FIX)>
+                   <JUMP + PHRASE38>
+PHRASE33
+                   <SET LBL12 1 (TYPE FIX)>
+                   <JUMP + PHRASE38>
+PHRASE31
+                   <TYPE? NEG9 <TYPE-CODE FALSE> + PHRASE37>
+                   <DEAD NEG9>
+                   <SET LBL12 -1.0 (TYPE FLOAT)>
+                   <JUMP + PHRASE38>
+PHRASE37
+                   <SET LBL12 1.0 (TYPE FLOAT)>
+PHRASE38
+                   <PUSH LBL12>
+                   <DEAD LBL12>
+                   <RESTL LBL213 1 = LBL12 (TYPE LIST)>
+                   <DEAD LBL213>
+                   <NTHL LBL12 1 = STACK (TYPE ATOM)>
+                   <DEAD LBL12>
+                   <PUSH BR7>
+                   <DEAD BR7>
+                   <CONS TYP4 () = LBL12>
+                   <DEAD TYP4>
+                   <CONS '`TYPE LBL12 = STACK>
+                   <DEAD LBL12>
+                   <CALL '\1aIEMIT 6>
+                   <FRAME '\1aFREE-TEMP>
+                   <PUSH REG5>
+                   <DEAD REG5>
+                   <CALL '\1aFREE-TEMP 1 = LBL12>
+                   <RETURN LBL12>
+                   <DEAD LBL12>
+PHRASE17
+                   <FRAME '\1aGEN-TYPE?>
+                   <PUSH REG5>
+                   <PUSH 'FLOAT>
+                   <PUSH LBL12>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TYPE? 4>
+                   <FRAME '\1aIEMIT>
+                   <PUSH '`VEQUAL?>
+                   <PUSH REG5>
+                   <TYPE? NEG9 <TYPE-CODE FALSE> + PHRASE44>
+                   <SET TEMP23 -1.0 (TYPE FLOAT)>
+                   <JUMP + PHRASE45>
+PHRASE44
+                   <SET TEMP23 1.0 (TYPE FLOAT)>
+PHRASE45
+                   <PUSH TEMP23>
+                   <DEAD TEMP23>
+                   <PUSH '+>
+                   <TYPE? DIR6 <TYPE-CODE FALSE> + PHRASE47>
+                   <SET TEMP23 BR7>
+                   <JUMP + PHRASE48>
+PHRASE47
+                   <SET TEMP23 LBL213>
+PHRASE48
+                   <PUSH TEMP23>
+                   <DEAD TEMP23>
+                   <PUSH (`TYPE FLOAT)>
+                   <CALL '\1aIEMIT 6>
+                   <TYPE? DIR6 <TYPE-CODE FALSE> - PHRASE50>
+                   <FRAME '\1aBRANCH-TAG>
+                   <PUSH BR7>
+                   <CALL '\1aBRANCH-TAG 1>
+                   <JUMP + PHRASE52>
+PHRASE50
+                   <FRAME '\1aBRANCH-TAG>
+                   <PUSH LBL213>
+                   <CALL '\1aBRANCH-TAG 1>
+PHRASE52
+                   <FRAME '\1aLABEL-TAG>
+                   <PUSH LBL12>
+                   <DEAD LBL12>
+                   <CALL '\1aLABEL-TAG 1>
+                   <FRAME '\1aGEN-TYPE?>
+                   <PUSH REG5>
+                   <PUSH 'FIX>
+                   <PUSH '`COMPERR>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TYPE? 4>
+                   <FRAME '\1aIEMIT>
+                   <PUSH '`VEQUAL?>
+                   <PUSH REG5>
+                   <TYPE? NEG9 <TYPE-CODE FALSE> + PHRASE58>
+                   <DEAD NEG9>
+                   <SET TEMP23 -1 (TYPE FIX)>
+                   <JUMP + PHRASE59>
+PHRASE58
+                   <SET TEMP23 1 (TYPE FIX)>
+PHRASE59
+                   <PUSH TEMP23>
+                   <DEAD TEMP23>
+                   <TYPE? DIR6 <TYPE-CODE FALSE> + PHRASE61>
+                   <DEAD DIR6>
+                   <SET TEMP23 '+ (TYPE ATOM)>
+                   <JUMP + PHRASE62>
+PHRASE61
+                   <SET TEMP23 '- (TYPE ATOM)>
+PHRASE62
+                   <PUSH TEMP23>
+                   <DEAD TEMP23>
+                   <PUSH BR7>
+                   <DEAD BR7>
+                   <PUSH (`TYPE FIX)>
+                   <CALL '\1aIEMIT 6>
+                   <FRAME '\1aLABEL-TAG>
+                   <PUSH LBL213>
+                   <DEAD LBL213>
+                   <CALL '\1aLABEL-TAG 1>
+                   <FRAME '\1aFREE-TEMP>
+                   <PUSH REG5>
+                   <DEAD REG5>
+                   <CALL '\1aFREE-TEMP 1 = LBL12>
+                   <RETURN LBL12>
+                   <DEAD LBL12>
+                   <END \1aGEN-COMP>
+
+#WORD *11614353053*
+                   <GFCN \1aTEST-GEN ("VALUE" ANY NODE ANY "OPTIONAL" ANY ANY ANY ANY) NOD9 WHERE10 NOTF11 BRANCH12 DIR13 SETF14>
+                   <OPT-DISPATCH 2 %<> OPT4 OPT5 OPT6 OPT7 OPT8>
+OPT4
+                   <PUSH %<>>
+OPT5
+                   <PUSH %<>>
+OPT6
+                   <PUSH %<>>
+OPT7
+                   <PUSH %<>>
+OPT8
+                   <TEMP TEMP32 K15 K216:NODE S19:FIX TEMP3:LBIND SDIR24 RW25 FLS27 ONO29 TEMP50 TEMP51 ATYP222 B223>
+                   <INTGO>
+                   <NTHUV NOD9 5 = TEMP32 (TYPE LIST)>
+                   <NTHL TEMP32 1 = K15 (TYPE NODE)>
+                   <DEAD TEMP32>
+                   <NTHUV NOD9 5 = TEMP32 (TYPE LIST)>
+                   <RESTL TEMP32 1 = TEMP32 (TYPE LIST)>
+                   <NTHL TEMP32 1 = K216 (TYPE NODE)>
+                   <DEAD TEMP32>
+                   <FRAME '\1aSW?>
+                   <NTHUV NOD9 4 = STACK (TYPE ATOM)>
+                   <CALL '\1aSW? 1 = S19>
+                   <GETS 'BIND = TEMP3 (TYPE LBIND)>
+                   <BBIND 'TRANSFORM 'TRANS 'FIX>
+                   <SET SDIR24 DIR13>
+                   <SET RW25 WHERE10>
+                   <EQUAL? RW25 'FLUSHED - TAG34>
+                   <SET FLS27 'T (TYPE ATOM)>
+                   <JUMP + TAG35>
+TAG34
+                   <SET FLS27 %<> (TYPE FALSE)>
+TAG35
+                   <GEN-LVAL 'NO-KILL = ONO29>
+                   <BBIND 'NO-KILL 'LIST 'FIX ONO29>
+                   <EQUAL? WHERE10 'FLUSHED - PHRASE39>
+                   <SET WHERE10 'FLUSHED (TYPE ATOM)>
+                   <JUMP + PHRASE40>
+PHRASE39
+                   <EQUAL? WHERE10 'DONT-CARE - PHRASE40>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TEMP 1 = WHERE10>
+PHRASE40
+                   <NTHUV K216 1 = TEMP32 (TYPE FIX)>
+                   <VEQUAL? TEMP32 2 + TAG52 (TYPE FIX)>
+                   <DEAD TEMP32>
+                   <NTHUV K15 1 = TEMP32 (TYPE FIX)>
+                   <GVAL 'SNODES = TEMP50>
+                   <EMPUU? TEMP50 + TAG47>
+                   <LOOP (TEMP32 VALUE) (TEMP50 LENGTH VALUE)>
+TAG48
+                   <NTHUU TEMP50 1 = TEMP51>
+                   <VEQUAL? TEMP51 TEMP32 + PHRASE44>
+                   <DEAD TEMP51>
+                   <RESTUU TEMP50 1 = TEMP50 (TYPE UVECTOR)>
+                   <EMPUU? TEMP50 - TAG48>
+TAG47
+                   <NTHUV NOD9 8 = TEMP50>
+                   <TYPE? TEMP50 <TYPE-CODE FALSE> - PHRASE44>
+                   <DEAD TEMP50>
+                   <NTHUV K216 1 = TEMP50 (TYPE FIX)>
+                   <GVAL 'SNODES = TEMP32>
+                   <EMPUU? TEMP32 + PHRASE44>
+                   <LOOP (TEMP50 VALUE) (TEMP32 LENGTH VALUE)>
+TAG53
+                   <NTHUU TEMP32 1 = TEMP51>
+                   <VEQUAL? TEMP51 TEMP50 + TAG52>
+                   <DEAD TEMP51>
+                   <RESTUU TEMP32 1 = TEMP32 (TYPE UVECTOR)>
+                   <EMPUU? TEMP32 - TAG53>
+                   <JUMP + PHRASE44>
+TAG52
+                   <NTHUV K15 1 = TEMP32 (TYPE FIX)>
+                   <VEQUAL? TEMP32 10 - PHRASE56 (TYPE FIX)>
+                   <DEAD TEMP32>
+                   <NTHUV K15 7 = TEMP50 (TYPE LIST)>
+                   <EMPL? TEMP50 + PHRASE59>
+                   <RESTL TEMP50 1 = TEMP32 (TYPE LIST)>
+                   <EMPL? TEMP32 + PHRASE59>
+                   <RESTL TEMP32 1 = TEMP32 (TYPE LIST)>
+                   <EMPL? TEMP32 - PHRASE59>
+                   <DEAD TEMP32>
+                   <RESTL TEMP50 1 = TEMP32 (TYPE LIST)>
+                   <DEAD TEMP50>
+                   <NTHL TEMP32 1 = TEMP32>
+                   <TYPE? TEMP32 <TYPE-CODE FALSE> + PHRASE56>
+                   <DEAD TEMP32>
+PHRASE59
+                   <NTHUV K15 4 = TEMP50>
+                   <TYPE? TEMP50 <TYPE-CODE FALSE> + PHRASE56>
+                   <NTHR 'NO-KILL 2 = TEMP51 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <NTHR TEMP51 1 = TEMP32 (RECORD-TYPE LBIND)>
+                   <DEAD TEMP51>
+                   <LOOP>
+MAP62
+                   <INTGO>
+                   <EMPL? TEMP32 + MAPAP65>
+                   <NTHL TEMP32 1 = TEMP51>
+                   <NTH1 TEMP51 = TEMP51>
+                   <EQUAL? TEMP51 TEMP50 + PHRASE56>
+                   <DEAD TEMP51>
+                   <RESTL TEMP32 1 = TEMP32 (TYPE LIST)>
+                   <JUMP + MAP62>
+MAPAP65
+                   <NTHR 'NO-KILL 2 = TEMP51 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <NTHR TEMP51 1 = TEMP32 (RECORD-TYPE LBIND)>
+                   <DEAD TEMP51>
+                   <CONS %<> () = TEMP51>
+                   <NTHUV K15 4 = TEMP50>
+                   <DEAD K15>
+                   <CONS TEMP50 TEMP51 = TEMP51>
+                   <DEAD TEMP50>
+                   <CONS TEMP51 TEMP32 = TEMP32>
+                   <DEAD TEMP51>
+                   <NTHR 'NO-KILL 2 = TEMP51 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <PUTR TEMP51 1 TEMP32 (RECORD-TYPE LBIND)>
+                   <DEAD TEMP51 TEMP32>
+PHRASE56
+                   <SET K15 K216>
+                   <DEAD K216>
+                   <NTHUV NOD9 5 = TEMP32 (TYPE LIST)>
+                   <NTHL TEMP32 1 = K216 (TYPE NODE)>
+                   <DEAD TEMP32>
+                   <FRAME '\1aFLOP>
+                   <NTHUV NOD9 4 = STACK (TYPE ATOM)>
+                   <CALL '\1aFLOP 1 = TEMP32>
+                   <PUTUV NOD9 4 TEMP32>
+                   <DEAD TEMP32>
+PHRASE44
+                   <FRAME '\1aISTYPE?>
+                   <NTHUV K216 3 = STACK>
+                   <CALL '\1aISTYPE? 1 = TEMP50>
+                   <FRAME '\1aISTYPE-GOOD?>
+                   <NTHUV K15 3 = STACK>
+                   <CALL '\1aISTYPE-GOOD? 1 = ATYP222>
+                   <NTHUV K15 1 = TEMP32 (TYPE FIX)>
+                   <VEQUAL? TEMP32 2 + PHRASE83 (TYPE FIX)>
+                   <DEAD TEMP32>
+                   <FRAME '\1aGEN>
+                   <PUSH K15>
+                   <DEAD K15>
+                   <VEQUAL? TEMP50 ATYP222 + PHRASE86>
+                   <VEQUAL? ATYP222 'FIX - PHRASE86>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TEMP 1 = TEMP32>
+                   <JUMP + PHRASE89>
+PHRASE86
+                   <SET TEMP32 'DONT-CARE (TYPE ATOM)>
+PHRASE89
+                   <PUSH TEMP32>
+                   <DEAD TEMP32>
+                   <CALL '\1aGEN 2 = K15>
+                   <NTHR 'TRANSFORM 2 = TEMP32 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <NTHR TEMP32 1 = TEMP32 (RECORD-TYPE LBIND)>
+                   <TYPE? TEMP32 <TYPE-CODE UNBOUND> + PHRASE91>
+                   <DEAD TEMP32>
+                   <NTHR 'TRANSFORM 2 = TEMP32 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <NTHR TEMP32 1 = TEMP32 (RECORD-TYPE LBIND)>
+                   <FRAME '\1aUPDATE-TRANS>
+                   <PUSH NOD9>
+                   <PUSH TEMP32>
+                   <DEAD TEMP32>
+                   <CALL '\1aUPDATE-TRANS 2 = TEMP32>
+                   <NTHR 'TRANSFORM 2 = TEMP51 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <PUTR TEMP51 1 TEMP32 (RECORD-TYPE LBIND)>
+                   <DEAD TEMP51 TEMP32>
+PHRASE91
+                   <FRAME '\1aINTERF-CHANGE>
+                   <PUSH K15>
+                   <DEAD K15>
+                   <PUSH K216>
+                   <CALL '\1aINTERF-CHANGE 2 = K15>
+                   <FRAME '\1aGEN>
+                   <PUSH K216>
+                   <DEAD K216>
+                   <VEQUAL? TEMP50 ATYP222 + PHRASE100>
+                   <VEQUAL? TEMP50 'FIX - PHRASE100>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TEMP 1 = TEMP32>
+                   <JUMP + PHRASE103>
+PHRASE100
+                   <SET TEMP32 'DONT-CARE (TYPE ATOM)>
+PHRASE103
+                   <PUSH TEMP32>
+                   <DEAD TEMP32>
+                   <CALL '\1aGEN 2 = TEMP32>
+                   <JUMP + PHRASE104>
+PHRASE83
+                   <VEQUAL? TEMP50 'FIX + BOOL107>
+                   <NTHUV K15 4 = TEMP32>
+                   <EQUAL? TEMP32 0 - PHRASE106>
+                   <DEAD TEMP32>
+BOOL107
+                   <FRAME '\1aMAKE-TRANS>
+                   <PUSH NOD9>
+                   <PUSH 1>
+                   <PUSH 1>
+                   <PUSH 0>
+                   <PUSH 1>
+                   <PUSH 1>
+                   <SUB 0 S19 = TEMP32 (TYPE FIX)>
+                   <ADD TEMP32 2 = STACK (TYPE FIX)>
+                   <DEAD TEMP32>
+                   <PUSH S19>
+                   <DEAD S19>
+                   <CALL '\1aMAKE-TRANS 8 = TEMP32>
+                   <NTHR 'TRANSFORM 2 = TEMP51 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <PUTR TEMP51 1 TEMP32 (RECORD-TYPE LBIND)>
+                   <DEAD TEMP51 TEMP32>
+PHRASE106
+                   <VEQUAL? TEMP50 'FIX - PHRASE112>
+                   <DEAD TEMP50>
+                   <NTHR 'TRANSFORM 2 = TEMP32 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <NTHR TEMP32 1 = TEMP32 (RECORD-TYPE LBIND)>
+                   <NTHUV TEMP32 2 = TEMP32 (TYPE UVECTOR)>
+                   <PUTUU TEMP32 2 1>
+                   <NTHUV K15 4 = TEMP51>
+                   <TYPE? TEMP51 <TYPE-CODE FIX> + TAG115>
+                   <FIX TEMP51 = TEMP51 (TYPE FIX)>
+TAG115
+                   <PUTUU TEMP32 3 TEMP51>
+                   <DEAD TEMP32 TEMP51>
+PHRASE112
+                   <FRAME '\1aLN-LST>
+                   <PUSH K216>
+                   <CALL '\1aLN-LST 1 = TEMP32>
+                   <TYPE? TEMP32 <TYPE-CODE FALSE> + PHRASE117>
+                   <DEAD TEMP32>
+                   <GVAL 'NO-DATUM = TEMP32>
+                   <JUMP + PHRASE119>
+PHRASE117
+                   <FRAME '\1aGEN>
+                   <PUSH K216>
+                   <DEAD K216>
+                   <CALL '\1aGEN 1 = TEMP32>
+PHRASE119
+                   <FRAME '\1aTEST-DISP>
+                   <PUSH NOD9>
+                   <DEAD NOD9>
+                   <PUSH WHERE10>
+                   <DEAD WHERE10>
+                   <PUSH NOTF11>
+                   <DEAD NOTF11>
+                   <PUSH BRANCH12>
+                   <DEAD BRANCH12>
+                   <PUSH DIR13>
+                   <DEAD DIR13>
+                   <PUSH TEMP32>
+                   <DEAD TEMP32>
+                   <NTHR 'TRANSFORM 2 = TEMP51 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <NTHR TEMP51 1 = TEMP51 (RECORD-TYPE LBIND)>
+                   <TYPE? TEMP51 <TYPE-CODE UNBOUND> + PHRASE123>
+                   <DEAD TEMP51>
+                   <FRAME '\1aDO-A-TRANS>
+                   <NTHUV K15 4 = TEMP51>
+                   <DEAD K15>
+                   <TYPE? TEMP51 <TYPE-CODE FIX> + TAG125>
+                   <FIX TEMP51 = TEMP51 (TYPE FIX)>
+TAG125
+                   <PUSH TEMP51>
+                   <DEAD TEMP51>
+                   <NTHR 'TRANSFORM 2 = TEMP51 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <NTHR TEMP51 1 = STACK (RECORD-TYPE LBIND)>
+                   <DEAD TEMP51>
+                   <CALL '\1aDO-A-TRANS 2 = TEMP51>
+                   <JUMP + PHRASE128>
+PHRASE123
+                   <NTHUV K15 4 = TEMP51>
+                   <DEAD K15>
+PHRASE128
+                   <PUSH TEMP51>
+                   <DEAD TEMP51>
+                   <NTHR 'TRANSFORM 2 = TEMP50 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <NTHR TEMP50 1 = TEMP50 (RECORD-TYPE LBIND)>
+                   <TYPE? TEMP50 <TYPE-CODE UNBOUND> - TAG130>
+                   <DEAD TEMP50>
+                   <SET TEMP51 %<> (TYPE FALSE)>
+                   <JUMP + TAG133>
+TAG130
+                   <NTHR 'TRANSFORM 2 = TEMP50 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <NTHR TEMP50 1 = TEMP50 (RECORD-TYPE LBIND)>
+                   <NTHUV TEMP50 3 = TEMP50 (TYPE UVECTOR)>
+                   <NTHUU TEMP50 1 = TEMP50 (TYPE FIX)>
+                   <VEQUAL? TEMP50 0 - TAG132 (TYPE FIX)>
+                   <DEAD TEMP50>
+                   <SET TEMP51 %<> (TYPE FALSE)>
+                   <JUMP + TAG133>
+TAG132
+                   <SET TEMP51 'T (TYPE ATOM)>
+TAG133
+                   <PUSH TEMP51>
+                   <DEAD TEMP51>
+                   <PUSH SETF14>
+                   <DEAD SETF14>
+                   <CALL '\1aTEST-DISP 9 = TEMP32>
+                   <JUMP + RETURN2>
+PHRASE104
+                   <FRAME '\1aDELAY-KILL>
+                   <NTHR 'NO-KILL 2 = TEMP51 (RECORD-TYPE ATOM) (TYPE LBIND)>
+                   <NTHR TEMP51 1 = STACK (RECORD-TYPE LBIND)>
+                   <DEAD TEMP51>
+                   <PUSH ONO29>
+                   <DEAD ONO29>
+                   <CALL '\1aDELAY-KILL 2>
+                   <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE143>
+                   <TYPE? NOTF11 <TYPE-CODE FALSE> + TAG146>
+                   <DEAD NOTF11>
+                   <TYPE? DIR13 <TYPE-CODE FALSE> - TAG145>
+                   <DEAD DIR13>
+                   <SET DIR13 'T (TYPE ATOM)>
+                   <JUMP + TAG146>
+TAG145
+                   <SET DIR13 %<> (TYPE FALSE)>
+TAG146
+                   <TYPE? SETF14 <TYPE-CODE FALSE> + PHRASE148>
+                   <DEAD SETF14>
+                   <FRAME '\1aDEALLOCATE-TEMP>
+                   <FRAME '\1aMOVE-ARG>
+                   <FRAME '\1aREFERENCE>
+                   <TYPE? SDIR24 <TYPE-CODE FALSE> - TAG152>
+                   <SET TEMP51 'T (TYPE ATOM)>
+                   <JUMP + TAG153>
+TAG152
+                   <SET TEMP51 %<> (TYPE FALSE)>
+TAG153
+                   <PUSH TEMP51>
+                   <DEAD TEMP51>
+                   <CALL '\1aREFERENCE 1 = STACK>
+                   <PUSH WHERE10>
+                   <CALL '\1aMOVE-ARG 2 = STACK>
+                   <CALL '\1aDEALLOCATE-TEMP 1>
+PHRASE148
+                   <FRAME '\1aGEN-COMP2>
+                   <FRAME '\1aFLOP>
+                   <NTHUV NOD9 4 = STACK (TYPE ATOM)>
+                   <DEAD NOD9>
+                   <CALL '\1aFLOP 1 = STACK>
+                   <PUSH ATYP222>
+                   <DEAD ATYP222>
+                   <PUSH TEMP50>
+                   <DEAD TEMP50>
+                   <PUSH TEMP32>
+                   <DEAD TEMP32>
+                   <PUSH K15>
+                   <DEAD K15>
+                   <VEQUAL? FLS27 0 + PHRASE157>
+                   <SET TEMP51 DIR13>
+                   <DEAD DIR13>
+                   <JUMP + TAG160>
+PHRASE157
+                   <TYPE? DIR13 <TYPE-CODE FALSE> - TAG159>
+                   <DEAD DIR13>
+                   <SET TEMP51 'T (TYPE ATOM)>
+                   <JUMP + TAG160>
+TAG159
+                   <SET TEMP51 %<> (TYPE FALSE)>
+TAG160
+                   <PUSH TEMP51>
+                   <DEAD TEMP51>
+                   <VEQUAL? FLS27 0 + PHRASE162>
+                   <SET TEMP51 BRANCH12>
+                   <JUMP + PHRASE163>
+PHRASE162
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0 = B223>
+                   <SET TEMP51 B223>
+PHRASE163
+                   <PUSH TEMP51>
+                   <DEAD TEMP51>
+                   <CALL '\1aGEN-COMP2 7>
+                   <VEQUAL? FLS27 0 + TAG167>
+                   <DEAD FLS27>
+                   <SET TEMP51 %<> (TYPE FALSE)>
+                   <JUMP + PHRASE173>
+TAG167
+                   <FRAME '\1aMOVE-ARG>
+                   <FRAME '\1aMOVE-ARG>
+                   <FRAME '\1aREFERENCE>
+                   <PUSH SDIR24>
+                   <DEAD SDIR24>
+                   <CALL '\1aREFERENCE 1 = STACK>
+                   <PUSH WHERE10>
+                   <DEAD WHERE10>
+                   <CALL '\1aMOVE-ARG 2 = STACK>
+                   <PUSH RW25>
+                   <DEAD RW25>
+                   <CALL '\1aMOVE-ARG 2 = RW25>
+                   <FRAME '\1aBRANCH-TAG>
+                   <PUSH BRANCH12>
+                   <DEAD BRANCH12>
+                   <CALL '\1aBRANCH-TAG 1>
+                   <FRAME '\1aLABEL-TAG>
+                   <PUSH B223>
+                   <DEAD B223>
+                   <CALL '\1aLABEL-TAG 1>
+                   <SET TEMP51 RW25>
+                   <DEAD RW25>
+                   <JUMP + PHRASE173>
+PHRASE143
+                   <FRAME '\1aGEN-COMP2>
+                   <FRAME '\1aFLOP>
+                   <NTHUV NOD9 4 = STACK (TYPE ATOM)>
+                   <DEAD NOD9>
+                   <CALL '\1aFLOP 1 = STACK>
+                   <PUSH ATYP222>
+                   <DEAD ATYP222>
+                   <PUSH TEMP50>
+                   <DEAD TEMP50>
+                   <PUSH TEMP32>
+                   <DEAD TEMP32>
+                   <PUSH K15>
+                   <DEAD K15>
+                   <PUSH NOTF11>
+                   <DEAD NOTF11>
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0 = BRANCH12>
+                   <PUSH BRANCH12>
+                   <CALL '\1aGEN-COMP2 7>
+                   <FRAME '\1aDEALLOCATE-TEMP>
+                   <FRAME '\1aMOVE-ARG>
+                   <FRAME '\1aREFERENCE>
+                   <PUSH 'T>
+                   <CALL '\1aREFERENCE 1 = STACK>
+                   <PUSH WHERE10>
+                   <CALL '\1aMOVE-ARG 2 = STACK>
+                   <CALL '\1aDEALLOCATE-TEMP 1>
+                   <FRAME '\1aBRANCH-TAG>
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0 = B223>
+                   <PUSH B223>
+                   <CALL '\1aBRANCH-TAG 1>
+                   <FRAME '\1aLABEL-TAG>
+                   <PUSH BRANCH12>
+                   <DEAD BRANCH12>
+                   <CALL '\1aLABEL-TAG 1>
+                   <FRAME '\1aMOVE-ARG>
+                   <FRAME '\1aREFERENCE>
+                   <PUSH %<>>
+                   <CALL '\1aREFERENCE 1 = STACK>
+                   <PUSH WHERE10>
+                   <CALL '\1aMOVE-ARG 2>
+                   <FRAME '\1aLABEL-TAG>
+                   <PUSH B223>
+                   <DEAD B223>
+                   <CALL '\1aLABEL-TAG 1>
+                   <FRAME '\1aMOVE-ARG>
+                   <PUSH WHERE10>
+                   <DEAD WHERE10>
+                   <PUSH RW25>
+                   <DEAD RW25>
+                   <CALL '\1aMOVE-ARG 2 = TEMP51>
+PHRASE173
+                   <SET TEMP32 TEMP51>
+                   <DEAD TEMP51>
+RETURN2
+                   <UNBIND TEMP3>
+                   <DEAD TEMP3>
+                   <ADJ -18>
+                   <RETURN TEMP32>
+                   <DEAD TEMP32>
+                   <END \1aTEST-GEN>
+
+#WORD *11152052772*
+                   <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>
+                   <TEMP SDIR13 RW14 FLS15 SBR17 TEMP40 B216>
+                   <INTGO>
+                   <SET SDIR13 DIR8>
+                   <SET RW14 WHERE5>
+                   <EQUAL? RW14 'FLUSHED - TAG18>
+                   <SET FLS15 'T (TYPE ATOM)>
+                   <JUMP + TAG19>
+TAG18
+                   <SET FLS15 %<> (TYPE FALSE)>
+TAG19
+                   <NTHUV NOD4 4 = SBR17>
+                   <DEAD NOD4>
+                   <EQUAL? WHERE5 'FLUSHED - PHRASE21>
+                   <SET WHERE5 'FLUSHED (TYPE ATOM)>
+                   <JUMP + PHRASE22>
+PHRASE21
+                   <EQUAL? WHERE5 'DONT-CARE - PHRASE22>
+                   <FRAME '\1aGEN-TEMP>
+                   <PUSH %<>>
+                   <CALL '\1aGEN-TEMP 1 = WHERE5>
+PHRASE22
+                   <TYPE? BRANCH7 <TYPE-CODE FALSE> + PHRASE26>
+                   <TYPE? NEG11 <TYPE-CODE FALSE> + PHRASE28>
+                   <DEAD NEG11>
+                   <FRAME '\1aFLOP>
+                   <PUSH SBR17>
+                   <DEAD SBR17>
+                   <CALL '\1aFLOP 1 = SBR17>
+PHRASE28
+                   <TYPE? NOTF6 <TYPE-CODE FALSE> + TAG32>
+                   <DEAD NOTF6>
+                   <TYPE? DIR8 <TYPE-CODE FALSE> - TAG31>
+                   <DEAD DIR8>
+                   <SET DIR8 'T (TYPE ATOM)>
+                   <JUMP + TAG32>
+TAG31
+                   <SET DIR8 %<> (TYPE FALSE)>
+TAG32
+                   <TYPE? SF12 <TYPE-CODE FALSE> + PHRASE34>
+                   <DEAD SF12>
+                   <FRAME '\1aDEALLOCATE-TEMP>
+                   <FRAME '\1aMOVE-ARG>
+                   <FRAME '\1aREFERENCE>
+                   <TYPE? SDIR13 <TYPE-CODE FALSE> - TAG38>
+                   <SET TEMP40 'T (TYPE ATOM)>
+                   <JUMP + TAG39>
+TAG38
+                   <SET TEMP40 %<> (TYPE FALSE)>
+TAG39
+                   <PUSH TEMP40>
+                   <DEAD TEMP40>
+                   <CALL '\1aREFERENCE 1 = STACK>
+                   <PUSH WHERE5>
+                   <CALL '\1aMOVE-ARG 2 = STACK>
+                   <CALL '\1aDEALLOCATE-TEMP 1>
+PHRASE34
+                   <FRAME '\1aGEN-COMP2>
+                   <PUSH SBR17>
+                   <DEAD SBR17>
+                   <FRAME '\1aTYPE>
+                   <PUSH NUM10>
+                   <CALL '\1aTYPE 1 = STACK>
+                   <PUSH %<>>
+                   <FRAME '\1aREFERENCE>
+                   <PUSH NUM10>
+                   <DEAD NUM10>
+                   <CALL '\1aREFERENCE 1 = STACK>
+                   <PUSH REG9>
+                   <DEAD REG9>
+                   <VEQUAL? FLS15 0 + PHRASE45>
+                   <SET TEMP40 DIR8>
+                   <DEAD DIR8>
+                   <JUMP + TAG48>
+PHRASE45
+                   <TYPE? DIR8 <TYPE-CODE FALSE> - TAG47>
+                   <DEAD DIR8>
+                   <SET TEMP40 'T (TYPE ATOM)>
+                   <JUMP + TAG48>
+TAG47
+                   <SET TEMP40 %<> (TYPE FALSE)>
+TAG48
+                   <PUSH TEMP40>
+                   <DEAD TEMP40>
+                   <VEQUAL? FLS15 0 + PHRASE50>
+                   <SET TEMP40 BRANCH7>
+                   <JUMP + PHRASE51>
+PHRASE50
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0 = B216>
+                   <SET TEMP40 B216>
+PHRASE51
+                   <PUSH TEMP40>
+                   <DEAD TEMP40>
+                   <CALL '\1aGEN-COMP2 7>
+                   <VEQUAL? FLS15 0 + TAG55>
+                   <DEAD FLS15>
+                   <RETURN %<>>
+TAG55
+                   <FRAME '\1aMOVE-ARG>
+                   <FRAME '\1aMOVE-ARG>
+                   <FRAME '\1aREFERENCE>
+                   <PUSH SDIR13>
+                   <DEAD SDIR13>
+                   <CALL '\1aREFERENCE 1 = STACK>
+                   <PUSH WHERE5>
+                   <DEAD WHERE5>
+                   <CALL '\1aMOVE-ARG 2 = STACK>
+                   <PUSH RW14>
+                   <DEAD RW14>
+                   <CALL '\1aMOVE-ARG 2 = RW14>
+                   <FRAME '\1aBRANCH-TAG>
+                   <PUSH BRANCH7>
+                   <DEAD BRANCH7>
+                   <CALL '\1aBRANCH-TAG 1>
+                   <FRAME '\1aLABEL-TAG>
+                   <PUSH B216>
+                   <DEAD B216>
+                   <CALL '\1aLABEL-TAG 1>
+                   <RETURN RW14>
+                   <DEAD RW14>
+PHRASE26
+                   <TYPE? NEG11 <TYPE-CODE FALSE> + PHRASE66>
+                   <DEAD NEG11>
+                   <FRAME '\1aFLOP>
+                   <PUSH SBR17>
+                   <DEAD SBR17>
+                   <CALL '\1aFLOP 1 = SBR17>
+PHRASE66
+                   <FRAME '\1aGEN-COMP2>
+                   <PUSH SBR17>
+                   <DEAD SBR17>
+                   <FRAME '\1aTYPE>
+                   <PUSH NUM10>
+                   <CALL '\1aTYPE 1 = STACK>
+                   <PUSH %<>>
+                   <FRAME '\1aREFERENCE>
+                   <PUSH NUM10>
+                   <DEAD NUM10>
+                   <CALL '\1aREFERENCE 1 = STACK>
+                   <PUSH REG9>
+                   <DEAD REG9>
+                   <PUSH NOTF6>
+                   <DEAD NOTF6>
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0 = BRANCH7>
+                   <PUSH BRANCH7>
+                   <CALL '\1aGEN-COMP2 7>
+                   <FRAME '\1aMOVE-ARG>
+                   <FRAME '\1aREFERENCE>
+                   <PUSH 'T>
+                   <CALL '\1aREFERENCE 1 = STACK>
+                   <PUSH WHERE5>
+                   <CALL '\1aMOVE-ARG 2>
+                   <FRAME '\1aBRANCH-TAG>
+                   <FRAME '\1aMAKE-TAG>
+                   <CALL '\1aMAKE-TAG 0 = B216>
+                   <PUSH B216>
+                   <CALL '\1aBRANCH-TAG 1>
+                   <FRAME '\1aLABEL-TAG>
+                   <PUSH BRANCH7>
+                   <DEAD BRANCH7>
+                   <CALL '\1aLABEL-TAG 1>
+                   <FRAME '\1aMOVE-ARG>
+                   <FRAME '\1aREFERENCE>
+                   <PUSH %<>>
+                   <CALL '\1aREFERENCE 1 = STACK>
+                   <PUSH WHERE5>
+                   <CALL '\1aMOVE-ARG 2>
+                   <FRAME '\1aLABEL-TAG>
+                   <PUSH B216>
+                   <DEAD B216>
+                   <CALL '\1aLABEL-TAG 1>
+                   <FRAME '\1aMOVE-ARG>
+                   <PUSH WHERE5>
+                   <DEAD WHERE5>
+                   <PUSH RW14>
+                   <DEAD RW14>
+                   <CALL '\1aMOVE-ARG 2 = TEMP40>
+                   <RETURN TEMP40>
+                   <DEAD TEMP40>
+                   <END \1aTEST-GEN2>
+
+#WORD *27724104551*
+                   <GFCN \1aGEN-COMP2 ("VALUE" ATOM ATOM ANY ANY ANY ANY ANY ATOM) SB4 T15 T26 R17 R28 D9 BR10>
+                   <TEMP TEMP30 TEMP35 TEMP36>
+                   <INTGO>
+                   <TYPE? D9 <TYPE-CODE FALSE> + BOOL12>
+                   <DEAD D9>
+                   <FRAME '\1aFLIP>
+                   <PUSH SB4>
+                   <DEAD SB4>
+                   <CALL '\1aFLIP 1 = SB4>
+BOOL12
+                   <TYPE? T15 <TYPE-CODE FALSE> + PHRASE21>
+                   <TYPE? T26 <TYPE-CODE FALSE> + PHRASE21>
+                   <EQUAL? T15 T26 + PHRASE21>
+                   <TYPE? R17 <TYPE-CODE TEMP> - PHRASE21>
+                   <TYPE? R28 <TYPE-CODE TEMP> - PHRASE21>
+                   <EQUAL? T15 'FIX - PHRASE18>
+                   <SET T15 'FLOAT (TYPE ATOM)>
+                   <FRAME '\1aGEN-FLOAT>
+                   <PUSH R28>
+                   <PUSH R28>
+                   <DEAD R28>
+                   <CALL '\1aGEN-FLOAT 2 = R28>
+PHRASE18
+                   <EQUAL? T26 'FIX - PHRASE21>
+                   <SET T26 'FLOAT (TYPE ATOM)>
+                   <FRAME '\1aGEN-FLOAT>
+                   <PUSH R17>
+                   <PUSH R17>
+                   <DEAD R17>
+                   <CALL '\1aGEN-FLOAT 2 = R17>
+PHRASE21
+                   <TYPE? R17 <TYPE-CODE TEMP> - PHRASE24>
+                   <FRAME '\1aFREE-TEMP>
+                   <PUSH R17>
+                   <PUSH %<>>
+                   <CALL '\1aFREE-TEMP 2>
+PHRASE24
+                   <TYPE? R28 <TYPE-CODE TEMP> - PHRASE27>
+                   <FRAME '\1aFREE-TEMP>
+                   <PUSH R28>
+                   <PUSH %<>>
+                   <CALL '\1aFREE-TEMP 2>
+PHRASE27
+                   <FRAME '\1aIEMIT>
+                   <GVAL 'SKIPS = TEMP30>
+                   <GVAL 'CMSUBRS = TEMP35>
+                   <EMPUV? TEMP35 + TAG31>
+                   <LOOP (SB4 VALUE) (TEMP35 LENGTH VALUE)>
+TAG33
+                   <NTHUV TEMP35 1 = TEMP36>
+                   <VEQUAL? TEMP36 SB4 + TAG32>
+                   <DEAD TEMP36>
+                   <RESTUV TEMP35 1 = TEMP35 (TYPE VECTOR)>
+                   <EMPUV? TEMP35 - TAG33>
+TAG31
+                   <SET TEMP35 %<> (TYPE FALSE)>
+TAG32
+                   <LENUV TEMP35 = TEMP35 (TYPE FIX)>
+                   <NTHUV TEMP30 TEMP35 = TEMP30 (TYPE LIST)>
+                   <DEAD TEMP35>
+                   <NTHL TEMP30 1 = STACK (TYPE ATOM)>
+                   <PUSH R28>
+                   <DEAD R28>
+                   <PUSH R17>
+                   <DEAD R17>
+                   <RESTL TEMP30 1 = TEMP35 (TYPE LIST)>
+                   <DEAD TEMP30>
+                   <NTHL TEMP35 1 = STACK (TYPE ATOM)>
+                   <DEAD TEMP35>
+                   <PUSH BR10>
+                   <DEAD BR10>
+                   <SET TEMP35 T15>
+                   <DEAD T15>
+                   <TYPE? TEMP35 <TYPE-CODE FALSE> - BOOL37>
+                   <SET TEMP35 T26>
+                   <DEAD T26>
+BOOL37
+                   <CONS TEMP35 () = TEMP35>
+                   <CONS '`TYPE TEMP35 = STACK>
+                   <DEAD TEMP35>
+                   <CALL '\1aIEMIT 6 = TEMP35>
+                   <RETURN TEMP35>
+                   <DEAD TEMP35>
+                   <END \1aGEN-COMP2>
+
+#WORD *12337056240*
+                   <GFCN \1aGET-DF ("VALUE" ANY ATOM) S4>
+                   <TEMP TEMP5:VECTOR TEMP10 TEMP11>
+                   <INTGO>
+                   <GVAL 'DF-VALS = TEMP5>
+                   <SET TEMP10 [MAX MIN * / - +] (TYPE VECTOR)>
+                   <LOOP (S4 VALUE) (TEMP10 LENGTH VALUE)>
+TAG8
+                   <NTHUV TEMP10 1 = TEMP11>
+                   <VEQUAL? TEMP11 S4 + TAG7>
+                   <DEAD TEMP11>
+                   <RESTUV TEMP10 1 = TEMP10 (TYPE VECTOR)>
+                   <EMPUV? TEMP10 - TAG8>
+                   <SET TEMP10 %<> (TYPE FALSE)>
+TAG7
+                   <LENUV TEMP10 = TEMP10 (TYPE FIX)>
+                   <NTHUV TEMP5 TEMP10 = TEMP10>
+                   <DEAD TEMP5>
+                   <RETURN TEMP10>
+                   <DEAD TEMP10>
+                   <END \1aGET-DF>
+
+#WORD *130412462*
+                   <GFCN \1aPOPWR2 ("VALUE" <OR FALSE FIX> FIX) X4>
+                   <TEMP TEMP9>
+                   <INTGO>
+                   <VEQUAL? X4 0 - PHRASE6 (TYPE FIX)>
+                   <RETURN %<>>
+PHRASE6
+                   <SUB 0 X4 = TEMP9 (TYPE FIX)>
+                   <AND TEMP9 X4 = TEMP9>
+                   <VEQUAL? X4 TEMP9 + TAG12 (TYPE FIX)>
+                   <DEAD TEMP9>
+                   <RETURN %<>>
+TAG12
+                   <SET TEMP9 0 (TYPE FIX)>
+                   <LOOP>
+AGAIN15
+                   <INTGO>
+                   <VEQUAL? X4 1 - PHRASE17 (TYPE FIX)>
+                   <RETURN TEMP9>
+                   <DEAD TEMP9>
+PHRASE17
+                   <LSH X4 -1 = X4 (TYPE FIX)>
+                   <ADD TEMP9 1 = TEMP9 (TYPE FIX)>
+                   <JUMP + AGAIN15>
+                   <END \1aPOPWR2>
+
+<SETG DF-VALS [0 0 1 1 <MIN> <MAX>]>
+
+<GDECL (SKIPS) <VECTOR [REST <LIST ATOM ATOM>]> (0SUBRS 0SKPS 0JSENS CMSUBRS) <VECTOR [REST ATOM]> (DF-VALS) VECTOR>
+
+<SETG CMSUBRS '[0? N0? 1? N1? -1? N-1? ==? N==? G? G=? L? L=?]>
+
+<SETG SKIPS '[(`LESS? +) (`GRTR? -) (`GRTR? +) (`LESS? -) (`VEQUAL? +) (`VEQUAL? -) (`EQUAL? +) (`VEQUAL? -) (`VEQUAL? +) (`VEQUAL? -) (`VEQUAL? +) (`VEQUAL? -)]>
+
+<ENDPACKAGE>