--- /dev/null
+
+<PACKAGE "STRGEN">
+
+<ENTRY NTH-GEN REST-GEN PUT-GEN LNTH-GEN MT-GEN PUTREST-GEN IPUT-GEN IREMAS-GEN COMMUTE-STRUC DEFER-IT LIST-LNT-SPEC EMPTY-CHECK NTH-DO REST-DO RECTYPE? MONAD?-GEN BACK-GEN TOP-GEN>
+
+<USE "COMPDEC" "CODGEN" "CHKDCL" "SPCGEN" "CARGEN" "MIMGEN" "ADVMESS">
+
+<SETG MAX-IN-ROW 4>
+
+<SETG CMAX-IN-ROW 2>
+
+<MANIFEST MAX-IN-ROW CMAX-IN-ROW>
+
+#WORD *33201625647*
+<GFCN \1aLIST-LNT-SPEC ("VALUE" ANY NODE ANY ANY ANY ANY FIX ANY) N4 W5 NF6 BR7 DI8 NUM9 SF10>
+ <TEMP K11 FLS14 B215 SDIR16 (B317 %<>) SBR22 TEMP34 F119 F220 F321 RAC13:TEMP>
+ <INTGO>
+ <NTHUV N4 5 = K11 (TYPE LIST)>
+ <EQUAL? W5 'FLUSHED - TAG24>
+ <SET FLS14 'T (TYPE ATOM)>
+ <JUMP + TAG25>
+TAG24
+ <SET FLS14 %<> (TYPE FALSE)>
+TAG25
+ <TYPE? BR7 <TYPE-CODE FALSE> + PHRASE27>
+ <VEQUAL? FLS14 0 + PHRASE27>
+ <SET B215 BR7>
+ <JUMP + PHRASE29>
+PHRASE27
+ <FRAME '\1aMAKE-TAG>
+ <CALL '\1aMAKE-TAG 0 = B215>
+PHRASE29
+ <SET SDIR16 DI8>
+ <NTHUV N4 4 = SBR22>
+ <FRAME '\1aGEN>
+ <NTHL K11 1 = TEMP34 (TYPE NODE)>
+ <NTHUV TEMP34 1 = TEMP34 (TYPE FIX)>
+ <VEQUAL? TEMP34 2 - PHRASE33 (TYPE FIX)>
+ <DEAD TEMP34>
+ <RESTL K11 1 = TEMP34 (TYPE LIST)>
+ <DEAD K11>
+ <NTHL TEMP34 1 = TEMP34 (TYPE NODE)>
+ <JUMP + PHRASE35>
+PHRASE33
+ <NTHL K11 1 = TEMP34 (TYPE NODE)>
+ <DEAD K11>
+PHRASE35
+ <NTHUV TEMP34 5 = TEMP34 (TYPE LIST)>
+ <NTHL TEMP34 1 = K11 (TYPE NODE)>
+ <DEAD TEMP34>
+ <PUSH K11>
+ <DEAD K11>
+ <CALL '\1aGEN 1 = K11>
+ <TYPE? NF6 <TYPE-CODE FALSE> + TAG38>
+ <DEAD NF6>
+ <TYPE? DI8 <TYPE-CODE FALSE> - TAG37>
+ <DEAD DI8>
+ <SET DI8 'T (TYPE ATOM)>
+ <JUMP + TAG38>
+TAG37
+ <SET DI8 %<> (TYPE FALSE)>
+TAG38
+ <TYPE? SF10 <TYPE-CODE FALSE> + PHRASE40>
+ <DEAD SF10>
+ <FRAME '\1aDEALLOCATE-TEMP>
+ <FRAME '\1aMOVE-ARG>
+ <FRAME '\1aREFERENCE>
+ <TYPE? SDIR16 <TYPE-CODE FALSE> - TAG44>
+ <SET TEMP34 'T (TYPE ATOM)>
+ <JUMP + TAG45>
+TAG44
+ <SET TEMP34 %<> (TYPE FALSE)>
+TAG45
+ <PUSH TEMP34>
+ <DEAD TEMP34>
+ <CALL '\1aREFERENCE 1 = STACK>
+ <PUSH W5>
+ <CALL '\1aMOVE-ARG 2 = STACK>
+ <CALL '\1aDEALLOCATE-TEMP 1>
+PHRASE40
+ <TYPE? BR7 <TYPE-CODE FALSE> + PHRASE47>
+ <VEQUAL? FLS14 0 - PHRASE47>
+ <TYPE? DI8 <TYPE-CODE FALSE> - TAG49>
+ <DEAD DI8>
+ <SET DI8 'T (TYPE ATOM)>
+ <JUMP + PHRASE47>
+TAG49
+ <SET DI8 %<> (TYPE FALSE)>
+PHRASE47
+ <TYPE? DI8 <TYPE-CODE FALSE> + BOOL52>
+ <DEAD DI8>
+ <FRAME '\1aFLIP>
+ <PUSH SBR22>
+ <DEAD SBR22>
+ <CALL '\1aFLIP 1 = SBR22>
+BOOL52
+ <SET F119 [==? G? G=? 1? 0?] (TYPE VECTOR)>
+ <TYPE? SBR22 <TYPE-CODE ATOM> - TAG54>
+ <LOOP (SBR22 VALUE) (F119 LENGTH VALUE)>
+TAG56
+ <NTHUV F119 1 = TEMP34>
+ <VEQUAL? TEMP34 SBR22 + TAG55>
+ <DEAD TEMP34>
+ <RESTUV F119 1 = F119 (TYPE VECTOR)>
+ <EMPUV? F119 - TAG56>
+TAG54
+ <SET F119 %<> (TYPE FALSE)>
+TAG55
+ <SET F220 [G? G=?] (TYPE VECTOR)>
+ <TYPE? SBR22 <TYPE-CODE ATOM> - TAG58>
+ <LOOP (SBR22 VALUE) (F220 LENGTH VALUE)>
+TAG60
+ <NTHUV F220 1 = TEMP34>
+ <VEQUAL? TEMP34 SBR22 + TAG59>
+ <DEAD TEMP34>
+ <RESTUV F220 1 = F220 (TYPE VECTOR)>
+ <EMPUV? F220 - TAG60>
+TAG58
+ <SET F220 %<> (TYPE FALSE)>
+TAG59
+ <SET F321 [L? L=?] (TYPE VECTOR)>
+ <TYPE? SBR22 <TYPE-CODE ATOM> - TAG62>
+ <LOOP (SBR22 VALUE) (F321 LENGTH VALUE)>
+TAG64
+ <NTHUV F321 1 = TEMP34>
+ <VEQUAL? TEMP34 SBR22 + TAG63>
+ <DEAD TEMP34>
+ <RESTUV F321 1 = F321 (TYPE VECTOR)>
+ <EMPUV? F321 - TAG64>
+TAG62
+ <SET F321 %<> (TYPE FALSE)>
+TAG63
+ <EQUAL? SBR22 'L=? + BOOL68>
+ <EQUAL? SBR22 'G? - PHRASE67>
+ <DEAD SBR22>
+BOOL68
+ <SUB NUM9 1 = NUM9 (TYPE FIX)>
+PHRASE67
+ <GRTR? NUM9 2 + PHRASE70 (TYPE FIX)>
+ <LOOP>
+AGAIN73
+ <INTGO>
+ <FRAME '\1aEMPTY-LIST>
+ <PUSH K11>
+ <GRTR? NUM9 0 + PHRASE76 (TYPE FIX)>
+ <SET SBR22 B215>
+ <JUMP + PHRASE85>
+PHRASE76
+ <TYPE? F321 <TYPE-CODE FALSE> + PHRASE80>
+ <SET SBR22 B215>
+ <JUMP + PHRASE85>
+PHRASE80
+ <TYPE? F220 <TYPE-CODE FALSE> - BOOL82>
+ <TYPE? F119 <TYPE-CODE FALSE> - PHRASE81>
+BOOL82
+ <SET SBR22 B317>
+ <TYPE? SBR22 <TYPE-CODE FALSE> - PHRASE85>
+ <FRAME '\1aMAKE-TAG>
+ <CALL '\1aMAKE-TAG 0 = B317>
+ <SET SBR22 B317>
+ <JUMP + PHRASE85>
+PHRASE81
+ <SET SBR22 B215>
+PHRASE85
+ <PUSH SBR22>
+ <DEAD SBR22>
+ <VEQUAL? NUM9 0 + TAG87 (TYPE FIX)>
+ <SET SBR22 'T (TYPE ATOM)>
+ <JUMP + TAG91>
+TAG87
+ <TYPE? F119 <TYPE-CODE FALSE> - TAG90>
+ <SET SBR22 'T (TYPE ATOM)>
+ <JUMP + TAG91>
+TAG90
+ <SET SBR22 %<> (TYPE FALSE)>
+TAG91
+ <PUSH SBR22>
+ <DEAD SBR22>
+ <CALL '\1aEMPTY-LIST 3>
+ <SUB NUM9 1 = NUM9 (TYPE FIX)>
+ <LESS? NUM9 0 - PHRASE93 (TYPE FIX)>
+ <TYPE? B317 <TYPE-CODE FALSE> + EXIT71>
+ <FRAME '\1aLABEL-TAG>
+ <PUSH B317>
+ <DEAD B317>
+ <CALL '\1aLABEL-TAG 1>
+ <JUMP + EXIT71>
+PHRASE93
+ <FRAME '\1aREST-LIST>
+ <PUSH K11>
+ <TYPE? K11 <TYPE-CODE TEMP> - BOOL101>
+ <NTHUV K11 2 = SBR22 (TYPE FIX)>
+ <LESS? SBR22 2 + PHRASE100 (TYPE FIX)>
+ <DEAD SBR22>
+BOOL101
+ <FRAME '\1aFREE-TEMP>
+ <PUSH K11>
+ <DEAD K11>
+ <PUSH %<>>
+ <CALL '\1aFREE-TEMP 2>
+ <FRAME '\1aGEN-TEMP>
+ <PUSH 'LIST>
+ <CALL '\1aGEN-TEMP 1 = K11>
+ <SET SBR22 K11>
+ <JUMP + PHRASE104>
+PHRASE100
+ <SET SBR22 K11>
+PHRASE104
+ <PUSH SBR22>
+ <DEAD SBR22>
+ <PUSH 1>
+ <CALL '\1aREST-LIST 3>
+ <JUMP + AGAIN73>
+EXIT71
+ <FRAME '\1aFREE-TEMP>
+ <PUSH K11>
+ <DEAD K11>
+ <CALL '\1aFREE-TEMP 1>
+ <JUMP + PHRASE106>
+PHRASE70
+ <TYPE? K11 <TYPE-CODE TEMP> - BOOL109>
+ <NTHUV K11 2 = SBR22 (TYPE FIX)>
+ <LESS? SBR22 2 + PHRASE108 (TYPE FIX)>
+ <DEAD SBR22>
+BOOL109
+ <FRAME '\1aMOVE-ARG>
+ <PUSH K11>
+ <DEAD K11>
+ <FRAME '\1aGEN-TEMP>
+ <PUSH %<>>
+ <CALL '\1aGEN-TEMP 1 = STACK>
+ <CALL '\1aMOVE-ARG 2 = K11>
+PHRASE108
+ <FRAME '\1aSET-TEMP>
+ <FRAME '\1aGEN-TEMP>
+ <PUSH 'FIX>
+ <CALL '\1aGEN-TEMP 1 = RAC13>
+ <PUSH RAC13>
+ <TYPE? F220 <TYPE-CODE FALSE> - BOOL116>
+ <TYPE? F321 <TYPE-CODE FALSE> + PHRASE115>
+BOOL116
+ <ADD NUM9 1 = SBR22 (TYPE FIX)>
+ <DEAD NUM9>
+ <JUMP + PHRASE117>
+PHRASE115
+ <SET SBR22 NUM9>
+ <DEAD NUM9>
+PHRASE117
+ <PUSH SBR22>
+ <DEAD SBR22>
+ <PUSH (`TYPE FIX)>
+ <CALL '\1aSET-TEMP 3>
+ <FRAME '\1aIEMIT>
+ <PUSH '`LOOP>
+ <CONS 'VALUE () = SBR22>
+ <NTHUV K11 1 = TEMP34 (TYPE ATOM)>
+ <CONS TEMP34 SBR22 = STACK>
+ <DEAD TEMP34 SBR22>
+ <CONS 'VALUE () = SBR22>
+ <NTHUV RAC13 1 = TEMP34 (TYPE ATOM)>
+ <CONS TEMP34 SBR22 = STACK>
+ <DEAD TEMP34 SBR22>
+ <CALL '\1aIEMIT 3>
+ <FRAME '\1aLABEL-TAG>
+ <FRAME '\1aMAKE-TAG>
+ <CALL '\1aMAKE-TAG 0 = TEMP34>
+ <PUSH TEMP34>
+ <CALL '\1aLABEL-TAG 1>
+ <FRAME '\1aEMPTY-LIST>
+ <PUSH K11>
+ <TYPE? F321 <TYPE-CODE FALSE> - PHRASE124>
+ <TYPE? F220 <TYPE-CODE FALSE> - BOOL126>
+ <TYPE? F119 <TYPE-CODE FALSE> - PHRASE124>
+BOOL126
+ <FRAME '\1aMAKE-TAG>
+ <CALL '\1aMAKE-TAG 0 = B317>
+ <SET SBR22 B317>
+ <JUMP + PHRASE129>
+PHRASE124
+ <SET SBR22 B215>
+PHRASE129
+ <PUSH SBR22>
+ <DEAD SBR22>
+ <PUSH 'T>
+ <CALL '\1aEMPTY-LIST 3>
+ <FRAME '\1aREST-LIST>
+ <PUSH K11>
+ <PUSH K11>
+ <PUSH 1>
+ <CALL '\1aREST-LIST 3>
+ <FRAME '\1aIEMIT>
+ <PUSH '`SUB>
+ <PUSH RAC13>
+ <PUSH 1>
+ <PUSH '=>
+ <PUSH RAC13>
+ <PUSH (`TYPE FIX)>
+ <CALL '\1aIEMIT 6>
+ <FRAME '\1aIEMIT>
+ <PUSH '`GRTR?>
+ <PUSH RAC13>
+ <PUSH 0>
+ <PUSH '+>
+ <PUSH TEMP34>
+ <DEAD TEMP34>
+ <PUSH (`TYPE FIX)>
+ <CALL '\1aIEMIT 6>
+ <TYPE? F321 <TYPE-CODE FALSE> - BOOL135>
+ <DEAD F321>
+ <TYPE? F220 <TYPE-CODE FALSE> + PHRASE134>
+ <DEAD F220>
+BOOL135
+ <TYPE? B317 <TYPE-CODE FALSE> + PHRASE138>
+ <FRAME '\1aBRANCH-TAG>
+ <PUSH B215>
+ <CALL '\1aBRANCH-TAG 1>
+ <JUMP + PHRASE138>
+PHRASE134
+ <FRAME '\1aEMPTY-LIST>
+ <PUSH K11>
+ <PUSH B215>
+ <TYPE? F119 <TYPE-CODE FALSE> - TAG140>
+ <DEAD F119>
+ <SET SBR22 'T (TYPE ATOM)>
+ <JUMP + TAG141>
+TAG140
+ <SET SBR22 %<> (TYPE FALSE)>
+TAG141
+ <PUSH SBR22>
+ <DEAD SBR22>
+ <CALL '\1aEMPTY-LIST 3>
+PHRASE138
+ <TYPE? B317 <TYPE-CODE FALSE> + PHRASE143>
+ <FRAME '\1aLABEL-TAG>
+ <PUSH B317>
+ <DEAD B317>
+ <CALL '\1aLABEL-TAG 1>
+PHRASE143
+ <FRAME '\1aFREE-TEMP>
+ <PUSH K11>
+ <DEAD K11>
+ <CALL '\1aFREE-TEMP 1>
+ <FRAME '\1aFREE-TEMP>
+ <PUSH RAC13>
+ <DEAD RAC13>
+ <CALL '\1aFREE-TEMP 1>
+PHRASE106
+ <TYPE? BR7 <TYPE-CODE FALSE> - PHRASE148>
+ <FRAME '\1aTRUE-FALSE>
+ <PUSH N4>
+ <DEAD N4>
+ <PUSH B215>
+ <DEAD B215>
+ <PUSH W5>
+ <DEAD W5>
+ <CALL '\1aTRUE-FALSE 3 = SBR22>
+ <RETURN SBR22>
+ <DEAD SBR22>
+PHRASE148
+ <VEQUAL? FLS14 0 + TAG151>
+ <DEAD FLS14>
+ <RETURN %<>>
+TAG151
+ <FRAME '\1aMOVE-ARG>
+ <FRAME '\1aREFERENCE>
+ <PUSH SDIR16>
+ <DEAD SDIR16>
+ <CALL '\1aREFERENCE 1 = STACK>
+ <PUSH W5>
+ <DEAD W5>
+ <CALL '\1aMOVE-ARG 2 = W5>
+ <FRAME '\1aBRANCH-TAG>
+ <PUSH BR7>
+ <DEAD BR7>
+ <CALL '\1aBRANCH-TAG 1>
+ <FRAME '\1aLABEL-TAG>
+ <PUSH B215>
+ <DEAD B215>
+ <CALL '\1aLABEL-TAG 1>
+ <RETURN W5>
+ <DEAD W5>
+ <END \1aLIST-LNT-SPEC>
+#WORD *11374734625*
+<GFCN \1aLNTH-GEN ("VALUE" ANY NODE ANY) NOD4 WHERE5>
+ <TEMP TEMP12 ITYP10 TYP11>
+ <INTGO>
+ <NTHUV NOD4 5 = TEMP12 (TYPE LIST)>
+ <DEAD NOD4>
+ <NTHL TEMP12 1 = TEMP12 (TYPE NODE)>
+ <NTHUV TEMP12 3 = ITYP10>
+ <FRAME '\1aSTRUCTYP>
+ <PUSH ITYP10>
+ <CALL '\1aSTRUCTYP 1 = TYP11>
+ <FRAME '\1aGEN>
+ <PUSH TEMP12>
+ <DEAD TEMP12>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = TEMP12>
+ <FRAME '\1aFREE-TEMP>
+ <PUSH TEMP12>
+ <PUSH %<>>
+ <CALL '\1aFREE-TEMP 2>
+ <EQUAL? WHERE5 'DONT-CARE - PHRASE17>
+ <FRAME '\1aGEN-TEMP>
+ <PUSH 'FIX>
+ <CALL '\1aGEN-TEMP 1 = WHERE5>
+ <JUMP + PHRASE19>
+PHRASE17
+ <TYPE? WHERE5 <TYPE-CODE TEMP> - PHRASE19>
+ <FRAME '\1aUSE-TEMP>
+ <PUSH WHERE5>
+ <PUSH 'FIX>
+ <CALL '\1aUSE-TEMP 2>
+PHRASE19
+ <EQUAL? TYP11 'LIST - PHRASE22>
+ <FRAME '\1aLENGTH-LIST>
+ <PUSH TEMP12>
+ <DEAD TEMP12>
+ <PUSH WHERE5>
+ <CALL '\1aLENGTH-LIST 2>
+ <RETURN WHERE5>
+ <DEAD WHERE5>
+PHRASE22
+ <EQUAL? TYP11 'VECTOR + BOOL25>
+ <EQUAL? TYP11 'TUPLE - PHRASE24>
+BOOL25
+ <FRAME '\1aLENGTH-VECTOR>
+ <PUSH TEMP12>
+ <DEAD TEMP12>
+ <PUSH WHERE5>
+ <CALL '\1aLENGTH-VECTOR 2>
+ <RETURN WHERE5>
+ <DEAD WHERE5>
+PHRASE24
+ <EQUAL? TYP11 'STRING - PHRASE27>
+ <FRAME '\1aLENGTH-STRING>
+ <PUSH TEMP12>
+ <DEAD TEMP12>
+ <PUSH WHERE5>
+ <CALL '\1aLENGTH-STRING 2>
+ <RETURN WHERE5>
+ <DEAD WHERE5>
+PHRASE27
+ <EQUAL? TYP11 'BYTES - PHRASE29>
+ <FRAME '\1aLENGTH-BYTES>
+ <PUSH TEMP12>
+ <DEAD TEMP12>
+ <PUSH WHERE5>
+ <CALL '\1aLENGTH-BYTES 2>
+ <RETURN WHERE5>
+ <DEAD WHERE5>
+PHRASE29
+ <EQUAL? TYP11 'UVECTOR - PHRASE31>
+ <FRAME '\1aLENGTH-UVECTOR>
+ <PUSH TEMP12>
+ <DEAD TEMP12>
+ <PUSH WHERE5>
+ <CALL '\1aLENGTH-UVECTOR 2>
+ <RETURN WHERE5>
+ <DEAD WHERE5>
+PHRASE31
+ <EQUAL? TYP11 'TEMPLATE - PHRASE33>
+ <FRAME '\1aLENGTH-RECORD>
+ <PUSH TEMP12>
+ <DEAD TEMP12>
+ <PUSH WHERE5>
+ <PUSH ITYP10>
+ <DEAD ITYP10>
+ <CALL '\1aLENGTH-RECORD 3>
+ <RETURN WHERE5>
+ <DEAD WHERE5>
+PHRASE33
+ <FRAME '\1aLENGTH-RECORD>
+ <PUSH TEMP12>
+ <DEAD TEMP12>
+ <PUSH WHERE5>
+ <PUSH TYP11>
+ <DEAD TYP11>
+ <CALL '\1aLENGTH-RECORD 3>
+ <RETURN WHERE5>
+ <DEAD WHERE5>
+ <END \1aLNTH-GEN>
+#WORD *7517407330*
+<GFCN \1aMONAD?-GEN ("VALUE" ANY ANY ANY) NOD4 WHERE5>
+ <TEMP TEMP7>
+ <INTGO>
+ <FRAME '\1aMT-GEN>
+ <PUSH NOD4>
+ <DEAD NOD4>
+ <PUSH WHERE5>
+ <DEAD WHERE5>
+ <CALL '\1aMT-GEN 2 = TEMP7>
+ <RETURN TEMP7>
+ <DEAD TEMP7>
+ <END \1aMONAD?-GEN>
+#WORD *25373513110*
+ <GFCN \1aMT-GEN ("VALUE" ANY NODE ANY "OPTIONAL" ANY <OR ATOM FALSE> 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 TEMP23 STRN15 ITYP17 SDIR18 TYP19 TY20 FLS21 B2-22>
+ <INTGO>
+ <NTHUV NOD9 5 = TEMP23 (TYPE LIST)>
+ <NTHL TEMP23 1 = STRN15 (TYPE NODE)>
+ <DEAD TEMP23>
+ <NTHUV STRN15 3 = ITYP17>
+ <SET SDIR18 DIR13>
+ <FRAME '\1aSTRUCTYP>
+ <PUSH ITYP17>
+ <CALL '\1aSTRUCTYP 1 = TYP19>
+ <FRAME '\1aISTYPE?>
+ <PUSH ITYP17>
+ <CALL '\1aISTYPE? 1 = TY20>
+ <EQUAL? WHERE10 'FLUSHED - TAG26>
+ <SET FLS21 'T (TYPE ATOM)>
+ <JUMP + TAG27>
+TAG26
+ <SET FLS21 %<> (TYPE FALSE)>
+TAG27
+ <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE29>
+ <VEQUAL? FLS21 0 + PHRASE29>
+ <SET TEMP23 BRANCH12>
+ <JUMP + PHRASE31>
+PHRASE29
+ <FRAME '\1aMAKE-TAG>
+ <CALL '\1aMAKE-TAG 0 = TEMP23>
+PHRASE31
+ <SET B2-22 TEMP23>
+ <DEAD TEMP23>
+ <EQUAL? WHERE10 'DONT-CARE - PHRASE34>
+ <FRAME '\1aGEN-TEMP>
+ <PUSH %<>>
+ <CALL '\1aGEN-TEMP 1 = WHERE10>
+PHRASE34
+ <TYPE? NOTF11 <TYPE-CODE FALSE> + TAG38>
+ <DEAD NOTF11>
+ <TYPE? DIR13 <TYPE-CODE FALSE> - TAG37>
+ <DEAD DIR13>
+ <SET DIR13 'T (TYPE ATOM)>
+ <JUMP + TAG38>
+TAG37
+ <SET DIR13 %<> (TYPE FALSE)>
+TAG38
+ <TYPE? SETF14 <TYPE-CODE FALSE> + PHRASE40>
+ <DEAD SETF14>
+ <FRAME '\1aDEALLOCATE-TEMP>
+ <FRAME '\1aMOVE-ARG>
+ <FRAME '\1aREFERENCE>
+ <TYPE? SDIR18 <TYPE-CODE FALSE> - TAG44>
+ <SET TEMP23 'T (TYPE ATOM)>
+ <JUMP + TAG45>
+TAG44
+ <SET TEMP23 %<> (TYPE FALSE)>
+TAG45
+ <PUSH TEMP23>
+ <DEAD TEMP23>
+ <CALL '\1aREFERENCE 1 = STACK>
+ <PUSH WHERE10>
+ <CALL '\1aMOVE-ARG 2 = STACK>
+ <CALL '\1aDEALLOCATE-TEMP 1>
+PHRASE40
+ <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE47>
+ <VEQUAL? FLS21 0 - PHRASE47>
+ <TYPE? DIR13 <TYPE-CODE FALSE> - TAG49>
+ <DEAD DIR13>
+ <SET DIR13 'T (TYPE ATOM)>
+ <JUMP + PHRASE47>
+TAG49
+ <SET DIR13 %<> (TYPE FALSE)>
+PHRASE47
+ <FRAME '\1aGEN>
+ <PUSH STRN15>
+ <DEAD STRN15>
+ <CALL '\1aGEN 1 = STRN15>
+ <NTHUV NOD9 1 = TEMP23 (TYPE FIX)>
+ <VEQUAL? TEMP23 91 - PHRASE54 (TYPE FIX)>
+ <DEAD TEMP23>
+ <FRAME '\1aIEMIT>
+ <PUSH '`MONAD?>
+ <PUSH STRN15>
+ <TYPE? DIR13 <TYPE-CODE FALSE> + PHRASE57>
+ <DEAD DIR13>
+ <SET TEMP23 '+ (TYPE ATOM)>
+ <JUMP + PHRASE58>
+PHRASE57
+ <SET TEMP23 '- (TYPE ATOM)>
+PHRASE58
+ <PUSH TEMP23>
+ <DEAD TEMP23>
+ <PUSH B2-22>
+ <CALL '\1aIEMIT 4>
+ <JUMP + PHRASE75>
+PHRASE54
+ <EQUAL? TYP19 'LIST - PHRASE59>
+ <FRAME '\1aEMPTY-LIST>
+ <PUSH STRN15>
+ <PUSH B2-22>
+ <PUSH DIR13>
+ <DEAD DIR13>
+ <PUSH TY20>
+ <DEAD TY20>
+ <CALL '\1aEMPTY-LIST 4>
+ <JUMP + PHRASE75>
+PHRASE59
+ <EQUAL? TYP19 'VECTOR + BOOL62>
+ <EQUAL? TYP19 'TUPLE - PHRASE61>
+BOOL62
+ <FRAME '\1aEMPTY-VECTOR>
+ <PUSH STRN15>
+ <PUSH B2-22>
+ <PUSH DIR13>
+ <DEAD DIR13>
+ <PUSH TY20>
+ <DEAD TY20>
+ <CALL '\1aEMPTY-VECTOR 4>
+ <JUMP + PHRASE75>
+PHRASE61
+ <EQUAL? TYP19 'UVECTOR - PHRASE64>
+ <FRAME '\1aEMPTY-UVECTOR>
+ <PUSH STRN15>
+ <PUSH B2-22>
+ <PUSH DIR13>
+ <DEAD DIR13>
+ <PUSH TY20>
+ <DEAD TY20>
+ <CALL '\1aEMPTY-UVECTOR 4>
+ <JUMP + PHRASE75>
+PHRASE64
+ <EQUAL? TYP19 'STRING - PHRASE66>
+ <FRAME '\1aEMPTY-STRING>
+ <PUSH STRN15>
+ <PUSH B2-22>
+ <PUSH DIR13>
+ <DEAD DIR13>
+ <PUSH TY20>
+ <DEAD TY20>
+ <CALL '\1aEMPTY-STRING 4>
+ <JUMP + PHRASE75>
+PHRASE66
+ <EQUAL? TYP19 'BYTES - PHRASE68>
+ <FRAME '\1aEMPTY-BYTES>
+ <PUSH STRN15>
+ <PUSH B2-22>
+ <PUSH DIR13>
+ <DEAD DIR13>
+ <PUSH TY20>
+ <DEAD TY20>
+ <CALL '\1aEMPTY-BYTES 4>
+ <JUMP + PHRASE75>
+PHRASE68
+ <EQUAL? TYP19 'TEMPLATE - PHRASE70>
+ <FRAME '\1aEMPTY-RECORD>
+ <PUSH STRN15>
+ <PUSH B2-22>
+ <PUSH DIR13>
+ <DEAD DIR13>
+ <PUSH ITYP17>
+ <DEAD ITYP17>
+ <CALL '\1aEMPTY-RECORD 4>
+ <JUMP + PHRASE75>
+PHRASE70
+ <FRAME '\1aISTYPE?>
+ <PUSH ITYP17>
+ <DEAD ITYP17>
+ <CALL '\1aISTYPE? 1 = TEMP23>
+ <TYPE? TEMP23 <TYPE-CODE FALSE> + PHRASE72>
+ <DEAD TEMP23>
+ <FRAME '\1aEMPTY-RECORD>
+ <PUSH STRN15>
+ <PUSH B2-22>
+ <PUSH DIR13>
+ <DEAD DIR13>
+ <PUSH TYP19>
+ <DEAD TYP19>
+ <CALL '\1aEMPTY-RECORD 4>
+ <JUMP + PHRASE75>
+PHRASE72
+ <FRAME '\1aIEMIT>
+ <PUSH '`EMPTY?>
+ <PUSH STRN15>
+ <TYPE? DIR13 <TYPE-CODE FALSE> + PHRASE78>
+ <DEAD DIR13>
+ <SET TEMP23 '+ (TYPE ATOM)>
+ <JUMP + PHRASE79>
+PHRASE78
+ <SET TEMP23 '- (TYPE ATOM)>
+PHRASE79
+ <PUSH TEMP23>
+ <DEAD TEMP23>
+ <PUSH B2-22>
+ <CALL '\1aIEMIT 4>
+PHRASE75
+ <FRAME '\1aFREE-TEMP>
+ <PUSH STRN15>
+ <DEAD STRN15>
+ <CALL '\1aFREE-TEMP 1>
+ <TYPE? BRANCH12 <TYPE-CODE FALSE> - PHRASE82>
+ <FRAME '\1aTRUE-FALSE>
+ <PUSH NOD9>
+ <DEAD NOD9>
+ <PUSH B2-22>
+ <DEAD B2-22>
+ <PUSH WHERE10>
+ <DEAD WHERE10>
+ <CALL '\1aTRUE-FALSE 3 = TEMP23>
+ <RETURN TEMP23>
+ <DEAD TEMP23>
+PHRASE82
+ <VEQUAL? FLS21 0 + TAG85>
+ <DEAD FLS21>
+ <RETURN %<>>
+TAG85
+ <FRAME '\1aMOVE-ARG>
+ <FRAME '\1aREFERENCE>
+ <PUSH SDIR18>
+ <DEAD SDIR18>
+ <CALL '\1aREFERENCE 1 = STACK>
+ <PUSH WHERE10>
+ <DEAD WHERE10>
+ <CALL '\1aMOVE-ARG 2 = WHERE10>
+ <FRAME '\1aBRANCH-TAG>
+ <PUSH BRANCH12>
+ <DEAD BRANCH12>
+ <CALL '\1aBRANCH-TAG 1>
+ <FRAME '\1aLABEL-TAG>
+ <PUSH B2-22>
+ <DEAD B2-22>
+ <CALL '\1aLABEL-TAG 1>
+ <RETURN WHERE10>
+ <DEAD WHERE10>
+ <END \1aMT-GEN>
+
+#WORD *36015271720*
+ <GFCN \1aREST-GEN ("VALUE" ANY NODE ANY) NOD4 WHERE5>
+ <TEMP TEMP22 STRNOD6:NODE NUMNOD7:NODE TYP8 TPS9 NUMKN10 NUM11:FIX ML12:FIX TEMP3:LBIND LCAREFUL17 W18 TEMP40 RV19>
+ <INTGO>
+ <NTHUV NOD4 5 = TEMP22 (TYPE LIST)>
+ <NTHL TEMP22 1 = STRNOD6 (TYPE NODE)>
+ <DEAD TEMP22>
+ <NTHUV NOD4 5 = TEMP22 (TYPE LIST)>
+ <RESTL TEMP22 1 = TEMP22 (TYPE LIST)>
+ <NTHL TEMP22 1 = NUMNOD7 (TYPE NODE)>
+ <DEAD TEMP22>
+ <NTHUV STRNOD6 3 = TYP8>
+ <FRAME '\1aSTRUCTYP>
+ <PUSH TYP8>
+ <CALL '\1aSTRUCTYP 1 = TPS9>
+ <NTHUV NUMNOD7 1 = TEMP22 (TYPE FIX)>
+ <VEQUAL? TEMP22 2 - TAG24 (TYPE FIX)>
+ <DEAD TEMP22>
+ <SET NUMKN10 'T (TYPE ATOM)>
+ <JUMP + TAG25>
+TAG24
+ <SET NUMKN10 %<> (TYPE FALSE)>
+TAG25
+ <VEQUAL? NUMKN10 0 + PHRASE27>
+ <NTHUV NUMNOD7 4 = TEMP22>
+ <TYPE? TEMP22 <TYPE-CODE OFFSET> - PHRASE29>
+ <DEAD TEMP22>
+ <NTHUV NUMNOD7 4 = TEMP22 (TYPE OFFSET)>
+ <NTHUV TEMP22 1 = TEMP22>
+ <JUMP + PHRASE31>
+PHRASE29
+ <NTHUV NUMNOD7 4 = TEMP22 (TYPE FIX)>
+ <JUMP + PHRASE31>
+PHRASE27
+ <SET TEMP22 0 (TYPE FIX)>
+PHRASE31
+ <SET NUM11 TEMP22>
+ <DEAD TEMP22>
+ <FRAME '\1aMINL>
+ <PUSH TYP8>
+ <CALL '\1aMINL 1 = ML12>
+ <GEN-LVAL 'NO-KILL = TEMP22>
+ <GETS 'BIND = TEMP3 (TYPE LBIND)>
+ <BBIND 'NO-KILL 'LIST 'FIX TEMP22>
+ <DEAD TEMP22>
+ <GEN-LVAL 'CAREFUL = LCAREFUL17>
+ <SET W18 WHERE5>
+ <FRAME '\1aISTYPE?>
+ <PUSH TYP8>
+ <CALL '\1aISTYPE? 1 = TEMP40>
+ <EQUAL? TEMP40 TPS9 + TAG38>
+ <DEAD TEMP40>
+ <SET TEMP22 'T (TYPE ATOM)>
+ <JUMP + TAG42>
+TAG38
+ <NTHUV STRNOD6 1 = TEMP40 (TYPE FIX)>
+ <VEQUAL? TEMP40 37 - TAG41 (TYPE FIX)>
+ <DEAD TEMP40>
+ <SET TEMP22 'T (TYPE ATOM)>
+ <JUMP + TAG42>
+TAG41
+ <SET TEMP22 %<> (TYPE FALSE)>
+TAG42
+ <FRAME '\1aGET-RANGE>
+ <NTHUV NUMNOD7 3 = STACK>
+ <CALL '\1aGET-RANGE 1 = TEMP40>
+ <FRAME '\1aCOMMUTE-STRUC>
+ <PUSH %<>>
+ <PUSH STRNOD6>
+ <PUSH NUMNOD7>
+ <CALL '\1aCOMMUTE-STRUC 3 = RV19>
+ <VEQUAL? NUMKN10 0 + PHRASE46>
+ <DEAD NUMKN10>
+ <LESS? NUM11 0 - PHRASE48 (TYPE FIX)>
+ <FRAME '\1aCOMPILE-ERROR>
+ <PUSH "Negative ">
+ <NTHUV NOD4 4 = STACK>
+ <PUSH NOD4>
+ <DEAD NOD4>
+ <CALL '\1aCOMPILE-ERROR 3>
+ <JUMP + PHRASE100>
+PHRASE48
+ <VEQUAL? NUM11 0 - PHRASE52 (TYPE FIX)>
+ <EQUAL? WHERE5 'DONT-CARE - PHRASE56>
+ <FRAME '\1aGEN-TEMP>
+ <CALL '\1aGEN-TEMP 0 = W18>
+ <SET WHERE5 W18>
+ <JUMP + PHRASE62>
+PHRASE56
+ <TYPE? WHERE5 <TYPE-CODE TEMP> - PHRASE58>
+ <FRAME '\1aUSE-TEMP>
+ <PUSH WHERE5>
+ <VEQUAL? TEMP22 0 + PHRASE61>
+ <SET TEMP40 'ANY (TYPE ATOM)>
+ <JUMP + COND60>
+PHRASE61
+ <SET TEMP40 TYP8>
+ <DEAD TYP8>
+COND60
+ <PUSH TEMP40>
+ <DEAD TEMP40>
+ <CALL '\1aUSE-TEMP 2>
+ <JUMP + PHRASE62>
+PHRASE58
+ <GVAL 'POP-STACK = TEMP40>
+ <EQUAL? TEMP40 WHERE5 - PHRASE62>
+ <DEAD TEMP40>
+ <VEQUAL? TEMP22 0 + PHRASE62>
+ <FRAME '\1aGEN-TEMP>
+ <PUSH 'ANY>
+ <CALL '\1aGEN-TEMP 1 = W18>
+PHRASE62
+ <FRAME '\1aGEN>
+ <PUSH STRNOD6>
+ <DEAD STRNOD6>
+ <PUSH W18>
+ <CALL '\1aGEN 2>
+ <JUMP + PHRASE100>
+PHRASE52
+ <EQUAL? TPS9 'LIST - PHRASE66>
+ <TYPE? LCAREFUL17 <TYPE-CODE FALSE> + BOOL69>
+ <GRTR? NUM11 ML12 + BOOL68 (TYPE FIX)>
+BOOL69
+ <GRTR? NUM11 4 + PHRASE66 (TYPE FIX)>
+BOOL68
+ <EQUAL? WHERE5 'DONT-CARE - PHRASE71>
+ <FRAME '\1aGEN-TEMP>
+ <PUSH %<>>
+ <CALL '\1aGEN-TEMP 1 = W18>
+ <SET WHERE5 W18>
+ <JUMP + PHRASE73>
+PHRASE71
+ <TYPE? WHERE5 <TYPE-CODE TEMP> + PHRASE73>
+ <GVAL 'POP-STACK = TEMP40>
+ <EQUAL? TEMP40 WHERE5 - PHRASE73>
+ <DEAD TEMP40>
+ <VEQUAL? TEMP22 0 + PHRASE73>
+ <FRAME '\1aGEN-TEMP>
+ <PUSH %<>>
+ <CALL '\1aGEN-TEMP 1 = W18>
+PHRASE73
+ <FRAME '\1aEXPANDED-LIST-REST>
+ <FRAME '\1aGEN>
+ <PUSH STRNOD6>
+ <DEAD STRNOD6>
+ <CALL '\1aGEN 1 = STACK>
+ <PUSH NUM11>
+ <DEAD NUM11>
+ <PUSH ML12>
+ <DEAD ML12>
+ <PUSH LCAREFUL17>
+ <DEAD LCAREFUL17>
+ <PUSH W18>
+ <DEAD W18>
+ <CALL '\1aEXPANDED-LIST-REST 5 = W18>
+ <JUMP + PHRASE100>
+PHRASE66
+ <TYPE? TPS9 <TYPE-CODE FALSE> + PHRASE78>
+ <FRAME '\1aGEN>
+ <PUSH STRNOD6>
+ <DEAD STRNOD6>
+ <CALL '\1aGEN 1 = NUMKN10>
+ <TYPE? LCAREFUL17 <TYPE-CODE FALSE> + PHRASE81>
+ <DEAD LCAREFUL17>
+ <GRTR? NUM11 ML12 - PHRASE81 (TYPE FIX)>
+ <DEAD ML12>
+ <FRAME '\1aLENGTH-CHECK>
+ <PUSH TPS9>
+ <PUSH NUMKN10>
+ <PUSH NUM11>
+ <FRAME '\1aRECTYPE?>
+ <PUSH TYP8>
+ <CALL '\1aRECTYPE? 1 = STACK>
+ <CALL '\1aLENGTH-CHECK 4>
+PHRASE81
+ <FRAME '\1aFREE-TEMP>
+ <PUSH NUMKN10>
+ <PUSH %<>>
+ <CALL '\1aFREE-TEMP 2>
+ <EQUAL? WHERE5 'DONT-CARE - PHRASE87>
+ <FRAME '\1aGEN-TEMP>
+ <VEQUAL? TEMP22 0 + PHRASE90>
+ <SET TEMP40 'ANY (TYPE ATOM)>
+ <JUMP + COND89>
+PHRASE90
+ <SET TEMP40 TYP8>
+COND89
+ <PUSH TEMP40>
+ <DEAD TEMP40>
+ <CALL '\1aGEN-TEMP 1 = W18>
+ <SET WHERE5 W18>
+ <JUMP + PHRASE95>
+PHRASE87
+ <TYPE? WHERE5 <TYPE-CODE TEMP> - PHRASE91>
+ <FRAME '\1aUSE-TEMP>
+ <PUSH WHERE5>
+ <VEQUAL? TEMP22 0 + PHRASE94>
+ <SET TEMP40 'ANY (TYPE ATOM)>
+ <JUMP + COND93>
+PHRASE94
+ <SET TEMP40 TYP8>
+COND93
+ <PUSH TEMP40>
+ <DEAD TEMP40>
+ <CALL '\1aUSE-TEMP 2>
+ <JUMP + PHRASE95>
+PHRASE91
+ <GVAL 'POP-STACK = TEMP40>
+ <EQUAL? TEMP40 WHERE5 - PHRASE95>
+ <DEAD TEMP40>
+ <VEQUAL? TEMP22 0 + PHRASE95>
+ <FRAME '\1aGEN-TEMP>
+ <CALL '\1aGEN-TEMP 0 = W18>
+PHRASE95
+ <FRAME '\1aREST-DO>
+ <PUSH TPS9>
+ <PUSH NUMKN10>
+ <DEAD NUMKN10>
+ <PUSH W18>
+ <PUSH NUM11>
+ <DEAD NUM11>
+ <FRAME '\1aRECTYPE?>
+ <PUSH TYP8>
+ <DEAD TYP8>
+ <CALL '\1aRECTYPE? 1 = STACK>
+ <CALL '\1aREST-DO 5>
+ <JUMP + PHRASE100>
+PHRASE78
+ <FRAME '\1aGEN>
+ <PUSH STRNOD6>
+ <DEAD STRNOD6>
+ <CALL '\1aGEN 1 = NUMKN10>
+ <FRAME '\1aFREE-TEMP>
+ <PUSH NUMKN10>
+ <PUSH %<>>
+ <CALL '\1aFREE-TEMP 2>
+ <EQUAL? WHERE5 'DONT-CARE - PHRASE104>
+ <FRAME '\1aGEN-TEMP>
+ <CALL '\1aGEN-TEMP 0 = W18>
+ <SET WHERE5 W18>
+ <JUMP + PHRASE106>
+PHRASE104
+ <TYPE? WHERE5 <TYPE-CODE TEMP> - PHRASE106>
+ <FRAME '\1aUSE-TEMP>
+ <PUSH WHERE5>
+ <CALL '\1aUSE-TEMP 1>
+PHRASE106
+ <SET TEMP22 %<> (TYPE FALSE)>
+ <FRAME '\1aIEMIT>
+ <PUSH '`REST1>
+ <PUSH NUMKN10>
+ <DEAD NUMKN10>
+ <PUSH '=>
+ <PUSH W18>
+ <CALL '\1aIEMIT 4>
+PHRASE100
+ <VEQUAL? TEMP22 0 + PHRASE110>
+ <DEAD TEMP22>
+ <FRAME '\1aGEN-CHTYPE>
+ <PUSH W18>
+ <DEAD W18>
+ <PUSH TPS9>
+ <DEAD TPS9>
+ <PUSH WHERE5>
+ <CALL '\1aGEN-CHTYPE 3>
+PHRASE110
+ <SET TEMP40 WHERE5>
+ <DEAD WHERE5>
+ <JUMP + PHRASE112>
+PHRASE46
+ <TYPE? RV19 <TYPE-CODE FALSE> + PHRASE114>
+ <DEAD RV19>
+ <FRAME '\1aGEN>
+ <PUSH NUMNOD7>
+ <DEAD NUMNOD7>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = RV19>
+ <FRAME '\1aINTERF-CHANGE>
+ <PUSH RV19>
+ <DEAD RV19>
+ <PUSH STRNOD6>
+ <CALL '\1aINTERF-CHANGE 2 = RV19>
+ <FRAME '\1aGEN>
+ <PUSH STRNOD6>
+ <DEAD STRNOD6>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = NUMKN10>
+ <JUMP + PHRASE118>
+PHRASE114
+ <FRAME '\1aGEN>
+ <PUSH STRNOD6>
+ <DEAD STRNOD6>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = NUMKN10>
+ <FRAME '\1aINTERF-CHANGE>
+ <PUSH NUMKN10>
+ <DEAD NUMKN10>
+ <PUSH NUMNOD7>
+ <CALL '\1aINTERF-CHANGE 2 = NUMKN10>
+ <FRAME '\1aGEN>
+ <PUSH NUMNOD7>
+ <DEAD NUMNOD7>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = RV19>
+PHRASE118
+ <TYPE? LCAREFUL17 <TYPE-CODE FALSE> + PHRASE123>
+ <TYPE? TEMP40 <TYPE-CODE FALSE> + BOOL125>
+ <NTHL TEMP40 1 = TEMP40 (TYPE FIX)>
+ <LESS? TEMP40 0 - PHRASE123 (TYPE FIX)>
+ <DEAD TEMP40>
+BOOL125
+ <EQUAL? TPS9 'LIST + PHRASE123>
+ <FRAME '\1aLENGTH-CHECK>
+ <PUSH TPS9>
+ <PUSH NUMKN10>
+ <PUSH RV19>
+ <FRAME '\1aRECTYPE?>
+ <PUSH TYP8>
+ <CALL '\1aRECTYPE? 1 = STACK>
+ <CALL '\1aLENGTH-CHECK 4>
+PHRASE123
+ <EQUAL? TPS9 'LIST + PHRASE132>
+ <FRAME '\1aFREE-TEMP>
+ <PUSH NUMKN10>
+ <PUSH %<>>
+ <CALL '\1aFREE-TEMP 2>
+ <FRAME '\1aFREE-TEMP>
+ <PUSH RV19>
+ <PUSH %<>>
+ <CALL '\1aFREE-TEMP 2>
+PHRASE132
+ <EQUAL? TPS9 'LIST - PHRASE136>
+ <GVAL 'POP-STACK = TEMP40>
+ <EQUAL? TEMP40 WHERE5 - PHRASE138>
+ <DEAD TEMP40>
+ <VEQUAL? TEMP22 0 + PHRASE138>
+ <FRAME '\1aGEN-TEMP>
+ <CALL '\1aGEN-TEMP 0 = W18>
+PHRASE138
+ <FRAME '\1aEXPANDED-LIST-REST>
+ <PUSH NUMKN10>
+ <DEAD NUMKN10>
+ <PUSH RV19>
+ <DEAD RV19>
+ <PUSH ML12>
+ <DEAD ML12>
+ <PUSH LCAREFUL17>
+ <DEAD LCAREFUL17>
+ <PUSH W18>
+ <DEAD W18>
+ <CALL '\1aEXPANDED-LIST-REST 5 = W18>
+ <VEQUAL? TEMP22 0 + BOOL144>
+ <EQUAL? WHERE5 'DONT-CARE - PHRASE145>
+BOOL144
+ <SET WHERE5 W18>
+ <JUMP + PHRASE145>
+PHRASE136
+ <EQUAL? WHERE5 'DONT-CARE - PHRASE147>
+ <FRAME '\1aGEN-TEMP>
+ <VEQUAL? TEMP22 0 + PHRASE150>
+ <SET TEMP40 'ANY (TYPE ATOM)>
+ <JUMP + COND149>
+PHRASE150
+ <SET TEMP40 TYP8>
+COND149
+ <PUSH TEMP40>
+ <DEAD TEMP40>
+ <CALL '\1aGEN-TEMP 1 = W18>
+ <SET WHERE5 W18>
+ <JUMP + PHRASE155>
+PHRASE147
+ <TYPE? WHERE5 <TYPE-CODE TEMP> - PHRASE151>
+ <FRAME '\1aUSE-TEMP>
+ <PUSH WHERE5>
+ <VEQUAL? TEMP22 0 + PHRASE154>
+ <SET TEMP40 'ANY (TYPE ATOM)>
+ <JUMP + COND153>
+PHRASE154
+ <SET TEMP40 TYP8>
+COND153
+ <PUSH TEMP40>
+ <DEAD TEMP40>
+ <CALL '\1aUSE-TEMP 2>
+ <JUMP + PHRASE155>
+PHRASE151
+ <GVAL 'POP-STACK = TEMP40>
+ <EQUAL? TEMP40 WHERE5 - PHRASE155>
+ <DEAD TEMP40>
+ <VEQUAL? TEMP22 0 + PHRASE155>
+ <FRAME '\1aGEN-TEMP>
+ <CALL '\1aGEN-TEMP 0 = W18>
+PHRASE155
+ <FRAME '\1aREST-DO>
+ <PUSH TPS9>
+ <PUSH NUMKN10>
+ <DEAD NUMKN10>
+ <PUSH W18>
+ <PUSH RV19>
+ <DEAD RV19>
+ <FRAME '\1aRECTYPE?>
+ <PUSH TYP8>
+ <DEAD TYP8>
+ <CALL '\1aRECTYPE? 1 = STACK>
+ <CALL '\1aREST-DO 5>
+PHRASE145
+ <VEQUAL? TEMP22 0 + PHRASE161>
+ <DEAD TEMP22>
+ <FRAME '\1aGEN-CHTYPE>
+ <PUSH W18>
+ <DEAD W18>
+ <PUSH TPS9>
+ <DEAD TPS9>
+ <PUSH WHERE5>
+ <CALL '\1aGEN-CHTYPE 3>
+PHRASE161
+ <SET TEMP40 WHERE5>
+ <DEAD WHERE5>
+PHRASE112
+ <UNBIND TEMP3>
+ <DEAD TEMP3>
+ <ADJ -9>
+ <RETURN TEMP40>
+ <DEAD TEMP40>
+ <END \1aREST-GEN>
+
+#WORD *33150202057*
+<GFCN \1aREST-DO ("VALUE" ANY ANY ANY ANY ANY "OPTIONAL" ANY) TPS6 STR7 WHERE8 NUM9 TYP10>
+ <OPT-DISPATCH 4 %<> OPT4 OPT5>
+OPT4
+ <PUSH 'ANY>
+OPT5
+ <TEMP TEMP15>
+ <INTGO>
+ <EQUAL? TPS6 'VECTOR + BOOL13>
+ <EQUAL? TPS6 'TUPLE - PHRASE12>
+BOOL13
+ <FRAME '\1aREST-VECTOR>
+ <PUSH STR7>
+ <DEAD STR7>
+ <PUSH WHERE8>
+ <DEAD WHERE8>
+ <PUSH NUM9>
+ <DEAD NUM9>
+ <PUSH TPS6>
+ <DEAD TPS6>
+ <CALL '\1aREST-VECTOR 4 = TEMP15>
+ <RETURN TEMP15>
+ <DEAD TEMP15>
+PHRASE12
+ <EQUAL? TPS6 'UVECTOR - PHRASE16>
+ <FRAME '\1aREST-UVECTOR>
+ <PUSH STR7>
+ <DEAD STR7>
+ <PUSH WHERE8>
+ <DEAD WHERE8>
+ <PUSH NUM9>
+ <DEAD NUM9>
+ <CALL '\1aREST-UVECTOR 3 = TEMP15>
+ <RETURN TEMP15>
+ <DEAD TEMP15>
+PHRASE16
+ <EQUAL? TPS6 'STRING - PHRASE18>
+ <FRAME '\1aREST-STRING>
+ <PUSH STR7>
+ <DEAD STR7>
+ <PUSH WHERE8>
+ <DEAD WHERE8>
+ <PUSH NUM9>
+ <DEAD NUM9>
+ <CALL '\1aREST-STRING 3 = TEMP15>
+ <RETURN TEMP15>
+ <DEAD TEMP15>
+PHRASE18
+ <EQUAL? TPS6 'BYTES - PHRASE20>
+ <FRAME '\1aREST-BYTES>
+ <PUSH STR7>
+ <DEAD STR7>
+ <PUSH WHERE8>
+ <DEAD WHERE8>
+ <PUSH NUM9>
+ <DEAD NUM9>
+ <CALL '\1aREST-BYTES 3 = TEMP15>
+ <RETURN TEMP15>
+ <DEAD TEMP15>
+PHRASE20
+ <EQUAL? TPS6 'LIST - PHRASE22>
+ <FRAME '\1aREST-LIST>
+ <PUSH STR7>
+ <DEAD STR7>
+ <PUSH WHERE8>
+ <DEAD WHERE8>
+ <PUSH NUM9>
+ <DEAD NUM9>
+ <CALL '\1aREST-LIST 3 = TEMP15>
+ <RETURN TEMP15>
+ <DEAD TEMP15>
+PHRASE22
+ <EQUAL? TPS6 'TEMPLATE - PHRASE24>
+ <FRAME '\1aREST-RECORD>
+ <PUSH STR7>
+ <DEAD STR7>
+ <PUSH WHERE8>
+ <DEAD WHERE8>
+ <PUSH NUM9>
+ <DEAD NUM9>
+ <PUSH TYP10>
+ <DEAD TYP10>
+ <CALL '\1aREST-RECORD 4 = TEMP15>
+ <RETURN TEMP15>
+ <DEAD TEMP15>
+PHRASE24
+ <FRAME '\1aREST-RECORD>
+ <PUSH STR7>
+ <DEAD STR7>
+ <PUSH WHERE8>
+ <DEAD WHERE8>
+ <PUSH NUM9>
+ <DEAD NUM9>
+ <PUSH TPS6>
+ <DEAD TPS6>
+ <CALL '\1aREST-RECORD 4 = TEMP15>
+ <RETURN TEMP15>
+ <DEAD TEMP15>
+ <END \1aREST-DO>
+#WORD *17512303541*
+<GFCN \1aNTH-GEN ("VALUE" ANY NODE ANY) NOD4 WHERE5>
+ <TEMP (K6 %<>) TEMP24 TYP8 TPS9 2ARG10:NODE NUMKN12 NUM13 NR14 LCAREFUL20 ML21:FIX RESTYP23>
+ <INTGO>
+ <NTHUV NOD4 5 = K6 (TYPE LIST)>
+ <NTHL K6 1 = TEMP24 (TYPE NODE)>
+ <NTHUV TEMP24 3 = TYP8>
+ <DEAD TEMP24>
+ <FRAME '\1aSTRUCTYP>
+ <PUSH TYP8>
+ <CALL '\1aSTRUCTYP 1 = TPS9>
+ <RESTL K6 1 = TEMP24 (TYPE LIST)>
+ <NTHL TEMP24 1 = 2ARG10 (TYPE NODE)>
+ <DEAD TEMP24>
+ <NTHUV 2ARG10 1 = TEMP24 (TYPE FIX)>
+ <VEQUAL? TEMP24 2 - TAG26 (TYPE FIX)>
+ <DEAD TEMP24>
+ <SET NUMKN12 'T (TYPE ATOM)>
+ <JUMP + TAG27>
+TAG26
+ <SET NUMKN12 %<> (TYPE FALSE)>
+TAG27
+ <VEQUAL? NUMKN12 0 + PHRASE29>
+ <NTHUV 2ARG10 4 = TEMP24>
+ <TYPE? TEMP24 <TYPE-CODE OFFSET> - PHRASE31>
+ <DEAD TEMP24>
+ <NTHUV 2ARG10 4 = TEMP24 (TYPE OFFSET)>
+ <NTHUV TEMP24 1 = TEMP24>
+ <JUMP + PHRASE33>
+PHRASE31
+ <NTHUV 2ARG10 4 = TEMP24 (TYPE FIX)>
+ <JUMP + PHRASE33>
+PHRASE29
+ <SET TEMP24 1 (TYPE FIX)>
+PHRASE33
+ <SET NUM13 TEMP24>
+ <DEAD TEMP24>
+ <FRAME '\1aGET-RANGE>
+ <NTHUV 2ARG10 3 = STACK>
+ <CALL '\1aGET-RANGE 1 = NR14>
+ <NTHL K6 1 = K6 (TYPE NODE)>
+ <GEN-LVAL 'CAREFUL = LCAREFUL20>
+ <FRAME '\1aMINL>
+ <PUSH TYP8>
+ <CALL '\1aMINL 1 = ML21>
+ <NTHUV NOD4 4 = TEMP24>
+ <EQUAL? TEMP24 'INTH - TAG38>
+ <DEAD TEMP24>
+ <SET TEMP24 'T (TYPE ATOM)>
+ <JUMP + TAG39>
+TAG38
+ <SET TEMP24 %<> (TYPE FALSE)>
+TAG39
+ <FRAME '\1aISTYPE?>
+ <NTHUV NOD4 3 = STACK>
+ <CALL '\1aISTYPE? 1 = RESTYP23>
+ <VEQUAL? NUMKN12 0 + PHRASE42>
+ <PUTUV 2ARG10 4 NUM13>
+PHRASE42
+ <VEQUAL? NUMKN12 0 + PHRASE44>
+ <DEAD NUMKN12>
+ <GRTR? NUM13 0 + PHRASE46 (TYPE FIX)>
+ <FRAME '\1aCOMPILE-ERROR>
+ <PUSH "Negative or 0 ">
+ <NTHUV NOD4 4 = STACK>
+ <PUSH NOD4>
+ <DEAD NOD4>
+ <CALL '\1aCOMPILE-ERROR 3>
+ <RETURN WHERE5>
+ <DEAD WHERE5>
+PHRASE46
+ <VEQUAL? NUM13 1 - PHRASE50 (TYPE FIX)>
+ <FRAME '\1aGEN>
+ <PUSH K6>
+ <DEAD K6>
+ <CALL '\1aGEN 1 = NUMKN12>
+ <TYPE? TPS9 <TYPE-CODE FALSE> + PHRASE55>
+ <TYPE? LCAREFUL20 <TYPE-CODE FALSE> + PHRASE55>
+ <DEAD LCAREFUL20>
+ <VEQUAL? ML21 0 - PHRASE55 (TYPE FIX)>
+ <DEAD ML21>
+ <FRAME '\1aEMPTY-CHECK>
+ <PUSH TPS9>
+ <PUSH NUMKN12>
+ <FRAME '\1aRECTYPE?>
+ <PUSH TYP8>
+ <CALL '\1aRECTYPE? 1 = STACK>
+ <CALL '\1aEMPTY-CHECK 3>
+PHRASE55
+ <FRAME '\1aFREE-TEMP>
+ <PUSH NUMKN12>
+ <PUSH %<>>
+ <CALL '\1aFREE-TEMP 2>
+ <EQUAL? WHERE5 'DONT-CARE - PHRASE63>
+ <FRAME '\1aGEN-TEMP>
+ <NTHUV NOD4 3 = STACK>
+ <DEAD NOD4>
+ <CALL '\1aGEN-TEMP 1 = WHERE5>
+ <JUMP + PHRASE65>
+PHRASE63
+ <TYPE? WHERE5 <TYPE-CODE TEMP> - PHRASE65>
+ <FRAME '\1aUSE-TEMP>
+ <PUSH WHERE5>
+ <NTHUV NOD4 3 = STACK>
+ <DEAD NOD4>
+ <CALL '\1aUSE-TEMP 2>
+PHRASE65
+ <TYPE? TPS9 <TYPE-CODE FALSE> + PHRASE68>
+ <FRAME '\1aNTH-DO>
+ <PUSH TPS9>
+ <DEAD TPS9>
+ <PUSH NUMKN12>
+ <DEAD NUMKN12>
+ <PUSH WHERE5>
+ <PUSH 1>
+ <FRAME '\1aRECTYPE?>
+ <PUSH TYP8>
+ <DEAD TYP8>
+ <CALL '\1aRECTYPE? 1 = STACK>
+ <PUSH RESTYP23>
+ <DEAD RESTYP23>
+ <CALL '\1aNTH-DO 6>
+ <RETURN WHERE5>
+ <DEAD WHERE5>
+PHRASE68
+ <FRAME '\1aIEMIT>
+ <PUSH '`NTH1>
+ <PUSH NUMKN12>
+ <DEAD NUMKN12>
+ <PUSH '=>
+ <PUSH WHERE5>
+ <CALL '\1aIEMIT 4>
+ <RETURN WHERE5>
+ <DEAD WHERE5>
+PHRASE50
+ <EQUAL? TPS9 'LIST - PHRASE73>
+ <TYPE? LCAREFUL20 <TYPE-CODE FALSE> + BOOL76>
+ <GRTR? NUM13 ML21 + BOOL75 (TYPE FIX)>
+BOOL76
+ <GRTR? NUM13 4 + PHRASE73 (TYPE FIX)>
+BOOL75
+ <FRAME '\1aEXPANDED-LIST-REST>
+ <FRAME '\1aGEN>
+ <PUSH K6>
+ <DEAD K6>
+ <CALL '\1aGEN 1 = STACK>
+ <PUSH NUM13>
+ <DEAD NUM13>
+ <PUSH ML21>
+ <DEAD ML21>
+ <PUSH LCAREFUL20>
+ <DEAD LCAREFUL20>
+ <CALL '\1aEXPANDED-LIST-REST 4 = NUMKN12>
+ <FRAME '\1aFREE-TEMP>
+ <PUSH NUMKN12>
+ <PUSH %<>>
+ <CALL '\1aFREE-TEMP 2>
+ <EQUAL? WHERE5 'DONT-CARE - PHRASE81>
+ <FRAME '\1aGEN-TEMP>
+ <NTHUV NOD4 3 = STACK>
+ <DEAD NOD4>
+ <CALL '\1aGEN-TEMP 1 = WHERE5>
+ <JUMP + PHRASE83>
+PHRASE81
+ <TYPE? WHERE5 <TYPE-CODE TEMP> - PHRASE83>
+ <FRAME '\1aUSE-TEMP>
+ <PUSH WHERE5>
+ <NTHUV NOD4 3 = STACK>
+ <DEAD NOD4>
+ <CALL '\1aUSE-TEMP 2>
+PHRASE83
+ <FRAME '\1aNTH-DO>
+ <PUSH 'LIST>
+ <PUSH NUMKN12>
+ <DEAD NUMKN12>
+ <PUSH WHERE5>
+ <PUSH 1>
+ <PUSH 'LIST>
+ <PUSH RESTYP23>
+ <DEAD RESTYP23>
+ <CALL '\1aNTH-DO 6>
+ <RETURN WHERE5>
+ <DEAD WHERE5>
+PHRASE73
+ <FRAME '\1aGEN>
+ <PUSH K6>
+ <DEAD K6>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = NUMKN12>
+ <TYPE? LCAREFUL20 <TYPE-CODE FALSE> + PHRASE89>
+ <DEAD LCAREFUL20>
+ <GRTR? NUM13 ML21 - PHRASE89 (TYPE FIX)>
+ <DEAD ML21>
+ <FRAME '\1aLENGTH-CHECK>
+ <PUSH TPS9>
+ <PUSH NUMKN12>
+ <PUSH NUM13>
+ <FRAME '\1aRECTYPE?>
+ <PUSH TYP8>
+ <CALL '\1aRECTYPE? 1 = STACK>
+ <CALL '\1aLENGTH-CHECK 4>
+PHRASE89
+ <FRAME '\1aFREE-TEMP>
+ <PUSH NUMKN12>
+ <PUSH %<>>
+ <CALL '\1aFREE-TEMP 2>
+ <EQUAL? WHERE5 'DONT-CARE - PHRASE95>
+ <FRAME '\1aGEN-TEMP>
+ <NTHUV NOD4 3 = STACK>
+ <DEAD NOD4>
+ <CALL '\1aGEN-TEMP 1 = WHERE5>
+ <JUMP + PHRASE97>
+PHRASE95
+ <TYPE? WHERE5 <TYPE-CODE TEMP> - PHRASE97>
+ <FRAME '\1aUSE-TEMP>
+ <PUSH WHERE5>
+ <NTHUV NOD4 3 = STACK>
+ <DEAD NOD4>
+ <CALL '\1aUSE-TEMP 2>
+PHRASE97
+ <FRAME '\1aNTH-DO>
+ <PUSH TPS9>
+ <DEAD TPS9>
+ <PUSH NUMKN12>
+ <DEAD NUMKN12>
+ <PUSH WHERE5>
+ <PUSH NUM13>
+ <DEAD NUM13>
+ <FRAME '\1aRECTYPE?>
+ <PUSH TYP8>
+ <DEAD TYP8>
+ <CALL '\1aRECTYPE? 1 = STACK>
+ <PUSH RESTYP23>
+ <DEAD RESTYP23>
+ <CALL '\1aNTH-DO 6>
+ <RETURN WHERE5>
+ <DEAD WHERE5>
+PHRASE44
+ <VEQUAL? TEMP24 0 + PHRASE103>
+ <DEAD TEMP24>
+ <FRAME '\1aGEN>
+ <PUSH 2ARG10>
+ <DEAD 2ARG10>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = NUM13>
+ <FRAME '\1aINTERF-CHANGE>
+ <PUSH NUM13>
+ <DEAD NUM13>
+ <PUSH K6>
+ <CALL '\1aINTERF-CHANGE 2 = NUM13>
+ <FRAME '\1aGEN>
+ <PUSH K6>
+ <DEAD K6>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = NUMKN12>
+ <JUMP + PHRASE107>
+PHRASE103
+ <FRAME '\1aGEN>
+ <PUSH K6>
+ <DEAD K6>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = NUMKN12>
+ <FRAME '\1aINTERF-CHANGE>
+ <PUSH NUMKN12>
+ <DEAD NUMKN12>
+ <PUSH 2ARG10>
+ <CALL '\1aINTERF-CHANGE 2 = NUMKN12>
+ <FRAME '\1aGEN>
+ <PUSH 2ARG10>
+ <DEAD 2ARG10>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = NUM13>
+PHRASE107
+ <TYPE? LCAREFUL20 <TYPE-CODE FALSE> + PHRASE112>
+ <TYPE? NR14 <TYPE-CODE FALSE> + BOOL114>
+ <NTHL NR14 1 = TEMP24>
+ <DEAD NR14>
+ <GRTR? TEMP24 0 + PHRASE112>
+ <DEAD TEMP24>
+BOOL114
+ <EQUAL? TPS9 'LIST + PHRASE112>
+ <FRAME '\1aLENGTH-CHECK>
+ <PUSH TPS9>
+ <PUSH NUMKN12>
+ <PUSH NUM13>
+ <FRAME '\1aRECTYPE?>
+ <PUSH TYP8>
+ <CALL '\1aRECTYPE? 1 = STACK>
+ <CALL '\1aLENGTH-CHECK 4>
+PHRASE112
+ <EQUAL? WHERE5 'DONT-CARE - PHRASE120>
+ <FRAME '\1aGEN-TEMP>
+ <NTHUV NOD4 3 = STACK>
+ <DEAD NOD4>
+ <CALL '\1aGEN-TEMP 1 = WHERE5>
+ <JUMP + PHRASE122>
+PHRASE120
+ <TYPE? WHERE5 <TYPE-CODE TEMP> - PHRASE122>
+ <FRAME '\1aUSE-TEMP>
+ <PUSH WHERE5>
+ <NTHUV NOD4 3 = STACK>
+ <DEAD NOD4>
+ <CALL '\1aUSE-TEMP 2>
+PHRASE122
+ <EQUAL? TPS9 'LIST - PHRASE125>
+ <FRAME '\1aEXPANDED-LIST-REST>
+ <PUSH NUMKN12>
+ <DEAD NUMKN12>
+ <PUSH NUM13>
+ <DEAD NUM13>
+ <PUSH ML21>
+ <DEAD ML21>
+ <PUSH LCAREFUL20>
+ <DEAD LCAREFUL20>
+ <CALL '\1aEXPANDED-LIST-REST 4 = NUMKN12>
+ <FRAME '\1aNTH-DO>
+ <PUSH 'LIST>
+ <PUSH NUMKN12>
+ <PUSH WHERE5>
+ <PUSH 1>
+ <PUSH 'LIST>
+ <PUSH RESTYP23>
+ <DEAD RESTYP23>
+ <CALL '\1aNTH-DO 6>
+ <FRAME '\1aFREE-TEMP>
+ <PUSH NUMKN12>
+ <DEAD NUMKN12>
+ <PUSH %<>>
+ <CALL '\1aFREE-TEMP 2>
+ <RETURN WHERE5>
+ <DEAD WHERE5>
+PHRASE125
+ <FRAME '\1aNTH-DO>
+ <PUSH TPS9>
+ <DEAD TPS9>
+ <PUSH NUMKN12>
+ <PUSH WHERE5>
+ <PUSH NUM13>
+ <FRAME '\1aRECTYPE?>
+ <PUSH TYP8>
+ <DEAD TYP8>
+ <CALL '\1aRECTYPE? 1 = STACK>
+ <PUSH RESTYP23>
+ <DEAD RESTYP23>
+ <CALL '\1aNTH-DO 6>
+ <FRAME '\1aFREE-TEMP>
+ <PUSH NUMKN12>
+ <DEAD NUMKN12>
+ <PUSH %<>>
+ <CALL '\1aFREE-TEMP 2>
+ <FRAME '\1aFREE-TEMP>
+ <PUSH NUM13>
+ <DEAD NUM13>
+ <PUSH %<>>
+ <CALL '\1aFREE-TEMP 2>
+ <RETURN WHERE5>
+ <DEAD WHERE5>
+ <END \1aNTH-GEN>
+#WORD *35070730272*
+<GFCN \1aEXPANDED-LIST-REST ("VALUE" ANY ANY ANY FIX ANY "OPTIONAL" ANY) STR6 NUM7 ML8 LCAREFUL9 W10>
+ <OPT-DISPATCH 4 %<> OPT4 OPT5>
+OPT4
+ <PUSH #T$UNBOUND 0>
+OPT5
+ <TEMP TG212 NUMN13 TEMP22 TG111 TEMP92:ATOM>
+ <INTGO>
+ <SET NUMN13 NUM7>
+ <TYPE? NUM7 <TYPE-CODE FIX> - PHRASE15>
+ <TYPE? W10 <TYPE-CODE UNBOUND> - PHRASE15>
+ <SUB NUM7 1 = NUM7 (TYPE FIX)>
+PHRASE15
+ <TYPE? NUM7 <TYPE-CODE FIX> - PHRASE18>
+ <TYPE? LCAREFUL9 <TYPE-CODE FALSE> + PHRASE21>
+ <SET TEMP22 2 (TYPE FIX)>
+ <JUMP + PHRASE23>
+PHRASE21
+ <SET TEMP22 4 (TYPE FIX)>
+PHRASE23
+ <GRTR? NUM7 TEMP22 + PHRASE18 (TYPE FIX)>
+ <DEAD TEMP22>
+ <LOOP>
+AGAIN25
+ <INTGO>
+ <GRTR? ML8 0 + PHRASE27 (TYPE FIX)>
+ <TYPE? LCAREFUL9 <TYPE-CODE FALSE> + PHRASE27>
+ <FRAME '\1aEMPTY-CHECK>
+ <PUSH 'LIST>
+ <PUSH STR6>
+ <PUSH 'LIST>
+ <CALL '\1aEMPTY-CHECK 3>
+PHRASE27
+ <TYPE? W10 <TYPE-CODE UNBOUND> + PHRASE33>
+ <VEQUAL? NUM7 1 - PHRASE33 (TYPE FIX)>
+ <FRAME '\1aFREE-TEMP>
+ <PUSH STR6>
+ <PUSH %<>>
+ <CALL '\1aFREE-TEMP 2>
+ <EQUAL? W10 'DONT-CARE - PHRASE39>
+ <FRAME '\1aGEN-TEMP>
+ <PUSH 'LIST>
+ <CALL '\1aGEN-TEMP 1 = W10>
+ <JUMP + PHRASE41>
+PHRASE39
+ <TYPE? W10 <TYPE-CODE TEMP> - PHRASE41>
+ <FRAME '\1aUSE-TEMP>
+ <PUSH W10>
+ <PUSH 'LIST>
+ <CALL '\1aUSE-TEMP 2>
+PHRASE41
+ <FRAME '\1aREST-DO>
+ <PUSH 'LIST>
+ <PUSH STR6>
+ <DEAD STR6>
+ <PUSH W10>
+ <PUSH 1>
+ <CALL '\1aREST-DO 4>
+ <SET STR6 W10>
+ <JUMP + PHRASE52>
+PHRASE33
+ <TYPE? STR6 <TYPE-CODE TEMP> - PHRASE44>
+ <NTHUV STR6 2 = TEMP22 (TYPE FIX)>
+ <GRTR? TEMP22 1 - BOOL46 (TYPE FIX)>
+ <DEAD TEMP22>
+ <TYPE? W10 <TYPE-CODE UNBOUND> + PHRASE44>
+ <EQUAL? STR6 W10 - PHRASE44>
+BOOL46
+ <FRAME '\1aREST-DO>
+ <PUSH 'LIST>
+ <PUSH STR6>
+ <PUSH STR6>
+ <PUSH 1>
+ <CALL '\1aREST-DO 4>
+ <JUMP + PHRASE52>
+PHRASE44
+ <FRAME '\1aFREE-TEMP>
+ <PUSH STR6>
+ <PUSH %<>>
+ <CALL '\1aFREE-TEMP 2>
+ <FRAME '\1aREST-DO>
+ <PUSH 'LIST>
+ <PUSH STR6>
+ <DEAD STR6>
+ <FRAME '\1aGEN-TEMP>
+ <PUSH 'LIST>
+ <CALL '\1aGEN-TEMP 1 = STR6>
+ <PUSH STR6>
+ <PUSH 1>
+ <CALL '\1aREST-DO 4>
+PHRASE52
+ <SUB NUM7 1 = NUM7 (TYPE FIX)>
+ <GRTR? NUM7 0 + PHRASE57 (TYPE FIX)>
+ <TYPE? LCAREFUL9 <TYPE-CODE FALSE> + EXIT24>
+ <DEAD LCAREFUL9>
+ <TYPE? W10 <TYPE-CODE UNBOUND> - EXIT24>
+ <DEAD W10>
+ <GRTR? ML8 1 + EXIT24 (TYPE FIX)>
+ <DEAD ML8>
+ <FRAME '\1aEMPTY-CHECK>
+ <PUSH 'LIST>
+ <PUSH STR6>
+ <PUSH 'LIST>
+ <CALL '\1aEMPTY-CHECK 3>
+ <RETURN STR6>
+ <DEAD STR6>
+PHRASE57
+ <SUB ML8 1 = ML8 (TYPE FIX)>
+ <JUMP + AGAIN25>
+EXIT24
+ <RETURN STR6>
+ <DEAD STR6>
+PHRASE18
+ <TYPE? NUM7 <TYPE-CODE TEMP> - BOOL69>
+ <NTHUV NUM7 2 = TEMP22 (TYPE FIX)>
+ <GRTR? TEMP22 1 - PHRASE68 (TYPE FIX)>
+ <DEAD TEMP22>
+BOOL69
+ <FRAME '\1aMOVE-ARG>
+ <PUSH NUM7>
+ <FRAME '\1aGEN-TEMP>
+ <PUSH %<>>
+ <CALL '\1aGEN-TEMP 1 = STACK>
+ <CALL '\1aMOVE-ARG 2 = NUMN13>
+PHRASE68
+ <FRAME '\1aMAKE-TAG>
+ <PUSH "RESTL">
+ <CALL '\1aMAKE-TAG 1 = TG111>
+ <TYPE? STR6 <TYPE-CODE TEMP> - BOOL81>
+ <NTHUV STR6 2 = TEMP22 (TYPE FIX)>
+ <GRTR? TEMP22 1 - PHRASE76 (TYPE FIX)>
+ <DEAD TEMP22>
+ <TYPE? W10 <TYPE-CODE UNBOUND> + BOOL81>
+ <EQUAL? W10 STR6 + PHRASE76>
+BOOL81
+ <FRAME '\1aMOVE-ARG>
+ <PUSH STR6>
+ <DEAD STR6>
+ <FRAME '\1aGEN-TEMP>
+ <PUSH %<>>
+ <CALL '\1aGEN-TEMP 1 = STACK>
+ <CALL '\1aMOVE-ARG 2 = STR6>
+PHRASE76
+ <TYPE? NUM7 <TYPE-CODE FIX> + PHRASE85>
+ <FRAME '\1aMAKE-TAG>
+ <PUSH "RESTL">
+ <CALL '\1aMAKE-TAG 1 = TG212>
+ <TYPE? W10 <TYPE-CODE UNBOUND> - PHRASE88>
+ <FRAME '\1aIEMIT>
+ <PUSH '`SUB>
+ <PUSH NUMN13>
+ <PUSH 1>
+ <PUSH '=>
+ <PUSH NUMN13>
+ <PUSH (`TYPE FIX)>
+ <CALL '\1aIEMIT 6>
+PHRASE88
+ <FRAME '\1aIEMIT>
+ <PUSH '`GRTR?>
+ <PUSH NUMN13>
+ <PUSH 0>
+ <PUSH '->
+ <PUSH TG212>
+ <PUSH (`TYPE FIX)>
+ <CALL '\1aIEMIT 6>
+PHRASE85
+ <FRAME '\1aIEMIT>
+ <PUSH '`LOOP>
+ <CONS 'VALUE () = TEMP22>
+ <NTHUV STR6 1 = TEMP92 (TYPE ATOM)>
+ <CONS TEMP92 TEMP22 = STACK>
+ <DEAD TEMP92 TEMP22>
+ <CONS 'VALUE () = TEMP22>
+ <NTHUV NUMN13 1 = TEMP92 (TYPE ATOM)>
+ <CONS TEMP92 TEMP22 = STACK>
+ <DEAD TEMP92 TEMP22>
+ <CALL '\1aIEMIT 3>
+ <FRAME '\1aLABEL-TAG>
+ <PUSH TG111>
+ <CALL '\1aLABEL-TAG 1>
+ <FRAME '\1aIEMIT>
+ <PUSH '`INTGO>
+ <CALL '\1aIEMIT 1>
+ <TYPE? LCAREFUL9 <TYPE-CODE FALSE> + PHRASE96>
+ <TYPE? NUM7 <TYPE-CODE FIX> - BOOL98>
+ <GRTR? NUM7 ML8 - PHRASE96 (TYPE FIX)>
+ <DEAD NUM7 ML8>
+BOOL98
+ <FRAME '\1aEMPTY-CHECK>
+ <PUSH 'LIST>
+ <PUSH STR6>
+ <PUSH 'LIST>
+ <CALL '\1aEMPTY-CHECK 3>
+PHRASE96
+ <FRAME '\1aREST-DO>
+ <PUSH 'LIST>
+ <PUSH STR6>
+ <PUSH STR6>
+ <PUSH 1>
+ <CALL '\1aREST-DO 4>
+ <FRAME '\1aIEMIT>
+ <PUSH '`SUB>
+ <PUSH NUMN13>
+ <PUSH 1>
+ <PUSH '=>
+ <PUSH NUMN13>
+ <PUSH (`TYPE FIX)>
+ <CALL '\1aIEMIT 6>
+ <FRAME '\1aIEMIT>
+ <PUSH '`GRTR?>
+ <PUSH NUMN13>
+ <PUSH 0>
+ <PUSH '+>
+ <PUSH TG111>
+ <DEAD TG111>
+ <PUSH (`TYPE FIX)>
+ <CALL '\1aIEMIT 6>
+ <TYPE? TG212 <TYPE-CODE UNBOUND> + PHRASE104>
+ <FRAME '\1aLABEL-TAG>
+ <PUSH TG212>
+ <DEAD TG212>
+ <CALL '\1aLABEL-TAG 1>
+PHRASE104
+ <FRAME '\1aFREE-TEMP>
+ <PUSH NUMN13>
+ <DEAD NUMN13>
+ <CALL '\1aFREE-TEMP 1>
+ <TYPE? LCAREFUL9 <TYPE-CODE FALSE> + PHRASE108>
+ <DEAD LCAREFUL9>
+ <TYPE? W10 <TYPE-CODE UNBOUND> - PHRASE108>
+ <FRAME '\1aEMPTY-CHECK>
+ <PUSH 'LIST>
+ <PUSH STR6>
+ <PUSH 'LIST>
+ <CALL '\1aEMPTY-CHECK 3>
+PHRASE108
+ <TYPE? W10 <TYPE-CODE UNBOUND> + PHRASE112>
+ <FRAME '\1aMOVE-ARG>
+ <PUSH STR6>
+ <DEAD STR6>
+ <PUSH W10>
+ <DEAD W10>
+ <CALL '\1aMOVE-ARG 2 = STR6>
+PHRASE112
+ <RETURN STR6>
+ <DEAD STR6>
+ <END \1aEXPANDED-LIST-REST>\r\r
+#WORD *37725671506*
+<GFCN \1aNTH-DO ("VALUE" ATOM ANY ANY ANY ANY "OPTIONAL" ANY ANY) TPS7 STR8 WHERE9 NUM10 TYP11 RESTYP12>
+ <OPT-DISPATCH 4 %<> OPT4 OPT5 OPT6>
+OPT4
+ <PUSH 'ANY>
+OPT5
+ <PUSH %<>>
+OPT6
+ <TEMP TEMP17:ATOM>
+ <INTGO>
+ <EQUAL? TPS7 'VECTOR + BOOL15>
+ <EQUAL? TPS7 'TUPLE - PHRASE14>
+BOOL15
+ <FRAME '\1aNTH-VECTOR>
+ <PUSH STR8>
+ <DEAD STR8>
+ <PUSH WHERE9>
+ <DEAD WHERE9>
+ <PUSH NUM10>
+ <DEAD NUM10>
+ <PUSH RESTYP12>
+ <DEAD RESTYP12>
+ <CALL '\1aNTH-VECTOR 4 = TEMP17>
+ <RETURN TEMP17>
+ <DEAD TEMP17>
+PHRASE14
+ <EQUAL? TPS7 'UVECTOR - PHRASE18>
+ <FRAME '\1aNTH-UVECTOR>
+ <PUSH STR8>
+ <DEAD STR8>
+ <PUSH WHERE9>
+ <DEAD WHERE9>
+ <PUSH NUM10>
+ <DEAD NUM10>
+ <PUSH RESTYP12>
+ <DEAD RESTYP12>
+ <CALL '\1aNTH-UVECTOR 4 = TEMP17>
+ <RETURN TEMP17>
+ <DEAD TEMP17>
+PHRASE18
+ <EQUAL? TPS7 'STRING - PHRASE20>
+ <FRAME '\1aNTH-STRING>
+ <PUSH STR8>
+ <DEAD STR8>
+ <PUSH WHERE9>
+ <DEAD WHERE9>
+ <PUSH NUM10>
+ <DEAD NUM10>
+ <PUSH RESTYP12>
+ <DEAD RESTYP12>
+ <CALL '\1aNTH-STRING 4 = TEMP17>
+ <RETURN TEMP17>
+ <DEAD TEMP17>
+PHRASE20
+ <EQUAL? TPS7 'BYTES - PHRASE22>
+ <FRAME '\1aNTH-BYTES>
+ <PUSH STR8>
+ <DEAD STR8>
+ <PUSH WHERE9>
+ <DEAD WHERE9>
+ <PUSH NUM10>
+ <DEAD NUM10>
+ <PUSH RESTYP12>
+ <DEAD RESTYP12>
+ <CALL '\1aNTH-BYTES 4 = TEMP17>
+ <RETURN TEMP17>
+ <DEAD TEMP17>
+PHRASE22
+ <EQUAL? TPS7 'LIST - PHRASE24>
+ <FRAME '\1aNTH-LIST>
+ <PUSH STR8>
+ <DEAD STR8>
+ <PUSH WHERE9>
+ <DEAD WHERE9>
+ <PUSH NUM10>
+ <DEAD NUM10>
+ <PUSH RESTYP12>
+ <DEAD RESTYP12>
+ <CALL '\1aNTH-LIST 4 = TEMP17>
+ <RETURN TEMP17>
+ <DEAD TEMP17>
+PHRASE24
+ <EQUAL? TPS7 'TEMPLATE - PHRASE26>
+ <FRAME '\1aNTH-RECORD>
+ <PUSH STR8>
+ <DEAD STR8>
+ <PUSH WHERE9>
+ <DEAD WHERE9>
+ <PUSH NUM10>
+ <DEAD NUM10>
+ <PUSH TYP11>
+ <DEAD TYP11>
+ <PUSH RESTYP12>
+ <DEAD RESTYP12>
+ <CALL '\1aNTH-RECORD 5 = TEMP17>
+ <RETURN TEMP17>
+ <DEAD TEMP17>
+PHRASE26
+ <FRAME '\1aNTH-RECORD>
+ <PUSH STR8>
+ <DEAD STR8>
+ <PUSH WHERE9>
+ <DEAD WHERE9>
+ <PUSH NUM10>
+ <DEAD NUM10>
+ <PUSH TPS7>
+ <DEAD TPS7>
+ <PUSH RESTYP12>
+ <DEAD RESTYP12>
+ <CALL '\1aNTH-RECORD 5 = TEMP17>
+ <RETURN TEMP17>
+ <DEAD TEMP17>
+ <END \1aNTH-DO>
+<SETG STYPES [LIST TUPLE VECTOR UVECTOR STORAGE STRING BYTES TEMPLATE]>
+
+#WORD *16760540573*
+<GFCN \1aNTH-PRED ("VALUE" <OR ATOM !<FALSE>> FIX) C4>
+ <TEMP TEMP5>
+ <INTGO>
+ <VEQUAL? C4 1 - TAG6 (TYPE FIX)>
+ <DEAD C4>
+ <RETURN 'T>
+TAG6
+ <RETURN %<>>
+ <END \1aNTH-PRED>
+#WORD *7201607525*
+<GFCN \1aPUT-GEN ("VALUE" ANY NODE ANY "OPTIONAL" ANY) NOD6 WHERE7 SAME?8>
+ <OPT-DISPATCH 2 %<> OPT4 OPT5>
+OPT4
+ <PUSH %<>>
+OPT5
+ <TEMP ONO9 K10 SNOD11:NODE TEMP30 NNOD12:NODE TYP14 TPS15 ML16:FIX NUMKN20 NUM21:FIX RV22 RR23 NR24 W26 ETYP25 TEMP61 TEMP62 VN17>
+ <INTGO>
+ <GEN-LVAL 'NO-KILL = ONO9>
+ <NTHUV NOD6 5 = K10 (TYPE LIST)>
+ <NTHL K10 1 = SNOD11 (TYPE NODE)>
+ <RESTL K10 1 = TEMP30 (TYPE LIST)>
+ <NTHL TEMP30 1 = NNOD12 (TYPE NODE)>
+ <DEAD TEMP30>
+ <RESTL K10 1 = TEMP30 (TYPE LIST)>
+ <DEAD K10>
+ <RESTL TEMP30 1 = TEMP30 (TYPE LIST)>
+ <NTHL TEMP30 1 = K10 (TYPE NODE)>
+ <DEAD TEMP30>
+ <NTHUV SNOD11 3 = TYP14>
+ <FRAME '\1aSTRUCTYP>
+ <PUSH TYP14>
+ <CALL '\1aSTRUCTYP 1 = TPS15>
+ <FRAME '\1aMINL>
+ <PUSH TYP14>
+ <CALL '\1aMINL 1 = ML16>
+ <NTHUV NNOD12 1 = TEMP30 (TYPE FIX)>
+ <VEQUAL? TEMP30 2 - TAG33 (TYPE FIX)>
+ <DEAD TEMP30>
+ <SET NUMKN20 'T (TYPE ATOM)>
+ <JUMP + TAG34>
+TAG33
+ <SET NUMKN20 %<> (TYPE FALSE)>
+TAG34
+ <VEQUAL? NUMKN20 0 + PHRASE36>
+ <NTHUV NNOD12 4 = TEMP30>
+ <TYPE? TEMP30 <TYPE-CODE OFFSET> - PHRASE38>
+ <DEAD TEMP30>
+ <NTHUV NNOD12 4 = TEMP30 (TYPE OFFSET)>
+ <NTHUV TEMP30 1 = TEMP30>
+ <JUMP + PHRASE40>
+PHRASE38
+ <NTHUV NNOD12 4 = TEMP30 (TYPE FIX)>
+ <JUMP + PHRASE40>
+PHRASE36
+ <SET TEMP30 1 (TYPE FIX)>
+PHRASE40
+ <SET NUM21 TEMP30>
+ <DEAD TEMP30>
+ <TYPE? SAME?8 <TYPE-CODE FALSE> + TAG42>
+ <SET TEMP30 %<> (TYPE FALSE)>
+ <JUMP + BOOL41>
+TAG42
+ <FRAME '\1aCOMMUTE-STRUC>
+ <PUSH %<>>
+ <PUSH NNOD12>
+ <PUSH SNOD11>
+ <CALL '\1aCOMMUTE-STRUC 3 = TEMP30>
+BOOL41
+ <SET RV22 TEMP30>
+ <DEAD TEMP30>
+ <TYPE? SAME?8 <TYPE-CODE FALSE> + TAG45>
+ <SET TEMP30 %<> (TYPE FALSE)>
+ <JUMP + BOOL44>
+TAG45
+ <FRAME '\1aCOMMUTE-STRUC>
+ <PUSH %<>>
+ <PUSH K10>
+ <PUSH SNOD11>
+ <CALL '\1aCOMMUTE-STRUC 3 = TEMP30>
+ <TYPE? TEMP30 <TYPE-CODE FALSE> + BOOL44>
+ <FRAME '\1aCOMMUTE-STRUC>
+ <PUSH %<>>
+ <PUSH K10>
+ <PUSH NNOD12>
+ <CALL '\1aCOMMUTE-STRUC 3 = TEMP30>
+BOOL44
+ <SET RR23 TEMP30>
+ <DEAD TEMP30>
+ <FRAME '\1aGET-RANGE>
+ <NTHUV NNOD12 3 = STACK>
+ <CALL '\1aGET-RANGE 1 = NR24>
+ <SET W26 WHERE7>
+ <DEAD WHERE7>
+ <VEQUAL? NUMKN20 0 + PHRASE50>
+ <PUTUV NNOD12 4 NUM21>
+PHRASE50
+ <FRAME '\1aGET-ELE-TYPE>
+ <PUSH TYP14>
+ <VEQUAL? NUMKN20 0 + PHRASE53>
+ <SET TEMP30 NUM21>
+ <JUMP + COND52>
+PHRASE53
+ <SET TEMP30 'ALL (TYPE ATOM)>
+COND52
+ <PUSH TEMP30>
+ <DEAD TEMP30>
+ <CALL '\1aGET-ELE-TYPE 2 = ETYP25>
+ <FRAME '\1aSTRUCTYP>
+ <PUSH ETYP25>
+ <CALL '\1aSTRUCTYP 1 = TEMP30>
+ <SET TEMP61 [VECTOR UVECTOR STRING BYTES] (TYPE VECTOR)>
+ <TYPE? TEMP30 <TYPE-CODE ATOM> - PHRASE55>
+ <LOOP (TEMP30 VALUE) (TEMP61 LENGTH VALUE)>
+TAG58
+ <NTHUV TEMP61 1 = TEMP62>
+ <VEQUAL? TEMP62 TEMP30 + TAG57>
+ <DEAD TEMP62>
+ <RESTUV TEMP61 1 = TEMP61 (TYPE VECTOR)>
+ <EMPUV? TEMP61 - TAG58>
+ <JUMP + PHRASE55>
+TAG57
+ <TYPE? ETYP25 <TYPE-CODE SEGMENT> + PHRASE55>
+ <TYPE? ETYP25 <TYPE-CODE ATOM> - BOOL63>
+ <FRAME '\1aDECL-GET>
+ <PUSH ETYP25>
+ <CALL '\1aDECL-GET 1 = TEMP61>
+ <TYPE? TEMP61 <TYPE-CODE SEGMENT> + PHRASE55>
+ <DEAD TEMP61>
+BOOL63
+ <SET ETYP25 %<> (TYPE FALSE)>
+ <JUMP + PHRASE65>
+PHRASE55
+ <FRAME '\1aISTYPE?>
+ <PUSH ETYP25>
+ <DEAD ETYP25>
+ <CALL '\1aISTYPE? 1 = ETYP25>
+ <FRAME '\1aISTYPE?>
+ <NTHUV K10 3 = STACK>
+ <CALL '\1aISTYPE? 1 = TEMP61>
+ <VEQUAL? ETYP25 TEMP61 + PHRASE65>
+ <DEAD TEMP61>
+ <SET ETYP25 %<> (TYPE FALSE)>
+PHRASE65
+ <VEQUAL? NUMKN20 0 + PHRASE69>
+ <DEAD NUMKN20>
+ <GRTR? NUM21 0 + PHRASE71 (TYPE FIX)>
+ <FRAME '\1aCOMPILE-ERROR>
+ <PUSH "PUT Number to small: ">
+ <PUSH NUM21>
+ <DEAD NUM21>
+ <PUSH NOD6>
+ <DEAD NOD6>
+ <CALL '\1aCOMPILE-ERROR 3>
+ <RETURN W26>
+ <DEAD W26>
+PHRASE71
+ <VEQUAL? NUM21 1 - PHRASE75 (TYPE FIX)>
+ <TYPE? RR23 <TYPE-CODE FALSE> + PHRASE79>
+ <DEAD RR23>
+ <FRAME '\1aGEN>
+ <PUSH K10>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = VN17>
+ <FRAME '\1aINTERF-CHANGE>
+ <PUSH VN17>
+ <DEAD VN17>
+ <PUSH SNOD11>
+ <CALL '\1aINTERF-CHANGE 2 = VN17>
+ <FRAME '\1aGEN>
+ <PUSH SNOD11>
+ <DEAD SNOD11>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = TEMP30>
+ <VEQUAL? ML16 0 - PHRASE104 (TYPE FIX)>
+ <DEAD ML16>
+ <GEN-LVAL 'CAREFUL = TEMP61>
+ <TYPE? TEMP61 <TYPE-CODE FALSE> + PHRASE104>
+ <DEAD TEMP61>
+ <FRAME '\1aEMPTY-CHECK>
+ <PUSH TPS15>
+ <PUSH TEMP30>
+ <FRAME '\1aRECTYPE?>
+ <PUSH TYP14>
+ <CALL '\1aRECTYPE? 1 = STACK>
+ <CALL '\1aEMPTY-CHECK 3>
+ <JUMP + PHRASE104>
+PHRASE79
+ <FRAME '\1aGEN>
+ <PUSH SNOD11>
+ <DEAD SNOD11>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = TEMP30>
+ <GEN-LVAL 'CAREFUL = TEMP61>
+ <TYPE? TEMP61 <TYPE-CODE FALSE> + PHRASE95>
+ <DEAD TEMP61>
+ <VEQUAL? ML16 0 - PHRASE95 (TYPE FIX)>
+ <DEAD ML16>
+ <FRAME '\1aEMPTY-CHECK>
+ <PUSH TPS15>
+ <PUSH TEMP30>
+ <FRAME '\1aRECTYPE?>
+ <PUSH TYP14>
+ <CALL '\1aRECTYPE? 1 = STACK>
+ <CALL '\1aEMPTY-CHECK 3>
+PHRASE95
+ <TYPE? SAME?8 <TYPE-CODE FALSE> - PHRASE104>
+ <FRAME '\1aINTERF-CHANGE>
+ <PUSH TEMP30>
+ <DEAD TEMP30>
+ <PUSH K10>
+ <CALL '\1aINTERF-CHANGE 2 = TEMP30>
+ <FRAME '\1aGEN>
+ <PUSH K10>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = VN17>
+PHRASE104
+ <FRAME '\1aDELAY-KILL>
+ <GEN-LVAL 'NO-KILL = STACK>
+ <PUSH ONO9>
+ <DEAD ONO9>
+ <CALL '\1aDELAY-KILL 2>
+ <TYPE? SAME?8 <TYPE-CODE FALSE> + PHRASE111>
+ <FRAME '\1aSPEC-GEN>
+ <PUSH K10>
+ <DEAD K10>
+ <PUSH TEMP30>
+ <PUSH TPS15>
+ <DEAD TPS15>
+ <PUSH NUM21>
+ <DEAD NUM21>
+ <CALL '\1aSPEC-GEN 4>
+ <JUMP + PHRASE113>
+PHRASE111
+ <FRAME '\1aDATCLOB>
+ <PUSH TEMP30>
+ <PUSH NUM21>
+ <DEAD NUM21>
+ <PUSH VN17>
+ <PUSH TPS15>
+ <DEAD TPS15>
+ <PUSH TYP14>
+ <DEAD TYP14>
+ <PUSH ETYP25>
+ <DEAD ETYP25>
+ <CALL '\1aDATCLOB 6>
+PHRASE113
+ <TYPE? SAME?8 <TYPE-CODE FALSE> - PHRASE116>
+ <DEAD SAME?8>
+ <FRAME '\1aFREE-TEMP>
+ <PUSH VN17>
+ <DEAD VN17>
+ <CALL '\1aFREE-TEMP 1>
+PHRASE116
+ <FRAME '\1aMOVE-ARG>
+ <PUSH TEMP30>
+ <DEAD TEMP30>
+ <PUSH W26>
+ <DEAD W26>
+ <CALL '\1aMOVE-ARG 2 = W26>
+ <RETURN W26>
+ <DEAD W26>
+PHRASE75
+ <TYPE? RR23 <TYPE-CODE FALSE> + PHRASE121>
+ <DEAD RR23>
+ <FRAME '\1aGEN>
+ <PUSH K10>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = VN17>
+ <FRAME '\1aINTERF-CHANGE>
+ <PUSH VN17>
+ <DEAD VN17>
+ <PUSH SNOD11>
+ <CALL '\1aINTERF-CHANGE 2 = VN17>
+ <FRAME '\1aGEN>
+ <PUSH SNOD11>
+ <DEAD SNOD11>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = TEMP30>
+ <JUMP + PHRASE128>
+PHRASE121
+ <FRAME '\1aGEN>
+ <PUSH SNOD11>
+ <DEAD SNOD11>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = TEMP30>
+ <TYPE? SAME?8 <TYPE-CODE FALSE> - PHRASE128>
+ <FRAME '\1aINTERF-CHANGE>
+ <PUSH TEMP30>
+ <DEAD TEMP30>
+ <PUSH K10>
+ <CALL '\1aINTERF-CHANGE 2 = TEMP30>
+ <FRAME '\1aGEN>
+ <PUSH K10>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = VN17>
+PHRASE128
+ <FRAME '\1aDELAY-KILL>
+ <GEN-LVAL 'NO-KILL = STACK>
+ <PUSH ONO9>
+ <DEAD ONO9>
+ <CALL '\1aDELAY-KILL 2>
+ <GEN-LVAL 'CAREFUL = TEMP62>
+ <TYPE? TEMP62 <TYPE-CODE FALSE> + PHRASE135>
+ <DEAD TEMP62>
+ <LESS? ML16 NUM21 - PHRASE135 (TYPE FIX)>
+ <TYPE? SAME?8 <TYPE-CODE FALSE> - PHRASE135>
+ <EQUAL? TPS15 'LIST + PHRASE135>
+ <FRAME '\1aLENGTH-CHECK>
+ <PUSH TPS15>
+ <PUSH TEMP30>
+ <PUSH NUM21>
+ <FRAME '\1aRECTYPE?>
+ <PUSH TYP14>
+ <CALL '\1aRECTYPE? 1 = STACK>
+ <CALL '\1aLENGTH-CHECK 4>
+PHRASE135
+ <SET ONO9 TEMP30>
+ <TYPE? SAME?8 <TYPE-CODE FALSE> + PHRASE142>
+ <FRAME '\1aSPEC-GEN>
+ <PUSH K10>
+ <DEAD K10>
+ <PUSH TEMP30>
+ <PUSH TPS15>
+ <DEAD TPS15>
+ <PUSH 1>
+ <CALL '\1aSPEC-GEN 4>
+ <JUMP + PHRASE157>
+PHRASE142
+ <EQUAL? TPS15 'LIST - PHRASE146>
+ <GEN-LVAL 'CAREFUL = TEMP62>
+ <TYPE? TEMP62 <TYPE-CODE FALSE> + BOOL149>
+ <DEAD TEMP62>
+ <GRTR? NUM21 ML16 + BOOL148 (TYPE FIX)>
+BOOL149
+ <GRTR? NUM21 4 + PHRASE146 (TYPE FIX)>
+BOOL148
+ <FRAME '\1aDATCLOB>
+ <FRAME '\1aEXPANDED-LIST-REST>
+ <FRAME '\1aUSE-TEMP>
+ <PUSH TEMP30>
+ <CALL '\1aUSE-TEMP 1 = STACK>
+ <PUSH NUM21>
+ <DEAD NUM21>
+ <PUSH ML16>
+ <DEAD ML16>
+ <GEN-LVAL 'CAREFUL = STACK>
+ <CALL '\1aEXPANDED-LIST-REST 4 = ONO9>
+ <PUSH ONO9>
+ <PUSH 1>
+ <PUSH VN17>
+ <PUSH TPS15>
+ <DEAD TPS15>
+ <PUSH TYP14>
+ <DEAD TYP14>
+ <PUSH ETYP25>
+ <DEAD ETYP25>
+ <CALL '\1aDATCLOB 6>
+ <JUMP + PHRASE157>
+PHRASE146
+ <FRAME '\1aDATCLOB>
+ <PUSH TEMP30>
+ <PUSH NUM21>
+ <DEAD NUM21>
+ <PUSH VN17>
+ <PUSH TPS15>
+ <DEAD TPS15>
+ <PUSH TYP14>
+ <DEAD TYP14>
+ <PUSH ETYP25>
+ <DEAD ETYP25>
+ <CALL '\1aDATCLOB 6>
+PHRASE157
+ <EQUAL? ONO9 TEMP30 + PHRASE160>
+ <FRAME '\1aFREE-TEMP>
+ <PUSH ONO9>
+ <DEAD ONO9>
+ <CALL '\1aFREE-TEMP 1>
+PHRASE160
+ <TYPE? SAME?8 <TYPE-CODE FALSE> - PHRASE163>
+ <DEAD SAME?8>
+ <FRAME '\1aFREE-TEMP>
+ <PUSH VN17>
+ <DEAD VN17>
+ <CALL '\1aFREE-TEMP 1>
+PHRASE163
+ <FRAME '\1aMOVE-ARG>
+ <PUSH TEMP30>
+ <DEAD TEMP30>
+ <PUSH W26>
+ <DEAD W26>
+ <CALL '\1aMOVE-ARG 2 = W26>
+ <RETURN W26>
+ <DEAD W26>
+PHRASE69
+ <TYPE? RR23 <TYPE-CODE FALSE> + PHRASE168>
+ <FRAME '\1aGEN>
+ <PUSH K10>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = VN17>
+ <FRAME '\1aINTERF-CHANGE>
+ <PUSH VN17>
+ <DEAD VN17>
+ <PUSH SNOD11>
+ <CALL '\1aINTERF-CHANGE 2 = VN17>
+ <FRAME '\1aINTERF-CHANGE>
+ <PUSH VN17>
+ <DEAD VN17>
+ <PUSH NNOD12>
+ <CALL '\1aINTERF-CHANGE 2 = VN17>
+PHRASE168
+ <TYPE? RV22 <TYPE-CODE FALSE> + PHRASE173>
+ <DEAD RV22>
+ <FRAME '\1aGEN>
+ <PUSH NNOD12>
+ <DEAD NNOD12>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = NUMKN20>
+ <FRAME '\1aINTERF-CHANGE>
+ <PUSH NUMKN20>
+ <DEAD NUMKN20>
+ <PUSH SNOD11>
+ <CALL '\1aINTERF-CHANGE 2 = NUMKN20>
+ <FRAME '\1aGEN>
+ <PUSH SNOD11>
+ <DEAD SNOD11>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = TEMP30>
+ <TYPE? RR23 <TYPE-CODE FALSE> - PHRASE186>
+ <FRAME '\1aINTERF-CHANGE>
+ <PUSH NUMKN20>
+ <DEAD NUMKN20>
+ <PUSH K10>
+ <CALL '\1aINTERF-CHANGE 2 = NUMKN20>
+ <FRAME '\1aINTERF-CHANGE>
+ <PUSH TEMP30>
+ <DEAD TEMP30>
+ <PUSH K10>
+ <CALL '\1aINTERF-CHANGE 2 = TEMP30>
+ <JUMP + PHRASE186>
+PHRASE173
+ <FRAME '\1aGEN>
+ <PUSH SNOD11>
+ <DEAD SNOD11>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = TEMP30>
+ <FRAME '\1aINTERF-CHANGE>
+ <PUSH TEMP30>
+ <DEAD TEMP30>
+ <PUSH NNOD12>
+ <CALL '\1aINTERF-CHANGE 2 = TEMP30>
+ <FRAME '\1aGEN>
+ <PUSH NNOD12>
+ <DEAD NNOD12>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = NUMKN20>
+ <TYPE? RR23 <TYPE-CODE FALSE> - PHRASE186>
+ <FRAME '\1aINTERF-CHANGE>
+ <PUSH NUMKN20>
+ <DEAD NUMKN20>
+ <PUSH K10>
+ <CALL '\1aINTERF-CHANGE 2 = NUMKN20>
+ <FRAME '\1aINTERF-CHANGE>
+ <PUSH TEMP30>
+ <DEAD TEMP30>
+ <PUSH K10>
+ <CALL '\1aINTERF-CHANGE 2 = TEMP30>
+PHRASE186
+ <TYPE? RR23 <TYPE-CODE FALSE> + PHRASE190>
+ <FRAME '\1aDELAY-KILL>
+ <GEN-LVAL 'NO-KILL = STACK>
+ <PUSH ONO9>
+ <CALL '\1aDELAY-KILL 2>
+PHRASE190
+ <GEN-LVAL 'CAREFUL = RV22>
+ <TYPE? RV22 <TYPE-CODE FALSE> + PHRASE196>
+ <DEAD RV22>
+ <TYPE? NR24 <TYPE-CODE FALSE> + BOOL201>
+ <NTHL NR24 1 = RV22>
+ <GRTR? RV22 0 + PHRASE196>
+ <DEAD RV22>
+BOOL201
+ <FRAME '\1aIEMIT>
+ <PUSH '`GRTR?>
+ <PUSH NUMKN20>
+ <PUSH 0>
+ <PUSH '->
+ <PUSH '`COMPERR>
+ <PUSH (`TYPE FIX)>
+ <CALL '\1aIEMIT 6>
+PHRASE196
+ <GEN-LVAL 'CAREFUL = RV22>
+ <TYPE? RV22 <TYPE-CODE FALSE> + PHRASE206>
+ <DEAD RV22>
+ <EQUAL? TPS15 'LIST + PHRASE206>
+ <TYPE? NR24 <TYPE-CODE FALSE> + BOOL210>
+ <FRAME '\1aL=?>
+ <RESTL NR24 1 = RV22 (TYPE LIST)>
+ <DEAD NR24>
+ <NTHL RV22 1 = STACK>
+ <DEAD RV22>
+ <FRAME '\1aMINL>
+ <PUSH TYP14>
+ <CALL '\1aMINL 1 = STACK>
+ <CALL '\1aL=? 2 = RV22>
+ <TYPE? RV22 <TYPE-CODE FALSE> - PHRASE206>
+ <DEAD RV22>
+BOOL210
+ <FRAME '\1aLENGTH-CHECK>
+ <PUSH TPS15>
+ <PUSH TEMP30>
+ <PUSH NUMKN20>
+ <FRAME '\1aRECTYPE?>
+ <PUSH TYP14>
+ <CALL '\1aRECTYPE? 1 = STACK>
+ <CALL '\1aLENGTH-CHECK 4>
+PHRASE206
+ <TYPE? RR23 <TYPE-CODE FALSE> - PHRASE222>
+ <DEAD RR23>
+ <FRAME '\1aDELAY-KILL>
+ <GEN-LVAL 'NO-KILL = STACK>
+ <PUSH ONO9>
+ <DEAD ONO9>
+ <CALL '\1aDELAY-KILL 2>
+ <TYPE? SAME?8 <TYPE-CODE FALSE> - PHRASE222>
+ <FRAME '\1aGEN>
+ <PUSH K10>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = VN17>
+PHRASE222
+ <TYPE? SAME?8 <TYPE-CODE FALSE> + PHRASE225>
+ <FRAME '\1aSPEC-GEN>
+ <PUSH K10>
+ <DEAD K10>
+ <PUSH NUMKN20>
+ <DEAD NUMKN20>
+ <PUSH TPS15>
+ <DEAD TPS15>
+ <PUSH 0>
+ <CALL '\1aSPEC-GEN 4>
+ <JUMP + PHRASE238>
+PHRASE225
+ <EQUAL? TPS15 'LIST - PHRASE229>
+ <GEN-LVAL 'CAREFUL = ONO9>
+ <TYPE? ONO9 <TYPE-CODE FALSE> + PHRASE229>
+ <DEAD ONO9>
+ <FRAME '\1aEXPANDED-LIST-REST>
+ <PUSH TEMP30>
+ <DEAD TEMP30>
+ <PUSH NUMKN20>
+ <DEAD NUMKN20>
+ <PUSH ML16>
+ <DEAD ML16>
+ <GEN-LVAL 'CAREFUL = STACK>
+ <CALL '\1aEXPANDED-LIST-REST 4 = TEMP30>
+ <FRAME '\1aDATCLOB>
+ <PUSH TEMP30>
+ <PUSH 1>
+ <PUSH VN17>
+ <PUSH TPS15>
+ <DEAD TPS15>
+ <PUSH TYP14>
+ <DEAD TYP14>
+ <PUSH ETYP25>
+ <DEAD ETYP25>
+ <CALL '\1aDATCLOB 6>
+ <JUMP + PHRASE238>
+PHRASE229
+ <FRAME '\1aDATCLOB>
+ <PUSH TEMP30>
+ <PUSH NUMKN20>
+ <PUSH VN17>
+ <PUSH TPS15>
+ <DEAD TPS15>
+ <PUSH TYP14>
+ <DEAD TYP14>
+ <PUSH ETYP25>
+ <DEAD ETYP25>
+ <CALL '\1aDATCLOB 6>
+ <FRAME '\1aFREE-TEMP>
+ <PUSH NUMKN20>
+ <DEAD NUMKN20>
+ <CALL '\1aFREE-TEMP 1>
+PHRASE238
+ <TYPE? SAME?8 <TYPE-CODE FALSE> - PHRASE242>
+ <DEAD SAME?8>
+ <FRAME '\1aFREE-TEMP>
+ <PUSH VN17>
+ <DEAD VN17>
+ <CALL '\1aFREE-TEMP 1>
+PHRASE242
+ <FRAME '\1aMOVE-ARG>
+ <PUSH TEMP30>
+ <DEAD TEMP30>
+ <PUSH W26>
+ <DEAD W26>
+ <CALL '\1aMOVE-ARG 2 = W26>
+ <RETURN W26>
+ <DEAD W26>
+ <END \1aPUT-GEN>\r\r
+#WORD *37506547046*
+<GFCN \1aDATCLOB ("VALUE" ATOM ANY ANY ANY ANY ANY ANY) STR4 NUM5 VDAT6 TPS7 TYP8 ETYP9>
+ <TEMP TEMP14>
+ <INTGO>
+ <TYPE? ETYP9 <TYPE-CODE FALSE> + PHRASE13>
+ <CONS ETYP9 () = TEMP14>
+ <DEAD ETYP9>
+ <CONS '`TYPE TEMP14 = ETYP9>
+ <DEAD TEMP14>
+PHRASE13
+ <EQUAL? TPS7 'LIST - PHRASE16>
+ <FRAME '\1aPUT-LIST>
+ <PUSH STR4>
+ <DEAD STR4>
+ <PUSH NUM5>
+ <DEAD NUM5>
+ <PUSH VDAT6>
+ <DEAD VDAT6>
+ <PUSH ETYP9>
+ <DEAD ETYP9>
+ <CALL '\1aPUT-LIST 4 = TEMP14>
+ <RETURN TEMP14>
+ <DEAD TEMP14>
+PHRASE16
+ <EQUAL? TPS7 'VECTOR + BOOL19>
+ <EQUAL? TPS7 'TUPLE - PHRASE18>
+BOOL19
+ <FRAME '\1aPUT-VECTOR>
+ <PUSH STR4>
+ <DEAD STR4>
+ <PUSH NUM5>
+ <DEAD NUM5>
+ <PUSH VDAT6>
+ <DEAD VDAT6>
+ <PUSH ETYP9>
+ <DEAD ETYP9>
+ <CALL '\1aPUT-VECTOR 4 = TEMP14>
+ <RETURN TEMP14>
+ <DEAD TEMP14>
+PHRASE18
+ <EQUAL? TPS7 'UVECTOR - PHRASE21>
+ <FRAME '\1aPUT-UVECTOR>
+ <PUSH STR4>
+ <DEAD STR4>
+ <PUSH NUM5>
+ <DEAD NUM5>
+ <PUSH VDAT6>
+ <DEAD VDAT6>
+ <CALL '\1aPUT-UVECTOR 3 = TEMP14>
+ <RETURN TEMP14>
+ <DEAD TEMP14>
+PHRASE21
+ <EQUAL? TPS7 'STRING - PHRASE23>
+ <FRAME '\1aPUT-STRING>
+ <PUSH STR4>
+ <DEAD STR4>
+ <PUSH NUM5>
+ <DEAD NUM5>
+ <PUSH VDAT6>
+ <DEAD VDAT6>
+ <CALL '\1aPUT-STRING 3 = TEMP14>
+ <RETURN TEMP14>
+ <DEAD TEMP14>
+PHRASE23
+ <EQUAL? TPS7 'BYTES - PHRASE25>
+ <FRAME '\1aPUT-BYTES>
+ <PUSH STR4>
+ <DEAD STR4>
+ <PUSH NUM5>
+ <DEAD NUM5>
+ <PUSH VDAT6>
+ <DEAD VDAT6>
+ <CALL '\1aPUT-BYTES 3 = TEMP14>
+ <RETURN TEMP14>
+ <DEAD TEMP14>
+PHRASE25
+ <EQUAL? TPS7 'TEMPLATE - PHRASE27>
+ <FRAME '\1aPUT-RECORD>
+ <PUSH STR4>
+ <DEAD STR4>
+ <PUSH NUM5>
+ <DEAD NUM5>
+ <PUSH VDAT6>
+ <DEAD VDAT6>
+ <FRAME '\1aRECTYPE?>
+ <PUSH TYP8>
+ <DEAD TYP8>
+ <CALL '\1aRECTYPE? 1 = STACK>
+ <PUSH ETYP9>
+ <DEAD ETYP9>
+ <CALL '\1aPUT-RECORD 5 = TEMP14>
+ <RETURN TEMP14>
+ <DEAD TEMP14>
+PHRASE27
+ <FRAME '\1aPUT-RECORD>
+ <PUSH STR4>
+ <DEAD STR4>
+ <PUSH NUM5>
+ <DEAD NUM5>
+ <PUSH VDAT6>
+ <DEAD VDAT6>
+ <PUSH TPS7>
+ <DEAD TPS7>
+ <PUSH ETYP9>
+ <DEAD ETYP9>
+ <CALL '\1aPUT-RECORD 5 = TEMP14>
+ <RETURN TEMP14>
+ <DEAD TEMP14>
+ <END \1aDATCLOB>
+#WORD *16137753046*
+<GFCN \1aRECTYPE? ("VALUE" ANY ANY) TYP4>
+ <TEMP TEMP6>
+ <INTGO>
+ <FRAME '\1aISTYPE?>
+ <PUSH TYP4>
+ <CALL '\1aISTYPE? 1 = TEMP6>
+ <TYPE? TEMP6 <TYPE-CODE FALSE> - PHRASE8>
+ <TYPE? TYP4 <TYPE-CODE FORM> + TAG10>
+ <TYPE? TYP4 <TYPE-CODE SEGMENT> + TAG10>
+ <RETURN %<>>
+TAG10
+ <EMPL? TYP4 + TAG13>
+ <RESTL TYP4 1 = TEMP6 (TYPE LIST)>
+ <EMPL? TEMP6 - TAG12>
+ <DEAD TEMP6>
+TAG13
+ <RETURN %<>>
+TAG12
+ <NTHL TYP4 1 = TEMP6>
+ <EQUAL? TEMP6 'OR + TAG15>
+ <DEAD TEMP6>
+ <RETURN %<>>
+TAG15
+ <FRAME '\1aRECTYPE?>
+ <RESTL TYP4 1 = TEMP6 (TYPE LIST)>
+ <DEAD TYP4>
+ <NTHL TEMP6 1 = STACK>
+ <DEAD TEMP6>
+ <CALL '\1aRECTYPE? 1 = TEMP6>
+PHRASE8
+ <RETURN TEMP6>
+ <DEAD TEMP6>
+ <END \1aRECTYPE?>
+#WORD *31040033227*
+<GFCN \1aPUTREST-GEN ("VALUE" ANY NODE ANY) NOD4 WHERE5>
+ <TEMP ST27 K8:LIST ONO9 TEMP3:LBIND (2RET11 %<>) TEMP18>
+ <INTGO>
+ <NTHUV NOD4 5 = K8 (TYPE LIST)>
+ <GEN-LVAL 'NO-KILL = ONO9>
+ <GETS 'BIND = TEMP3 (TYPE LBIND)>
+ <BBIND 'NO-KILL 'LIST 'FIX ONO9>
+ <DEAD ONO9>
+ <NTHUV NOD4 9 = ONO9>
+ <DEAD NOD4>
+ <GVAL 'REST = TEMP18>
+ <EQUAL? ONO9 TEMP18 - PHRASE16>
+ <DEAD ONO9 TEMP18>
+ <NTHL K8 1 = NOD4 (TYPE NODE)>
+ <DEAD K8>
+ <NTHUV NOD4 5 = K8 (TYPE LIST)>
+ <DEAD NOD4>
+ <SET 2RET11 'T (TYPE ATOM)>
+PHRASE16
+ <RESTL K8 1 = TEMP18 (TYPE LIST)>
+ <NTHL TEMP18 1 = TEMP18 (TYPE NODE)>
+ <NTHUV TEMP18 1 = TEMP18 (TYPE FIX)>
+ <VEQUAL? TEMP18 2 - PHRASE20 (TYPE FIX)>
+ <DEAD TEMP18>
+ <RESTL K8 1 = TEMP18 (TYPE LIST)>
+ <NTHL TEMP18 1 = TEMP18 (TYPE NODE)>
+ <NTHUV TEMP18 4 = TEMP18>
+ <EQUAL? TEMP18 () - PHRASE20>
+ <DEAD TEMP18>
+ <FRAME '\1aGEN>
+ <NTHL K8 1 = STACK (TYPE NODE)>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = ONO9>
+ <JUMP + PHRASE23>
+PHRASE20
+ <FRAME '\1aGEN>
+ <NTHL K8 1 = STACK (TYPE NODE)>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = ONO9>
+ <FRAME '\1aINTERF-CHANGE>
+ <PUSH ONO9>
+ <DEAD ONO9>
+ <RESTL K8 1 = TEMP18 (TYPE LIST)>
+ <NTHL TEMP18 1 = STACK (TYPE NODE)>
+ <DEAD TEMP18>
+ <CALL '\1aINTERF-CHANGE 2 = ONO9>
+ <FRAME '\1aGEN>
+ <RESTL K8 1 = TEMP18 (TYPE LIST)>
+ <NTHL TEMP18 1 = STACK (TYPE NODE)>
+ <DEAD TEMP18>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = ST27>
+PHRASE23
+ <GEN-LVAL 'CAREFUL = TEMP18>
+ <TYPE? TEMP18 <TYPE-CODE FALSE> + PHRASE28>
+ <DEAD TEMP18>
+ <FRAME '\1aMINL>
+ <NTHL K8 1 = TEMP18 (TYPE NODE)>
+ <DEAD K8>
+ <NTHUV TEMP18 3 = STACK>
+ <DEAD TEMP18>
+ <CALL '\1aMINL 1 = TEMP18>
+ <LESS? TEMP18 1 - PHRASE28 (TYPE FIX)>
+ <DEAD TEMP18>
+ <FRAME '\1aEMPTY-CHECK>
+ <PUSH 'LIST>
+ <PUSH ONO9>
+ <PUSH 'LIST>
+ <CALL '\1aEMPTY-CHECK 3>
+PHRASE28
+ <TYPE? ST27 <TYPE-CODE UNBOUND> + PHRASE37>
+ <FRAME '\1aIEMIT>
+ <PUSH '`PUTREST>
+ <PUSH ONO9>
+ <PUSH ST27>
+ <CALL '\1aIEMIT 3>
+ <JUMP + PHRASE39>
+PHRASE37
+ <FRAME '\1aIEMIT>
+ <PUSH '`PUTREST>
+ <PUSH ONO9>
+ <PUSH ()>
+ <CALL '\1aIEMIT 3>
+PHRASE39
+ <FRAME '\1aMOVE-ARG>
+ <VEQUAL? 2RET11 0 + PHRASE43>
+ <DEAD 2RET11>
+ <FRAME '\1aFREE-TEMP>
+ <PUSH ONO9>
+ <DEAD ONO9>
+ <CALL '\1aFREE-TEMP 1>
+ <SET TEMP18 ST27>
+ <DEAD ST27>
+ <JUMP + PHRASE45>
+PHRASE43
+ <FRAME '\1aFREE-TEMP>
+ <PUSH ST27>
+ <DEAD ST27>
+ <CALL '\1aFREE-TEMP 1>
+ <SET TEMP18 ONO9>
+ <DEAD ONO9>
+PHRASE45
+ <PUSH TEMP18>
+ <DEAD TEMP18>
+ <PUSH WHERE5>
+ <DEAD WHERE5>
+ <CALL '\1aMOVE-ARG 2 = TEMP18>
+ <UNBIND TEMP3>
+ <DEAD TEMP3>
+ <ADJ -9>
+ <RETURN TEMP18>
+ <DEAD TEMP18>
+ <END \1aPUTREST-GEN>
+#WORD *2334670404*
+<GFCN \1aSIDE-EFFECTS? ("VALUE" ANY NODE) N4>
+ <TEMP TEMP7>
+ <INTGO>
+ <NTHUV N4 1 = TEMP7 (TYPE FIX)>
+ <VEQUAL? TEMP7 2 - TAG8 (TYPE FIX)>
+ <DEAD TEMP7>
+ <RETURN %<>>
+TAG8
+ <NTHUV N4 8 = TEMP7>
+ <DEAD N4>
+ <RETURN TEMP7>
+ <DEAD TEMP7>
+ <END \1aSIDE-EFFECTS?>
+#WORD *5206706117*
+<GFCN \1aCOMMUTE-STRUC ("VALUE" ANY ANY NODE NODE) RV4 NUMNOD5 STRNOD6>
+ <TEMP (TEMP11 'T) L8:LIST TEMP20 N7:NODE CD9 TEMP24>
+ <INTGO>
+ <GEN-LVAL 'NO-KILL = L8>
+ <TYPE? RV4 <TYPE-CODE FALSE> - TAG21>
+ <NTHUV NUMNOD5 1 = TEMP20 (TYPE FIX)>
+ <VEQUAL? TEMP20 2 - BOOL19 (TYPE FIX)>
+ <DEAD TEMP20>
+ <SET TEMP11 %<> (TYPE FALSE)>
+ <JUMP + BOOL18>
+BOOL19
+ <NTHUV NUMNOD5 8 = TEMP20>
+ <TYPE? TEMP20 <TYPE-CODE FALSE> - TAG21>
+ <DEAD TEMP20>
+BOOL18
+ <SET N7 STRNOD6>
+ <NTHUV N7 1 = CD9 (TYPE FIX)>
+ <GVAL 'SNODES = TEMP20>
+ <EMPUU? TEMP20 + TAG21>
+ <LOOP (CD9 VALUE) (TEMP20 LENGTH VALUE)>
+TAG22
+ <NTHUU TEMP20 1 = TEMP24>
+ <VEQUAL? TEMP24 CD9 + TAG28>
+ <DEAD TEMP24>
+ <RESTUU TEMP20 1 = TEMP20 (TYPE UVECTOR)>
+ <EMPUU? TEMP20 - TAG22>
+TAG21
+ <TYPE? RV4 <TYPE-CODE FALSE> + PHRASE15>
+ <NTHUV STRNOD6 1 = TEMP20 (TYPE FIX)>
+ <VEQUAL? TEMP20 2 - BOOL27 (TYPE FIX)>
+ <DEAD TEMP20>
+ <SET TEMP11 %<> (TYPE FALSE)>
+ <JUMP + BOOL26>
+BOOL27
+ <NTHUV STRNOD6 8 = TEMP20>
+ <DEAD STRNOD6>
+ <TYPE? TEMP20 <TYPE-CODE FALSE> - PHRASE15>
+ <DEAD TEMP20>
+BOOL26
+ <SET N7 NUMNOD5>
+ <DEAD NUMNOD5>
+ <NTHUV N7 1 = CD9 (TYPE FIX)>
+ <GVAL 'SNODES = TEMP20>
+ <EMPUU? TEMP20 + TAG28>
+ <LOOP (CD9 VALUE) (TEMP20 LENGTH VALUE)>
+TAG29
+ <NTHUU TEMP20 1 = TEMP24>
+ <VEQUAL? TEMP24 CD9 + PHRASE15>
+ <DEAD TEMP24>
+ <RESTUU TEMP20 1 = TEMP20 (TYPE UVECTOR)>
+ <EMPUU? TEMP20 - TAG29>
+TAG28
+ <VEQUAL? TEMP11 0 + PHRASE32>
+ <DEAD TEMP11>
+ <VEQUAL? CD9 10 - PHRASE32 (TYPE FIX)>
+ <DEAD CD9>
+ <NTHUV N7 7 = CD9 (TYPE LIST)>
+ <EMPL? CD9 + PHRASE35>
+ <RESTL CD9 1 = TEMP20 (TYPE LIST)>
+ <EMPL? TEMP20 + PHRASE35>
+ <RESTL TEMP20 1 = TEMP20 (TYPE LIST)>
+ <EMPL? TEMP20 - PHRASE35>
+ <DEAD TEMP20>
+ <RESTL CD9 1 = TEMP20 (TYPE LIST)>
+ <DEAD CD9>
+ <NTHL TEMP20 1 = TEMP20>
+ <TYPE? TEMP20 <TYPE-CODE FALSE> + PHRASE32>
+ <DEAD TEMP20>
+PHRASE35
+ <NTHUV N7 4 = CD9>
+ <DEAD N7>
+ <TYPE? CD9 <TYPE-CODE FALSE> + PHRASE32>
+ <SET TEMP20 L8 (TYPE LIST)>
+ <LOOP>
+MAP38
+ <INTGO>
+ <EMPL? TEMP20 + MAPAP41>
+ <NTHL TEMP20 1 = TEMP11>
+ <NTHL TEMP11 1 = TEMP11 (TYPE SYMTAB)>
+ <EQUAL? TEMP11 CD9 + PHRASE32>
+ <DEAD TEMP11>
+ <RESTL TEMP20 1 = TEMP20 (TYPE LIST)>
+ <JUMP + MAP38>
+MAPAP41
+ <CONS %<> () = TEMP11>
+ <CONS CD9 TEMP11 = TEMP11>
+ <DEAD CD9>
+ <CONS TEMP11 L8 = TEMP11>
+ <DEAD L8>
+ <GEN-SET 'NO-KILL TEMP11>
+ <DEAD TEMP11>
+PHRASE32
+ <TYPE? RV4 <TYPE-CODE FALSE> - TAG51>
+ <DEAD RV4>
+ <RETURN 'T>
+TAG51
+ <RETURN %<>>
+PHRASE15
+ <RETURN RV4>
+ <DEAD RV4>
+ <END \1aCOMMUTE-STRUC>
+\\f
+
+#WORD *37025417552*
+<GFCN \1aEMPTY-CHECK ("VALUE" <OR ATOM !<FORM ATOM [4 LVAL]>> ANY ANY ANY "OPTIONAL" ANY ANY) TPS7 STR8 TYP9 DIR10 TG11>
+ <OPT-DISPATCH 3 %<> OPT4 OPT5 OPT6>
+OPT4
+ <PUSH 'T>
+OPT5
+ <PUSH '`COMPERR>
+OPT6
+ <TEMP TEMP16>
+ <INTGO>
+ <EQUAL? TPS7 'VECTOR + BOOL14>
+ <EQUAL? TPS7 'TUPLE - PHRASE13>
+BOOL14
+ <FRAME '\1aEMPTY-VECTOR>
+ <PUSH STR8>
+ <DEAD STR8>
+ <PUSH TG11>
+ <DEAD TG11>
+ <PUSH DIR10>
+ <DEAD DIR10>
+ <CALL '\1aEMPTY-VECTOR 3 = TEMP16>
+ <RETURN TEMP16>
+ <DEAD TEMP16>
+PHRASE13
+ <EQUAL? TPS7 'UVECTOR - PHRASE17>
+ <FRAME '\1aEMPTY-UVECTOR>
+ <PUSH STR8>
+ <DEAD STR8>
+ <PUSH TG11>
+ <DEAD TG11>
+ <PUSH DIR10>
+ <DEAD DIR10>
+ <CALL '\1aEMPTY-UVECTOR 3 = TEMP16>
+ <RETURN TEMP16>
+ <DEAD TEMP16>
+PHRASE17
+ <EQUAL? TPS7 'STRING - PHRASE19>
+ <FRAME '\1aEMPTY-STRING>
+ <PUSH STR8>
+ <DEAD STR8>
+ <PUSH TG11>
+ <DEAD TG11>
+ <PUSH DIR10>
+ <DEAD DIR10>
+ <CALL '\1aEMPTY-STRING 3 = TEMP16>
+ <RETURN TEMP16>
+ <DEAD TEMP16>
+PHRASE19
+ <EQUAL? TPS7 'BYTES - PHRASE21>
+ <FRAME '\1aEMPTY-BYTES>
+ <PUSH STR8>
+ <DEAD STR8>
+ <PUSH TG11>
+ <DEAD TG11>
+ <PUSH DIR10>
+ <DEAD DIR10>
+ <CALL '\1aEMPTY-BYTES 3 = TEMP16>
+ <RETURN TEMP16>
+ <DEAD TEMP16>
+PHRASE21
+ <EQUAL? TPS7 'LIST - PHRASE23>
+ <FRAME '\1aEMPTY-LIST>
+ <PUSH STR8>
+ <DEAD STR8>
+ <PUSH TG11>
+ <DEAD TG11>
+ <PUSH DIR10>
+ <DEAD DIR10>
+ <CALL '\1aEMPTY-LIST 3 = TEMP16>
+ <RETURN TEMP16>
+ <DEAD TEMP16>
+PHRASE23
+ <EQUAL? TPS7 'TEMPLATE - PHRASE25>
+ <DEAD TPS7>
+ <RETURN <EMPTY-RECORD .STR .TG .DIR .TYP>>
+PHRASE25
+ <RETURN <EMPTY-RECORD .STR .TG .DIR .TPS>>
+ <END \1aEMPTY-CHECK>
+#WORD *3030630610*
+<GFCN \1aLENGTH-CHECK ("VALUE" ANY ANY ANY ANY ANY) TPS4 STR5 NUM6 TYP7>
+ <TEMP TMP8>
+ <INTGO>
+ <FRAME '\1aGEN-TEMP>
+ <PUSH 'FIX>
+ <CALL '\1aGEN-TEMP 1 = TMP8>
+ <EQUAL? TPS4 'VECTOR + BOOL16>
+ <EQUAL? TPS4 'TUPLE - PHRASE15>
+BOOL16
+ <FRAME '\1aLENGTH-VECTOR>
+ <PUSH STR5>
+ <DEAD STR5>
+ <PUSH TMP8>
+ <CALL '\1aLENGTH-VECTOR 2>
+ <JUMP + PHRASE26>
+PHRASE15
+ <EQUAL? TPS4 'LIST - PHRASE18>
+ <FRAME '\1aLENGTH-LIST>
+ <PUSH STR5>
+ <DEAD STR5>
+ <PUSH TMP8>
+ <CALL '\1aLENGTH-LIST 2>
+ <JUMP + PHRASE26>
+PHRASE18
+ <EQUAL? TPS4 'UVECTOR - PHRASE20>
+ <FRAME '\1aLENGTH-UVECTOR>
+ <PUSH STR5>
+ <DEAD STR5>
+ <PUSH TMP8>
+ <CALL '\1aLENGTH-UVECTOR 2>
+ <JUMP + PHRASE26>
+PHRASE20
+ <EQUAL? TPS4 'STRING - PHRASE22>
+ <FRAME '\1aLENGTH-STRING>
+ <PUSH STR5>
+ <DEAD STR5>
+ <PUSH TMP8>
+ <CALL '\1aLENGTH-STRING 2>
+ <JUMP + PHRASE26>
+PHRASE22
+ <EQUAL? TPS4 'BYTES - PHRASE24>
+ <DEAD TPS4>
+ <FRAME '\1aLENGTH-BYTES>
+ <PUSH STR5>
+ <DEAD STR5>
+ <PUSH TMP8>
+ <CALL '\1aLENGTH-BYTES 2>
+ <JUMP + PHRASE26>
+PHRASE24
+ <FRAME '\1aFREE-TEMP>
+ <PUSH TMP8>
+ <DEAD TMP8>
+ <CALL '\1aFREE-TEMP 1>
+ <RETURN 'T>
+PHRASE26
+ <FRAME '\1aIEMIT>
+ <PUSH '`LESS?>
+ <PUSH TMP8>
+ <PUSH NUM6>
+ <DEAD NUM6>
+ <PUSH '+>
+ <PUSH '`COMPERR>
+ <PUSH (`TYPE FIX)>
+ <CALL '\1aIEMIT 6>
+ <FRAME '\1aFREE-TEMP>
+ <PUSH TMP8>
+ <DEAD TMP8>
+ <CALL '\1aFREE-TEMP 1 = TMP8>
+ <RETURN TMP8>
+ <DEAD TMP8>
+ <END \1aLENGTH-CHECK>
+#WORD *12423013474*
+<GFCN \1aTOP-GEN ("VALUE" ANY NODE ANY) N4 W5>
+ <TEMP TEMP8>
+ <INTGO>
+ <FRAME '\1aGEN>
+ <NTHUV N4 5 = TEMP8 (TYPE LIST)>
+ <DEAD N4>
+ <NTHL TEMP8 1 = STACK (TYPE NODE)>
+ <DEAD TEMP8>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = TEMP8>
+ <FRAME '\1aFREE-TEMP>
+ <PUSH TEMP8>
+ <PUSH %<>>
+ <CALL '\1aFREE-TEMP 2>
+ <FRAME '\1aIEMIT>
+ <PUSH '`TOPU>
+ <PUSH TEMP8>
+ <DEAD TEMP8>
+ <PUSH '=>
+ <EQUAL? W5 'DONT-CARE - PHRASE12>
+ <FRAME '\1aGEN-TEMP>
+ <CALL '\1aGEN-TEMP 0 = W5>
+ <SET TEMP8 W5>
+ <JUMP + PHRASE16>
+PHRASE12
+ <TYPE? W5 <TYPE-CODE TEMP> - PHRASE14>
+ <FRAME '\1aUSE-TEMP>
+ <PUSH W5>
+ <CALL '\1aUSE-TEMP 1>
+ <SET TEMP8 W5>
+ <JUMP + PHRASE16>
+PHRASE14
+ <SET TEMP8 W5>
+PHRASE16
+ <PUSH TEMP8>
+ <DEAD TEMP8>
+ <CALL '\1aIEMIT 4>
+ <RETURN W5>
+ <DEAD W5>
+ <END \1aTOP-GEN>
+#WORD *16561550304*
+ <GFCN \1aBACK-GEN ("VALUE" ANY NODE ANY) N4 W5>
+ <TEMP K8:LIST D6 TEMP14>
+ <INTGO>
+ <NTHUV N4 5 = K8 (TYPE LIST)>
+ <DEAD N4>
+ <FRAME '\1aGEN>
+ <NTHL K8 1 = STACK (TYPE NODE)>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = D6>
+ <RESTL K8 1 = TEMP14 (TYPE LIST)>
+ <EMPL? TEMP14 - BOOL13 (TYPE LIST)>
+ <DEAD TEMP14>
+ <SET TEMP14 1 (TYPE FIX)>
+ <JUMP + BOOL12>
+BOOL13
+ <RESTL K8 1 = TEMP14 (TYPE LIST)>
+ <NTHL TEMP14 1 = TEMP14 (TYPE NODE)>
+ <NTHUV TEMP14 1 = TEMP14 (TYPE FIX)>
+ <VEQUAL? TEMP14 2 - PHRASE11 (TYPE FIX)>
+ <DEAD TEMP14>
+ <RESTL K8 1 = TEMP14 (TYPE LIST)>
+ <NTHL TEMP14 1 = TEMP14 (TYPE NODE)>
+ <NTHUV TEMP14 4 = TEMP14>
+ <TYPE? TEMP14 <TYPE-CODE FALSE> + PHRASE11>
+BOOL12
+ <TYPE? TEMP14 <TYPE-CODE OFFSET> - PHRASE17>
+ <NTHUV TEMP14 1 = TEMP14>
+PHRASE17
+ <FRAME '\1aFREE-TEMP>
+ <PUSH D6>
+ <PUSH %<>>
+ <CALL '\1aFREE-TEMP 2>
+ <FRAME '\1aIEMIT>
+ <PUSH '`BACKU>
+ <PUSH D6>
+ <DEAD D6>
+ <PUSH TEMP14>
+ <DEAD TEMP14>
+ <PUSH '=>
+ <EQUAL? W5 'DONT-CARE - PHRASE21>
+ <FRAME '\1aGEN-TEMP>
+ <CALL '\1aGEN-TEMP 0 = W5>
+ <SET TEMP14 W5>
+ <JUMP + PHRASE25>
+PHRASE21
+ <TYPE? W5 <TYPE-CODE TEMP> - PHRASE23>
+ <FRAME '\1aUSE-TEMP>
+ <PUSH W5>
+ <CALL '\1aUSE-TEMP 1>
+ <SET TEMP14 W5>
+ <JUMP + PHRASE25>
+PHRASE23
+ <SET TEMP14 W5>
+PHRASE25
+ <PUSH TEMP14>
+ <DEAD TEMP14>
+ <CALL '\1aIEMIT 5>
+ <RETURN W5>
+ <DEAD W5>
+PHRASE11
+ <FRAME '\1aFREE-TEMP>
+ <FRAME '\1aGEN>
+ <RESTL K8 1 = TEMP14 (TYPE LIST)>
+ <DEAD K8>
+ <NTHL TEMP14 1 = STACK (TYPE NODE)>
+ <DEAD TEMP14>
+ <PUSH 'DONT-CARE>
+ <CALL '\1aGEN 2 = TEMP14>
+ <PUSH TEMP14>
+ <PUSH %<>>
+ <CALL '\1aFREE-TEMP 2>
+ <FRAME '\1aFREE-TEMP>
+ <PUSH D6>
+ <PUSH %<>>
+ <CALL '\1aFREE-TEMP 2>
+ <FRAME '\1aIEMIT>
+ <PUSH '`BACKU>
+ <PUSH D6>
+ <DEAD D6>
+ <PUSH TEMP14>
+ <DEAD TEMP14>
+ <PUSH '=>
+ <EQUAL? W5 'DONT-CARE - PHRASE32>
+ <FRAME '\1aGEN-TEMP>
+ <CALL '\1aGEN-TEMP 0 = W5>
+ <SET TEMP14 W5>
+ <JUMP + PHRASE36>
+PHRASE32
+ <TYPE? W5 <TYPE-CODE TEMP> - PHRASE34>
+ <FRAME '\1aUSE-TEMP>
+ <PUSH W5>
+ <CALL '\1aUSE-TEMP 1>
+ <SET TEMP14 W5>
+ <JUMP + PHRASE36>
+PHRASE34
+ <SET TEMP14 W5>
+PHRASE36
+ <PUSH TEMP14>
+ <DEAD TEMP14>
+ <CALL '\1aIEMIT 5>
+ <RETURN W5>
+ <DEAD W5>
+ <END \1aBACK-GEN>
+
+<ENDPACKAGE
\ No newline at end of file