diff --git a/changelog b/changelog
index 0f478d6..4db8b59 100644
--- a/changelog
+++ b/changelog
@@ -1,3 +1,5 @@
+20091006 tpd src/axiom-website/patches.html 20091006.02.tpd.patch
+20091006 tpd src/interp/i-code.lisp cleanup
 20091006 tpd src/axiom-website/patches.html 20091006.01.tpd.patch
 20091006 tpd src/interp/i-coerce.lisp cleanup
 20091005 tpd src/axiom-website/patches.html 20091005.03.tpd.patch
diff --git a/src/axiom-website/patches.html b/src/axiom-website/patches.html
index e4be008..9d4c878 100644
--- a/src/axiom-website/patches.html
+++ b/src/axiom-website/patches.html
@@ -2109,5 +2109,7 @@ src/interp/i-funsel.lisp cleanup<br/>
 src/interp/i-coerfn.lisp cleanup<br/>
 <a href="patches/20091006.01.tpd.patch">20091006.01.tpd.patch</a>
 src/interp/i-coerce.lisp cleanup<br/>
+<a href="patches/20091006.02.tpd.patch">20091006.02.tpd.patch</a>
+src/interp/i-code.lisp cleanup<br/>
  </body>
 </html>
diff --git a/src/interp/i-code.lisp.pamphlet b/src/interp/i-code.lisp.pamphlet
index e0bf4fb..0878527 100755
--- a/src/interp/i-code.lisp.pamphlet
+++ b/src/interp/i-code.lisp.pamphlet
@@ -82,190 +82,207 @@
 ;  intCodeGenCoerce1(val,t1,t2)
 
 (DEFUN |intCodeGenCOERCE| (|triple| |t2|)
- (PROG (|t1| |val| |trip| |ISTMP#3| |t0| |LETTMP#1| |val0| |l| |label| 
-        |lastCode| |conds| |p| |v| |t1'| |ISTMP#2| |val'| |ISTMP#1| 
-        |pred| |code|)
-  (RETURN 
-   (SEQ 
-    (PROGN 
-     (SPADLET |t1| (|objMode| |triple|))
-     (COND
-      ((BOOT-EQUAL |t1| |$EmptyMode|) NIL)
-      ((BOOT-EQUAL |t1| |t2|) |triple|)
-      ((QUOTE T)
-       (SPADLET |val| (|objVal| |triple|))
-       (COND
-        ((AND (PAIRP |val|)
-              (EQ (QCAR |val|) (QUOTE |coerceOrCroak|))
-              (PROGN
-               (SPADLET |ISTMP#1| (QCDR |val|))
-               (AND (PAIRP |ISTMP#1|)
-                    (PROGN
-                     (SPADLET |trip| (QCAR |ISTMP#1|))
-                     (SPADLET |ISTMP#2| (QCDR |ISTMP#1|))
-                     (AND
-                      (PAIRP |ISTMP#2|)
-                      (PROGN
-                       (SPADLET |t1'| (QCAR |ISTMP#2|))
-                       (SPADLET |ISTMP#3| (QCDR |ISTMP#2|))
-                       (AND (PAIRP |ISTMP#3|) (EQ (QCDR |ISTMP#3|) NIL)))))))
-              (SPADLET |t0| (|objCodeMode| |trip|))
-              (PROGN
-               (SPADLET |LETTMP#1| (|objCodeVal| |trip|))
-               (SPADLET |val0| (CADR |LETTMP#1|))
-               |LETTMP#1|)
-              (OR (BOOT-EQUAL |t1| |$Void|)
-                  (|canCoerceFrom| (|removeQuote| |t0|) |t2|)))
-         (|intCodeGenCOERCE| (|objNew| |val0| (|removeQuote| |t0|)) |t2|))
-        ((AND (PAIRP |val|)
-              (EQ (QCAR |val|) (QUOTE THROW))
-              (PROGN 
-               (SPADLET |ISTMP#1| (QCDR |val|))
-               (AND
-                (PAIRP |ISTMP#1|)
-                (PROGN
-                 (SPADLET |label| (QCAR |ISTMP#1|))
-                 (SPADLET |ISTMP#2| (QCDR |ISTMP#1|))
-                 (AND
-                  (PAIRP |ISTMP#2|)
-                  (EQ (QCDR |ISTMP#2|) NIL)
-                  (PROGN (SPADLET |code| (QCAR |ISTMP#2|)) (QUOTE T)))))))
-         (COND
-          ((AND (PAIRP |label|) 
-                (EQ (QCAR |label|) (QUOTE QUOTE))
-                (PROGN
-                 (SPADLET |ISTMP#1| (QCDR |label|))
-                 (AND
-                  (PAIRP |ISTMP#1|)
-                  (EQ (QCDR |ISTMP#1|) NIL)
-                  (PROGN (SPADLET |l| (QCAR |ISTMP#1|)) (QUOTE T)))))
-           (SPADLET |label| |l|)))
-         (COND
-          ((OR (NULL |$compilingMap|)
-              (NEQUAL |label| (|mapCatchName| |$mapName|)))
-           (|objNew|
-            (CONS
-             (QUOTE THROW)
-             (CONS
-              |label|
-              (CONS
-               (|wrapped2Quote|
-                (|objVal| (|intCodeGenCOERCE| (|objNew| |code| |t1|) |t2|)))
-               NIL)))
-            |t2|))
-          ((QUOTE T) (|objNew| |val| |t2|))))
-        ((AND (PAIRP |val|)
-              (EQ (QCAR |val|) (QUOTE PROGN))
-              (PROGN
-               (SPADLET |ISTMP#1| (QCDR |val|))
-               (AND
-                (PAIRP |ISTMP#1|)
-                (PROGN (SPADLET |ISTMP#2| (REVERSE |ISTMP#1|)) (QUOTE T))
-                (PAIRP |ISTMP#2|)
-                (PROGN
-                 (SPADLET |lastCode| (QCAR |ISTMP#2|))
-                 (SPADLET |code| (QCDR |ISTMP#2|))
-                 (QUOTE T))
-                (PROGN (SPADLET |code| (NREVERSE |code|)) (QUOTE T)))))
-          (|objNew|
-           (CONS
-            (QUOTE PROGN)
-            (APPEND
-             |code|
-             (CONS
-              (|wrapped2Quote|
-               (|objVal| (|intCodeGenCOERCE| (|objNew| |lastCode| |t1|) |t2|)))
-              NIL)))
-           |t2|))
-        ((AND (PAIRP |val|)
-              (EQ (QCAR |val|) (QUOTE COND))
-              (PROGN (SPADLET |conds| (QCDR |val|)) (QUOTE T)))
-         (|objNew|
-          (CONS
-           (QUOTE COND)
-           (PROG (#0=#:G166151)
-            (SPADLET #0# NIL)
-            (RETURN
-             (DO ((#1=#:G166157 |conds| (CDR #1#)) (#2=#:G166119 NIL))
-                 ((OR (ATOM #1#)
-                      (PROGN (SETQ #2# (CAR #1#)) NIL)
-                      (PROGN
-                       (PROGN
-                        (SPADLET |p| (CAR #2#))
-                        (SPADLET |v| (CADR #2#))
-                        #2#)
-                       NIL))
-                   (NREVERSE0 #0#))
-              (SEQ
-               (EXIT
-                (SETQ #0#
-                 (CONS
-                  (CONS
-                   |p|
-                   (CONS
-                    (|wrapped2Quote|
-                     (|objVal| (|intCodeGenCOERCE| (|objNew| |v| |t1|) |t2|)))
-                    NIL))
-                  #0#))))))))
-          |t2|))
-        ((|absolutelyCanCoerceByCheating| |t1| |t2|) (|objNew| |val| |t2|))
-        ((BOOT-EQUAL |t2| (QUOTE (|Any|)))
-         (|objNew|
-          (CONS (QUOTE CONS) (CONS (MKQ |t1|) (CONS |val| NIL))) |t2|))
-        ((AND (BOOT-EQUAL |t1| (QUOTE (|Any|)))
-              (PAIRP |val|)
-              (EQUAL (QCAR |val|) (QUOTE CONS))
-              (PROGN
-               (SPADLET |ISTMP#1| (QCDR |val|))
-               (AND
-                (PAIRP |ISTMP#1|)
-                (PROGN
-                 (SPADLET |t1'| (QCAR |ISTMP#1|))
-                 (SPADLET |ISTMP#2| (QCDR |ISTMP#1|))
-                 (AND
-                  (PAIRP |ISTMP#2|)
-                  (EQ (QCDR |ISTMP#2|) NIL)
-                  (PROGN (SPADLET |val'| (QCAR |ISTMP#2|)) (QUOTE T)))))))
-         (|intCodeGenCOERCE| (|objNew| |val'| (|removeQuote| |t1'|)) |t2|))
-        ((AND (PAIRP |t1|)
-              (EQ (QCAR |t1|) (QUOTE |Equation|))
-              (BOOT-EQUAL |t2| |$Boolean|))
-         (|coerceByFunction| |triple| |t2|))
-        ((AND (BOOT-EQUAL |t1| (QUOTE |$NoValueMode|))
-              (PAIRP |val|)
-              (EQ (QCAR |val|) (QUOTE COND))
-              (PROGN
-               (SPADLET |ISTMP#1| (QCDR |val|))
-               (AND
-                (PAIRP |ISTMP#1|)
-                (EQ (QCDR |ISTMP#1|) NIL) 
-                (PROGN (SPADLET |pred| (QCAR |ISTMP#1|)) (QUOTE T)))))
-         (SPADLET |code|
-          (CONS
-           (QUOTE COND)
-           (CONS
-            |pred|
-            (CONS
-             (CONS
-              (MKQ (QUOTE T))
-              (CONS
-               (CONS
-                (QUOTE |throwKeyedMsg|)
-                (CONS (MKQ (QUOTE S2IM0016)) (CONS (MKQ |$mapName|) NIL)))
-               NIL))
-             NIL))))
-         (|objNew| |code| |t2|))
-        ((BOOT-EQUAL |t2| |$OutputForm|) (|coerceByFunction| |triple| |t2|))
-        ((|isSubDomain| |t1| |$Integer|)
-         (|intCodeGenCOERCE| (|objNew| |val| |$Integer|) |t2|))
-        ((AND (NULL (|containsVariables| |t2|))
-              (|canCoerceByFunction| |t1| |t2|))
-         (COND
-          ((AND (NULL (|canCoerceByMap| |t1| |t2|))
-                (SPADLET |code| (|coerceByFunction| |triple| |t2|)))
-           |code|)
-          ((QUOTE T) (|intCodeGenCoerce1| |val| |t1| |t2|))))
-        ((QUOTE T) (|intCodeGenCoerce1| |val| |t1| |t2|)))))))))) 
+  (PROG (|t1| |val| |trip| |ISTMP#3| |t0| |LETTMP#1| |val0| |l| |label|
+              |lastCode| |conds| |p| |v| |t1'| |ISTMP#2| |val'|
+              |ISTMP#1| |pred| |code|)
+    (DECLARE (SPECIAL |$Integer| |$OutputForm| |$mapName|
+                      |$NoValueMode| |$Boolean| |$compilingMap| |$Void|
+                      |$EmptyMode|))
+    (RETURN
+      (SEQ (PROGN
+             (SPADLET |t1| (|objMode| |triple|))
+             (COND
+               ((BOOT-EQUAL |t1| |$EmptyMode|) NIL)
+               ((BOOT-EQUAL |t1| |t2|) |triple|)
+               ('T (SPADLET |val| (|objVal| |triple|))
+                (COND
+                  ((AND (PAIRP |val|)
+                        (EQ (QCAR |val|) '|coerceOrCroak|)
+                        (PROGN
+                          (SPADLET |ISTMP#1| (QCDR |val|))
+                          (AND (PAIRP |ISTMP#1|)
+                               (PROGN
+                                 (SPADLET |trip| (QCAR |ISTMP#1|))
+                                 (SPADLET |ISTMP#2| (QCDR |ISTMP#1|))
+                                 (AND (PAIRP |ISTMP#2|)
+                                      (PROGN
+                                        (SPADLET |t1'|
+                                         (QCAR |ISTMP#2|))
+                                        (SPADLET |ISTMP#3|
+                                         (QCDR |ISTMP#2|))
+                                        (AND (PAIRP |ISTMP#3|)
+                                         (EQ (QCDR |ISTMP#3|) NIL)))))))
+                        (SPADLET |t0| (|objCodeMode| |trip|))
+                        (PROGN
+                          (SPADLET |LETTMP#1| (|objCodeVal| |trip|))
+                          (SPADLET |val0| (CADR |LETTMP#1|))
+                          |LETTMP#1|)
+                        (OR (BOOT-EQUAL |t1| |$Void|)
+                            (|canCoerceFrom| (|removeQuote| |t0|) |t2|)))
+                   (|intCodeGenCOERCE|
+                       (|objNew| |val0| (|removeQuote| |t0|)) |t2|))
+                  ((AND (PAIRP |val|) (EQ (QCAR |val|) 'THROW)
+                        (PROGN
+                          (SPADLET |ISTMP#1| (QCDR |val|))
+                          (AND (PAIRP |ISTMP#1|)
+                               (PROGN
+                                 (SPADLET |label| (QCAR |ISTMP#1|))
+                                 (SPADLET |ISTMP#2| (QCDR |ISTMP#1|))
+                                 (AND (PAIRP |ISTMP#2|)
+                                      (EQ (QCDR |ISTMP#2|) NIL)
+                                      (PROGN
+                                        (SPADLET |code|
+                                         (QCAR |ISTMP#2|))
+                                        'T))))))
+                   (COND
+                     ((AND (PAIRP |label|) (EQ (QCAR |label|) 'QUOTE)
+                           (PROGN
+                             (SPADLET |ISTMP#1| (QCDR |label|))
+                             (AND (PAIRP |ISTMP#1|)
+                                  (EQ (QCDR |ISTMP#1|) NIL)
+                                  (PROGN
+                                    (SPADLET |l| (QCAR |ISTMP#1|))
+                                    'T))))
+                      (SPADLET |label| |l|)))
+                   (COND
+                     ((OR (NULL |$compilingMap|)
+                          (NEQUAL |label| (|mapCatchName| |$mapName|)))
+                      (|objNew|
+                          (CONS 'THROW
+                                (CONS |label|
+                                      (CONS
+                                       (|wrapped2Quote|
+                                        (|objVal|
+                                         (|intCodeGenCOERCE|
+                                          (|objNew| |code| |t1|) |t2|)))
+                                       NIL)))
+                          |t2|))
+                     ('T (|objNew| |val| |t2|))))
+                  ((AND (PAIRP |val|) (EQ (QCAR |val|) 'PROGN)
+                        (PROGN
+                          (SPADLET |ISTMP#1| (QCDR |val|))
+                          (AND (PAIRP |ISTMP#1|)
+                               (PROGN
+                                 (SPADLET |ISTMP#2|
+                                          (REVERSE |ISTMP#1|))
+                                 'T)
+                               (PAIRP |ISTMP#2|)
+                               (PROGN
+                                 (SPADLET |lastCode| (QCAR |ISTMP#2|))
+                                 (SPADLET |code| (QCDR |ISTMP#2|))
+                                 'T)
+                               (PROGN
+                                 (SPADLET |code| (NREVERSE |code|))
+                                 'T))))
+                   (|objNew|
+                       (CONS 'PROGN
+                             (APPEND |code|
+                                     (CONS
+                                      (|wrapped2Quote|
+                                       (|objVal|
+                                        (|intCodeGenCOERCE|
+                                         (|objNew| |lastCode| |t1|)
+                                         |t2|)))
+                                      NIL)))
+                       |t2|))
+                  ((AND (PAIRP |val|) (EQ (QCAR |val|) 'COND)
+                        (PROGN (SPADLET |conds| (QCDR |val|)) 'T))
+                   (|objNew|
+                       (CONS 'COND
+                             (PROG (G166151)
+                               (SPADLET G166151 NIL)
+                               (RETURN
+                                 (DO ((G166157 |conds|
+                                       (CDR G166157))
+                                      (G166119 NIL))
+                                     ((OR (ATOM G166157)
+                                       (PROGN
+                                         (SETQ G166119
+                                          (CAR G166157))
+                                         NIL)
+                                       (PROGN
+                                         (PROGN
+                                           (SPADLET |p|
+                                            (CAR G166119))
+                                           (SPADLET |v|
+                                            (CADR G166119))
+                                           G166119)
+                                         NIL))
+                                      (NREVERSE0 G166151))
+                                   (SEQ
+                                    (EXIT
+                                     (SETQ G166151
+                                      (CONS
+                                       (CONS |p|
+                                        (CONS
+                                         (|wrapped2Quote|
+                                          (|objVal|
+                                           (|intCodeGenCOERCE|
+                                            (|objNew| |v| |t1|) |t2|)))
+                                         NIL))
+                                       G166151))))))))
+                       |t2|))
+                  ((|absolutelyCanCoerceByCheating| |t1| |t2|)
+                   (|objNew| |val| |t2|))
+                  ((BOOT-EQUAL |t2| '(|Any|))
+                   (|objNew|
+                       (CONS 'CONS (CONS (MKQ |t1|) (CONS |val| NIL)))
+                       |t2|))
+                  ((AND (BOOT-EQUAL |t1| '(|Any|)) (PAIRP |val|)
+                        (EQUAL (QCAR |val|) 'CONS)
+                        (PROGN
+                          (SPADLET |ISTMP#1| (QCDR |val|))
+                          (AND (PAIRP |ISTMP#1|)
+                               (PROGN
+                                 (SPADLET |t1'| (QCAR |ISTMP#1|))
+                                 (SPADLET |ISTMP#2| (QCDR |ISTMP#1|))
+                                 (AND (PAIRP |ISTMP#2|)
+                                      (EQ (QCDR |ISTMP#2|) NIL)
+                                      (PROGN
+                                        (SPADLET |val'|
+                                         (QCAR |ISTMP#2|))
+                                        'T))))))
+                   (|intCodeGenCOERCE|
+                       (|objNew| |val'| (|removeQuote| |t1'|)) |t2|))
+                  ((AND (PAIRP |t1|) (EQ (QCAR |t1|) '|Equation|)
+                        (BOOT-EQUAL |t2| |$Boolean|))
+                   (|coerceByFunction| |triple| |t2|))
+                  ((AND (BOOT-EQUAL |t1| '|$NoValueMode|) (PAIRP |val|)
+                        (EQ (QCAR |val|) 'COND)
+                        (PROGN
+                          (SPADLET |ISTMP#1| (QCDR |val|))
+                          (AND (PAIRP |ISTMP#1|)
+                               (EQ (QCDR |ISTMP#1|) NIL)
+                               (PROGN
+                                 (SPADLET |pred| (QCAR |ISTMP#1|))
+                                 'T))))
+                   (SPADLET |code|
+                            (CONS 'COND
+                                  (CONS |pred|
+                                        (CONS
+                                         (CONS (MKQ 'T)
+                                          (CONS
+                                           (CONS '|throwKeyedMsg|
+                                            (CONS (MKQ 'S2IM0016)
+                                             (CONS (MKQ |$mapName|)
+                                              NIL)))
+                                           NIL))
+                                         NIL))))
+                   (|objNew| |code| |t2|))
+                  ((BOOT-EQUAL |t2| |$OutputForm|)
+                   (|coerceByFunction| |triple| |t2|))
+                  ((|isSubDomain| |t1| |$Integer|)
+                   (|intCodeGenCOERCE| (|objNew| |val| |$Integer|)
+                       |t2|))
+                  ((AND (NULL (|containsVariables| |t2|))
+                        (|canCoerceByFunction| |t1| |t2|))
+                   (COND
+                     ((AND (NULL (|canCoerceByMap| |t1| |t2|))
+                           (SPADLET |code|
+                                    (|coerceByFunction| |triple| |t2|)))
+                      |code|)
+                     ('T (|intCodeGenCoerce1| |val| |t1| |t2|))))
+                  ('T (|intCodeGenCoerce1| |val| |t1| |t2|))))))))))
 
 ;intCodeGenCoerce1(val,t1,t2) ==
 ;  -- Internal function to previous one
@@ -275,13 +292,12 @@
 ;        MKQ t2, MKQ $mapName],t2)
 
 (DEFUN |intCodeGenCoerce1| (|val| |t1| |t2|)
- (|objNew|
-  (CONS
-   (QUOTE |coerceOrCroak|)
-   (CONS
-    (|mkObjCode| (CONS (QUOTE |wrap|) (CONS |val| NIL)) |t1|)
-    (CONS (MKQ |t2|) (CONS (MKQ |$mapName|) NIL))))
-   |t2|)) 
+  (DECLARE (SPECIAL |$mapName|))
+  (|objNew|
+      (CONS '|coerceOrCroak|
+            (CONS (|mkObjCode| (CONS '|wrap| (CONS |val| NIL)) |t1|)
+                  (CONS (MKQ |t2|) (CONS (MKQ |$mapName|) NIL))))
+      |t2|))
 
 ;--% Map components
 ;wrapMapBodyWithCatch body ==
@@ -299,83 +315,76 @@
 ;    else ['CATCH,MKQ mapCatchName $mapName,body]
 
 (DEFUN |wrapMapBodyWithCatch| (|body|)
- (PROG (|trip| |ISTMP#4| |targ| |ISTMP#5| |mapn| |ISTMP#1| |v| |ISTMP#2| 
-        |m| |ISTMP#3| |e|)
-  (RETURN
-   (COND
-    ((EQL |$mapThrowCount| 0) |body|)
-    ((AND (PAIRP |body|)
-          (EQ (QCAR |body|) (QUOTE |failCheck|))
-          (PROGN
-           (SPADLET |ISTMP#1| (QCDR |body|))
-           (AND
-            (PAIRP |ISTMP#1|)
-            (EQ (QCDR |ISTMP#1|) NIL)
-            (PROGN
-             (SPADLET |ISTMP#2| (QCAR |ISTMP#1|))
-             (AND
-              (PAIRP |ISTMP#2|)
-              (EQ (QCAR |ISTMP#2|) (QUOTE |coerceOrFail|))
+  (PROG (|trip| |ISTMP#4| |targ| |ISTMP#5| |mapn| |ISTMP#1| |v|
+                |ISTMP#2| |m| |ISTMP#3| |e|)
+    (DECLARE (SPECIAL |$mapName| |$mapThrowCount|))
+    (RETURN
+      (COND
+        ((EQL |$mapThrowCount| 0) |body|)
+        ((AND (PAIRP |body|) (EQ (QCAR |body|) '|failCheck|)
               (PROGN
-               (SPADLET |ISTMP#3| (QCDR |ISTMP#2|))
-               (AND
-                (PAIRP |ISTMP#3|)
-                (PROGN
-                 (SPADLET |trip| (QCAR |ISTMP#3|))
-                 (SPADLET |ISTMP#4| (QCDR |ISTMP#3|))
-                 (AND
-                  (PAIRP |ISTMP#4|)
-                  (PROGN
-                   (SPADLET |targ| (QCAR |ISTMP#4|))
-                   (SPADLET |ISTMP#5| (QCDR |ISTMP#4|))
-                   (AND
-                    (PAIRP |ISTMP#5|)
-                    (EQ (QCDR |ISTMP#5|) NIL)
-                    (PROGN
-                     (SPADLET |mapn| (QCAR |ISTMP#5|))
-                     (QUOTE T)))))))))))))
-     (COND
-      ((AND (PAIRP |trip|)
-            (EQ (QCAR |trip|) (QUOTE LIST))
-            (PROGN
-             (SPADLET |ISTMP#1| (QCDR |trip|))
-             (AND
-              (PAIRP |ISTMP#1|)
-              (PROGN
-               (SPADLET |v| (QCAR |ISTMP#1|))
-               (SPADLET |ISTMP#2| (QCDR |ISTMP#1|))
-               (AND
-                (PAIRP |ISTMP#2|)
-                (PROGN
-                 (SPADLET |m| (QCAR |ISTMP#2|))
-                 (SPADLET |ISTMP#3| (QCDR |ISTMP#2|))
-                 (AND
-                  (PAIRP |ISTMP#3|)
-                  (EQ (QCDR |ISTMP#3|) NIL)
-                  (PROGN (SPADLET |e| (QCAR |ISTMP#3|)) (QUOTE T)))))))))
-       (CONS
-        (QUOTE |failCheck|)
-        (CONS
-         (CONS
-          (QUOTE |coerceOrFail|)
-          (CONS
-           (CONS
-            (QUOTE LIST)
-            (CONS
-             (CONS
-              (QUOTE CATCH)
-              (CONS (MKQ (|mapCatchName| |$mapName|)) (CONS |v| NIL)))
-             (CONS |m| (CONS |e| NIL))))
-           (CONS |targ| (CONS |mapn| NIL))))
-          NIL)))
-      ((QUOTE T)
-       (|keyedSystemError| 'S2GE0016
-        (CONS "wrapMapBodyWithCatch"
-         (CONS "bad CATCH for in function form" NIL))))))
-    ((QUOTE T)
-     (CONS
-      (QUOTE CATCH)
-      (CONS (MKQ (|mapCatchName| |$mapName|)) (CONS |body| NIL)))))))) 
+                (SPADLET |ISTMP#1| (QCDR |body|))
+                (AND (PAIRP |ISTMP#1|) (EQ (QCDR |ISTMP#1|) NIL)
+                     (PROGN
+                       (SPADLET |ISTMP#2| (QCAR |ISTMP#1|))
+                       (AND (PAIRP |ISTMP#2|)
+                            (EQ (QCAR |ISTMP#2|) '|coerceOrFail|)
+                            (PROGN
+                              (SPADLET |ISTMP#3| (QCDR |ISTMP#2|))
+                              (AND (PAIRP |ISTMP#3|)
+                                   (PROGN
+                                     (SPADLET |trip| (QCAR |ISTMP#3|))
+                                     (SPADLET |ISTMP#4|
+                                      (QCDR |ISTMP#3|))
+                                     (AND (PAIRP |ISTMP#4|)
+                                      (PROGN
+                                        (SPADLET |targ|
+                                         (QCAR |ISTMP#4|))
+                                        (SPADLET |ISTMP#5|
+                                         (QCDR |ISTMP#4|))
+                                        (AND (PAIRP |ISTMP#5|)
+                                         (EQ (QCDR |ISTMP#5|) NIL)
+                                         (PROGN
+                                           (SPADLET |mapn|
+                                            (QCAR |ISTMP#5|))
+                                           'T))))))))))))
+         (COND
+           ((AND (PAIRP |trip|) (EQ (QCAR |trip|) 'LIST)
+                 (PROGN
+                   (SPADLET |ISTMP#1| (QCDR |trip|))
+                   (AND (PAIRP |ISTMP#1|)
+                        (PROGN
+                          (SPADLET |v| (QCAR |ISTMP#1|))
+                          (SPADLET |ISTMP#2| (QCDR |ISTMP#1|))
+                          (AND (PAIRP |ISTMP#2|)
+                               (PROGN
+                                 (SPADLET |m| (QCAR |ISTMP#2|))
+                                 (SPADLET |ISTMP#3| (QCDR |ISTMP#2|))
+                                 (AND (PAIRP |ISTMP#3|)
+                                      (EQ (QCDR |ISTMP#3|) NIL)
+                                      (PROGN
+                                        (SPADLET |e| (QCAR |ISTMP#3|))
+                                        'T))))))))
+            (CONS '|failCheck|
+                  (CONS (CONS '|coerceOrFail|
+                              (CONS (CONS 'LIST
+                                     (CONS
+                                      (CONS 'CATCH
+                                       (CONS
+                                        (MKQ
+                                         (|mapCatchName| |$mapName|))
+                                        (CONS |v| NIL)))
+                                      (CONS |m| (CONS |e| NIL))))
+                                    (CONS |targ| (CONS |mapn| NIL))))
+                        NIL)))
+           ('T
+            (|keyedSystemError| 'S2GE0016
+                (CONS "wrapMapBodyWithCatch"
+                      (CONS "bad CATCH for in function form" NIL))))))
+        ('T
+         (CONS 'CATCH
+               (CONS (MKQ (|mapCatchName| |$mapName|))
+                     (CONS |body| NIL))))))))
 
 @
 \eject
