guile-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Guile-commits] GNU Guile branch, master, updated. release_1-9-11-84-g41


From: Andy Wingo
Subject: [Guile-commits] GNU Guile branch, master, updated. release_1-9-11-84-g417ee09
Date: Thu, 17 Jun 2010 12:04:46 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Guile".

http://git.savannah.gnu.org/cgit/guile.git/commit/?id=417ee09802eccb7c6d8729ecc5f311433cec755c

The branch, master has been updated
       via  417ee09802eccb7c6d8729ecc5f311433cec755c (commit)
       via  57086a19d0ec1cfddc204fafc8b7843c7e3f22c8 (commit)
       via  9b3cc6596542da2c0a34de6381b1a22df0e8fa21 (commit)
       via  0f2b9f6252ac27ce4d48e5319992d9c44525ebc2 (commit)
       via  60d4b224483632662b6e1739713f83f55e216caa (commit)
       via  4ee781a688231044b3e0e3f56407c71e554036c3 (commit)
       via  826373a25d71173f0f5045c61dc5854910cf1a80 (commit)
       via  fb6e61ca21b397308474a6a553f7d502d0113251 (commit)
       via  f238862e9ec7c69d69eb3941f14844501c0f5937 (commit)
      from  89cdf5a3793379432c7a9399aa242b2923e1451a (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 417ee09802eccb7c6d8729ecc5f311433cec755c
Author: Andy Wingo <address@hidden>
Date:   Thu Jun 17 13:36:18 2010 +0200

    compile-psyntax "optimizes" psyntax-pp
    
    * module/ice-9/compile-psyntax.scm (source): "Optimize" psyntax-pp
      before writing it out.
    
    * module/ice-9/psyntax-pp.scm: Regenerated.

commit 57086a19d0ec1cfddc204fafc8b7843c7e3f22c8
Author: Andy Wingo <address@hidden>
Date:   Thu Jun 17 13:34:48 2010 +0200

    tree-il->scheme renders fix as letrec*
    
    * module/language/tree-il.scm (tree-il->scheme): Expand out to letrec*,
      as it doesn't matter, and this avoids a let when running through the
      evaluator.

commit 9b3cc6596542da2c0a34de6381b1a22df0e8fa21
Author: Andy Wingo <address@hidden>
Date:   Thu Jun 17 13:31:03 2010 +0200

    resolve-primitives tweaks
    
    * module/ice-9/boot-9.scm (make-struct/no-tail): Define a version of
      this function. Because during optimization we resolve make-struct to
      make-struct/no-tail, we need an implemented make-struct/no-tail if we
      are to be able to run scheme made from tree-il->scheme.
    
    * module/language/tree-il/compile-glil.scm (*primcall-ops*): Remove
      variable-set case, as there is no "variable-set!" primitive.
      (flatten): Add a special hack for variable-set!. Ugly, I know.
    
    * module/language/tree-il/primitives.scm (*effect-free-primitives*): Add
      make-struct/no-tail.
      (*effect+exception-free-primitives*): Remove make-struct, as it could
      raise an exception.
      (variable-set!): Remove expansion to variable-set.

commit 0f2b9f6252ac27ce4d48e5319992d9c44525ebc2
Author: Andy Wingo <address@hidden>
Date:   Thu Jun 17 13:03:01 2010 +0200

    internal definitions expand out to letrec* instead of letrec
    
    * module/ice-9/psyntax.scm (chi-body): Internal definitions are now
      letrec* instead of letrec, following the R6RS.
    
    * module/ice-9/psyntax-pp.scm: Regenerated.

commit 60d4b224483632662b6e1739713f83f55e216caa
Author: Andy Wingo <address@hidden>
Date:   Thu Jun 17 12:47:46 2010 +0200

    compiler support for letrec*
    
    * test-suite/tests/tree-il.test ("letrec"): Add some tests.
    * module/language/tree-il/compile-glil.scm (flatten): Add support for
      compiling letrec* in its unoptimized form.
    
    * module/language/tree-il/fix-letrec.scm (simple-expression?):
      Parameterize, so that letrec* will not treat `(car x)' as primitive
      (because it could raise an exception).
      (partition-vars): Lump unreferenced vars in with complex vars, when
      compiling letrec*.
      (fix-letrec!): No need to evaluate inits within a let for letrec*.

commit 4ee781a688231044b3e0e3f56407c71e554036c3
Author: Andy Wingo <address@hidden>
Date:   Thu Jun 17 11:58:31 2010 +0200

    add effect+exception-free-primitive? predicate
    
    * module/language/tree-il/primitives.scm
      (effect+exception-free-primitive?): New predicate, like
      effect-free-primitive?, but excludes accessors that could raise
      exceptions.

commit 826373a25d71173f0f5045c61dc5854910cf1a80
Author: Andy Wingo <address@hidden>
Date:   Thu Jun 17 11:12:58 2010 +0200

    psyntax, primitive expander, and memoizer support for letrec*
    
    * libguile/expand.c (expand_letrec_helper): Factor out common code.
      (expand_letrec): Use expand_letrec_helper.
      (expand_letrec_star): New primitive syntax: letrec*.
    
    * libguile/memoize.c (memoize): Add memoizer support for in-order letrec
      (letrec*).
    
    * module/ice-9/psyntax.scm (build-letrec): Another arg, `in-order?'.
      (chi-body): Adapt to build-letrec change. We don't yet use letrec* for
      internal definitions.
      (letrec): Adapt to build-letrec change.
      (letrec*): New expander.
    
    * module/ice-9/psyntax-pp.scm: Regenerated.

commit fb6e61ca21b397308474a6a553f7d502d0113251
Author: Andy Wingo <address@hidden>
Date:   Thu Jun 17 10:49:00 2010 +0200

    beginnings of letrec* support in the expander
    
    * libguile/expand.h (SCM_EXPANDED_LETREC_IN_ORDER_P)
      (SCM_MAKE_EXPANDED_LETREC): Add a new field to letrec, in-order?. Will
      be used to support letrec*.
    
    * libguile/expand.c (LETREC, expand_named_let, expand_letrec): Adapt
      code.
    
    * module/language/elisp/compile-tree-il.scm (compile-pair):
    * module/ice-9/psyntax.scm (build-named-let, build-letrec): Pass #f for
      in-order? to `make-letrec'.
    
    * module/ice-9/psyntax-pp.scm: Regenerate.
    
    * module/language/tree-il.scm: Add letrec-in-order? accessor.
      (parse-tree-il, unparse-tree-il): Parse and unparse an in-order?
      letrec as `letrec*'.
      (tree-il->scheme): Serialize letrec*.

commit f238862e9ec7c69d69eb3941f14844501c0f5937
Author: Andy Wingo <address@hidden>
Date:   Thu Jun 17 10:45:34 2010 +0200

    fix bug in memoize
    
    * libguile/memoize.c (memoize): Fix a bug where LETREC was being
      accessed as LET, and it just happened to coincide.

-----------------------------------------------------------------------

Summary of changes:
 libguile/expand.c                         |   23 +-
 libguile/expand.h                         |    7 +-
 libguile/memoize.c                        |   53 +-
 module/ice-9/boot-9.scm                   |    8 +
 module/ice-9/compile-psyntax.scm          |    6 +-
 module/ice-9/psyntax-pp.scm               |30390 ++++++++++++++---------------
 module/ice-9/psyntax.scm                  |   31 +-
 module/language/elisp/compile-tree-il.scm |    2 +-
 module/language/tree-il.scm               |   25 +-
 module/language/tree-il/compile-glil.scm  |   43 +-
 module/language/tree-il/fix-letrec.scm    |  100 +-
 module/language/tree-il/primitives.scm    |   28 +-
 test-suite/tests/tree-il.test             |   46 +
 13 files changed, 15349 insertions(+), 15413 deletions(-)

diff --git a/libguile/expand.c b/libguile/expand.c
index 2dd93ec..bdecd80 100644
--- a/libguile/expand.c
+++ b/libguile/expand.c
@@ -81,8 +81,8 @@ static const char** exp_field_names[SCM_NUM_EXPANDED_TYPES];
   SCM_MAKE_EXPANDED_LAMBDA_CASE(src, req, opt, rest, kw, inits, gensyms, body, 
alternate)
 #define LET(src, names, gensyms, vals, body) \
   SCM_MAKE_EXPANDED_LET(src, names, gensyms, vals, body)
-#define LETREC(src, names, gensyms, vals, body) \
-  SCM_MAKE_EXPANDED_LETREC(src, names, gensyms, vals, body)
+#define LETREC(src, in_order_p, names, gensyms, vals, body) \
+  SCM_MAKE_EXPANDED_LETREC(src, in_order_p, names, gensyms, vals, body)
 #define DYNLET(src, fluids, vals, body) \
   SCM_MAKE_EXPANDED_DYNLET(src, fluids, vals, body)
 
@@ -163,6 +163,7 @@ SCM_SYNTAX ("set!", expand_set_x);
 SCM_SYNTAX ("and", expand_and);
 SCM_SYNTAX ("cond", expand_cond);
 SCM_SYNTAX ("letrec", expand_letrec);
+SCM_SYNTAX ("letrec*", expand_letrec_star);
 SCM_SYNTAX ("let*", expand_letstar);
 SCM_SYNTAX ("or", expand_or);
 SCM_SYNTAX ("lambda*", expand_lambda_star);
@@ -984,7 +985,7 @@ expand_named_let (const SCM expr, SCM env)
   inner_env = expand_env_extend (inner_env, var_names, var_syms);
 
   return LETREC
-    (scm_source_properties (expr),
+    (scm_source_properties (expr), SCM_BOOL_F,
      scm_list_1 (name), scm_list_1 (name_sym),
      scm_list_1 (LAMBDA (SCM_BOOL_F,
                          SCM_EOL,
@@ -1030,7 +1031,7 @@ expand_let (SCM expr, SCM env)
 }
 
 static SCM
-expand_letrec (SCM expr, SCM env)
+expand_letrec_helper (SCM expr, SCM env, SCM in_order_p)
 {
   SCM bindings;
 
@@ -1048,13 +1049,25 @@ expand_letrec (SCM expr, SCM env)
       SCM var_names, var_syms, inits;
       transform_bindings (bindings, expr, &var_names, &var_syms, &inits);
       env = expand_env_extend (env, var_names, var_syms);
-      return LETREC (SCM_BOOL_F,
+      return LETREC (SCM_BOOL_F, in_order_p,
                      var_names, var_syms, expand_exprs (inits, env),
                      expand_sequence (CDDR (expr), env));
     }
 }
 
 static SCM
+expand_letrec (SCM expr, SCM env)
+{
+  return expand_letrec_helper (expr, env, SCM_BOOL_F);
+}
+
+static SCM
+expand_letrec_star (SCM expr, SCM env)
+{
+  return expand_letrec_helper (expr, env, SCM_BOOL_T);
+}
+
+static SCM
 expand_letstar_clause (SCM bindings, SCM body, SCM env SCM_UNUSED)
 {
   if (scm_is_null (bindings))
diff --git a/libguile/expand.h b/libguile/expand.h
index d137020..b5d90ed 100644
--- a/libguile/expand.h
+++ b/libguile/expand.h
@@ -301,18 +301,19 @@ enum
 
 #define SCM_EXPANDED_LETREC_TYPE_NAME "letrec"
 #define SCM_EXPANDED_LETREC_FIELD_NAMES         \
-  { "src", "names", "gensyms", "vals", "body", }
+  { "src", "in-order?", "names", "gensyms", "vals", "body", }
 enum
   {
     SCM_EXPANDED_LETREC_SRC,
+    SCM_EXPANDED_LETREC_IN_ORDER_P,
     SCM_EXPANDED_LETREC_NAMES,
     SCM_EXPANDED_LETREC_GENSYMS,
     SCM_EXPANDED_LETREC_VALS,
     SCM_EXPANDED_LETREC_BODY,
     SCM_NUM_EXPANDED_LETREC_FIELDS,
   };
-#define SCM_MAKE_EXPANDED_LETREC(src, names, gensyms, vals, body) \
-  scm_c_make_struct (exp_vtables[SCM_EXPANDED_LETREC], 0, 
SCM_NUM_EXPANDED_LETREC_FIELDS, SCM_UNPACK (src), SCM_UNPACK (names), 
SCM_UNPACK (gensyms), SCM_UNPACK (vals), SCM_UNPACK (body))
+#define SCM_MAKE_EXPANDED_LETREC(src, in_order_p, names, gensyms, vals, body) \
+  scm_c_make_struct (exp_vtables[SCM_EXPANDED_LETREC], 0, 
SCM_NUM_EXPANDED_LETREC_FIELDS, SCM_UNPACK (src), SCM_UNPACK (in_order_p), 
SCM_UNPACK (names), SCM_UNPACK (gensyms), SCM_UNPACK (vals), SCM_UNPACK (body))
 
 #define SCM_EXPANDED_DYNLET_TYPE_NAME "dynlet"
 #define SCM_EXPANDED_DYNLET_FIELD_NAMES         \
diff --git a/libguile/memoize.c b/libguile/memoize.c
index 393598e..44c0101 100644
--- a/libguile/memoize.c
+++ b/libguile/memoize.c
@@ -374,33 +374,50 @@ memoize (SCM exp, SCM env)
 
     case SCM_EXPANDED_LETREC:
       {
-        SCM vars, exps, body, undefs, inits, sets, new_env;
-        int i, nvars;
+        SCM vars, exps, body, undefs, new_env;
+        int i, nvars, in_order_p;
         
-        vars = REF (exp, LET, GENSYMS);
-        exps = REF (exp, LET, VALS);
-        body = REF (exp, LET, BODY);
+        vars = REF (exp, LETREC, GENSYMS);
+        exps = REF (exp, LETREC, VALS);
+        body = REF (exp, LETREC, BODY);
+        in_order_p = scm_is_true (REF (exp, LETREC, IN_ORDER_P));
         nvars = i = scm_ilength (vars);
-        inits = undefs = sets = SCM_EOL;
+        undefs = SCM_EOL;
         new_env = env;
 
-        for (; scm_is_pair (vars); vars = CDR (vars), i--)
+        for (; scm_is_pair (vars); vars = CDR (vars))
           {
             new_env = scm_cons (CAR (vars), new_env);
             undefs = scm_cons (MAKMEMO_QUOTE (SCM_UNDEFINED), undefs);
-            sets = scm_cons (MAKMEMO_LEX_SET ((i-1) + nvars,
-                                              MAKMEMO_LEX_REF (i-1)),
-                             sets);
           }
 
-        for (; scm_is_pair (exps); exps = CDR (exps))
-          inits = scm_cons (memoize (CAR (exps), new_env), inits);
-        inits = scm_reverse_x (inits, SCM_UNDEFINED);
-
-        return MAKMEMO_LET
-          (undefs,
-           MAKMEMO_BEGIN (scm_list_2 (MAKMEMO_LET (inits, MAKMEMO_BEGIN 
(sets)),
-                                      memoize (body, new_env))));
+        if (in_order_p)
+          {
+            SCM body_exps = SCM_EOL;
+            for (; scm_is_pair (exps); exps = CDR (exps), i--)
+              body_exps = scm_cons (MAKMEMO_LEX_SET (i-1,
+                                                     memoize (CAR (exps), 
new_env)),
+                                    body_exps);
+            body_exps = scm_cons (memoize (body, new_env), body_exps);
+            body_exps = scm_reverse_x (body_exps, SCM_UNDEFINED);
+            return MAKMEMO_LET (undefs, MAKMEMO_BEGIN (body_exps));
+          }
+        else
+          {
+            SCM sets = SCM_EOL, inits = SCM_EOL;
+            for (; scm_is_pair (exps); exps = CDR (exps), i--)
+              {
+                sets = scm_cons (MAKMEMO_LEX_SET ((i-1) + nvars,
+                                                  MAKMEMO_LEX_REF (i-1)),
+                                 sets);
+                inits = scm_cons (memoize (CAR (exps), new_env), inits);
+              }
+            inits = scm_reverse_x (inits, SCM_UNDEFINED);
+            return MAKMEMO_LET
+              (undefs,
+               MAKMEMO_BEGIN (scm_list_2 (MAKMEMO_LET (inits, MAKMEMO_BEGIN 
(sets)),
+                                          memoize (body, new_env))));
+          }
       }
 
     case SCM_EXPANDED_DYNLET:
diff --git a/module/ice-9/boot-9.scm b/module/ice-9/boot-9.scm
index 3d09dfb..a2afffa 100644
--- a/module/ice-9/boot-9.scm
+++ b/module/ice-9/boot-9.scm
@@ -254,6 +254,14 @@ If there is no handler at all, Guile prints an error and 
then exits."
 
 
 
+;;; {Structs}
+;;;
+
+(define (make-struct/no-tail vtable . args)
+  (apply make-struct vtable 0 args))
+
+
+
 ;;; {and-map and or-map}
 ;;;
 ;;; (and-map fn lst) is like (and (fn (car lst)) (fn (cadr lst)) (fn...) ...)
diff --git a/module/ice-9/compile-psyntax.scm b/module/ice-9/compile-psyntax.scm
index e83a5be..86b94ac 100644
--- a/module/ice-9/compile-psyntax.scm
+++ b/module/ice-9/compile-psyntax.scm
@@ -17,6 +17,7 @@
 ;;; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 
USA
 
 (use-modules (language tree-il)
+             (language tree-il optimize)
              (ice-9 pretty-print))
 
 (let ((source (list-ref (command-line) 1))
@@ -33,7 +34,10 @@
             (close-port in))
           (begin
             (pretty-print (tree-il->scheme
-                           (macroexpand x 'c '(compile load eval)))
+                           (optimize!
+                            (macroexpand x 'c '(compile load eval))
+                            (current-module)
+                            '()))
                           out)
             (newline out)
             (loop (read in))))))
diff --git a/module/ice-9/psyntax-pp.scm b/module/ice-9/psyntax-pp.scm
index 7c19d64..2b70c0c 100644
--- a/module/ice-9/psyntax-pp.scm
+++ b/module/ice-9/psyntax-pp.scm
@@ -1,6000 +1,7394 @@
 (eval-when (compile) (set-current-module (resolve-module (quote (guile)))))
 (if #f #f)
 
-(letrec ((#{and-map*\ 20}#
-           (lambda (#{f\ 192}# #{first\ 193}# . #{rest\ 194}#)
-             (let ((#{t\ 200}# (null? #{first\ 193}#)))
-               (if #{t\ 200}#
-                 #{t\ 200}#
-                 (if (null? #{rest\ 194}#)
-                   (letrec ((#{andmap\ 204}#
-                              (lambda (#{first\ 205}#)
-                                (let ((#{x\ 208}# (car #{first\ 205}#))
-                                      (#{first\ 209}# (cdr #{first\ 205}#)))
-                                  (if (null? #{first\ 209}#)
-                                    (#{f\ 192}# #{x\ 208}#)
-                                    (if (#{f\ 192}# #{x\ 208}#)
-                                      (#{andmap\ 204}# #{first\ 209}#)
-                                      #f))))))
-                     (#{andmap\ 204}# #{first\ 193}#))
-                   (letrec ((#{andmap\ 215}#
-                              (lambda (#{first\ 216}# #{rest\ 217}#)
-                                (let ((#{x\ 222}# (car #{first\ 216}#))
-                                      (#{xr\ 223}# (map car #{rest\ 217}#))
-                                      (#{first\ 224}# (cdr #{first\ 216}#))
-                                      (#{rest\ 225}# (map cdr #{rest\ 217}#)))
-                                  (if (null? #{first\ 224}#)
-                                    (apply #{f\ 192}#
-                                           (cons #{x\ 222}# #{xr\ 223}#))
-                                    (if (apply #{f\ 192}#
-                                               (cons #{x\ 222}# #{xr\ 223}#))
-                                      (#{andmap\ 215}#
-                                        #{first\ 224}#
-                                        #{rest\ 225}#)
-                                      #f))))))
-                     (#{andmap\ 215}# #{first\ 193}# #{rest\ 194}#))))))))
-  (letrec ((#{lambda-var-list\ 487}#
-             (lambda (#{vars\ 702}#)
-               (letrec ((#{lvl\ 708}#
-                          (lambda (#{vars\ 709}# #{ls\ 710}# #{w\ 711}#)
-                            (if (pair? #{vars\ 709}#)
-                              (#{lvl\ 708}#
-                                (cdr #{vars\ 709}#)
-                                (cons (#{wrap\ 441}#
-                                        (car #{vars\ 709}#)
-                                        #{w\ 711}#
-                                        #f)
-                                      #{ls\ 710}#)
-                                #{w\ 711}#)
-                              (if (#{id?\ 372}# #{vars\ 709}#)
-                                (cons (#{wrap\ 441}#
-                                        #{vars\ 709}#
-                                        #{w\ 711}#
-                                        #f)
-                                      #{ls\ 710}#)
-                                (if (null? #{vars\ 709}#)
-                                  #{ls\ 710}#
-                                  (if (#{syntax-object?\ 336}# #{vars\ 709}#)
-                                    (#{lvl\ 708}#
-                                      (#{syntax-object-expression\ 338}#
-                                        #{vars\ 709}#)
-                                      #{ls\ 710}#
-                                      (#{join-wraps\ 423}#
-                                        #{w\ 711}#
-                                        (#{syntax-object-wrap\ 340}#
-                                          #{vars\ 709}#)))
-                                    (cons #{vars\ 709}# #{ls\ 710}#))))))))
-                 (#{lvl\ 708}#
-                   #{vars\ 702}#
+(letrec*
+  ((#{and-map*\ 35}#
+     (lambda (#{f\ 207}# #{first\ 208}# . #{rest\ 209}#)
+       (begin
+         (let ((#{t\ 215}# (null? #{first\ 208}#)))
+           (if #{t\ 215}#
+             #{t\ 215}#
+             (if (null? #{rest\ 209}#)
+               (letrec*
+                 ((#{andmap\ 219}#
+                    (lambda (#{first\ 220}#)
+                      (begin
+                        (let ((#{x\ 223}# (car #{first\ 220}#))
+                              (#{first\ 224}# (cdr #{first\ 220}#)))
+                          (if (null? #{first\ 224}#)
+                            (#{f\ 207}# #{x\ 223}#)
+                            (if (#{f\ 207}# #{x\ 223}#)
+                              (#{andmap\ 219}# #{first\ 224}#)
+                              #f)))))))
+                 (begin (#{andmap\ 219}# #{first\ 208}#)))
+               (letrec*
+                 ((#{andmap\ 230}#
+                    (lambda (#{first\ 231}# #{rest\ 232}#)
+                      (begin
+                        (let ((#{x\ 237}# (car #{first\ 231}#))
+                              (#{xr\ 238}# (map car #{rest\ 232}#))
+                              (#{first\ 239}# (cdr #{first\ 231}#))
+                              (#{rest\ 240}# (map cdr #{rest\ 232}#)))
+                          (if (null? #{first\ 239}#)
+                            (@apply #{f\ 207}# (cons #{x\ 237}# #{xr\ 238}#))
+                            (if (@apply
+                                  #{f\ 207}#
+                                  (cons #{x\ 237}# #{xr\ 238}#))
+                              (#{andmap\ 230}# #{first\ 239}# #{rest\ 240}#)
+                              #f)))))))
+                 (begin
+                   (#{andmap\ 230}# #{first\ 208}# #{rest\ 209}#))))))))))
+  (begin
+    (let ((#{ribcage?\ 410}# (if #f #f))
+          (#{wrap-subst\ 396}# (if #f #f))
+          (#{wrap-marks\ 394}# (if #f #f))
+          (#{make-wrap\ 392}# (if #f #f))
+          (#{binding-value\ 372}# (if #f #f))
+          (#{binding-type\ 370}# (if #f #f))
+          (#{set-syntax-object-module!\ 363}# (if #f #f))
+          (#{set-syntax-object-wrap!\ 361}# (if #f #f))
+          (#{set-syntax-object-expression!\ 359}#
+            (if #f #f))
+          (#{fx<\ 294}# (if #f #f))
+          (#{fx=\ 292}# (if #f #f))
+          (#{fx-\ 290}# (if #f #f))
+          (#{fx+\ 288}# (if #f #f))
+          (#{make-primitive-ref\ 249}# (if #f #f)))
+      (letrec*
+        ((#{lambda-var-list\ 502}#
+           (lambda (#{vars\ 717}#)
+             (letrec*
+               ((#{lvl\ 723}#
+                  (lambda (#{vars\ 724}# #{ls\ 725}# #{w\ 726}#)
+                    (if (pair? #{vars\ 724}#)
+                      (#{lvl\ 723}#
+                        (cdr #{vars\ 724}#)
+                        (cons (#{wrap\ 456}# (car #{vars\ 724}#) #{w\ 726}# #f)
+                              #{ls\ 725}#)
+                        #{w\ 726}#)
+                      (if (#{id?\ 387}# #{vars\ 724}#)
+                        (cons (#{wrap\ 456}# #{vars\ 724}# #{w\ 726}# #f)
+                              #{ls\ 725}#)
+                        (if (null? #{vars\ 724}#)
+                          #{ls\ 725}#
+                          (if (#{syntax-object?\ 351}# #{vars\ 724}#)
+                            (#{lvl\ 723}#
+                              (#{syntax-object-expression\ 353}# #{vars\ 724}#)
+                              #{ls\ 725}#
+                              (#{join-wraps\ 438}#
+                                #{w\ 726}#
+                                (#{syntax-object-wrap\ 355}# #{vars\ 724}#)))
+                            (cons #{vars\ 724}# #{ls\ 725}#))))))))
+               (begin
+                 (#{lvl\ 723}#
+                   #{vars\ 717}#
                    '()
-                   '(())))))
-           (#{gen-var\ 485}#
-             (lambda (#{id\ 722}#)
-               (let ((#{id\ 725}#
-                       (if (#{syntax-object?\ 336}# #{id\ 722}#)
-                         (#{syntax-object-expression\ 338}# #{id\ 722}#)
-                         #{id\ 722}#)))
+                   '(()))))))
+         (#{gen-var\ 500}#
+           (lambda (#{id\ 737}#)
+             (begin
+               (let ((#{id\ 740}#
+                       (if (#{syntax-object?\ 351}# #{id\ 737}#)
+                         (#{syntax-object-expression\ 353}# #{id\ 737}#)
+                         #{id\ 737}#)))
                  (gensym
-                   (string-append (symbol->string #{id\ 725}#) " ")))))
-           (#{strip\ 483}#
-             (lambda (#{x\ 727}# #{w\ 728}#)
-               (if (memq 'top
-                         (#{wrap-marks\ 379}# #{w\ 728}#))
-                 #{x\ 727}#
-                 (letrec ((#{f\ 734}# (lambda (#{x\ 735}#)
-                                        (if (#{syntax-object?\ 336}#
-                                              #{x\ 735}#)
-                                          (#{strip\ 483}#
-                                            (#{syntax-object-expression\ 338}#
-                                              #{x\ 735}#)
-                                            (#{syntax-object-wrap\ 340}#
-                                              #{x\ 735}#))
-                                          (if (pair? #{x\ 735}#)
-                                            (let ((#{a\ 742}# (#{f\ 734}# (car 
#{x\ 735}#)))
-                                                  (#{d\ 743}# (#{f\ 734}# (cdr 
#{x\ 735}#))))
-                                              (if (if (eq? #{a\ 742}#
-                                                           (car #{x\ 735}#))
-                                                    (eq? #{d\ 743}#
-                                                         (cdr #{x\ 735}#))
-                                                    #f)
-                                                #{x\ 735}#
-                                                (cons #{a\ 742}# #{d\ 743}#)))
-                                            (if (vector? #{x\ 735}#)
-                                              (let ((#{old\ 749}#
-                                                      (vector->list
-                                                        #{x\ 735}#)))
-                                                (let ((#{new\ 751}#
-                                                        (map #{f\ 734}#
-                                                             #{old\ 749}#)))
-                                                  (if (#{and-map*\ 20}#
-                                                        eq?
-                                                        #{old\ 749}#
-                                                        #{new\ 751}#)
-                                                    #{x\ 735}#
-                                                    (list->vector
-                                                      #{new\ 751}#))))
-                                              #{x\ 735}#))))))
-                   (#{f\ 734}# #{x\ 727}#)))))
-           (#{chi-lambda-case\ 481}#
-             (lambda (#{e\ 753}#
-                      #{r\ 754}#
-                      #{w\ 755}#
-                      #{s\ 756}#
-                      #{mod\ 757}#
-                      #{get-formals\ 758}#
-                      #{clauses\ 759}#)
-               (letrec ((#{expand-body\ 774}#
-                          (lambda (#{req\ 775}#
-                                   #{opt\ 776}#
-                                   #{rest\ 777}#
-                                   #{kw\ 778}#
-                                   #{body\ 779}#
-                                   #{vars\ 780}#
-                                   #{r*\ 781}#
-                                   #{w*\ 782}#
-                                   #{inits\ 783}#
-                                   #{meta\ 784}#)
-                            ((lambda (#{tmp\ 795}#)
-                               ((lambda (#{tmp\ 796}#)
-                                  (if (if #{tmp\ 796}#
-                                        (apply (lambda (#{docstring\ 800}#
-                                                        #{e1\ 801}#
-                                                        #{e2\ 802}#)
-                                                 (string?
-                                                   (syntax->datum
-                                                     #{docstring\ 800}#)))
-                                               #{tmp\ 796}#)
-                                        #f)
-                                    (apply (lambda (#{docstring\ 806}#
-                                                    #{e1\ 807}#
-                                                    #{e2\ 808}#)
-                                             (#{expand-body\ 774}#
-                                               #{req\ 775}#
-                                               #{opt\ 776}#
-                                               #{rest\ 777}#
-                                               #{kw\ 778}#
-                                               (cons #{e1\ 807}# #{e2\ 808}#)
-                                               #{vars\ 780}#
-                                               #{r*\ 781}#
-                                               #{w*\ 782}#
-                                               #{inits\ 783}#
-                                               (append
-                                                 #{meta\ 784}#
-                                                 (list (cons 'documentation
-                                                             (syntax->datum
-                                                               #{docstring\ 
806}#))))))
-                                           #{tmp\ 796}#)
-                                    ((lambda (#{tmp\ 811}#)
-                                       (if #{tmp\ 811}#
-                                         (apply (lambda (#{k\ 816}#
-                                                         #{v\ 817}#
-                                                         #{e1\ 818}#
-                                                         #{e2\ 819}#)
-                                                  (#{expand-body\ 774}#
-                                                    #{req\ 775}#
-                                                    #{opt\ 776}#
-                                                    #{rest\ 777}#
-                                                    #{kw\ 778}#
-                                                    (cons #{e1\ 818}#
-                                                          #{e2\ 819}#)
-                                                    #{vars\ 780}#
-                                                    #{r*\ 781}#
-                                                    #{w*\ 782}#
-                                                    #{inits\ 783}#
-                                                    (append
-                                                      #{meta\ 784}#
-                                                      (syntax->datum
-                                                        (map cons
-                                                             #{k\ 816}#
-                                                             #{v\ 817}#)))))
-                                                #{tmp\ 811}#)
-                                         ((lambda (#{tmp\ 823}#)
-                                            (if #{tmp\ 823}#
-                                              (apply (lambda (#{e1\ 826}#
-                                                              #{e2\ 827}#)
-                                                       (values
-                                                         #{meta\ 784}#
-                                                         #{req\ 775}#
-                                                         #{opt\ 776}#
-                                                         #{rest\ 777}#
-                                                         #{kw\ 778}#
-                                                         #{inits\ 783}#
-                                                         #{vars\ 780}#
-                                                         (#{chi-body\ 465}#
-                                                           (cons #{e1\ 826}#
-                                                                 #{e2\ 827}#)
-                                                           (#{source-wrap\ 
443}#
-                                                             #{e\ 753}#
-                                                             #{w\ 755}#
-                                                             #{s\ 756}#
-                                                             #{mod\ 757}#)
-                                                           #{r*\ 781}#
-                                                           #{w*\ 782}#
-                                                           #{mod\ 757}#)))
-                                                     #{tmp\ 823}#)
-                                              (syntax-violation
-                                                #f
-                                                "source expression failed to 
match any pattern"
-                                                #{tmp\ 795}#)))
-                                          ($sc-dispatch
-                                            #{tmp\ 795}#
-                                            '(any . each-any)))))
-                                     ($sc-dispatch
-                                       #{tmp\ 795}#
-                                       '(#(vector #(each (any . any)))
-                                         any
-                                         .
-                                         each-any)))))
-                                ($sc-dispatch
-                                  #{tmp\ 795}#
-                                  '(any any . each-any))))
-                             #{body\ 779}#)))
-                        (#{expand-kw\ 772}#
-                          (lambda (#{req\ 829}#
-                                   #{opt\ 830}#
-                                   #{rest\ 831}#
-                                   #{kw\ 832}#
-                                   #{body\ 833}#
-                                   #{vars\ 834}#
-                                   #{r*\ 835}#
-                                   #{w*\ 836}#
-                                   #{aok\ 837}#
-                                   #{out\ 838}#
-                                   #{inits\ 839}#)
-                            (if (pair? #{kw\ 832}#)
-                              ((lambda (#{tmp\ 853}#)
-                                 ((lambda (#{tmp\ 854}#)
-                                    (if #{tmp\ 854}#
-                                      (apply (lambda (#{k\ 858}#
-                                                      #{id\ 859}#
-                                                      #{i\ 860}#)
-                                               (let ((#{v\ 863}# (#{gen-var\ 
485}#
-                                                                   #{id\ 
859}#)))
-                                                 (let ((#{l\ 865}# 
(#{gen-labels\ 390}#
-                                                                     (list 
#{v\ 863}#))))
-                                                   (let ((#{r**\ 867}#
-                                                           (#{extend-var-env\ 
362}#
-                                                             #{l\ 865}#
-                                                             (list #{v\ 863}#)
-                                                             #{r*\ 835}#)))
-                                                     (let ((#{w**\ 869}#
-                                                             
(#{make-binding-wrap\ 419}#
-                                                               (list #{id\ 
859}#)
-                                                               #{l\ 865}#
-                                                               #{w*\ 836}#)))
-                                                       (#{expand-kw\ 772}#
-                                                         #{req\ 829}#
-                                                         #{opt\ 830}#
-                                                         #{rest\ 831}#
-                                                         (cdr #{kw\ 832}#)
-                                                         #{body\ 833}#
-                                                         (cons #{v\ 863}#
-                                                               #{vars\ 834}#)
-                                                         #{r**\ 867}#
-                                                         #{w**\ 869}#
-                                                         #{aok\ 837}#
-                                                         (cons (list 
(syntax->datum
-                                                                       #{k\ 
858}#)
-                                                                     
(syntax->datum
-                                                                       #{id\ 
859}#)
-                                                                     #{v\ 
863}#)
-                                                               #{out\ 838}#)
-                                                         (cons (#{chi\ 457}#
-                                                                 #{i\ 860}#
-                                                                 #{r*\ 835}#
-                                                                 #{w*\ 836}#
-                                                                 #{mod\ 757}#)
-                                                               #{inits\ 
839}#)))))))
-                                             #{tmp\ 854}#)
-                                      (syntax-violation
-                                        #f
-                                        "source expression failed to match any 
pattern"
-                                        #{tmp\ 853}#)))
-                                  ($sc-dispatch
-                                    #{tmp\ 853}#
-                                    '(any any any))))
-                               (car #{kw\ 832}#))
-                              (#{expand-body\ 774}#
-                                #{req\ 829}#
-                                #{opt\ 830}#
-                                #{rest\ 831}#
-                                (if (let ((#{t\ 873}# #{aok\ 837}#))
-                                      (if #{t\ 873}#
-                                        #{t\ 873}#
-                                        (pair? #{out\ 838}#)))
-                                  (cons #{aok\ 837}# (reverse #{out\ 838}#))
-                                  #f)
-                                #{body\ 833}#
-                                (reverse #{vars\ 834}#)
-                                #{r*\ 835}#
-                                #{w*\ 836}#
-                                (reverse #{inits\ 839}#)
-                                '()))))
-                        (#{expand-opt\ 770}#
-                          (lambda (#{req\ 875}#
-                                   #{opt\ 876}#
-                                   #{rest\ 877}#
-                                   #{kw\ 878}#
-                                   #{body\ 879}#
-                                   #{vars\ 880}#
-                                   #{r*\ 881}#
-                                   #{w*\ 882}#
-                                   #{out\ 883}#
-                                   #{inits\ 884}#)
-                            (if (pair? #{opt\ 876}#)
-                              ((lambda (#{tmp\ 897}#)
-                                 ((lambda (#{tmp\ 898}#)
-                                    (if #{tmp\ 898}#
-                                      (apply (lambda (#{id\ 901}# #{i\ 902}#)
-                                               (let ((#{v\ 905}# (#{gen-var\ 
485}#
-                                                                   #{id\ 
901}#)))
-                                                 (let ((#{l\ 907}# 
(#{gen-labels\ 390}#
-                                                                     (list 
#{v\ 905}#))))
-                                                   (let ((#{r**\ 909}#
-                                                           (#{extend-var-env\ 
362}#
-                                                             #{l\ 907}#
-                                                             (list #{v\ 905}#)
-                                                             #{r*\ 881}#)))
-                                                     (let ((#{w**\ 911}#
-                                                             
(#{make-binding-wrap\ 419}#
-                                                               (list #{id\ 
901}#)
-                                                               #{l\ 907}#
-                                                               #{w*\ 882}#)))
-                                                       (#{expand-opt\ 770}#
-                                                         #{req\ 875}#
-                                                         (cdr #{opt\ 876}#)
-                                                         #{rest\ 877}#
-                                                         #{kw\ 878}#
-                                                         #{body\ 879}#
-                                                         (cons #{v\ 905}#
-                                                               #{vars\ 880}#)
-                                                         #{r**\ 909}#
-                                                         #{w**\ 911}#
-                                                         (cons (syntax->datum
-                                                                 #{id\ 901}#)
-                                                               #{out\ 883}#)
-                                                         (cons (#{chi\ 457}#
-                                                                 #{i\ 902}#
-                                                                 #{r*\ 881}#
-                                                                 #{w*\ 882}#
-                                                                 #{mod\ 757}#)
-                                                               #{inits\ 
884}#)))))))
-                                             #{tmp\ 898}#)
-                                      (syntax-violation
-                                        #f
-                                        "source expression failed to match any 
pattern"
-                                        #{tmp\ 897}#)))
+                   (string-append (symbol->string #{id\ 740}#) " "))))))
+         (#{strip\ 498}#
+           (lambda (#{x\ 742}# #{w\ 743}#)
+             (if (memq 'top
+                       (#{wrap-marks\ 394}# #{w\ 743}#))
+               #{x\ 742}#
+               (letrec*
+                 ((#{f\ 749}# (lambda (#{x\ 750}#)
+                                (if (#{syntax-object?\ 351}# #{x\ 750}#)
+                                  (#{strip\ 498}#
+                                    (#{syntax-object-expression\ 353}#
+                                      #{x\ 750}#)
+                                    (#{syntax-object-wrap\ 355}# #{x\ 750}#))
+                                  (if (pair? #{x\ 750}#)
+                                    (begin
+                                      (let ((#{a\ 757}# (#{f\ 749}# (car #{x\ 
750}#)))
+                                            (#{d\ 758}# (#{f\ 749}# (cdr #{x\ 
750}#))))
+                                        (if (if (eq? #{a\ 757}#
+                                                     (car #{x\ 750}#))
+                                              (eq? #{d\ 758}# (cdr #{x\ 750}#))
+                                              #f)
+                                          #{x\ 750}#
+                                          (cons #{a\ 757}# #{d\ 758}#))))
+                                    (if (vector? #{x\ 750}#)
+                                      (begin
+                                        (let ((#{old\ 764}#
+                                                (vector->list #{x\ 750}#)))
+                                          (begin
+                                            (let ((#{new\ 766}#
+                                                    (map #{f\ 749}#
+                                                         #{old\ 764}#)))
+                                              (if (#{and-map*\ 35}#
+                                                    eq?
+                                                    #{old\ 764}#
+                                                    #{new\ 766}#)
+                                                #{x\ 750}#
+                                                (list->vector
+                                                  #{new\ 766}#))))))
+                                      #{x\ 750}#))))))
+                 (begin (#{f\ 749}# #{x\ 742}#))))))
+         (#{chi-lambda-case\ 496}#
+           (lambda (#{e\ 768}#
+                    #{r\ 769}#
+                    #{w\ 770}#
+                    #{s\ 771}#
+                    #{mod\ 772}#
+                    #{get-formals\ 773}#
+                    #{clauses\ 774}#)
+             (letrec*
+               ((#{expand-body\ 789}#
+                  (lambda (#{req\ 790}#
+                           #{opt\ 791}#
+                           #{rest\ 792}#
+                           #{kw\ 793}#
+                           #{body\ 794}#
+                           #{vars\ 795}#
+                           #{r*\ 796}#
+                           #{w*\ 797}#
+                           #{inits\ 798}#
+                           #{meta\ 799}#)
+                    (let ((#{tmp\ 810}# #{body\ 794}#))
+                      (let ((#{tmp\ 811}#
+                              ($sc-dispatch
+                                #{tmp\ 810}#
+                                '(any any . each-any))))
+                        (if (if #{tmp\ 811}#
+                              (@apply
+                                (lambda (#{docstring\ 815}#
+                                         #{e1\ 816}#
+                                         #{e2\ 817}#)
+                                  (string? (syntax->datum #{docstring\ 815}#)))
+                                #{tmp\ 811}#)
+                              #f)
+                          (@apply
+                            (lambda (#{docstring\ 821}#
+                                     #{e1\ 822}#
+                                     #{e2\ 823}#)
+                              (#{expand-body\ 789}#
+                                #{req\ 790}#
+                                #{opt\ 791}#
+                                #{rest\ 792}#
+                                #{kw\ 793}#
+                                (cons #{e1\ 822}# #{e2\ 823}#)
+                                #{vars\ 795}#
+                                #{r*\ 796}#
+                                #{w*\ 797}#
+                                #{inits\ 798}#
+                                (append
+                                  #{meta\ 799}#
+                                  (list (cons 'documentation
+                                              (syntax->datum
+                                                #{docstring\ 821}#))))))
+                            #{tmp\ 811}#)
+                          (let ((#{tmp\ 826}#
                                   ($sc-dispatch
-                                    #{tmp\ 897}#
-                                    '(any any))))
-                               (car #{opt\ 876}#))
-                              (if #{rest\ 877}#
-                                (let ((#{v\ 916}# (#{gen-var\ 485}#
-                                                    #{rest\ 877}#)))
-                                  (let ((#{l\ 918}# (#{gen-labels\ 390}#
-                                                      (list #{v\ 916}#))))
-                                    (let ((#{r*\ 920}#
-                                            (#{extend-var-env\ 362}#
-                                              #{l\ 918}#
-                                              (list #{v\ 916}#)
-                                              #{r*\ 881}#)))
-                                      (let ((#{w*\ 922}#
-                                              (#{make-binding-wrap\ 419}#
-                                                (list #{rest\ 877}#)
-                                                #{l\ 918}#
-                                                #{w*\ 882}#)))
-                                        (#{expand-kw\ 772}#
-                                          #{req\ 875}#
-                                          (if (pair? #{out\ 883}#)
-                                            (reverse #{out\ 883}#)
+                                    #{tmp\ 810}#
+                                    '(#(vector #(each (any . any)))
+                                      any
+                                      .
+                                      each-any))))
+                            (if #{tmp\ 826}#
+                              (@apply
+                                (lambda (#{k\ 831}#
+                                         #{v\ 832}#
+                                         #{e1\ 833}#
+                                         #{e2\ 834}#)
+                                  (#{expand-body\ 789}#
+                                    #{req\ 790}#
+                                    #{opt\ 791}#
+                                    #{rest\ 792}#
+                                    #{kw\ 793}#
+                                    (cons #{e1\ 833}# #{e2\ 834}#)
+                                    #{vars\ 795}#
+                                    #{r*\ 796}#
+                                    #{w*\ 797}#
+                                    #{inits\ 798}#
+                                    (append
+                                      #{meta\ 799}#
+                                      (syntax->datum
+                                        (map cons #{k\ 831}# #{v\ 832}#)))))
+                                #{tmp\ 826}#)
+                              (let ((#{tmp\ 838}#
+                                      ($sc-dispatch
+                                        #{tmp\ 810}#
+                                        '(any . each-any))))
+                                (if #{tmp\ 838}#
+                                  (@apply
+                                    (lambda (#{e1\ 841}# #{e2\ 842}#)
+                                      (values
+                                        #{meta\ 799}#
+                                        #{req\ 790}#
+                                        #{opt\ 791}#
+                                        #{rest\ 792}#
+                                        #{kw\ 793}#
+                                        #{inits\ 798}#
+                                        #{vars\ 795}#
+                                        (#{chi-body\ 480}#
+                                          (cons #{e1\ 841}# #{e2\ 842}#)
+                                          (#{source-wrap\ 458}#
+                                            #{e\ 768}#
+                                            #{w\ 770}#
+                                            #{s\ 771}#
+                                            #{mod\ 772}#)
+                                          #{r*\ 796}#
+                                          #{w*\ 797}#
+                                          #{mod\ 772}#)))
+                                    #{tmp\ 838}#)
+                                  (syntax-violation
+                                    #f
+                                    "source expression failed to match any 
pattern"
+                                    #{tmp\ 810}#))))))))))
+                (#{expand-kw\ 787}#
+                  (lambda (#{req\ 844}#
+                           #{opt\ 845}#
+                           #{rest\ 846}#
+                           #{kw\ 847}#
+                           #{body\ 848}#
+                           #{vars\ 849}#
+                           #{r*\ 850}#
+                           #{w*\ 851}#
+                           #{aok\ 852}#
+                           #{out\ 853}#
+                           #{inits\ 854}#)
+                    (if (pair? #{kw\ 847}#)
+                      (let ((#{tmp\ 868}# (car #{kw\ 847}#)))
+                        (let ((#{tmp\ 869}#
+                                ($sc-dispatch
+                                  #{tmp\ 868}#
+                                  '(any any any))))
+                          (if #{tmp\ 869}#
+                            (@apply
+                              (lambda (#{k\ 873}# #{id\ 874}# #{i\ 875}#)
+                                (begin
+                                  (let ((#{v\ 878}# (#{gen-var\ 500}#
+                                                      #{id\ 874}#)))
+                                    (begin
+                                      (let ((#{l\ 880}# (#{gen-labels\ 405}#
+                                                          (list #{v\ 878}#))))
+                                        (begin
+                                          (let ((#{r**\ 882}#
+                                                  (#{extend-var-env\ 377}#
+                                                    #{l\ 880}#
+                                                    (list #{v\ 878}#)
+                                                    #{r*\ 850}#)))
+                                            (begin
+                                              (let ((#{w**\ 884}#
+                                                      (#{make-binding-wrap\ 
434}#
+                                                        (list #{id\ 874}#)
+                                                        #{l\ 880}#
+                                                        #{w*\ 851}#)))
+                                                (#{expand-kw\ 787}#
+                                                  #{req\ 844}#
+                                                  #{opt\ 845}#
+                                                  #{rest\ 846}#
+                                                  (cdr #{kw\ 847}#)
+                                                  #{body\ 848}#
+                                                  (cons #{v\ 878}#
+                                                        #{vars\ 849}#)
+                                                  #{r**\ 882}#
+                                                  #{w**\ 884}#
+                                                  #{aok\ 852}#
+                                                  (cons (list (syntax->datum
+                                                                #{k\ 873}#)
+                                                              (syntax->datum
+                                                                #{id\ 874}#)
+                                                              #{v\ 878}#)
+                                                        #{out\ 853}#)
+                                                  (cons (#{chi\ 472}#
+                                                          #{i\ 875}#
+                                                          #{r*\ 850}#
+                                                          #{w*\ 851}#
+                                                          #{mod\ 772}#)
+                                                        #{inits\ 
854}#)))))))))))
+                              #{tmp\ 869}#)
+                            (syntax-violation
+                              #f
+                              "source expression failed to match any pattern"
+                              #{tmp\ 868}#))))
+                      (#{expand-body\ 789}#
+                        #{req\ 844}#
+                        #{opt\ 845}#
+                        #{rest\ 846}#
+                        (if (begin
+                              (let ((#{t\ 888}# #{aok\ 852}#))
+                                (if #{t\ 888}#
+                                  #{t\ 888}#
+                                  (pair? #{out\ 853}#))))
+                          (cons #{aok\ 852}# (reverse #{out\ 853}#))
+                          #f)
+                        #{body\ 848}#
+                        (reverse #{vars\ 849}#)
+                        #{r*\ 850}#
+                        #{w*\ 851}#
+                        (reverse #{inits\ 854}#)
+                        '()))))
+                (#{expand-opt\ 785}#
+                  (lambda (#{req\ 890}#
+                           #{opt\ 891}#
+                           #{rest\ 892}#
+                           #{kw\ 893}#
+                           #{body\ 894}#
+                           #{vars\ 895}#
+                           #{r*\ 896}#
+                           #{w*\ 897}#
+                           #{out\ 898}#
+                           #{inits\ 899}#)
+                    (if (pair? #{opt\ 891}#)
+                      (let ((#{tmp\ 912}# (car #{opt\ 891}#)))
+                        (let ((#{tmp\ 913}#
+                                ($sc-dispatch #{tmp\ 912}# (quote (any any)))))
+                          (if #{tmp\ 913}#
+                            (@apply
+                              (lambda (#{id\ 916}# #{i\ 917}#)
+                                (begin
+                                  (let ((#{v\ 920}# (#{gen-var\ 500}#
+                                                      #{id\ 916}#)))
+                                    (begin
+                                      (let ((#{l\ 922}# (#{gen-labels\ 405}#
+                                                          (list #{v\ 920}#))))
+                                        (begin
+                                          (let ((#{r**\ 924}#
+                                                  (#{extend-var-env\ 377}#
+                                                    #{l\ 922}#
+                                                    (list #{v\ 920}#)
+                                                    #{r*\ 896}#)))
+                                            (begin
+                                              (let ((#{w**\ 926}#
+                                                      (#{make-binding-wrap\ 
434}#
+                                                        (list #{id\ 916}#)
+                                                        #{l\ 922}#
+                                                        #{w*\ 897}#)))
+                                                (#{expand-opt\ 785}#
+                                                  #{req\ 890}#
+                                                  (cdr #{opt\ 891}#)
+                                                  #{rest\ 892}#
+                                                  #{kw\ 893}#
+                                                  #{body\ 894}#
+                                                  (cons #{v\ 920}#
+                                                        #{vars\ 895}#)
+                                                  #{r**\ 924}#
+                                                  #{w**\ 926}#
+                                                  (cons (syntax->datum
+                                                          #{id\ 916}#)
+                                                        #{out\ 898}#)
+                                                  (cons (#{chi\ 472}#
+                                                          #{i\ 917}#
+                                                          #{r*\ 896}#
+                                                          #{w*\ 897}#
+                                                          #{mod\ 772}#)
+                                                        #{inits\ 
899}#)))))))))))
+                              #{tmp\ 913}#)
+                            (syntax-violation
+                              #f
+                              "source expression failed to match any pattern"
+                              #{tmp\ 912}#))))
+                      (if #{rest\ 892}#
+                        (begin
+                          (let ((#{v\ 931}# (#{gen-var\ 500}# #{rest\ 892}#)))
+                            (begin
+                              (let ((#{l\ 933}# (#{gen-labels\ 405}#
+                                                  (list #{v\ 931}#))))
+                                (begin
+                                  (let ((#{r*\ 935}#
+                                          (#{extend-var-env\ 377}#
+                                            #{l\ 933}#
+                                            (list #{v\ 931}#)
+                                            #{r*\ 896}#)))
+                                    (begin
+                                      (let ((#{w*\ 937}#
+                                              (#{make-binding-wrap\ 434}#
+                                                (list #{rest\ 892}#)
+                                                #{l\ 933}#
+                                                #{w*\ 897}#)))
+                                        (#{expand-kw\ 787}#
+                                          #{req\ 890}#
+                                          (if (pair? #{out\ 898}#)
+                                            (reverse #{out\ 898}#)
                                             #f)
-                                          (syntax->datum #{rest\ 877}#)
-                                          (if (pair? #{kw\ 878}#)
-                                            (cdr #{kw\ 878}#)
-                                            #{kw\ 878}#)
-                                          #{body\ 879}#
-                                          (cons #{v\ 916}# #{vars\ 880}#)
-                                          #{r*\ 920}#
-                                          #{w*\ 922}#
-                                          (if (pair? #{kw\ 878}#)
-                                            (car #{kw\ 878}#)
+                                          (syntax->datum #{rest\ 892}#)
+                                          (if (pair? #{kw\ 893}#)
+                                            (cdr #{kw\ 893}#)
+                                            #{kw\ 893}#)
+                                          #{body\ 894}#
+                                          (cons #{v\ 931}# #{vars\ 895}#)
+                                          #{r*\ 935}#
+                                          #{w*\ 937}#
+                                          (if (pair? #{kw\ 893}#)
+                                            (car #{kw\ 893}#)
                                             #f)
                                           '()
-                                          #{inits\ 884}#)))))
-                                (#{expand-kw\ 772}#
-                                  #{req\ 875}#
-                                  (if (pair? #{out\ 883}#)
-                                    (reverse #{out\ 883}#)
-                                    #f)
-                                  #f
-                                  (if (pair? #{kw\ 878}#)
-                                    (cdr #{kw\ 878}#)
-                                    #{kw\ 878}#)
-                                  #{body\ 879}#
-                                  #{vars\ 880}#
-                                  #{r*\ 881}#
-                                  #{w*\ 882}#
-                                  (if (pair? #{kw\ 878}#) (car #{kw\ 878}#) #f)
-                                  '()
-                                  #{inits\ 884}#)))))
-                        (#{expand-req\ 768}#
-                          (lambda (#{req\ 924}#
-                                   #{opt\ 925}#
-                                   #{rest\ 926}#
-                                   #{kw\ 927}#
-                                   #{body\ 928}#)
-                            (let ((#{vars\ 936}#
-                                    (map #{gen-var\ 485}# #{req\ 924}#))
-                                  (#{labels\ 937}#
-                                    (#{gen-labels\ 390}# #{req\ 924}#)))
-                              (let ((#{r*\ 940}#
-                                      (#{extend-var-env\ 362}#
-                                        #{labels\ 937}#
-                                        #{vars\ 936}#
-                                        #{r\ 754}#))
-                                    (#{w*\ 941}#
-                                      (#{make-binding-wrap\ 419}#
-                                        #{req\ 924}#
-                                        #{labels\ 937}#
-                                        #{w\ 755}#)))
-                                (#{expand-opt\ 770}#
-                                  (map syntax->datum #{req\ 924}#)
-                                  #{opt\ 925}#
-                                  #{rest\ 926}#
-                                  #{kw\ 927}#
-                                  #{body\ 928}#
-                                  (reverse #{vars\ 936}#)
-                                  #{r*\ 940}#
-                                  #{w*\ 941}#
-                                  '()
-                                  '()))))))
-                 ((lambda (#{tmp\ 942}#)
-                    ((lambda (#{tmp\ 943}#)
-                       (if #{tmp\ 943}#
-                         (apply (lambda () (values (quote ()) #f))
-                                #{tmp\ 943}#)
-                         ((lambda (#{tmp\ 944}#)
-                            (if #{tmp\ 944}#
-                              (apply (lambda (#{args\ 951}#
-                                              #{e1\ 952}#
-                                              #{e2\ 953}#
-                                              #{args*\ 954}#
-                                              #{e1*\ 955}#
-                                              #{e2*\ 956}#)
+                                          #{inits\ 899}#)))))))))
+                        (#{expand-kw\ 787}#
+                          #{req\ 890}#
+                          (if (pair? #{out\ 898}#)
+                            (reverse #{out\ 898}#)
+                            #f)
+                          #f
+                          (if (pair? #{kw\ 893}#)
+                            (cdr #{kw\ 893}#)
+                            #{kw\ 893}#)
+                          #{body\ 894}#
+                          #{vars\ 895}#
+                          #{r*\ 896}#
+                          #{w*\ 897}#
+                          (if (pair? #{kw\ 893}#) (car #{kw\ 893}#) #f)
+                          '()
+                          #{inits\ 899}#)))))
+                (#{expand-req\ 783}#
+                  (lambda (#{req\ 939}#
+                           #{opt\ 940}#
+                           #{rest\ 941}#
+                           #{kw\ 942}#
+                           #{body\ 943}#)
+                    (begin
+                      (let ((#{vars\ 951}#
+                              (map #{gen-var\ 500}# #{req\ 939}#))
+                            (#{labels\ 952}#
+                              (#{gen-labels\ 405}# #{req\ 939}#)))
+                        (begin
+                          (let ((#{r*\ 955}#
+                                  (#{extend-var-env\ 377}#
+                                    #{labels\ 952}#
+                                    #{vars\ 951}#
+                                    #{r\ 769}#))
+                                (#{w*\ 956}#
+                                  (#{make-binding-wrap\ 434}#
+                                    #{req\ 939}#
+                                    #{labels\ 952}#
+                                    #{w\ 770}#)))
+                            (#{expand-opt\ 785}#
+                              (map syntax->datum #{req\ 939}#)
+                              #{opt\ 940}#
+                              #{rest\ 941}#
+                              #{kw\ 942}#
+                              #{body\ 943}#
+                              (reverse #{vars\ 951}#)
+                              #{r*\ 955}#
+                              #{w*\ 956}#
+                              '()
+                              '()))))))))
+               (begin
+                 (let ((#{tmp\ 957}# #{clauses\ 774}#))
+                   (let ((#{tmp\ 958}#
+                           ($sc-dispatch #{tmp\ 957}# (quote ()))))
+                     (if #{tmp\ 958}#
+                       (@apply
+                         (lambda () (values (quote ()) #f))
+                         #{tmp\ 958}#)
+                       (let ((#{tmp\ 959}#
+                               ($sc-dispatch
+                                 #{tmp\ 957}#
+                                 '((any any . each-any)
+                                   .
+                                   #(each (any any . each-any))))))
+                         (if #{tmp\ 959}#
+                           (@apply
+                             (lambda (#{args\ 966}#
+                                      #{e1\ 967}#
+                                      #{e2\ 968}#
+                                      #{args*\ 969}#
+                                      #{e1*\ 970}#
+                                      #{e2*\ 971}#)
+                               (call-with-values
+                                 (lambda ()
+                                   (#{get-formals\ 773}# #{args\ 966}#))
+                                 (lambda (#{req\ 972}#
+                                          #{opt\ 973}#
+                                          #{rest\ 974}#
+                                          #{kw\ 975}#)
+                                   (call-with-values
+                                     (lambda ()
+                                       (#{expand-req\ 783}#
+                                         #{req\ 972}#
+                                         #{opt\ 973}#
+                                         #{rest\ 974}#
+                                         #{kw\ 975}#
+                                         (cons #{e1\ 967}# #{e2\ 968}#)))
+                                     (lambda (#{meta\ 981}#
+                                              #{req\ 982}#
+                                              #{opt\ 983}#
+                                              #{rest\ 984}#
+                                              #{kw\ 985}#
+                                              #{inits\ 986}#
+                                              #{vars\ 987}#
+                                              #{body\ 988}#)
                                        (call-with-values
                                          (lambda ()
-                                           (#{get-formals\ 758}#
-                                             #{args\ 951}#))
-                                         (lambda (#{req\ 957}#
-                                                  #{opt\ 958}#
-                                                  #{rest\ 959}#
-                                                  #{kw\ 960}#)
-                                           (call-with-values
-                                             (lambda ()
-                                               (#{expand-req\ 768}#
-                                                 #{req\ 957}#
-                                                 #{opt\ 958}#
-                                                 #{rest\ 959}#
-                                                 #{kw\ 960}#
-                                                 (cons #{e1\ 952}#
-                                                       #{e2\ 953}#)))
-                                             (lambda (#{meta\ 966}#
-                                                      #{req\ 967}#
-                                                      #{opt\ 968}#
-                                                      #{rest\ 969}#
-                                                      #{kw\ 970}#
-                                                      #{inits\ 971}#
-                                                      #{vars\ 972}#
-                                                      #{body\ 973}#)
-                                               (call-with-values
-                                                 (lambda ()
-                                                   (#{chi-lambda-case\ 481}#
-                                                     #{e\ 753}#
-                                                     #{r\ 754}#
-                                                     #{w\ 755}#
-                                                     #{s\ 756}#
-                                                     #{mod\ 757}#
-                                                     #{get-formals\ 758}#
-                                                     (map (lambda (#{tmp\ 984}#
-                                                                   #{tmp\ 983}#
-                                                                   #{tmp\ 
982}#)
-                                                            (cons #{tmp\ 982}#
-                                                                  (cons #{tmp\ 
983}#
-                                                                        #{tmp\ 
984}#)))
-                                                          #{e2*\ 956}#
-                                                          #{e1*\ 955}#
-                                                          #{args*\ 954}#)))
-                                                 (lambda (#{meta*\ 986}#
-                                                          #{else*\ 987}#)
-                                                   (values
-                                                     (append
-                                                       #{meta\ 966}#
-                                                       #{meta*\ 986}#)
-                                                     (#{build-lambda-case\ 
318}#
-                                                       #{s\ 756}#
-                                                       #{req\ 967}#
-                                                       #{opt\ 968}#
-                                                       #{rest\ 969}#
-                                                       #{kw\ 970}#
-                                                       #{inits\ 971}#
-                                                       #{vars\ 972}#
-                                                       #{body\ 973}#
-                                                       #{else*\ 987}#)))))))))
-                                     #{tmp\ 944}#)
-                              (syntax-violation
+                                           (#{chi-lambda-case\ 496}#
+                                             #{e\ 768}#
+                                             #{r\ 769}#
+                                             #{w\ 770}#
+                                             #{s\ 771}#
+                                             #{mod\ 772}#
+                                             #{get-formals\ 773}#
+                                             (map (lambda (#{tmp\ 999}#
+                                                           #{tmp\ 998}#
+                                                           #{tmp\ 997}#)
+                                                    (cons #{tmp\ 997}#
+                                                          (cons #{tmp\ 998}#
+                                                                #{tmp\ 999}#)))
+                                                  #{e2*\ 971}#
+                                                  #{e1*\ 970}#
+                                                  #{args*\ 969}#)))
+                                         (lambda (#{meta*\ 1001}#
+                                                  #{else*\ 1002}#)
+                                           (values
+                                             (append
+                                               #{meta\ 981}#
+                                               #{meta*\ 1001}#)
+                                             (#{build-lambda-case\ 333}#
+                                               #{s\ 771}#
+                                               #{req\ 982}#
+                                               #{opt\ 983}#
+                                               #{rest\ 984}#
+                                               #{kw\ 985}#
+                                               #{inits\ 986}#
+                                               #{vars\ 987}#
+                                               #{body\ 988}#
+                                               #{else*\ 1002}#)))))))))
+                             #{tmp\ 959}#)
+                           (syntax-violation
+                             #f
+                             "source expression failed to match any pattern"
+                             #{tmp\ 957}#))))))))))
+         (#{lambda*-formals\ 494}#
+           (lambda (#{orig-args\ 1005}#)
+             (letrec*
+               ((#{check\ 1016}#
+                  (lambda (#{req\ 1017}#
+                           #{opt\ 1018}#
+                           #{rest\ 1019}#
+                           #{kw\ 1020}#)
+                    (if (#{distinct-bound-ids?\ 452}#
+                          (append
+                            #{req\ 1017}#
+                            (map car #{opt\ 1018}#)
+                            (if #{rest\ 1019}#
+                              (list #{rest\ 1019}#)
+                              '())
+                            (if (pair? #{kw\ 1020}#)
+                              (map cadr (cdr #{kw\ 1020}#))
+                              '())))
+                      (values
+                        #{req\ 1017}#
+                        #{opt\ 1018}#
+                        #{rest\ 1019}#
+                        #{kw\ 1020}#)
+                      (syntax-violation
+                        'lambda*
+                        "duplicate identifier in argument list"
+                        #{orig-args\ 1005}#))))
+                (#{rest\ 1014}#
+                  (lambda (#{args\ 1028}#
+                           #{req\ 1029}#
+                           #{opt\ 1030}#
+                           #{kw\ 1031}#)
+                    (let ((#{tmp\ 1036}# #{args\ 1028}#))
+                      (let ((#{tmp\ 1037}# (list #{tmp\ 1036}#)))
+                        (if (if #{tmp\ 1037}#
+                              (@apply
+                                (lambda (#{r\ 1039}#)
+                                  (#{id?\ 387}# #{r\ 1039}#))
+                                #{tmp\ 1037}#)
+                              #f)
+                          (@apply
+                            (lambda (#{r\ 1041}#)
+                              (#{check\ 1016}#
+                                #{req\ 1029}#
+                                #{opt\ 1030}#
+                                #{r\ 1041}#
+                                #{kw\ 1031}#))
+                            #{tmp\ 1037}#)
+                          (let ((#{else\ 1043}# #{tmp\ 1036}#))
+                            (syntax-violation
+                              'lambda*
+                              "invalid rest argument"
+                              #{orig-args\ 1005}#
+                              #{args\ 1028}#)))))))
+                (#{key\ 1012}#
+                  (lambda (#{args\ 1044}#
+                           #{req\ 1045}#
+                           #{opt\ 1046}#
+                           #{rkey\ 1047}#)
+                    (let ((#{tmp\ 1052}# #{args\ 1044}#))
+                      (let ((#{tmp\ 1053}#
+                              ($sc-dispatch #{tmp\ 1052}# (quote ()))))
+                        (if #{tmp\ 1053}#
+                          (@apply
+                            (lambda ()
+                              (#{check\ 1016}#
+                                #{req\ 1045}#
+                                #{opt\ 1046}#
                                 #f
-                                "source expression failed to match any pattern"
-                                #{tmp\ 942}#)))
-                          ($sc-dispatch
-                            #{tmp\ 942}#
-                            '((any any . each-any)
-                              .
-                              #(each (any any . each-any)))))))
-                     ($sc-dispatch #{tmp\ 942}# (quote ()))))
-                  #{clauses\ 759}#))))
-           (#{lambda*-formals\ 479}#
-             (lambda (#{orig-args\ 990}#)
-               (letrec ((#{check\ 1001}#
-                          (lambda (#{req\ 1002}#
-                                   #{opt\ 1003}#
-                                   #{rest\ 1004}#
-                                   #{kw\ 1005}#)
-                            (if (#{distinct-bound-ids?\ 437}#
-                                  (append
-                                    #{req\ 1002}#
-                                    (map car #{opt\ 1003}#)
-                                    (if #{rest\ 1004}#
-                                      (list #{rest\ 1004}#)
-                                      '())
-                                    (if (pair? #{kw\ 1005}#)
-                                      (map cadr (cdr #{kw\ 1005}#))
-                                      '())))
-                              (values
-                                #{req\ 1002}#
-                                #{opt\ 1003}#
-                                #{rest\ 1004}#
-                                #{kw\ 1005}#)
-                              (syntax-violation
-                                'lambda*
-                                "duplicate identifier in argument list"
-                                #{orig-args\ 990}#))))
-                        (#{rest\ 999}#
-                          (lambda (#{args\ 1013}#
-                                   #{req\ 1014}#
-                                   #{opt\ 1015}#
-                                   #{kw\ 1016}#)
-                            ((lambda (#{tmp\ 1021}#)
-                               ((lambda (#{tmp\ 1022}#)
-                                  (if (if #{tmp\ 1022}#
-                                        (apply (lambda (#{r\ 1024}#)
-                                                 (#{id?\ 372}# #{r\ 1024}#))
-                                               #{tmp\ 1022}#)
-                                        #f)
-                                    (apply (lambda (#{r\ 1026}#)
-                                             (#{check\ 1001}#
-                                               #{req\ 1014}#
-                                               #{opt\ 1015}#
-                                               #{r\ 1026}#
-                                               #{kw\ 1016}#))
-                                           #{tmp\ 1022}#)
-                                    ((lambda (#{else\ 1028}#)
-                                       (syntax-violation
-                                         'lambda*
-                                         "invalid rest argument"
-                                         #{orig-args\ 990}#
-                                         #{args\ 1013}#))
-                                     #{tmp\ 1021}#)))
-                                (list #{tmp\ 1021}#)))
-                             #{args\ 1013}#)))
-                        (#{key\ 997}#
-                          (lambda (#{args\ 1029}#
-                                   #{req\ 1030}#
-                                   #{opt\ 1031}#
-                                   #{rkey\ 1032}#)
-                            ((lambda (#{tmp\ 1037}#)
-                               ((lambda (#{tmp\ 1038}#)
-                                  (if #{tmp\ 1038}#
-                                    (apply (lambda ()
-                                             (#{check\ 1001}#
-                                               #{req\ 1030}#
-                                               #{opt\ 1031}#
-                                               #f
-                                               (cons #f
-                                                     (reverse
-                                                       #{rkey\ 1032}#))))
-                                           #{tmp\ 1038}#)
-                                    ((lambda (#{tmp\ 1039}#)
-                                       (if (if #{tmp\ 1039}#
-                                             (apply (lambda (#{a\ 1042}#
-                                                             #{b\ 1043}#)
-                                                      (#{id?\ 372}#
-                                                        #{a\ 1042}#))
-                                                    #{tmp\ 1039}#)
-                                             #f)
-                                         (apply (lambda (#{a\ 1046}#
-                                                         #{b\ 1047}#)
-                                                  ((lambda (#{tmp\ 1049}#)
-                                                     ((lambda (#{k\ 1051}#)
-                                                        (#{key\ 997}#
-                                                          #{b\ 1047}#
-                                                          #{req\ 1030}#
-                                                          #{opt\ 1031}#
-                                                          (cons (cons #{k\ 
1051}#
-                                                                      (cons 
#{a\ 1046}#
-                                                                            
'(#(syntax-object
-                                                                               
 #f
-                                                                               
 ((top)
-                                                                               
  #(ribcage
-                                                                               
    #(k)
-                                                                               
    #((top))
-                                                                               
    #("i1050"))
-                                                                               
  #(ribcage
-                                                                               
    #(a
-                                                                               
      b)
-                                                                               
    #((top)
-                                                                               
      (top))
-                                                                               
    #("i1044"
-                                                                               
      "i1045"))
-                                                                               
  #(ribcage
-                                                                               
    ()
-                                                                               
    ()
-                                                                               
    ())
-                                                                               
  #(ribcage
-                                                                               
    #(args
-                                                                               
      req
-                                                                               
      opt
-                                                                               
      rkey)
-                                                                               
    #((top)
-                                                                               
      (top)
-                                                                               
      (top)
-                                                                               
      (top))
-                                                                               
    #("i1033"
-                                                                               
      "i1034"
-                                                                               
      "i1035"
-                                                                               
      "i1036"))
-                                                                               
  #(ribcage
-                                                                               
    (check rest
-                                                                               
           key
-                                                                               
           opt
-                                                                               
           req)
-                                                                               
    ((top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top))
-                                                                               
    ("i1000"
-                                                                               
     "i998"
-                                                                               
     "i996"
-                                                                               
     "i994"
-                                                                               
     "i992"))
-                                                                               
  #(ribcage
-                                                                               
    #(orig-args)
-                                                                               
    #((top))
-                                                                               
    #("i991"))
-                                                                               
  #(ribcage
-                                                                               
    (lambda-var-list
-                                                                               
      gen-var
-                                                                               
      strip
-                                                                               
      chi-lambda-case
-                                                                               
      lambda*-formals
-                                                                               
      chi-simple-lambda
-                                                                               
      lambda-formals
-                                                                               
      ellipsis?
-                                                                               
      chi-void
-                                                                               
      eval-local-transformer
-                                                                               
      chi-local-syntax
-                                                                               
      chi-body
-                                                                               
      chi-macro
-                                                                               
      chi-application
-                                                                               
      chi-expr
-                                                                               
      chi
-                                                                               
      chi-top
-                                                                               
      syntax-type
-                                                                               
      chi-when-list
-                                                                               
      chi-install-global
-                                                                               
      chi-top-sequence
-                                                                               
      chi-sequence
-                                                                               
      source-wrap
-                                                                               
      wrap
-                                                                               
      bound-id-member?
-                                                                               
      distinct-bound-ids?
-                                                                               
      valid-bound-ids?
-                                                                               
      bound-id=?
-                                                                               
      free-id=?
-                                                                               
      id-var-name
-                                                                               
      same-marks?
-                                                                               
      join-marks
-                                                                               
      join-wraps
-                                                                               
      smart-append
-                                                                               
      make-binding-wrap
-                                                                               
      extend-ribcage!
-                                                                               
      make-empty-ribcage
-                                                                               
      new-mark
-                                                                               
      anti-mark
-                                                                               
      the-anti-mark
-                                                                               
      top-marked?
-                                                                               
      top-wrap
-                                                                               
      empty-wrap
-                                                                               
      set-ribcage-labels!
-                                                                               
      set-ribcage-marks!
-                                                                               
      set-ribcage-symnames!
-                                                                               
      ribcage-labels
-                                                                               
      ribcage-marks
-                                                                               
      ribcage-symnames
-                                                                               
      ribcage?
-                                                                               
      make-ribcage
-                                                                               
      gen-labels
-                                                                               
      gen-label
-                                                                               
      make-rename
-                                                                               
      rename-marks
-                                                                               
      rename-new
-                                                                               
      rename-old
-                                                                               
      subst-rename?
-                                                                               
      wrap-subst
-                                                                               
      wrap-marks
-                                                                               
      make-wrap
-                                                                               
      id-sym-name&marks
-                                                                               
      id-sym-name
-                                                                               
      id?
-                                                                               
      nonsymbol-id?
-                                                                               
      global-extend
-                                                                               
      lookup
-                                                                               
      macros-only-env
-                                                                               
      extend-var-env
-                                                                               
      extend-env
-                                                                               
      null-env
-                                                                               
      binding-value
-                                                                               
      binding-type
-                                                                               
      make-binding
-                                                                               
      arg-check
-                                                                               
      source-annotation
-                                                                               
      no-source
-                                                                               
      set-syntax-object-module!
-                                                                               
      set-syntax-object-wrap!
-                                                                               
      set-syntax-object-expression!
-                                                                               
      syntax-object-module
-                                                                               
      syntax-object-wrap
-                                                                               
      syntax-object-expression
-                                                                               
      syntax-object?
-                                                                               
      make-syntax-object
-                                                                               
      build-lexical-var
-                                                                               
      build-letrec
-                                                                               
      build-named-let
-                                                                               
      build-let
-                                                                               
      build-sequence
-                                                                               
      build-data
-                                                                               
      build-primref
-                                                                               
      build-lambda-case
-                                                                               
      build-case-lambda
-                                                                               
      build-simple-lambda
-                                                                               
      build-global-definition
-                                                                               
      maybe-name-value!
-                                                                               
      build-global-assignment
-                                                                               
      build-global-reference
-                                                                               
      analyze-variable
-                                                                               
      build-lexical-assignment
-                                                                               
      build-lexical-reference
-                                                                               
      build-dynlet
-                                                                               
      build-conditional
-                                                                               
      build-application
-                                                                               
      build-void
-                                                                               
      decorate-source
-                                                                               
      get-global-definition-hook
-                                                                               
      put-global-definition-hook
-                                                                               
      gensym-hook
-                                                                               
      local-eval-hook
-                                                                               
      top-level-eval-hook
-                                                                               
      fx<
-                                                                               
      fx=
-                                                                               
      fx-
-                                                                               
      fx+
-                                                                               
      set-lambda-meta!
-                                                                               
      lambda-meta
-                                                                               
      lambda?
-                                                                               
      make-dynlet
-                                                                               
      make-letrec
-                                                                               
      make-let
-                                                                               
      make-lambda-case
-                                                                               
      make-lambda
-                                                                               
      make-sequence
-                                                                               
      make-application
-                                                                               
      make-conditional
-                                                                               
      make-toplevel-define
-                                                                               
      make-toplevel-set
-                                                                               
      make-toplevel-ref
-                                                                               
      make-module-set
-                                                                               
      make-module-ref
-                                                                               
      make-lexical-set
-                                                                               
      make-lexical-ref
-                                                                               
      make-primitive-ref
-                                                                               
      make-const
-                                                                               
      make-void)
-                                                                               
    ((top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top))
-                                                                               
    ("i486"
-                                                                               
     "i484"
-                                                                               
     "i482"
-                                                                               
     "i480"
-                                                                               
     "i478"
-                                                                               
     "i476"
-                                                                               
     "i474"
-                                                                               
     "i472"
-                                                                               
     "i470"
-                                                                               
     "i468"
-                                                                               
     "i466"
-                                                                               
     "i464"
-                                                                               
     "i462"
-                                                                               
     "i460"
-                                                                               
     "i458"
-                                                                               
     "i456"
-                                                                               
     "i454"
-                                                                               
     "i452"
-                                                                               
     "i450"
-                                                                               
     "i448"
-                                                                               
     "i446"
-                                                                               
     "i444"
-                                                                               
     "i442"
-                                                                               
     "i440"
-                                                                               
     "i438"
-                                                                               
     "i436"
-                                                                               
     "i434"
-                                                                               
     "i432"
-                                                                               
     "i430"
-                                                                               
     "i428"
-                                                                               
     "i426"
-                                                                               
     "i424"
-                                                                               
     "i422"
-                                                                               
     "i420"
-                                                                               
     "i418"
-                                                                               
     "i416"
-                                                                               
     "i415"
-                                                                               
     "i414"
-                                                                               
     "i412"
-                                                                               
     "i411"
-                                                                               
     "i410"
-                                                                               
     "i409"
-                                                                               
     "i408"
-                                                                               
     "i406"
-                                                                               
     "i404"
-                                                                               
     "i402"
-                                                                               
     "i400"
-                                                                               
     "i398"
-                                                                               
     "i396"
-                                                                               
     "i394"
-                                                                               
     "i392"
-                                                                               
     "i389"
-                                                                               
     "i387"
-                                                                               
     "i386"
-                                                                               
     "i385"
-                                                                               
     "i384"
-                                                                               
     "i383"
-                                                                               
     "i382"
-                                                                               
     "i380"
-                                                                               
     "i378"
-                                                                               
     "i376"
-                                                                               
     "i374"
-                                                                               
     "i373"
-                                                                               
     "i371"
-                                                                               
     "i369"
-                                                                               
     "i367"
-                                                                               
     "i365"
-                                                                               
     "i363"
-                                                                               
     "i361"
-                                                                               
     "i359"
-                                                                               
     "i358"
-                                                                               
     "i356"
-                                                                               
     "i354"
-                                                                               
     "i353"
-                                                                               
     "i352"
-                                                                               
     "i350"
-                                                                               
     "i349"
-                                                                               
     "i347"
-                                                                               
     "i345"
-                                                                               
     "i343"
-                                                                               
     "i341"
-                                                                               
     "i339"
-                                                                               
     "i337"
-                                                                               
     "i335"
-                                                                               
     "i333"
-                                                                               
     "i331"
-                                                                               
     "i329"
-                                                                               
     "i327"
-                                                                               
     "i325"
-                                                                               
     "i323"
-                                                                               
     "i321"
-                                                                               
     "i319"
-                                                                               
     "i317"
-                                                                               
     "i315"
-                                                                               
     "i313"
-                                                                               
     "i311"
-                                                                               
     "i309"
-                                                                               
     "i307"
-                                                                               
     "i305"
-                                                                               
     "i303"
-                                                                               
     "i301"
-                                                                               
     "i299"
-                                                                               
     "i297"
-                                                                               
     "i295"
-                                                                               
     "i293"
-                                                                               
     "i291"
-                                                                               
     "i289"
-                                                                               
     "i287"
-                                                                               
     "i285"
-                                                                               
     "i284"
-                                                                               
     "i282"
-                                                                               
     "i280"
-                                                                               
     "i278"
-                                                                               
     "i276"
-                                                                               
     "i274"
-                                                                               
     "i272"
-                                                                               
     "i270"
-                                                                               
     "i268"
-                                                                               
     "i266"
-                                                                               
     "i263"
-                                                                               
     "i261"
-                                                                               
     "i259"
-                                                                               
     "i257"
-                                                                               
     "i255"
-                                                                               
     "i253"
-                                                                               
     "i251"
-                                                                               
     "i249"
-                                                                               
     "i247"
-                                                                               
     "i245"
-                                                                               
     "i243"
-                                                                               
     "i241"
-                                                                               
     "i239"
-                                                                               
     "i237"
-                                                                               
     "i235"
-                                                                               
     "i233"
-                                                                               
     "i231"
-                                                                               
     "i229"))
-                                                                               
  #(ribcage
-                                                                               
    (define-structure
-                                                                               
      define-expansion-accessors
-                                                                               
      define-expansion-constructors
-                                                                               
      and-map*)
-                                                                               
    ((top)
-                                                                               
     (top)
-                                                                               
     (top)
-                                                                               
     (top))
-                                                                               
    ("i23"
-                                                                               
     "i22"
-                                                                               
     "i21"
-                                                                               
     "i19")))
-                                                                               
 (hygiene
-                                                                               
   guile)))))
-                                                                #{rkey\ 
1032}#)))
-                                                      #{tmp\ 1049}#))
-                                                   (symbol->keyword
-                                                     (syntax->datum
-                                                       #{a\ 1046}#))))
-                                                #{tmp\ 1039}#)
-                                         ((lambda (#{tmp\ 1052}#)
-                                            (if (if #{tmp\ 1052}#
-                                                  (apply (lambda (#{a\ 1056}#
-                                                                  #{init\ 
1057}#
-                                                                  #{b\ 1058}#)
-                                                           (#{id?\ 372}#
-                                                             #{a\ 1056}#))
-                                                         #{tmp\ 1052}#)
-                                                  #f)
-                                              (apply (lambda (#{a\ 1062}#
-                                                              #{init\ 1063}#
-                                                              #{b\ 1064}#)
-                                                       ((lambda (#{tmp\ 1066}#)
-                                                          ((lambda (#{k\ 
1068}#)
-                                                             (#{key\ 997}#
-                                                               #{b\ 1064}#
-                                                               #{req\ 1030}#
-                                                               #{opt\ 1031}#
-                                                               (cons (list 
#{k\ 1068}#
-                                                                           
#{a\ 1062}#
-                                                                           
#{init\ 1063}#)
-                                                                     #{rkey\ 
1032}#)))
-                                                           #{tmp\ 1066}#))
-                                                        (symbol->keyword
-                                                          (syntax->datum
-                                                            #{a\ 1062}#))))
-                                                     #{tmp\ 1052}#)
-                                              ((lambda (#{tmp\ 1069}#)
-                                                 (if (if #{tmp\ 1069}#
-                                                       (apply (lambda (#{a\ 
1074}#
-                                                                       #{init\ 
1075}#
-                                                                       #{k\ 
1076}#
-                                                                       #{b\ 
1077}#)
-                                                                (if (#{id?\ 
372}#
-                                                                      #{a\ 
1074}#)
-                                                                  (keyword?
-                                                                    
(syntax->datum
-                                                                      #{k\ 
1076}#))
-                                                                  #f))
-                                                              #{tmp\ 1069}#)
-                                                       #f)
-                                                   (apply (lambda (#{a\ 1084}#
-                                                                   #{init\ 
1085}#
-                                                                   #{k\ 1086}#
-                                                                   #{b\ 1087}#)
-                                                            (#{key\ 997}#
-                                                              #{b\ 1087}#
-                                                              #{req\ 1030}#
-                                                              #{opt\ 1031}#
-                                                              (cons (list #{k\ 
1086}#
-                                                                          #{a\ 
1084}#
-                                                                          
#{init\ 1085}#)
-                                                                    #{rkey\ 
1032}#)))
-                                                          #{tmp\ 1069}#)
-                                                   ((lambda (#{tmp\ 1088}#)
-                                                      (if (if #{tmp\ 1088}#
-                                                            (apply (lambda 
(#{aok\ 1090}#)
-                                                                     (eq? 
(syntax->datum
-                                                                            
#{aok\ 1090}#)
-                                                                          
#:allow-other-keys))
-                                                                   #{tmp\ 
1088}#)
-                                                            #f)
-                                                        (apply (lambda (#{aok\ 
1092}#)
-                                                                 (#{check\ 
1001}#
-                                                                   #{req\ 
1030}#
-                                                                   #{opt\ 
1031}#
-                                                                   #f
-                                                                   (cons #t
-                                                                         
(reverse
-                                                                           
#{rkey\ 1032}#))))
-                                                               #{tmp\ 1088}#)
-                                                        ((lambda (#{tmp\ 
1093}#)
-                                                           (if (if #{tmp\ 
1093}#
-                                                                 (apply 
(lambda (#{aok\ 1097}#
-                                                                               
  #{a\ 1098}#
-                                                                               
  #{b\ 1099}#)
-                                                                          (if 
(eq? (syntax->datum
-                                                                               
      #{aok\ 1097}#)
-                                                                               
    #:allow-other-keys)
-                                                                            
(eq? (syntax->datum
-                                                                               
    #{a\ 1098}#)
-                                                                               
  #:rest)
-                                                                            
#f))
-                                                                        #{tmp\ 
1093}#)
-                                                                 #f)
-                                                             (apply (lambda 
(#{aok\ 1105}#
-                                                                             
#{a\ 1106}#
-                                                                             
#{b\ 1107}#)
-                                                                      (#{rest\ 
999}#
-                                                                        #{b\ 
1107}#
-                                                                        #{req\ 
1030}#
-                                                                        #{opt\ 
1031}#
-                                                                        (cons 
#t
-                                                                              
(reverse
-                                                                               
 #{rkey\ 1032}#))))
-                                                                    #{tmp\ 
1093}#)
-                                                             ((lambda (#{tmp\ 
1108}#)
-                                                                (if (if #{tmp\ 
1108}#
-                                                                      (apply 
(lambda (#{aok\ 1111}#
-                                                                               
       #{r\ 1112}#)
-                                                                               
(if (eq? (syntax->datum
-                                                                               
           #{aok\ 1111}#)
-                                                                               
         #:allow-other-keys)
-                                                                               
  (#{id?\ 372}#
-                                                                               
    #{r\ 1112}#)
-                                                                               
  #f))
-                                                                             
#{tmp\ 1108}#)
-                                                                      #f)
-                                                                  (apply 
(lambda (#{aok\ 1117}#
-                                                                               
   #{r\ 1118}#)
-                                                                           
(#{rest\ 999}#
-                                                                             
#{r\ 1118}#
-                                                                             
#{req\ 1030}#
-                                                                             
#{opt\ 1031}#
-                                                                             
(cons #t
-                                                                               
    (reverse
-                                                                               
      #{rkey\ 1032}#))))
-                                                                         
#{tmp\ 1108}#)
-                                                                  ((lambda 
(#{tmp\ 1119}#)
-                                                                     (if (if 
#{tmp\ 1119}#
-                                                                           
(apply (lambda (#{a\ 1122}#
-                                                                               
            #{b\ 1123}#)
-                                                                               
     (eq? (syntax->datum
-                                                                               
            #{a\ 1122}#)
-                                                                               
          #:rest))
-                                                                               
   #{tmp\ 1119}#)
-                                                                           #f)
-                                                                       (apply 
(lambda (#{a\ 1126}#
-                                                                               
        #{b\ 1127}#)
-                                                                               
 (#{rest\ 999}#
-                                                                               
   #{b\ 1127}#
-                                                                               
   #{req\ 1030}#
-                                                                               
   #{opt\ 1031}#
-                                                                               
   (cons #f
-                                                                               
         (reverse
-                                                                               
           #{rkey\ 1032}#))))
-                                                                              
#{tmp\ 1119}#)
-                                                                       
((lambda (#{tmp\ 1128}#)
-                                                                          (if 
(if #{tmp\ 1128}#
-                                                                               
 (apply (lambda (#{r\ 1130}#)
-                                                                               
          (#{id?\ 372}#
-                                                                               
            #{r\ 1130}#))
-                                                                               
        #{tmp\ 1128}#)
-                                                                               
 #f)
-                                                                            
(apply (lambda (#{r\ 1132}#)
-                                                                               
      (#{rest\ 999}#
-                                                                               
        #{r\ 1132}#
-                                                                               
        #{req\ 1030}#
-                                                                               
        #{opt\ 1031}#
-                                                                               
        (cons #f
-                                                                               
              (reverse
-                                                                               
                #{rkey\ 1032}#))))
-                                                                               
    #{tmp\ 1128}#)
-                                                                            
((lambda (#{else\ 1134}#)
-                                                                               
(syntax-violation
-                                                                               
  'lambda*
-                                                                               
  "invalid keyword argument list"
-                                                                               
  #{orig-args\ 990}#
-                                                                               
  #{args\ 1029}#))
-                                                                             
#{tmp\ 1037}#)))
-                                                                        (list 
#{tmp\ 1037}#))))
-                                                                   
($sc-dispatch
-                                                                     #{tmp\ 
1037}#
-                                                                     '(any 
any)))))
-                                                              ($sc-dispatch
-                                                                #{tmp\ 1037}#
-                                                                '(any .
-                                                                      any)))))
-                                                         ($sc-dispatch
-                                                           #{tmp\ 1037}#
-                                                           '(any any any)))))
-                                                    ($sc-dispatch
-                                                      #{tmp\ 1037}#
-                                                      '(any)))))
-                                               ($sc-dispatch
-                                                 #{tmp\ 1037}#
-                                                 '((any any any) . any)))))
+                                (cons #f (reverse #{rkey\ 1047}#))))
+                            #{tmp\ 1053}#)
+                          (let ((#{tmp\ 1054}#
+                                  ($sc-dispatch
+                                    #{tmp\ 1052}#
+                                    '(any . any))))
+                            (if (if #{tmp\ 1054}#
+                                  (@apply
+                                    (lambda (#{a\ 1057}# #{b\ 1058}#)
+                                      (#{id?\ 387}# #{a\ 1057}#))
+                                    #{tmp\ 1054}#)
+                                  #f)
+                              (@apply
+                                (lambda (#{a\ 1061}# #{b\ 1062}#)
+                                  (let ((#{tmp\ 1064}#
+                                          (symbol->keyword
+                                            (syntax->datum #{a\ 1061}#))))
+                                    (let ((#{k\ 1066}# #{tmp\ 1064}#))
+                                      (#{key\ 1012}#
+                                        #{b\ 1062}#
+                                        #{req\ 1045}#
+                                        #{opt\ 1046}#
+                                        (cons (cons #{k\ 1066}#
+                                                    (cons #{a\ 1061}#
+                                                          '(#(syntax-object
+                                                              #f
+                                                              ((top)
+                                                               #(ribcage
+                                                                 #(k)
+                                                                 #((top))
+                                                                 #("i1065"))
+                                                               #(ribcage
+                                                                 #(a b)
+                                                                 #((top) (top))
+                                                                 #("i1059"
+                                                                   "i1060"))
+                                                               #(ribcage
+                                                                 ()
+                                                                 ()
+                                                                 ())
+                                                               #(ribcage
+                                                                 #(args
+                                                                   req
+                                                                   opt
+                                                                   rkey)
+                                                                 #((top)
+                                                                   (top)
+                                                                   (top)
+                                                                   (top))
+                                                                 #("i1048"
+                                                                   "i1049"
+                                                                   "i1050"
+                                                                   "i1051"))
+                                                               #(ribcage
+                                                                 (check rest
+                                                                        key
+                                                                        opt
+                                                                        req)
+                                                                 ((top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top))
+                                                                 ("i1015"
+                                                                  "i1013"
+                                                                  "i1011"
+                                                                  "i1009"
+                                                                  "i1007"))
+                                                               #(ribcage
+                                                                 #(orig-args)
+                                                                 #((top))
+                                                                 #("i1006"))
+                                                               #(ribcage
+                                                                 
(lambda-var-list
+                                                                   gen-var
+                                                                   strip
+                                                                   
chi-lambda-case
+                                                                   
lambda*-formals
+                                                                   
chi-simple-lambda
+                                                                   
lambda-formals
+                                                                   ellipsis?
+                                                                   chi-void
+                                                                   
eval-local-transformer
+                                                                   
chi-local-syntax
+                                                                   chi-body
+                                                                   chi-macro
+                                                                   
chi-application
+                                                                   chi-expr
+                                                                   chi
+                                                                   chi-top
+                                                                   syntax-type
+                                                                   
chi-when-list
+                                                                   
chi-install-global
+                                                                   
chi-top-sequence
+                                                                   chi-sequence
+                                                                   source-wrap
+                                                                   wrap
+                                                                   
bound-id-member?
+                                                                   
distinct-bound-ids?
+                                                                   
valid-bound-ids?
+                                                                   bound-id=?
+                                                                   free-id=?
+                                                                   id-var-name
+                                                                   same-marks?
+                                                                   join-marks
+                                                                   join-wraps
+                                                                   smart-append
+                                                                   
make-binding-wrap
+                                                                   
extend-ribcage!
+                                                                   
make-empty-ribcage
+                                                                   new-mark
+                                                                   anti-mark
+                                                                   
the-anti-mark
+                                                                   top-marked?
+                                                                   top-wrap
+                                                                   empty-wrap
+                                                                   
set-ribcage-labels!
+                                                                   
set-ribcage-marks!
+                                                                   
set-ribcage-symnames!
+                                                                   
ribcage-labels
+                                                                   
ribcage-marks
+                                                                   
ribcage-symnames
+                                                                   ribcage?
+                                                                   make-ribcage
+                                                                   gen-labels
+                                                                   gen-label
+                                                                   make-rename
+                                                                   rename-marks
+                                                                   rename-new
+                                                                   rename-old
+                                                                   
subst-rename?
+                                                                   wrap-subst
+                                                                   wrap-marks
+                                                                   make-wrap
+                                                                   
id-sym-name&marks
+                                                                   id-sym-name
+                                                                   id?
+                                                                   
nonsymbol-id?
+                                                                   
global-extend
+                                                                   lookup
+                                                                   
macros-only-env
+                                                                   
extend-var-env
+                                                                   extend-env
+                                                                   null-env
+                                                                   
binding-value
+                                                                   binding-type
+                                                                   make-binding
+                                                                   arg-check
+                                                                   
source-annotation
+                                                                   no-source
+                                                                   
set-syntax-object-module!
+                                                                   
set-syntax-object-wrap!
+                                                                   
set-syntax-object-expression!
+                                                                   
syntax-object-module
+                                                                   
syntax-object-wrap
+                                                                   
syntax-object-expression
+                                                                   
syntax-object?
+                                                                   
make-syntax-object
+                                                                   
build-lexical-var
+                                                                   build-letrec
+                                                                   
build-named-let
+                                                                   build-let
+                                                                   
build-sequence
+                                                                   build-data
+                                                                   
build-primref
+                                                                   
build-lambda-case
+                                                                   
build-case-lambda
+                                                                   
build-simple-lambda
+                                                                   
build-global-definition
+                                                                   
maybe-name-value!
+                                                                   
build-global-assignment
+                                                                   
build-global-reference
+                                                                   
analyze-variable
+                                                                   
build-lexical-assignment
+                                                                   
build-lexical-reference
+                                                                   build-dynlet
+                                                                   
build-conditional
+                                                                   
build-application
+                                                                   build-void
+                                                                   
decorate-source
+                                                                   
get-global-definition-hook
+                                                                   
put-global-definition-hook
+                                                                   gensym-hook
+                                                                   
local-eval-hook
+                                                                   
top-level-eval-hook
+                                                                   fx<
+                                                                   fx=
+                                                                   fx-
+                                                                   fx+
+                                                                   
set-lambda-meta!
+                                                                   lambda-meta
+                                                                   lambda?
+                                                                   make-dynlet
+                                                                   make-letrec
+                                                                   make-let
+                                                                   
make-lambda-case
+                                                                   make-lambda
+                                                                   
make-sequence
+                                                                   
make-application
+                                                                   
make-conditional
+                                                                   
make-toplevel-define
+                                                                   
make-toplevel-set
+                                                                   
make-toplevel-ref
+                                                                   
make-module-set
+                                                                   
make-module-ref
+                                                                   
make-lexical-set
+                                                                   
make-lexical-ref
+                                                                   
make-primitive-ref
+                                                                   make-const
+                                                                   make-void)
+                                                                 ((top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top))
+                                                                 ("i501"
+                                                                  "i499"
+                                                                  "i497"
+                                                                  "i495"
+                                                                  "i493"
+                                                                  "i491"
+                                                                  "i489"
+                                                                  "i487"
+                                                                  "i485"
+                                                                  "i483"
+                                                                  "i481"
+                                                                  "i479"
+                                                                  "i477"
+                                                                  "i475"
+                                                                  "i473"
+                                                                  "i471"
+                                                                  "i469"
+                                                                  "i467"
+                                                                  "i465"
+                                                                  "i463"
+                                                                  "i461"
+                                                                  "i459"
+                                                                  "i457"
+                                                                  "i455"
+                                                                  "i453"
+                                                                  "i451"
+                                                                  "i449"
+                                                                  "i447"
+                                                                  "i445"
+                                                                  "i443"
+                                                                  "i441"
+                                                                  "i439"
+                                                                  "i437"
+                                                                  "i435"
+                                                                  "i433"
+                                                                  "i431"
+                                                                  "i430"
+                                                                  "i429"
+                                                                  "i427"
+                                                                  "i426"
+                                                                  "i425"
+                                                                  "i424"
+                                                                  "i423"
+                                                                  "i421"
+                                                                  "i419"
+                                                                  "i417"
+                                                                  "i415"
+                                                                  "i413"
+                                                                  "i411"
+                                                                  "i409"
+                                                                  "i407"
+                                                                  "i404"
+                                                                  "i402"
+                                                                  "i401"
+                                                                  "i400"
+                                                                  "i399"
+                                                                  "i398"
+                                                                  "i397"
+                                                                  "i395"
+                                                                  "i393"
+                                                                  "i391"
+                                                                  "i389"
+                                                                  "i388"
+                                                                  "i386"
+                                                                  "i384"
+                                                                  "i382"
+                                                                  "i380"
+                                                                  "i378"
+                                                                  "i376"
+                                                                  "i374"
+                                                                  "i373"
+                                                                  "i371"
+                                                                  "i369"
+                                                                  "i368"
+                                                                  "i367"
+                                                                  "i365"
+                                                                  "i364"
+                                                                  "i362"
+                                                                  "i360"
+                                                                  "i358"
+                                                                  "i356"
+                                                                  "i354"
+                                                                  "i352"
+                                                                  "i350"
+                                                                  "i348"
+                                                                  "i346"
+                                                                  "i344"
+                                                                  "i342"
+                                                                  "i340"
+                                                                  "i338"
+                                                                  "i336"
+                                                                  "i334"
+                                                                  "i332"
+                                                                  "i330"
+                                                                  "i328"
+                                                                  "i326"
+                                                                  "i324"
+                                                                  "i322"
+                                                                  "i320"
+                                                                  "i318"
+                                                                  "i316"
+                                                                  "i314"
+                                                                  "i312"
+                                                                  "i310"
+                                                                  "i308"
+                                                                  "i306"
+                                                                  "i304"
+                                                                  "i302"
+                                                                  "i300"
+                                                                  "i299"
+                                                                  "i297"
+                                                                  "i295"
+                                                                  "i293"
+                                                                  "i291"
+                                                                  "i289"
+                                                                  "i287"
+                                                                  "i285"
+                                                                  "i283"
+                                                                  "i281"
+                                                                  "i278"
+                                                                  "i276"
+                                                                  "i274"
+                                                                  "i272"
+                                                                  "i270"
+                                                                  "i268"
+                                                                  "i266"
+                                                                  "i264"
+                                                                  "i262"
+                                                                  "i260"
+                                                                  "i258"
+                                                                  "i256"
+                                                                  "i254"
+                                                                  "i252"
+                                                                  "i250"
+                                                                  "i248"
+                                                                  "i246"
+                                                                  "i244"))
+                                                               #(ribcage
+                                                                 
(define-structure
+                                                                   
define-expansion-accessors
+                                                                   
define-expansion-constructors
+                                                                   and-map*)
+                                                                 ((top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top))
+                                                                 ("i38"
+                                                                  "i37"
+                                                                  "i36"
+                                                                  "i34")))
+                                                              (hygiene
+                                                                guile)))))
+                                              #{rkey\ 1047}#)))))
+                                #{tmp\ 1054}#)
+                              (let ((#{tmp\ 1067}#
+                                      ($sc-dispatch
+                                        #{tmp\ 1052}#
+                                        '((any any) . any))))
+                                (if (if #{tmp\ 1067}#
+                                      (@apply
+                                        (lambda (#{a\ 1071}#
+                                                 #{init\ 1072}#
+                                                 #{b\ 1073}#)
+                                          (#{id?\ 387}# #{a\ 1071}#))
+                                        #{tmp\ 1067}#)
+                                      #f)
+                                  (@apply
+                                    (lambda (#{a\ 1077}#
+                                             #{init\ 1078}#
+                                             #{b\ 1079}#)
+                                      (let ((#{tmp\ 1081}#
+                                              (symbol->keyword
+                                                (syntax->datum #{a\ 1077}#))))
+                                        (let ((#{k\ 1083}# #{tmp\ 1081}#))
+                                          (#{key\ 1012}#
+                                            #{b\ 1079}#
+                                            #{req\ 1045}#
+                                            #{opt\ 1046}#
+                                            (cons (list #{k\ 1083}#
+                                                        #{a\ 1077}#
+                                                        #{init\ 1078}#)
+                                                  #{rkey\ 1047}#)))))
+                                    #{tmp\ 1067}#)
+                                  (let ((#{tmp\ 1084}#
                                           ($sc-dispatch
-                                            #{tmp\ 1037}#
-                                            '((any any) . any)))))
-                                     ($sc-dispatch
-                                       #{tmp\ 1037}#
-                                       '(any . any)))))
-                                ($sc-dispatch #{tmp\ 1037}# (quote ()))))
-                             #{args\ 1029}#)))
-                        (#{opt\ 995}#
-                          (lambda (#{args\ 1135}# #{req\ 1136}# #{ropt\ 1137}#)
-                            ((lambda (#{tmp\ 1141}#)
-                               ((lambda (#{tmp\ 1142}#)
-                                  (if #{tmp\ 1142}#
-                                    (apply (lambda ()
-                                             (#{check\ 1001}#
-                                               #{req\ 1136}#
-                                               (reverse #{ropt\ 1137}#)
-                                               #f
-                                               '()))
-                                           #{tmp\ 1142}#)
-                                    ((lambda (#{tmp\ 1143}#)
-                                       (if (if #{tmp\ 1143}#
-                                             (apply (lambda (#{a\ 1146}#
-                                                             #{b\ 1147}#)
-                                                      (#{id?\ 372}#
-                                                        #{a\ 1146}#))
-                                                    #{tmp\ 1143}#)
-                                             #f)
-                                         (apply (lambda (#{a\ 1150}#
-                                                         #{b\ 1151}#)
-                                                  (#{opt\ 995}#
-                                                    #{b\ 1151}#
-                                                    #{req\ 1136}#
-                                                    (cons (cons #{a\ 1150}#
-                                                                
'(#(syntax-object
-                                                                    #f
-                                                                    ((top)
-                                                                     #(ribcage
-                                                                       #(a b)
-                                                                       #((top)
-                                                                         (top))
-                                                                       
#("i1148"
-                                                                         
"i1149"))
-                                                                     #(ribcage
-                                                                       ()
-                                                                       ()
-                                                                       ())
-                                                                     #(ribcage
-                                                                       #(args
-                                                                         req
-                                                                         ropt)
-                                                                       #((top)
-                                                                         (top)
-                                                                         (top))
-                                                                       
#("i1138"
-                                                                         
"i1139"
-                                                                         
"i1140"))
-                                                                     #(ribcage
-                                                                       (check 
rest
-                                                                              
key
-                                                                              
opt
-                                                                              
req)
-                                                                       ((top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top))
-                                                                       ("i1000"
-                                                                        "i998"
-                                                                        "i996"
-                                                                        "i994"
-                                                                        
"i992"))
-                                                                     #(ribcage
-                                                                       
#(orig-args)
-                                                                       #((top))
-                                                                       
#("i991"))
-                                                                     #(ribcage
-                                                                       
(lambda-var-list
-                                                                         
gen-var
-                                                                         strip
-                                                                         
chi-lambda-case
-                                                                         
lambda*-formals
-                                                                         
chi-simple-lambda
-                                                                         
lambda-formals
-                                                                         
ellipsis?
-                                                                         
chi-void
-                                                                         
eval-local-transformer
-                                                                         
chi-local-syntax
-                                                                         
chi-body
-                                                                         
chi-macro
-                                                                         
chi-application
-                                                                         
chi-expr
-                                                                         chi
-                                                                         
chi-top
-                                                                         
syntax-type
-                                                                         
chi-when-list
-                                                                         
chi-install-global
-                                                                         
chi-top-sequence
-                                                                         
chi-sequence
-                                                                         
source-wrap
-                                                                         wrap
-                                                                         
bound-id-member?
-                                                                         
distinct-bound-ids?
-                                                                         
valid-bound-ids?
-                                                                         
bound-id=?
-                                                                         
free-id=?
-                                                                         
id-var-name
-                                                                         
same-marks?
-                                                                         
join-marks
-                                                                         
join-wraps
-                                                                         
smart-append
-                                                                         
make-binding-wrap
-                                                                         
extend-ribcage!
-                                                                         
make-empty-ribcage
-                                                                         
new-mark
-                                                                         
anti-mark
-                                                                         
the-anti-mark
-                                                                         
top-marked?
-                                                                         
top-wrap
-                                                                         
empty-wrap
-                                                                         
set-ribcage-labels!
-                                                                         
set-ribcage-marks!
-                                                                         
set-ribcage-symnames!
-                                                                         
ribcage-labels
-                                                                         
ribcage-marks
-                                                                         
ribcage-symnames
-                                                                         
ribcage?
-                                                                         
make-ribcage
-                                                                         
gen-labels
-                                                                         
gen-label
-                                                                         
make-rename
-                                                                         
rename-marks
-                                                                         
rename-new
-                                                                         
rename-old
-                                                                         
subst-rename?
-                                                                         
wrap-subst
-                                                                         
wrap-marks
-                                                                         
make-wrap
-                                                                         
id-sym-name&marks
-                                                                         
id-sym-name
-                                                                         id?
-                                                                         
nonsymbol-id?
-                                                                         
global-extend
-                                                                         lookup
-                                                                         
macros-only-env
-                                                                         
extend-var-env
-                                                                         
extend-env
-                                                                         
null-env
-                                                                         
binding-value
-                                                                         
binding-type
-                                                                         
make-binding
-                                                                         
arg-check
-                                                                         
source-annotation
-                                                                         
no-source
-                                                                         
set-syntax-object-module!
-                                                                         
set-syntax-object-wrap!
-                                                                         
set-syntax-object-expression!
-                                                                         
syntax-object-module
-                                                                         
syntax-object-wrap
-                                                                         
syntax-object-expression
-                                                                         
syntax-object?
-                                                                         
make-syntax-object
-                                                                         
build-lexical-var
-                                                                         
build-letrec
-                                                                         
build-named-let
-                                                                         
build-let
-                                                                         
build-sequence
-                                                                         
build-data
-                                                                         
build-primref
-                                                                         
build-lambda-case
-                                                                         
build-case-lambda
-                                                                         
build-simple-lambda
-                                                                         
build-global-definition
-                                                                         
maybe-name-value!
-                                                                         
build-global-assignment
-                                                                         
build-global-reference
-                                                                         
analyze-variable
-                                                                         
build-lexical-assignment
-                                                                         
build-lexical-reference
-                                                                         
build-dynlet
-                                                                         
build-conditional
-                                                                         
build-application
-                                                                         
build-void
-                                                                         
decorate-source
-                                                                         
get-global-definition-hook
-                                                                         
put-global-definition-hook
-                                                                         
gensym-hook
-                                                                         
local-eval-hook
-                                                                         
top-level-eval-hook
-                                                                         fx<
-                                                                         fx=
-                                                                         fx-
-                                                                         fx+
-                                                                         
set-lambda-meta!
-                                                                         
lambda-meta
-                                                                         
lambda?
-                                                                         
make-dynlet
-                                                                         
make-letrec
-                                                                         
make-let
-                                                                         
make-lambda-case
-                                                                         
make-lambda
-                                                                         
make-sequence
-                                                                         
make-application
-                                                                         
make-conditional
-                                                                         
make-toplevel-define
-                                                                         
make-toplevel-set
-                                                                         
make-toplevel-ref
-                                                                         
make-module-set
-                                                                         
make-module-ref
-                                                                         
make-lexical-set
-                                                                         
make-lexical-ref
-                                                                         
make-primitive-ref
-                                                                         
make-const
-                                                                         
make-void)
-                                                                       ((top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top))
-                                                                       ("i486"
-                                                                        "i484"
-                                                                        "i482"
-                                                                        "i480"
-                                                                        "i478"
-                                                                        "i476"
-                                                                        "i474"
-                                                                        "i472"
-                                                                        "i470"
-                                                                        "i468"
-                                                                        "i466"
-                                                                        "i464"
-                                                                        "i462"
-                                                                        "i460"
-                                                                        "i458"
-                                                                        "i456"
-                                                                        "i454"
-                                                                        "i452"
-                                                                        "i450"
-                                                                        "i448"
-                                                                        "i446"
-                                                                        "i444"
-                                                                        "i442"
-                                                                        "i440"
-                                                                        "i438"
-                                                                        "i436"
-                                                                        "i434"
-                                                                        "i432"
-                                                                        "i430"
-                                                                        "i428"
-                                                                        "i426"
-                                                                        "i424"
-                                                                        "i422"
-                                                                        "i420"
-                                                                        "i418"
-                                                                        "i416"
-                                                                        "i415"
-                                                                        "i414"
-                                                                        "i412"
-                                                                        "i411"
-                                                                        "i410"
-                                                                        "i409"
-                                                                        "i408"
-                                                                        "i406"
-                                                                        "i404"
-                                                                        "i402"
-                                                                        "i400"
-                                                                        "i398"
-                                                                        "i396"
-                                                                        "i394"
-                                                                        "i392"
-                                                                        "i389"
-                                                                        "i387"
-                                                                        "i386"
-                                                                        "i385"
-                                                                        "i384"
-                                                                        "i383"
-                                                                        "i382"
-                                                                        "i380"
-                                                                        "i378"
-                                                                        "i376"
-                                                                        "i374"
-                                                                        "i373"
-                                                                        "i371"
-                                                                        "i369"
-                                                                        "i367"
-                                                                        "i365"
-                                                                        "i363"
-                                                                        "i361"
-                                                                        "i359"
-                                                                        "i358"
-                                                                        "i356"
-                                                                        "i354"
-                                                                        "i353"
-                                                                        "i352"
-                                                                        "i350"
-                                                                        "i349"
-                                                                        "i347"
-                                                                        "i345"
-                                                                        "i343"
-                                                                        "i341"
-                                                                        "i339"
-                                                                        "i337"
-                                                                        "i335"
-                                                                        "i333"
-                                                                        "i331"
-                                                                        "i329"
-                                                                        "i327"
-                                                                        "i325"
-                                                                        "i323"
-                                                                        "i321"
-                                                                        "i319"
-                                                                        "i317"
-                                                                        "i315"
-                                                                        "i313"
-                                                                        "i311"
-                                                                        "i309"
-                                                                        "i307"
-                                                                        "i305"
-                                                                        "i303"
-                                                                        "i301"
-                                                                        "i299"
-                                                                        "i297"
-                                                                        "i295"
-                                                                        "i293"
-                                                                        "i291"
-                                                                        "i289"
-                                                                        "i287"
-                                                                        "i285"
-                                                                        "i284"
-                                                                        "i282"
-                                                                        "i280"
-                                                                        "i278"
-                                                                        "i276"
-                                                                        "i274"
-                                                                        "i272"
-                                                                        "i270"
-                                                                        "i268"
-                                                                        "i266"
-                                                                        "i263"
-                                                                        "i261"
-                                                                        "i259"
-                                                                        "i257"
-                                                                        "i255"
-                                                                        "i253"
-                                                                        "i251"
-                                                                        "i249"
-                                                                        "i247"
-                                                                        "i245"
-                                                                        "i243"
-                                                                        "i241"
-                                                                        "i239"
-                                                                        "i237"
-                                                                        "i235"
-                                                                        "i233"
-                                                                        "i231"
-                                                                        
"i229"))
-                                                                     #(ribcage
-                                                                       
(define-structure
-                                                                         
define-expansion-accessors
-                                                                         
define-expansion-constructors
-                                                                         
and-map*)
-                                                                       ((top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top))
-                                                                       ("i23"
-                                                                        "i22"
-                                                                        "i21"
-                                                                        
"i19")))
-                                                                    (hygiene
-                                                                      guile))))
-                                                          #{ropt\ 1137}#)))
-                                                #{tmp\ 1143}#)
-                                         ((lambda (#{tmp\ 1152}#)
-                                            (if (if #{tmp\ 1152}#
-                                                  (apply (lambda (#{a\ 1156}#
-                                                                  #{init\ 
1157}#
-                                                                  #{b\ 1158}#)
-                                                           (#{id?\ 372}#
-                                                             #{a\ 1156}#))
-                                                         #{tmp\ 1152}#)
+                                            #{tmp\ 1052}#
+                                            '((any any any) . any))))
+                                    (if (if #{tmp\ 1084}#
+                                          (@apply
+                                            (lambda (#{a\ 1089}#
+                                                     #{init\ 1090}#
+                                                     #{k\ 1091}#
+                                                     #{b\ 1092}#)
+                                              (if (#{id?\ 387}# #{a\ 1089}#)
+                                                (keyword?
+                                                  (syntax->datum #{k\ 1091}#))
+                                                #f))
+                                            #{tmp\ 1084}#)
+                                          #f)
+                                      (@apply
+                                        (lambda (#{a\ 1099}#
+                                                 #{init\ 1100}#
+                                                 #{k\ 1101}#
+                                                 #{b\ 1102}#)
+                                          (#{key\ 1012}#
+                                            #{b\ 1102}#
+                                            #{req\ 1045}#
+                                            #{opt\ 1046}#
+                                            (cons (list #{k\ 1101}#
+                                                        #{a\ 1099}#
+                                                        #{init\ 1100}#)
+                                                  #{rkey\ 1047}#)))
+                                        #{tmp\ 1084}#)
+                                      (let ((#{tmp\ 1103}#
+                                              ($sc-dispatch
+                                                #{tmp\ 1052}#
+                                                '(any))))
+                                        (if (if #{tmp\ 1103}#
+                                              (@apply
+                                                (lambda (#{aok\ 1105}#)
+                                                  (eq? (syntax->datum
+                                                         #{aok\ 1105}#)
+                                                       #:allow-other-keys))
+                                                #{tmp\ 1103}#)
+                                              #f)
+                                          (@apply
+                                            (lambda (#{aok\ 1107}#)
+                                              (#{check\ 1016}#
+                                                #{req\ 1045}#
+                                                #{opt\ 1046}#
+                                                #f
+                                                (cons #t
+                                                      (reverse
+                                                        #{rkey\ 1047}#))))
+                                            #{tmp\ 1103}#)
+                                          (let ((#{tmp\ 1108}#
+                                                  ($sc-dispatch
+                                                    #{tmp\ 1052}#
+                                                    '(any any any))))
+                                            (if (if #{tmp\ 1108}#
+                                                  (@apply
+                                                    (lambda (#{aok\ 1112}#
+                                                             #{a\ 1113}#
+                                                             #{b\ 1114}#)
+                                                      (if (eq? (syntax->datum
+                                                                 #{aok\ 1112}#)
+                                                               
#:allow-other-keys)
+                                                        (eq? (syntax->datum
+                                                               #{a\ 1113}#)
+                                                             #:rest)
+                                                        #f))
+                                                    #{tmp\ 1108}#)
                                                   #f)
-                                              (apply (lambda (#{a\ 1162}#
-                                                              #{init\ 1163}#
-                                                              #{b\ 1164}#)
-                                                       (#{opt\ 995}#
-                                                         #{b\ 1164}#
-                                                         #{req\ 1136}#
-                                                         (cons (list #{a\ 
1162}#
-                                                                     #{init\ 
1163}#)
-                                                               #{ropt\ 
1137}#)))
-                                                     #{tmp\ 1152}#)
-                                              ((lambda (#{tmp\ 1165}#)
-                                                 (if (if #{tmp\ 1165}#
-                                                       (apply (lambda (#{a\ 
1168}#
-                                                                       #{b\ 
1169}#)
-                                                                (eq? 
(syntax->datum
-                                                                       #{a\ 
1168}#)
-                                                                     #:key))
-                                                              #{tmp\ 1165}#)
-                                                       #f)
-                                                   (apply (lambda (#{a\ 1172}#
-                                                                   #{b\ 1173}#)
-                                                            (#{key\ 997}#
-                                                              #{b\ 1173}#
-                                                              #{req\ 1136}#
+                                              (@apply
+                                                (lambda (#{aok\ 1120}#
+                                                         #{a\ 1121}#
+                                                         #{b\ 1122}#)
+                                                  (#{rest\ 1014}#
+                                                    #{b\ 1122}#
+                                                    #{req\ 1045}#
+                                                    #{opt\ 1046}#
+                                                    (cons #t
+                                                          (reverse
+                                                            #{rkey\ 1047}#))))
+                                                #{tmp\ 1108}#)
+                                              (let ((#{tmp\ 1123}#
+                                                      ($sc-dispatch
+                                                        #{tmp\ 1052}#
+                                                        '(any . any))))
+                                                (if (if #{tmp\ 1123}#
+                                                      (@apply
+                                                        (lambda (#{aok\ 1126}#
+                                                                 #{r\ 1127}#)
+                                                          (if (eq? 
(syntax->datum
+                                                                     #{aok\ 
1126}#)
+                                                                   
#:allow-other-keys)
+                                                            (#{id?\ 387}#
+                                                              #{r\ 1127}#)
+                                                            #f))
+                                                        #{tmp\ 1123}#)
+                                                      #f)
+                                                  (@apply
+                                                    (lambda (#{aok\ 1132}#
+                                                             #{r\ 1133}#)
+                                                      (#{rest\ 1014}#
+                                                        #{r\ 1133}#
+                                                        #{req\ 1045}#
+                                                        #{opt\ 1046}#
+                                                        (cons #t
                                                               (reverse
-                                                                #{ropt\ 1137}#)
-                                                              '()))
-                                                          #{tmp\ 1165}#)
-                                                   ((lambda (#{tmp\ 1174}#)
-                                                      (if (if #{tmp\ 1174}#
-                                                            (apply (lambda 
(#{a\ 1177}#
-                                                                            
#{b\ 1178}#)
-                                                                     (eq? 
(syntax->datum
-                                                                            
#{a\ 1177}#)
-                                                                          
#:rest))
-                                                                   #{tmp\ 
1174}#)
-                                                            #f)
-                                                        (apply (lambda (#{a\ 
1181}#
-                                                                        #{b\ 
1182}#)
-                                                                 (#{rest\ 999}#
-                                                                   #{b\ 1182}#
-                                                                   #{req\ 
1136}#
-                                                                   (reverse
-                                                                     #{ropt\ 
1137}#)
-                                                                   '()))
-                                                               #{tmp\ 1174}#)
-                                                        ((lambda (#{tmp\ 
1183}#)
-                                                           (if (if #{tmp\ 
1183}#
-                                                                 (apply 
(lambda (#{r\ 1185}#)
-                                                                          
(#{id?\ 372}#
-                                                                            
#{r\ 1185}#))
-                                                                        #{tmp\ 
1183}#)
-                                                                 #f)
-                                                             (apply (lambda 
(#{r\ 1187}#)
-                                                                      (#{rest\ 
999}#
-                                                                        #{r\ 
1187}#
-                                                                        #{req\ 
1136}#
-                                                                        
(reverse
-                                                                          
#{ropt\ 1137}#)
-                                                                        '()))
-                                                                    #{tmp\ 
1183}#)
-                                                             ((lambda (#{else\ 
1189}#)
-                                                                
(syntax-violation
-                                                                  'lambda*
-                                                                  "invalid 
optional argument list"
-                                                                  #{orig-args\ 
990}#
-                                                                  #{args\ 
1135}#))
-                                                              #{tmp\ 1141}#)))
-                                                         (list #{tmp\ 
1141}#))))
-                                                    ($sc-dispatch
-                                                      #{tmp\ 1141}#
-                                                      '(any any)))))
-                                               ($sc-dispatch
-                                                 #{tmp\ 1141}#
-                                                 '(any . any)))))
+                                                                #{rkey\ 
1047}#))))
+                                                    #{tmp\ 1123}#)
+                                                  (let ((#{tmp\ 1134}#
+                                                          ($sc-dispatch
+                                                            #{tmp\ 1052}#
+                                                            '(any any))))
+                                                    (if (if #{tmp\ 1134}#
+                                                          (@apply
+                                                            (lambda (#{a\ 
1137}#
+                                                                     #{b\ 
1138}#)
+                                                              (eq? 
(syntax->datum
+                                                                     #{a\ 
1137}#)
+                                                                   #:rest))
+                                                            #{tmp\ 1134}#)
+                                                          #f)
+                                                      (@apply
+                                                        (lambda (#{a\ 1141}#
+                                                                 #{b\ 1142}#)
+                                                          (#{rest\ 1014}#
+                                                            #{b\ 1142}#
+                                                            #{req\ 1045}#
+                                                            #{opt\ 1046}#
+                                                            (cons #f
+                                                                  (reverse
+                                                                    #{rkey\ 
1047}#))))
+                                                        #{tmp\ 1134}#)
+                                                      (let ((#{tmp\ 1143}#
+                                                              (list #{tmp\ 
1052}#)))
+                                                        (if (if #{tmp\ 1143}#
+                                                              (@apply
+                                                                (lambda (#{r\ 
1145}#)
+                                                                  (#{id?\ 387}#
+                                                                    #{r\ 
1145}#))
+                                                                #{tmp\ 1143}#)
+                                                              #f)
+                                                          (@apply
+                                                            (lambda (#{r\ 
1147}#)
+                                                              (#{rest\ 1014}#
+                                                                #{r\ 1147}#
+                                                                #{req\ 1045}#
+                                                                #{opt\ 1046}#
+                                                                (cons #f
+                                                                      (reverse
+                                                                        
#{rkey\ 1047}#))))
+                                                            #{tmp\ 1143}#)
+                                                          (let ((#{else\ 1149}#
+                                                                  #{tmp\ 
1052}#))
+                                                            (syntax-violation
+                                                              'lambda*
+                                                              "invalid keyword 
argument list"
+                                                              #{orig-args\ 
1005}#
+                                                              #{args\ 
1044}#)))))))))))))))))))))))
+                (#{opt\ 1010}#
+                  (lambda (#{args\ 1150}# #{req\ 1151}# #{ropt\ 1152}#)
+                    (let ((#{tmp\ 1156}# #{args\ 1150}#))
+                      (let ((#{tmp\ 1157}#
+                              ($sc-dispatch #{tmp\ 1156}# (quote ()))))
+                        (if #{tmp\ 1157}#
+                          (@apply
+                            (lambda ()
+                              (#{check\ 1016}#
+                                #{req\ 1151}#
+                                (reverse #{ropt\ 1152}#)
+                                #f
+                                '()))
+                            #{tmp\ 1157}#)
+                          (let ((#{tmp\ 1158}#
+                                  ($sc-dispatch
+                                    #{tmp\ 1156}#
+                                    '(any . any))))
+                            (if (if #{tmp\ 1158}#
+                                  (@apply
+                                    (lambda (#{a\ 1161}# #{b\ 1162}#)
+                                      (#{id?\ 387}# #{a\ 1161}#))
+                                    #{tmp\ 1158}#)
+                                  #f)
+                              (@apply
+                                (lambda (#{a\ 1165}# #{b\ 1166}#)
+                                  (#{opt\ 1010}#
+                                    #{b\ 1166}#
+                                    #{req\ 1151}#
+                                    (cons (cons #{a\ 1165}#
+                                                '(#(syntax-object
+                                                    #f
+                                                    ((top)
+                                                     #(ribcage
+                                                       #(a b)
+                                                       #((top) (top))
+                                                       #("i1163" "i1164"))
+                                                     #(ribcage () () ())
+                                                     #(ribcage
+                                                       #(args req ropt)
+                                                       #((top) (top) (top))
+                                                       #("i1153"
+                                                         "i1154"
+                                                         "i1155"))
+                                                     #(ribcage
+                                                       (check rest key opt req)
+                                                       ((top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top))
+                                                       ("i1015"
+                                                        "i1013"
+                                                        "i1011"
+                                                        "i1009"
+                                                        "i1007"))
+                                                     #(ribcage
+                                                       #(orig-args)
+                                                       #((top))
+                                                       #("i1006"))
+                                                     #(ribcage
+                                                       (lambda-var-list
+                                                         gen-var
+                                                         strip
+                                                         chi-lambda-case
+                                                         lambda*-formals
+                                                         chi-simple-lambda
+                                                         lambda-formals
+                                                         ellipsis?
+                                                         chi-void
+                                                         eval-local-transformer
+                                                         chi-local-syntax
+                                                         chi-body
+                                                         chi-macro
+                                                         chi-application
+                                                         chi-expr
+                                                         chi
+                                                         chi-top
+                                                         syntax-type
+                                                         chi-when-list
+                                                         chi-install-global
+                                                         chi-top-sequence
+                                                         chi-sequence
+                                                         source-wrap
+                                                         wrap
+                                                         bound-id-member?
+                                                         distinct-bound-ids?
+                                                         valid-bound-ids?
+                                                         bound-id=?
+                                                         free-id=?
+                                                         id-var-name
+                                                         same-marks?
+                                                         join-marks
+                                                         join-wraps
+                                                         smart-append
+                                                         make-binding-wrap
+                                                         extend-ribcage!
+                                                         make-empty-ribcage
+                                                         new-mark
+                                                         anti-mark
+                                                         the-anti-mark
+                                                         top-marked?
+                                                         top-wrap
+                                                         empty-wrap
+                                                         set-ribcage-labels!
+                                                         set-ribcage-marks!
+                                                         set-ribcage-symnames!
+                                                         ribcage-labels
+                                                         ribcage-marks
+                                                         ribcage-symnames
+                                                         ribcage?
+                                                         make-ribcage
+                                                         gen-labels
+                                                         gen-label
+                                                         make-rename
+                                                         rename-marks
+                                                         rename-new
+                                                         rename-old
+                                                         subst-rename?
+                                                         wrap-subst
+                                                         wrap-marks
+                                                         make-wrap
+                                                         id-sym-name&marks
+                                                         id-sym-name
+                                                         id?
+                                                         nonsymbol-id?
+                                                         global-extend
+                                                         lookup
+                                                         macros-only-env
+                                                         extend-var-env
+                                                         extend-env
+                                                         null-env
+                                                         binding-value
+                                                         binding-type
+                                                         make-binding
+                                                         arg-check
+                                                         source-annotation
+                                                         no-source
+                                                         
set-syntax-object-module!
+                                                         
set-syntax-object-wrap!
+                                                         
set-syntax-object-expression!
+                                                         syntax-object-module
+                                                         syntax-object-wrap
+                                                         
syntax-object-expression
+                                                         syntax-object?
+                                                         make-syntax-object
+                                                         build-lexical-var
+                                                         build-letrec
+                                                         build-named-let
+                                                         build-let
+                                                         build-sequence
+                                                         build-data
+                                                         build-primref
+                                                         build-lambda-case
+                                                         build-case-lambda
+                                                         build-simple-lambda
+                                                         
build-global-definition
+                                                         maybe-name-value!
+                                                         
build-global-assignment
+                                                         build-global-reference
+                                                         analyze-variable
+                                                         
build-lexical-assignment
+                                                         
build-lexical-reference
+                                                         build-dynlet
+                                                         build-conditional
+                                                         build-application
+                                                         build-void
+                                                         decorate-source
+                                                         
get-global-definition-hook
+                                                         
put-global-definition-hook
+                                                         gensym-hook
+                                                         local-eval-hook
+                                                         top-level-eval-hook
+                                                         fx<
+                                                         fx=
+                                                         fx-
+                                                         fx+
+                                                         set-lambda-meta!
+                                                         lambda-meta
+                                                         lambda?
+                                                         make-dynlet
+                                                         make-letrec
+                                                         make-let
+                                                         make-lambda-case
+                                                         make-lambda
+                                                         make-sequence
+                                                         make-application
+                                                         make-conditional
+                                                         make-toplevel-define
+                                                         make-toplevel-set
+                                                         make-toplevel-ref
+                                                         make-module-set
+                                                         make-module-ref
+                                                         make-lexical-set
+                                                         make-lexical-ref
+                                                         make-primitive-ref
+                                                         make-const
+                                                         make-void)
+                                                       ((top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top))
+                                                       ("i501"
+                                                        "i499"
+                                                        "i497"
+                                                        "i495"
+                                                        "i493"
+                                                        "i491"
+                                                        "i489"
+                                                        "i487"
+                                                        "i485"
+                                                        "i483"
+                                                        "i481"
+                                                        "i479"
+                                                        "i477"
+                                                        "i475"
+                                                        "i473"
+                                                        "i471"
+                                                        "i469"
+                                                        "i467"
+                                                        "i465"
+                                                        "i463"
+                                                        "i461"
+                                                        "i459"
+                                                        "i457"
+                                                        "i455"
+                                                        "i453"
+                                                        "i451"
+                                                        "i449"
+                                                        "i447"
+                                                        "i445"
+                                                        "i443"
+                                                        "i441"
+                                                        "i439"
+                                                        "i437"
+                                                        "i435"
+                                                        "i433"
+                                                        "i431"
+                                                        "i430"
+                                                        "i429"
+                                                        "i427"
+                                                        "i426"
+                                                        "i425"
+                                                        "i424"
+                                                        "i423"
+                                                        "i421"
+                                                        "i419"
+                                                        "i417"
+                                                        "i415"
+                                                        "i413"
+                                                        "i411"
+                                                        "i409"
+                                                        "i407"
+                                                        "i404"
+                                                        "i402"
+                                                        "i401"
+                                                        "i400"
+                                                        "i399"
+                                                        "i398"
+                                                        "i397"
+                                                        "i395"
+                                                        "i393"
+                                                        "i391"
+                                                        "i389"
+                                                        "i388"
+                                                        "i386"
+                                                        "i384"
+                                                        "i382"
+                                                        "i380"
+                                                        "i378"
+                                                        "i376"
+                                                        "i374"
+                                                        "i373"
+                                                        "i371"
+                                                        "i369"
+                                                        "i368"
+                                                        "i367"
+                                                        "i365"
+                                                        "i364"
+                                                        "i362"
+                                                        "i360"
+                                                        "i358"
+                                                        "i356"
+                                                        "i354"
+                                                        "i352"
+                                                        "i350"
+                                                        "i348"
+                                                        "i346"
+                                                        "i344"
+                                                        "i342"
+                                                        "i340"
+                                                        "i338"
+                                                        "i336"
+                                                        "i334"
+                                                        "i332"
+                                                        "i330"
+                                                        "i328"
+                                                        "i326"
+                                                        "i324"
+                                                        "i322"
+                                                        "i320"
+                                                        "i318"
+                                                        "i316"
+                                                        "i314"
+                                                        "i312"
+                                                        "i310"
+                                                        "i308"
+                                                        "i306"
+                                                        "i304"
+                                                        "i302"
+                                                        "i300"
+                                                        "i299"
+                                                        "i297"
+                                                        "i295"
+                                                        "i293"
+                                                        "i291"
+                                                        "i289"
+                                                        "i287"
+                                                        "i285"
+                                                        "i283"
+                                                        "i281"
+                                                        "i278"
+                                                        "i276"
+                                                        "i274"
+                                                        "i272"
+                                                        "i270"
+                                                        "i268"
+                                                        "i266"
+                                                        "i264"
+                                                        "i262"
+                                                        "i260"
+                                                        "i258"
+                                                        "i256"
+                                                        "i254"
+                                                        "i252"
+                                                        "i250"
+                                                        "i248"
+                                                        "i246"
+                                                        "i244"))
+                                                     #(ribcage
+                                                       (define-structure
+                                                         
define-expansion-accessors
+                                                         
define-expansion-constructors
+                                                         and-map*)
+                                                       ((top)
+                                                        (top)
+                                                        (top)
+                                                        (top))
+                                                       ("i38"
+                                                        "i37"
+                                                        "i36"
+                                                        "i34")))
+                                                    (hygiene guile))))
+                                          #{ropt\ 1152}#)))
+                                #{tmp\ 1158}#)
+                              (let ((#{tmp\ 1167}#
+                                      ($sc-dispatch
+                                        #{tmp\ 1156}#
+                                        '((any any) . any))))
+                                (if (if #{tmp\ 1167}#
+                                      (@apply
+                                        (lambda (#{a\ 1171}#
+                                                 #{init\ 1172}#
+                                                 #{b\ 1173}#)
+                                          (#{id?\ 387}# #{a\ 1171}#))
+                                        #{tmp\ 1167}#)
+                                      #f)
+                                  (@apply
+                                    (lambda (#{a\ 1177}#
+                                             #{init\ 1178}#
+                                             #{b\ 1179}#)
+                                      (#{opt\ 1010}#
+                                        #{b\ 1179}#
+                                        #{req\ 1151}#
+                                        (cons (list #{a\ 1177}# #{init\ 1178}#)
+                                              #{ropt\ 1152}#)))
+                                    #{tmp\ 1167}#)
+                                  (let ((#{tmp\ 1180}#
                                           ($sc-dispatch
-                                            #{tmp\ 1141}#
-                                            '((any any) . any)))))
-                                     ($sc-dispatch
-                                       #{tmp\ 1141}#
-                                       '(any . any)))))
-                                ($sc-dispatch #{tmp\ 1141}# (quote ()))))
-                             #{args\ 1135}#)))
-                        (#{req\ 993}#
-                          (lambda (#{args\ 1190}# #{rreq\ 1191}#)
-                            ((lambda (#{tmp\ 1194}#)
-                               ((lambda (#{tmp\ 1195}#)
-                                  (if #{tmp\ 1195}#
-                                    (apply (lambda ()
-                                             (#{check\ 1001}#
-                                               (reverse #{rreq\ 1191}#)
-                                               '()
-                                               #f
-                                               '()))
-                                           #{tmp\ 1195}#)
-                                    ((lambda (#{tmp\ 1196}#)
-                                       (if (if #{tmp\ 1196}#
-                                             (apply (lambda (#{a\ 1199}#
-                                                             #{b\ 1200}#)
-                                                      (#{id?\ 372}#
-                                                        #{a\ 1199}#))
-                                                    #{tmp\ 1196}#)
-                                             #f)
-                                         (apply (lambda (#{a\ 1203}#
-                                                         #{b\ 1204}#)
-                                                  (#{req\ 993}#
-                                                    #{b\ 1204}#
-                                                    (cons #{a\ 1203}#
-                                                          #{rreq\ 1191}#)))
-                                                #{tmp\ 1196}#)
-                                         ((lambda (#{tmp\ 1205}#)
-                                            (if (if #{tmp\ 1205}#
-                                                  (apply (lambda (#{a\ 1208}#
-                                                                  #{b\ 1209}#)
-                                                           (eq? (syntax->datum
-                                                                  #{a\ 1208}#)
-                                                                #:optional))
-                                                         #{tmp\ 1205}#)
+                                            #{tmp\ 1156}#
+                                            '(any . any))))
+                                    (if (if #{tmp\ 1180}#
+                                          (@apply
+                                            (lambda (#{a\ 1183}# #{b\ 1184}#)
+                                              (eq? (syntax->datum #{a\ 1183}#)
+                                                   #:key))
+                                            #{tmp\ 1180}#)
+                                          #f)
+                                      (@apply
+                                        (lambda (#{a\ 1187}# #{b\ 1188}#)
+                                          (#{key\ 1012}#
+                                            #{b\ 1188}#
+                                            #{req\ 1151}#
+                                            (reverse #{ropt\ 1152}#)
+                                            '()))
+                                        #{tmp\ 1180}#)
+                                      (let ((#{tmp\ 1189}#
+                                              ($sc-dispatch
+                                                #{tmp\ 1156}#
+                                                '(any any))))
+                                        (if (if #{tmp\ 1189}#
+                                              (@apply
+                                                (lambda (#{a\ 1192}#
+                                                         #{b\ 1193}#)
+                                                  (eq? (syntax->datum
+                                                         #{a\ 1192}#)
+                                                       #:rest))
+                                                #{tmp\ 1189}#)
+                                              #f)
+                                          (@apply
+                                            (lambda (#{a\ 1196}# #{b\ 1197}#)
+                                              (#{rest\ 1014}#
+                                                #{b\ 1197}#
+                                                #{req\ 1151}#
+                                                (reverse #{ropt\ 1152}#)
+                                                '()))
+                                            #{tmp\ 1189}#)
+                                          (let ((#{tmp\ 1198}#
+                                                  (list #{tmp\ 1156}#)))
+                                            (if (if #{tmp\ 1198}#
+                                                  (@apply
+                                                    (lambda (#{r\ 1200}#)
+                                                      (#{id?\ 387}#
+                                                        #{r\ 1200}#))
+                                                    #{tmp\ 1198}#)
                                                   #f)
-                                              (apply (lambda (#{a\ 1212}#
-                                                              #{b\ 1213}#)
-                                                       (#{opt\ 995}#
-                                                         #{b\ 1213}#
-                                                         (reverse
-                                                           #{rreq\ 1191}#)
-                                                         '()))
-                                                     #{tmp\ 1205}#)
-                                              ((lambda (#{tmp\ 1214}#)
-                                                 (if (if #{tmp\ 1214}#
-                                                       (apply (lambda (#{a\ 
1217}#
-                                                                       #{b\ 
1218}#)
-                                                                (eq? 
(syntax->datum
-                                                                       #{a\ 
1217}#)
-                                                                     #:key))
-                                                              #{tmp\ 1214}#)
-                                                       #f)
-                                                   (apply (lambda (#{a\ 1221}#
-                                                                   #{b\ 1222}#)
-                                                            (#{key\ 997}#
-                                                              #{b\ 1222}#
-                                                              (reverse
-                                                                #{rreq\ 1191}#)
-                                                              '()
-                                                              '()))
-                                                          #{tmp\ 1214}#)
-                                                   ((lambda (#{tmp\ 1223}#)
-                                                      (if (if #{tmp\ 1223}#
-                                                            (apply (lambda 
(#{a\ 1226}#
-                                                                            
#{b\ 1227}#)
-                                                                     (eq? 
(syntax->datum
-                                                                            
#{a\ 1226}#)
-                                                                          
#:rest))
-                                                                   #{tmp\ 
1223}#)
-                                                            #f)
-                                                        (apply (lambda (#{a\ 
1230}#
-                                                                        #{b\ 
1231}#)
-                                                                 (#{rest\ 999}#
-                                                                   #{b\ 1231}#
-                                                                   (reverse
-                                                                     #{rreq\ 
1191}#)
-                                                                   '()
-                                                                   '()))
-                                                               #{tmp\ 1223}#)
-                                                        ((lambda (#{tmp\ 
1232}#)
-                                                           (if (if #{tmp\ 
1232}#
-                                                                 (apply 
(lambda (#{r\ 1234}#)
-                                                                          
(#{id?\ 372}#
-                                                                            
#{r\ 1234}#))
-                                                                        #{tmp\ 
1232}#)
-                                                                 #f)
-                                                             (apply (lambda 
(#{r\ 1236}#)
-                                                                      (#{rest\ 
999}#
-                                                                        #{r\ 
1236}#
-                                                                        
(reverse
-                                                                          
#{rreq\ 1191}#)
-                                                                        '()
-                                                                        '()))
-                                                                    #{tmp\ 
1232}#)
-                                                             ((lambda (#{else\ 
1238}#)
-                                                                
(syntax-violation
-                                                                  'lambda*
-                                                                  "invalid 
argument list"
-                                                                  #{orig-args\ 
990}#
-                                                                  #{args\ 
1190}#))
-                                                              #{tmp\ 1194}#)))
-                                                         (list #{tmp\ 
1194}#))))
-                                                    ($sc-dispatch
-                                                      #{tmp\ 1194}#
-                                                      '(any any)))))
-                                               ($sc-dispatch
-                                                 #{tmp\ 1194}#
-                                                 '(any . any)))))
+                                              (@apply
+                                                (lambda (#{r\ 1202}#)
+                                                  (#{rest\ 1014}#
+                                                    #{r\ 1202}#
+                                                    #{req\ 1151}#
+                                                    (reverse #{ropt\ 1152}#)
+                                                    '()))
+                                                #{tmp\ 1198}#)
+                                              (let ((#{else\ 1204}#
+                                                      #{tmp\ 1156}#))
+                                                (syntax-violation
+                                                  'lambda*
+                                                  "invalid optional argument 
list"
+                                                  #{orig-args\ 1005}#
+                                                  #{args\ 
1150}#)))))))))))))))))
+                (#{req\ 1008}#
+                  (lambda (#{args\ 1205}# #{rreq\ 1206}#)
+                    (let ((#{tmp\ 1209}# #{args\ 1205}#))
+                      (let ((#{tmp\ 1210}#
+                              ($sc-dispatch #{tmp\ 1209}# (quote ()))))
+                        (if #{tmp\ 1210}#
+                          (@apply
+                            (lambda ()
+                              (#{check\ 1016}#
+                                (reverse #{rreq\ 1206}#)
+                                '()
+                                #f
+                                '()))
+                            #{tmp\ 1210}#)
+                          (let ((#{tmp\ 1211}#
+                                  ($sc-dispatch
+                                    #{tmp\ 1209}#
+                                    '(any . any))))
+                            (if (if #{tmp\ 1211}#
+                                  (@apply
+                                    (lambda (#{a\ 1214}# #{b\ 1215}#)
+                                      (#{id?\ 387}# #{a\ 1214}#))
+                                    #{tmp\ 1211}#)
+                                  #f)
+                              (@apply
+                                (lambda (#{a\ 1218}# #{b\ 1219}#)
+                                  (#{req\ 1008}#
+                                    #{b\ 1219}#
+                                    (cons #{a\ 1218}# #{rreq\ 1206}#)))
+                                #{tmp\ 1211}#)
+                              (let ((#{tmp\ 1220}#
+                                      ($sc-dispatch
+                                        #{tmp\ 1209}#
+                                        '(any . any))))
+                                (if (if #{tmp\ 1220}#
+                                      (@apply
+                                        (lambda (#{a\ 1223}# #{b\ 1224}#)
+                                          (eq? (syntax->datum #{a\ 1223}#)
+                                               #:optional))
+                                        #{tmp\ 1220}#)
+                                      #f)
+                                  (@apply
+                                    (lambda (#{a\ 1227}# #{b\ 1228}#)
+                                      (#{opt\ 1010}#
+                                        #{b\ 1228}#
+                                        (reverse #{rreq\ 1206}#)
+                                        '()))
+                                    #{tmp\ 1220}#)
+                                  (let ((#{tmp\ 1229}#
                                           ($sc-dispatch
-                                            #{tmp\ 1194}#
-                                            '(any . any)))))
-                                     ($sc-dispatch
-                                       #{tmp\ 1194}#
-                                       '(any . any)))))
-                                ($sc-dispatch #{tmp\ 1194}# (quote ()))))
-                             #{args\ 1190}#))))
-                 (#{req\ 993}# #{orig-args\ 990}# (quote ())))))
-           (#{chi-simple-lambda\ 477}#
-             (lambda (#{e\ 1239}#
-                      #{r\ 1240}#
-                      #{w\ 1241}#
-                      #{s\ 1242}#
-                      #{mod\ 1243}#
-                      #{req\ 1244}#
-                      #{rest\ 1245}#
-                      #{meta\ 1246}#
-                      #{body\ 1247}#)
-               (let ((#{ids\ 1259}#
-                       (if #{rest\ 1245}#
-                         (append #{req\ 1244}# (list #{rest\ 1245}#))
-                         #{req\ 1244}#)))
-                 (let ((#{vars\ 1261}#
-                         (map #{gen-var\ 485}# #{ids\ 1259}#)))
-                   (let ((#{labels\ 1263}#
-                           (#{gen-labels\ 390}# #{ids\ 1259}#)))
-                     (#{build-simple-lambda\ 314}#
-                       #{s\ 1242}#
-                       (map syntax->datum #{req\ 1244}#)
-                       (if #{rest\ 1245}#
-                         (syntax->datum #{rest\ 1245}#)
-                         #f)
-                       #{vars\ 1261}#
-                       #{meta\ 1246}#
-                       (#{chi-body\ 465}#
-                         #{body\ 1247}#
-                         (#{source-wrap\ 443}#
-                           #{e\ 1239}#
-                           #{w\ 1241}#
-                           #{s\ 1242}#
-                           #{mod\ 1243}#)
-                         (#{extend-var-env\ 362}#
-                           #{labels\ 1263}#
-                           #{vars\ 1261}#
-                           #{r\ 1240}#)
-                         (#{make-binding-wrap\ 419}#
-                           #{ids\ 1259}#
-                           #{labels\ 1263}#
-                           #{w\ 1241}#)
-                         #{mod\ 1243}#)))))))
-           (#{lambda-formals\ 475}#
-             (lambda (#{orig-args\ 1266}#)
-               (letrec ((#{check\ 1271}#
-                          (lambda (#{req\ 1272}# #{rest\ 1273}#)
-                            (if (#{distinct-bound-ids?\ 437}#
-                                  (if #{rest\ 1273}#
-                                    (cons #{rest\ 1273}# #{req\ 1272}#)
-                                    #{req\ 1272}#))
-                              (values #{req\ 1272}# #f #{rest\ 1273}# #f)
-                              (syntax-violation
-                                'lambda
-                                "duplicate identifier in argument list"
-                                #{orig-args\ 1266}#))))
-                        (#{req\ 1269}#
-                          (lambda (#{args\ 1279}# #{rreq\ 1280}#)
-                            ((lambda (#{tmp\ 1283}#)
-                               ((lambda (#{tmp\ 1284}#)
-                                  (if #{tmp\ 1284}#
-                                    (apply (lambda ()
-                                             (#{check\ 1271}#
-                                               (reverse #{rreq\ 1280}#)
-                                               #f))
-                                           #{tmp\ 1284}#)
-                                    ((lambda (#{tmp\ 1285}#)
-                                       (if (if #{tmp\ 1285}#
-                                             (apply (lambda (#{a\ 1288}#
-                                                             #{b\ 1289}#)
-                                                      (#{id?\ 372}#
-                                                        #{a\ 1288}#))
-                                                    #{tmp\ 1285}#)
-                                             #f)
-                                         (apply (lambda (#{a\ 1292}#
-                                                         #{b\ 1293}#)
-                                                  (#{req\ 1269}#
-                                                    #{b\ 1293}#
-                                                    (cons #{a\ 1292}#
-                                                          #{rreq\ 1280}#)))
-                                                #{tmp\ 1285}#)
-                                         ((lambda (#{tmp\ 1294}#)
-                                            (if (if #{tmp\ 1294}#
-                                                  (apply (lambda (#{r\ 1296}#)
-                                                           (#{id?\ 372}#
-                                                             #{r\ 1296}#))
-                                                         #{tmp\ 1294}#)
+                                            #{tmp\ 1209}#
+                                            '(any . any))))
+                                    (if (if #{tmp\ 1229}#
+                                          (@apply
+                                            (lambda (#{a\ 1232}# #{b\ 1233}#)
+                                              (eq? (syntax->datum #{a\ 1232}#)
+                                                   #:key))
+                                            #{tmp\ 1229}#)
+                                          #f)
+                                      (@apply
+                                        (lambda (#{a\ 1236}# #{b\ 1237}#)
+                                          (#{key\ 1012}#
+                                            #{b\ 1237}#
+                                            (reverse #{rreq\ 1206}#)
+                                            '()
+                                            '()))
+                                        #{tmp\ 1229}#)
+                                      (let ((#{tmp\ 1238}#
+                                              ($sc-dispatch
+                                                #{tmp\ 1209}#
+                                                '(any any))))
+                                        (if (if #{tmp\ 1238}#
+                                              (@apply
+                                                (lambda (#{a\ 1241}#
+                                                         #{b\ 1242}#)
+                                                  (eq? (syntax->datum
+                                                         #{a\ 1241}#)
+                                                       #:rest))
+                                                #{tmp\ 1238}#)
+                                              #f)
+                                          (@apply
+                                            (lambda (#{a\ 1245}# #{b\ 1246}#)
+                                              (#{rest\ 1014}#
+                                                #{b\ 1246}#
+                                                (reverse #{rreq\ 1206}#)
+                                                '()
+                                                '()))
+                                            #{tmp\ 1238}#)
+                                          (let ((#{tmp\ 1247}#
+                                                  (list #{tmp\ 1209}#)))
+                                            (if (if #{tmp\ 1247}#
+                                                  (@apply
+                                                    (lambda (#{r\ 1249}#)
+                                                      (#{id?\ 387}#
+                                                        #{r\ 1249}#))
+                                                    #{tmp\ 1247}#)
                                                   #f)
-                                              (apply (lambda (#{r\ 1298}#)
-                                                       (#{check\ 1271}#
-                                                         (reverse
-                                                           #{rreq\ 1280}#)
-                                                         #{r\ 1298}#))
-                                                     #{tmp\ 1294}#)
-                                              ((lambda (#{else\ 1300}#)
-                                                 (syntax-violation
-                                                   'lambda
-                                                   "invalid argument list"
-                                                   #{orig-args\ 1266}#
-                                                   #{args\ 1279}#))
-                                               #{tmp\ 1283}#)))
-                                          (list #{tmp\ 1283}#))))
-                                     ($sc-dispatch
-                                       #{tmp\ 1283}#
-                                       '(any . any)))))
-                                ($sc-dispatch #{tmp\ 1283}# (quote ()))))
-                             #{args\ 1279}#))))
-                 (#{req\ 1269}# #{orig-args\ 1266}# (quote ())))))
-           (#{ellipsis?\ 473}#
-             (lambda (#{x\ 1301}#)
-               (if (#{nonsymbol-id?\ 370}# #{x\ 1301}#)
-                 (#{free-id=?\ 431}#
-                   #{x\ 1301}#
-                   '#(syntax-object
-                      ...
-                      ((top)
-                       #(ribcage () () ())
-                       #(ribcage () () ())
-                       #(ribcage #(x) #((top)) #("i1302"))
-                       #(ribcage
-                         (lambda-var-list
-                           gen-var
-                           strip
-                           chi-lambda-case
-                           lambda*-formals
-                           chi-simple-lambda
-                           lambda-formals
-                           ellipsis?
-                           chi-void
-                           eval-local-transformer
-                           chi-local-syntax
-                           chi-body
-                           chi-macro
-                           chi-application
-                           chi-expr
-                           chi
-                           chi-top
-                           syntax-type
-                           chi-when-list
-                           chi-install-global
-                           chi-top-sequence
-                           chi-sequence
-                           source-wrap
-                           wrap
-                           bound-id-member?
-                           distinct-bound-ids?
-                           valid-bound-ids?
-                           bound-id=?
-                           free-id=?
-                           id-var-name
-                           same-marks?
-                           join-marks
-                           join-wraps
-                           smart-append
-                           make-binding-wrap
-                           extend-ribcage!
-                           make-empty-ribcage
-                           new-mark
-                           anti-mark
-                           the-anti-mark
-                           top-marked?
-                           top-wrap
-                           empty-wrap
-                           set-ribcage-labels!
-                           set-ribcage-marks!
-                           set-ribcage-symnames!
-                           ribcage-labels
-                           ribcage-marks
-                           ribcage-symnames
-                           ribcage?
-                           make-ribcage
-                           gen-labels
-                           gen-label
-                           make-rename
-                           rename-marks
-                           rename-new
-                           rename-old
-                           subst-rename?
-                           wrap-subst
-                           wrap-marks
-                           make-wrap
-                           id-sym-name&marks
-                           id-sym-name
-                           id?
-                           nonsymbol-id?
-                           global-extend
-                           lookup
-                           macros-only-env
-                           extend-var-env
-                           extend-env
-                           null-env
-                           binding-value
-                           binding-type
-                           make-binding
-                           arg-check
-                           source-annotation
-                           no-source
-                           set-syntax-object-module!
-                           set-syntax-object-wrap!
-                           set-syntax-object-expression!
-                           syntax-object-module
-                           syntax-object-wrap
-                           syntax-object-expression
-                           syntax-object?
-                           make-syntax-object
-                           build-lexical-var
-                           build-letrec
-                           build-named-let
-                           build-let
-                           build-sequence
-                           build-data
-                           build-primref
-                           build-lambda-case
-                           build-case-lambda
-                           build-simple-lambda
-                           build-global-definition
-                           maybe-name-value!
-                           build-global-assignment
-                           build-global-reference
-                           analyze-variable
-                           build-lexical-assignment
-                           build-lexical-reference
-                           build-dynlet
-                           build-conditional
-                           build-application
-                           build-void
-                           decorate-source
-                           get-global-definition-hook
-                           put-global-definition-hook
-                           gensym-hook
-                           local-eval-hook
-                           top-level-eval-hook
-                           fx<
-                           fx=
-                           fx-
-                           fx+
-                           set-lambda-meta!
-                           lambda-meta
-                           lambda?
-                           make-dynlet
-                           make-letrec
-                           make-let
-                           make-lambda-case
-                           make-lambda
-                           make-sequence
-                           make-application
-                           make-conditional
-                           make-toplevel-define
-                           make-toplevel-set
-                           make-toplevel-ref
-                           make-module-set
-                           make-module-ref
-                           make-lexical-set
-                           make-lexical-ref
-                           make-primitive-ref
-                           make-const
-                           make-void)
-                         ((top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top)
-                          (top))
-                         ("i486"
-                          "i484"
-                          "i482"
-                          "i480"
-                          "i478"
-                          "i476"
-                          "i474"
-                          "i472"
-                          "i470"
-                          "i468"
-                          "i466"
-                          "i464"
-                          "i462"
-                          "i460"
-                          "i458"
-                          "i456"
-                          "i454"
-                          "i452"
-                          "i450"
-                          "i448"
-                          "i446"
-                          "i444"
-                          "i442"
-                          "i440"
-                          "i438"
-                          "i436"
-                          "i434"
-                          "i432"
-                          "i430"
-                          "i428"
-                          "i426"
-                          "i424"
-                          "i422"
-                          "i420"
-                          "i418"
-                          "i416"
-                          "i415"
-                          "i414"
-                          "i412"
-                          "i411"
-                          "i410"
-                          "i409"
-                          "i408"
-                          "i406"
-                          "i404"
-                          "i402"
-                          "i400"
-                          "i398"
-                          "i396"
-                          "i394"
-                          "i392"
-                          "i389"
-                          "i387"
-                          "i386"
-                          "i385"
-                          "i384"
-                          "i383"
-                          "i382"
-                          "i380"
-                          "i378"
-                          "i376"
-                          "i374"
-                          "i373"
-                          "i371"
-                          "i369"
-                          "i367"
-                          "i365"
-                          "i363"
-                          "i361"
-                          "i359"
-                          "i358"
-                          "i356"
-                          "i354"
-                          "i353"
-                          "i352"
-                          "i350"
-                          "i349"
-                          "i347"
-                          "i345"
-                          "i343"
-                          "i341"
-                          "i339"
-                          "i337"
-                          "i335"
-                          "i333"
-                          "i331"
-                          "i329"
-                          "i327"
-                          "i325"
-                          "i323"
-                          "i321"
-                          "i319"
-                          "i317"
-                          "i315"
-                          "i313"
-                          "i311"
-                          "i309"
-                          "i307"
-                          "i305"
-                          "i303"
-                          "i301"
-                          "i299"
-                          "i297"
-                          "i295"
-                          "i293"
-                          "i291"
-                          "i289"
-                          "i287"
-                          "i285"
-                          "i284"
-                          "i282"
-                          "i280"
-                          "i278"
-                          "i276"
-                          "i274"
-                          "i272"
-                          "i270"
-                          "i268"
-                          "i266"
-                          "i263"
-                          "i261"
-                          "i259"
-                          "i257"
-                          "i255"
-                          "i253"
-                          "i251"
-                          "i249"
-                          "i247"
-                          "i245"
-                          "i243"
-                          "i241"
-                          "i239"
-                          "i237"
-                          "i235"
-                          "i233"
-                          "i231"
-                          "i229"))
-                       #(ribcage
-                         (define-structure
-                           define-expansion-accessors
-                           define-expansion-constructors
-                           and-map*)
-                         ((top) (top) (top) (top))
-                         ("i23" "i22" "i21" "i19")))
-                      (hygiene guile)))
-                 #f)))
-           (#{chi-void\ 471}#
-             (lambda () (#{build-void\ 292}# #f)))
-           (#{eval-local-transformer\ 469}#
-             (lambda (#{expanded\ 1306}# #{mod\ 1307}#)
-               (let ((#{p\ 1311}#
-                       (#{local-eval-hook\ 283}#
-                         #{expanded\ 1306}#
-                         #{mod\ 1307}#)))
-                 (if (procedure? #{p\ 1311}#)
-                   #{p\ 1311}#
+                                              (@apply
+                                                (lambda (#{r\ 1251}#)
+                                                  (#{rest\ 1014}#
+                                                    #{r\ 1251}#
+                                                    (reverse #{rreq\ 1206}#)
+                                                    '()
+                                                    '()))
+                                                #{tmp\ 1247}#)
+                                              (let ((#{else\ 1253}#
+                                                      #{tmp\ 1209}#))
+                                                (syntax-violation
+                                                  'lambda*
+                                                  "invalid argument list"
+                                                  #{orig-args\ 1005}#
+                                                  #{args\ 
1205}#))))))))))))))))))
+               (begin
+                 (#{req\ 1008}# #{orig-args\ 1005}# (quote ()))))))
+         (#{chi-simple-lambda\ 492}#
+           (lambda (#{e\ 1254}#
+                    #{r\ 1255}#
+                    #{w\ 1256}#
+                    #{s\ 1257}#
+                    #{mod\ 1258}#
+                    #{req\ 1259}#
+                    #{rest\ 1260}#
+                    #{meta\ 1261}#
+                    #{body\ 1262}#)
+             (begin
+               (let ((#{ids\ 1274}#
+                       (if #{rest\ 1260}#
+                         (append #{req\ 1259}# (list #{rest\ 1260}#))
+                         #{req\ 1259}#)))
+                 (begin
+                   (let ((#{vars\ 1276}#
+                           (map #{gen-var\ 500}# #{ids\ 1274}#)))
+                     (begin
+                       (let ((#{labels\ 1278}#
+                               (#{gen-labels\ 405}# #{ids\ 1274}#)))
+                         (#{build-simple-lambda\ 329}#
+                           #{s\ 1257}#
+                           (map syntax->datum #{req\ 1259}#)
+                           (if #{rest\ 1260}#
+                             (syntax->datum #{rest\ 1260}#)
+                             #f)
+                           #{vars\ 1276}#
+                           #{meta\ 1261}#
+                           (#{chi-body\ 480}#
+                             #{body\ 1262}#
+                             (#{source-wrap\ 458}#
+                               #{e\ 1254}#
+                               #{w\ 1256}#
+                               #{s\ 1257}#
+                               #{mod\ 1258}#)
+                             (#{extend-var-env\ 377}#
+                               #{labels\ 1278}#
+                               #{vars\ 1276}#
+                               #{r\ 1255}#)
+                             (#{make-binding-wrap\ 434}#
+                               #{ids\ 1274}#
+                               #{labels\ 1278}#
+                               #{w\ 1256}#)
+                             #{mod\ 1258}#))))))))))
+         (#{lambda-formals\ 490}#
+           (lambda (#{orig-args\ 1281}#)
+             (letrec*
+               ((#{check\ 1286}#
+                  (lambda (#{req\ 1287}# #{rest\ 1288}#)
+                    (if (#{distinct-bound-ids?\ 452}#
+                          (if #{rest\ 1288}#
+                            (cons #{rest\ 1288}# #{req\ 1287}#)
+                            #{req\ 1287}#))
+                      (values #{req\ 1287}# #f #{rest\ 1288}# #f)
+                      (syntax-violation
+                        'lambda
+                        "duplicate identifier in argument list"
+                        #{orig-args\ 1281}#))))
+                (#{req\ 1284}#
+                  (lambda (#{args\ 1294}# #{rreq\ 1295}#)
+                    (let ((#{tmp\ 1298}# #{args\ 1294}#))
+                      (let ((#{tmp\ 1299}#
+                              ($sc-dispatch #{tmp\ 1298}# (quote ()))))
+                        (if #{tmp\ 1299}#
+                          (@apply
+                            (lambda ()
+                              (#{check\ 1286}# (reverse #{rreq\ 1295}#) #f))
+                            #{tmp\ 1299}#)
+                          (let ((#{tmp\ 1300}#
+                                  ($sc-dispatch
+                                    #{tmp\ 1298}#
+                                    '(any . any))))
+                            (if (if #{tmp\ 1300}#
+                                  (@apply
+                                    (lambda (#{a\ 1303}# #{b\ 1304}#)
+                                      (#{id?\ 387}# #{a\ 1303}#))
+                                    #{tmp\ 1300}#)
+                                  #f)
+                              (@apply
+                                (lambda (#{a\ 1307}# #{b\ 1308}#)
+                                  (#{req\ 1284}#
+                                    #{b\ 1308}#
+                                    (cons #{a\ 1307}# #{rreq\ 1295}#)))
+                                #{tmp\ 1300}#)
+                              (let ((#{tmp\ 1309}# (list #{tmp\ 1298}#)))
+                                (if (if #{tmp\ 1309}#
+                                      (@apply
+                                        (lambda (#{r\ 1311}#)
+                                          (#{id?\ 387}# #{r\ 1311}#))
+                                        #{tmp\ 1309}#)
+                                      #f)
+                                  (@apply
+                                    (lambda (#{r\ 1313}#)
+                                      (#{check\ 1286}#
+                                        (reverse #{rreq\ 1295}#)
+                                        #{r\ 1313}#))
+                                    #{tmp\ 1309}#)
+                                  (let ((#{else\ 1315}# #{tmp\ 1298}#))
+                                    (syntax-violation
+                                      'lambda
+                                      "invalid argument list"
+                                      #{orig-args\ 1281}#
+                                      #{args\ 1294}#))))))))))))
+               (begin
+                 (#{req\ 1284}# #{orig-args\ 1281}# (quote ()))))))
+         (#{ellipsis?\ 488}#
+           (lambda (#{x\ 1316}#)
+             (if (#{nonsymbol-id?\ 385}# #{x\ 1316}#)
+               (#{free-id=?\ 446}#
+                 #{x\ 1316}#
+                 '#(syntax-object
+                    ...
+                    ((top)
+                     #(ribcage () () ())
+                     #(ribcage () () ())
+                     #(ribcage #(x) #((top)) #("i1317"))
+                     #(ribcage
+                       (lambda-var-list
+                         gen-var
+                         strip
+                         chi-lambda-case
+                         lambda*-formals
+                         chi-simple-lambda
+                         lambda-formals
+                         ellipsis?
+                         chi-void
+                         eval-local-transformer
+                         chi-local-syntax
+                         chi-body
+                         chi-macro
+                         chi-application
+                         chi-expr
+                         chi
+                         chi-top
+                         syntax-type
+                         chi-when-list
+                         chi-install-global
+                         chi-top-sequence
+                         chi-sequence
+                         source-wrap
+                         wrap
+                         bound-id-member?
+                         distinct-bound-ids?
+                         valid-bound-ids?
+                         bound-id=?
+                         free-id=?
+                         id-var-name
+                         same-marks?
+                         join-marks
+                         join-wraps
+                         smart-append
+                         make-binding-wrap
+                         extend-ribcage!
+                         make-empty-ribcage
+                         new-mark
+                         anti-mark
+                         the-anti-mark
+                         top-marked?
+                         top-wrap
+                         empty-wrap
+                         set-ribcage-labels!
+                         set-ribcage-marks!
+                         set-ribcage-symnames!
+                         ribcage-labels
+                         ribcage-marks
+                         ribcage-symnames
+                         ribcage?
+                         make-ribcage
+                         gen-labels
+                         gen-label
+                         make-rename
+                         rename-marks
+                         rename-new
+                         rename-old
+                         subst-rename?
+                         wrap-subst
+                         wrap-marks
+                         make-wrap
+                         id-sym-name&marks
+                         id-sym-name
+                         id?
+                         nonsymbol-id?
+                         global-extend
+                         lookup
+                         macros-only-env
+                         extend-var-env
+                         extend-env
+                         null-env
+                         binding-value
+                         binding-type
+                         make-binding
+                         arg-check
+                         source-annotation
+                         no-source
+                         set-syntax-object-module!
+                         set-syntax-object-wrap!
+                         set-syntax-object-expression!
+                         syntax-object-module
+                         syntax-object-wrap
+                         syntax-object-expression
+                         syntax-object?
+                         make-syntax-object
+                         build-lexical-var
+                         build-letrec
+                         build-named-let
+                         build-let
+                         build-sequence
+                         build-data
+                         build-primref
+                         build-lambda-case
+                         build-case-lambda
+                         build-simple-lambda
+                         build-global-definition
+                         maybe-name-value!
+                         build-global-assignment
+                         build-global-reference
+                         analyze-variable
+                         build-lexical-assignment
+                         build-lexical-reference
+                         build-dynlet
+                         build-conditional
+                         build-application
+                         build-void
+                         decorate-source
+                         get-global-definition-hook
+                         put-global-definition-hook
+                         gensym-hook
+                         local-eval-hook
+                         top-level-eval-hook
+                         fx<
+                         fx=
+                         fx-
+                         fx+
+                         set-lambda-meta!
+                         lambda-meta
+                         lambda?
+                         make-dynlet
+                         make-letrec
+                         make-let
+                         make-lambda-case
+                         make-lambda
+                         make-sequence
+                         make-application
+                         make-conditional
+                         make-toplevel-define
+                         make-toplevel-set
+                         make-toplevel-ref
+                         make-module-set
+                         make-module-ref
+                         make-lexical-set
+                         make-lexical-ref
+                         make-primitive-ref
+                         make-const
+                         make-void)
+                       ((top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top)
+                        (top))
+                       ("i501"
+                        "i499"
+                        "i497"
+                        "i495"
+                        "i493"
+                        "i491"
+                        "i489"
+                        "i487"
+                        "i485"
+                        "i483"
+                        "i481"
+                        "i479"
+                        "i477"
+                        "i475"
+                        "i473"
+                        "i471"
+                        "i469"
+                        "i467"
+                        "i465"
+                        "i463"
+                        "i461"
+                        "i459"
+                        "i457"
+                        "i455"
+                        "i453"
+                        "i451"
+                        "i449"
+                        "i447"
+                        "i445"
+                        "i443"
+                        "i441"
+                        "i439"
+                        "i437"
+                        "i435"
+                        "i433"
+                        "i431"
+                        "i430"
+                        "i429"
+                        "i427"
+                        "i426"
+                        "i425"
+                        "i424"
+                        "i423"
+                        "i421"
+                        "i419"
+                        "i417"
+                        "i415"
+                        "i413"
+                        "i411"
+                        "i409"
+                        "i407"
+                        "i404"
+                        "i402"
+                        "i401"
+                        "i400"
+                        "i399"
+                        "i398"
+                        "i397"
+                        "i395"
+                        "i393"
+                        "i391"
+                        "i389"
+                        "i388"
+                        "i386"
+                        "i384"
+                        "i382"
+                        "i380"
+                        "i378"
+                        "i376"
+                        "i374"
+                        "i373"
+                        "i371"
+                        "i369"
+                        "i368"
+                        "i367"
+                        "i365"
+                        "i364"
+                        "i362"
+                        "i360"
+                        "i358"
+                        "i356"
+                        "i354"
+                        "i352"
+                        "i350"
+                        "i348"
+                        "i346"
+                        "i344"
+                        "i342"
+                        "i340"
+                        "i338"
+                        "i336"
+                        "i334"
+                        "i332"
+                        "i330"
+                        "i328"
+                        "i326"
+                        "i324"
+                        "i322"
+                        "i320"
+                        "i318"
+                        "i316"
+                        "i314"
+                        "i312"
+                        "i310"
+                        "i308"
+                        "i306"
+                        "i304"
+                        "i302"
+                        "i300"
+                        "i299"
+                        "i297"
+                        "i295"
+                        "i293"
+                        "i291"
+                        "i289"
+                        "i287"
+                        "i285"
+                        "i283"
+                        "i281"
+                        "i278"
+                        "i276"
+                        "i274"
+                        "i272"
+                        "i270"
+                        "i268"
+                        "i266"
+                        "i264"
+                        "i262"
+                        "i260"
+                        "i258"
+                        "i256"
+                        "i254"
+                        "i252"
+                        "i250"
+                        "i248"
+                        "i246"
+                        "i244"))
+                     #(ribcage
+                       (define-structure
+                         define-expansion-accessors
+                         define-expansion-constructors
+                         and-map*)
+                       ((top) (top) (top) (top))
+                       ("i38" "i37" "i36" "i34")))
+                    (hygiene guile)))
+               #f)))
+         (#{chi-void\ 486}#
+           (lambda () (#{build-void\ 307}# #f)))
+         (#{eval-local-transformer\ 484}#
+           (lambda (#{expanded\ 1321}# #{mod\ 1322}#)
+             (begin
+               (let ((#{p\ 1326}#
+                       (#{local-eval-hook\ 298}#
+                         #{expanded\ 1321}#
+                         #{mod\ 1322}#)))
+                 (if (procedure? #{p\ 1326}#)
+                   #{p\ 1326}#
                    (syntax-violation
                      #f
                      "nonprocedure transformer"
-                     #{p\ 1311}#)))))
-           (#{chi-local-syntax\ 467}#
-             (lambda (#{rec?\ 1312}#
-                      #{e\ 1313}#
-                      #{r\ 1314}#
-                      #{w\ 1315}#
-                      #{s\ 1316}#
-                      #{mod\ 1317}#
-                      #{k\ 1318}#)
-               ((lambda (#{tmp\ 1326}#)
-                  ((lambda (#{tmp\ 1327}#)
-                     (if #{tmp\ 1327}#
-                       (apply (lambda (#{_\ 1333}#
-                                       #{id\ 1334}#
-                                       #{val\ 1335}#
-                                       #{e1\ 1336}#
-                                       #{e2\ 1337}#)
-                                (let ((#{ids\ 1339}# #{id\ 1334}#))
-                                  (if (not (#{valid-bound-ids?\ 435}#
-                                             #{ids\ 1339}#))
-                                    (syntax-violation
-                                      #f
-                                      "duplicate bound keyword"
-                                      #{e\ 1313}#)
-                                    (let ((#{labels\ 1342}#
-                                            (#{gen-labels\ 390}#
-                                              #{ids\ 1339}#)))
-                                      (let ((#{new-w\ 1344}#
-                                              (#{make-binding-wrap\ 419}#
-                                                #{ids\ 1339}#
-                                                #{labels\ 1342}#
-                                                #{w\ 1315}#)))
-                                        (#{k\ 1318}#
-                                          (cons #{e1\ 1336}# #{e2\ 1337}#)
-                                          (#{extend-env\ 360}#
-                                            #{labels\ 1342}#
-                                            (let ((#{w\ 1348}#
-                                                    (if #{rec?\ 1312}#
-                                                      #{new-w\ 1344}#
-                                                      #{w\ 1315}#))
-                                                  (#{trans-r\ 1349}#
-                                                    (#{macros-only-env\ 364}#
-                                                      #{r\ 1314}#)))
-                                              (map (lambda (#{x\ 1350}#)
-                                                     (cons 'macro
-                                                           
(#{eval-local-transformer\ 469}#
-                                                             (#{chi\ 457}#
-                                                               #{x\ 1350}#
-                                                               #{trans-r\ 
1349}#
-                                                               #{w\ 1348}#
-                                                               #{mod\ 1317}#)
-                                                             #{mod\ 1317}#)))
-                                                   #{val\ 1335}#))
-                                            #{r\ 1314}#)
-                                          #{new-w\ 1344}#
-                                          #{s\ 1316}#
-                                          #{mod\ 1317}#))))))
-                              #{tmp\ 1327}#)
-                       ((lambda (#{_\ 1355}#)
-                          (syntax-violation
-                            #f
-                            "bad local syntax definition"
-                            (#{source-wrap\ 443}#
-                              #{e\ 1313}#
-                              #{w\ 1315}#
-                              #{s\ 1316}#
-                              #{mod\ 1317}#)))
-                        #{tmp\ 1326}#)))
-                   ($sc-dispatch
-                     #{tmp\ 1326}#
-                     '(any #(each (any any)) any . each-any))))
-                #{e\ 1313}#)))
-           (#{chi-body\ 465}#
-             (lambda (#{body\ 1356}#
-                      #{outer-form\ 1357}#
-                      #{r\ 1358}#
-                      #{w\ 1359}#
-                      #{mod\ 1360}#)
-               (let ((#{r\ 1368}#
+                     #{p\ 1326}#))))))
+         (#{chi-local-syntax\ 482}#
+           (lambda (#{rec?\ 1327}#
+                    #{e\ 1328}#
+                    #{r\ 1329}#
+                    #{w\ 1330}#
+                    #{s\ 1331}#
+                    #{mod\ 1332}#
+                    #{k\ 1333}#)
+             (let ((#{tmp\ 1341}# #{e\ 1328}#))
+               (let ((#{tmp\ 1342}#
+                       ($sc-dispatch
+                         #{tmp\ 1341}#
+                         '(any #(each (any any)) any . each-any))))
+                 (if #{tmp\ 1342}#
+                   (@apply
+                     (lambda (#{_\ 1348}#
+                              #{id\ 1349}#
+                              #{val\ 1350}#
+                              #{e1\ 1351}#
+                              #{e2\ 1352}#)
+                       (begin
+                         (let ((#{ids\ 1354}# #{id\ 1349}#))
+                           (if (not (#{valid-bound-ids?\ 450}# #{ids\ 1354}#))
+                             (syntax-violation
+                               #f
+                               "duplicate bound keyword"
+                               #{e\ 1328}#)
+                             (begin
+                               (let ((#{labels\ 1357}#
+                                       (#{gen-labels\ 405}# #{ids\ 1354}#)))
+                                 (begin
+                                   (let ((#{new-w\ 1359}#
+                                           (#{make-binding-wrap\ 434}#
+                                             #{ids\ 1354}#
+                                             #{labels\ 1357}#
+                                             #{w\ 1330}#)))
+                                     (#{k\ 1333}#
+                                       (cons #{e1\ 1351}# #{e2\ 1352}#)
+                                       (#{extend-env\ 375}#
+                                         #{labels\ 1357}#
+                                         (begin
+                                           (let ((#{w\ 1363}#
+                                                   (if #{rec?\ 1327}#
+                                                     #{new-w\ 1359}#
+                                                     #{w\ 1330}#))
+                                                 (#{trans-r\ 1364}#
+                                                   (#{macros-only-env\ 379}#
+                                                     #{r\ 1329}#)))
+                                             (map (lambda (#{x\ 1365}#)
+                                                    (cons 'macro
+                                                          
(#{eval-local-transformer\ 484}#
+                                                            (#{chi\ 472}#
+                                                              #{x\ 1365}#
+                                                              #{trans-r\ 1364}#
+                                                              #{w\ 1363}#
+                                                              #{mod\ 1332}#)
+                                                            #{mod\ 1332}#)))
+                                                  #{val\ 1350}#)))
+                                         #{r\ 1329}#)
+                                       #{new-w\ 1359}#
+                                       #{s\ 1331}#
+                                       #{mod\ 1332}#)))))))))
+                     #{tmp\ 1342}#)
+                   (let ((#{_\ 1370}# #{tmp\ 1341}#))
+                     (syntax-violation
+                       #f
+                       "bad local syntax definition"
+                       (#{source-wrap\ 458}#
+                         #{e\ 1328}#
+                         #{w\ 1330}#
+                         #{s\ 1331}#
+                         #{mod\ 1332}#))))))))
+         (#{chi-body\ 480}#
+           (lambda (#{body\ 1371}#
+                    #{outer-form\ 1372}#
+                    #{r\ 1373}#
+                    #{w\ 1374}#
+                    #{mod\ 1375}#)
+             (begin
+               (let ((#{r\ 1383}#
                        (cons '("placeholder" placeholder)
-                             #{r\ 1358}#)))
-                 (let ((#{ribcage\ 1370}#
-                         (#{make-ribcage\ 393}#
-                           '()
-                           '()
-                           '())))
-                   (let ((#{w\ 1373}#
-                           (#{make-wrap\ 377}#
-                             (#{wrap-marks\ 379}# #{w\ 1359}#)
-                             (cons #{ribcage\ 1370}#
-                                   (#{wrap-subst\ 381}# #{w\ 1359}#)))))
-                     (letrec ((#{parse\ 1382}#
-                                (lambda (#{body\ 1383}#
-                                         #{ids\ 1384}#
-                                         #{labels\ 1385}#
-                                         #{var-ids\ 1386}#
-                                         #{vars\ 1387}#
-                                         #{vals\ 1388}#
-                                         #{bindings\ 1389}#)
-                                  (if (null? #{body\ 1383}#)
-                                    (syntax-violation
-                                      #f
-                                      "no expressions in body"
-                                      #{outer-form\ 1357}#)
-                                    (let ((#{e\ 1394}# (cdar #{body\ 1383}#))
-                                          (#{er\ 1395}# (caar #{body\ 1383}#)))
+                             #{r\ 1373}#)))
+                 (begin
+                   (let ((#{ribcage\ 1385}#
+                           (#{make-ribcage\ 408}#
+                             '()
+                             '()
+                             '())))
+                     (begin
+                       (let ((#{w\ 1388}#
+                               (#{make-wrap\ 392}#
+                                 (#{wrap-marks\ 394}# #{w\ 1374}#)
+                                 (cons #{ribcage\ 1385}#
+                                       (#{wrap-subst\ 396}# #{w\ 1374}#)))))
+                         (letrec*
+                           ((#{parse\ 1397}#
+                              (lambda (#{body\ 1398}#
+                                       #{ids\ 1399}#
+                                       #{labels\ 1400}#
+                                       #{var-ids\ 1401}#
+                                       #{vars\ 1402}#
+                                       #{vals\ 1403}#
+                                       #{bindings\ 1404}#)
+                                (if (null? #{body\ 1398}#)
+                                  (syntax-violation
+                                    #f
+                                    "no expressions in body"
+                                    #{outer-form\ 1372}#)
+                                  (begin
+                                    (let ((#{e\ 1409}#
+                                            (cdr (car #{body\ 1398}#)))
+                                          (#{er\ 1410}#
+                                            (car (car #{body\ 1398}#))))
                                       (call-with-values
                                         (lambda ()
-                                          (#{syntax-type\ 453}#
-                                            #{e\ 1394}#
-                                            #{er\ 1395}#
+                                          (#{syntax-type\ 468}#
+                                            #{e\ 1409}#
+                                            #{er\ 1410}#
                                             '(())
-                                            (#{source-annotation\ 351}#
-                                              #{er\ 1395}#)
-                                            #{ribcage\ 1370}#
-                                            #{mod\ 1360}#
+                                            (#{source-annotation\ 366}#
+                                              #{er\ 1410}#)
+                                            #{ribcage\ 1385}#
+                                            #{mod\ 1375}#
                                             #f))
-                                        (lambda (#{type\ 1397}#
-                                                 #{value\ 1398}#
-                                                 #{e\ 1399}#
-                                                 #{w\ 1400}#
-                                                 #{s\ 1401}#
-                                                 #{mod\ 1402}#)
-                                          (if (memv #{type\ 1397}#
-                                                    '(define-form))
-                                            (let ((#{id\ 1412}#
-                                                    (#{wrap\ 441}#
-                                                      #{value\ 1398}#
-                                                      #{w\ 1400}#
-                                                      #{mod\ 1402}#))
-                                                  (#{label\ 1413}#
-                                                    (#{gen-label\ 388}#)))
-                                              (let ((#{var\ 1415}#
-                                                      (#{gen-var\ 485}#
-                                                        #{id\ 1412}#)))
+                                        (lambda (#{type\ 1412}#
+                                                 #{value\ 1413}#
+                                                 #{e\ 1414}#
+                                                 #{w\ 1415}#
+                                                 #{s\ 1416}#
+                                                 #{mod\ 1417}#)
+                                          (if (eqv? #{type\ 1412}#
+                                                    'define-form)
+                                            (begin
+                                              (let ((#{id\ 1427}#
+                                                      (#{wrap\ 456}#
+                                                        #{value\ 1413}#
+                                                        #{w\ 1415}#
+                                                        #{mod\ 1417}#))
+                                                    (#{label\ 1428}#
+                                                      (#{gen-label\ 403}#)))
                                                 (begin
-                                                  (#{extend-ribcage!\ 417}#
-                                                    #{ribcage\ 1370}#
-                                                    #{id\ 1412}#
-                                                    #{label\ 1413}#)
-                                                  (#{parse\ 1382}#
-                                                    (cdr #{body\ 1383}#)
-                                                    (cons #{id\ 1412}#
-                                                          #{ids\ 1384}#)
-                                                    (cons #{label\ 1413}#
-                                                          #{labels\ 1385}#)
-                                                    (cons #{id\ 1412}#
-                                                          #{var-ids\ 1386}#)
-                                                    (cons #{var\ 1415}#
-                                                          #{vars\ 1387}#)
-                                                    (cons (cons #{er\ 1395}#
-                                                                (#{wrap\ 441}#
-                                                                  #{e\ 1399}#
-                                                                  #{w\ 1400}#
-                                                                  #{mod\ 
1402}#))
-                                                          #{vals\ 1388}#)
-                                                    (cons (cons 'lexical
-                                                                #{var\ 1415}#)
-                                                          #{bindings\ 
1389}#)))))
-                                            (if (memv #{type\ 1397}#
-                                                      '(define-syntax-form))
-                                              (let ((#{id\ 1420}#
-                                                      (#{wrap\ 441}#
-                                                        #{value\ 1398}#
-                                                        #{w\ 1400}#
-                                                        #{mod\ 1402}#))
-                                                    (#{label\ 1421}#
-                                                      (#{gen-label\ 388}#)))
-                                                (begin
-                                                  (#{extend-ribcage!\ 417}#
-                                                    #{ribcage\ 1370}#
-                                                    #{id\ 1420}#
-                                                    #{label\ 1421}#)
-                                                  (#{parse\ 1382}#
-                                                    (cdr #{body\ 1383}#)
-                                                    (cons #{id\ 1420}#
-                                                          #{ids\ 1384}#)
-                                                    (cons #{label\ 1421}#
-                                                          #{labels\ 1385}#)
-                                                    #{var-ids\ 1386}#
-                                                    #{vars\ 1387}#
-                                                    #{vals\ 1388}#
-                                                    (cons (cons 'macro
-                                                                (cons #{er\ 
1395}#
-                                                                      (#{wrap\ 
441}#
-                                                                        #{e\ 
1399}#
-                                                                        #{w\ 
1400}#
-                                                                        #{mod\ 
1402}#)))
-                                                          #{bindings\ 
1389}#))))
-                                              (if (memv #{type\ 1397}#
-                                                        '(begin-form))
-                                                ((lambda (#{tmp\ 1424}#)
-                                                   ((lambda (#{tmp\ 1425}#)
-                                                      (if #{tmp\ 1425}#
-                                                        (apply (lambda (#{_\ 
1428}#
-                                                                        #{e1\ 
1429}#)
-                                                                 (#{parse\ 
1382}#
-                                                                   (letrec 
((#{f\ 1432}#
-                                                                              
(lambda (#{forms\ 1433}#)
-                                                                               
 (if (null? #{forms\ 1433}#)
-                                                                               
   (cdr #{body\ 1383}#)
-                                                                               
   (cons (cons #{er\ 1395}#
-                                                                               
               (#{wrap\ 441}#
-                                                                               
                 (car #{forms\ 1433}#)
-                                                                               
                 #{w\ 1400}#
-                                                                               
                 #{mod\ 1402}#))
-                                                                               
         (#{f\ 1432}#
-                                                                               
           (cdr #{forms\ 1433}#)))))))
-                                                                     (#{f\ 
1432}#
-                                                                       #{e1\ 
1429}#))
-                                                                   #{ids\ 
1384}#
-                                                                   #{labels\ 
1385}#
-                                                                   #{var-ids\ 
1386}#
-                                                                   #{vars\ 
1387}#
-                                                                   #{vals\ 
1388}#
-                                                                   #{bindings\ 
1389}#))
-                                                               #{tmp\ 1425}#)
-                                                        (syntax-violation
-                                                          #f
-                                                          "source expression 
failed to match any pattern"
-                                                          #{tmp\ 1424}#)))
-                                                    ($sc-dispatch
-                                                      #{tmp\ 1424}#
-                                                      '(any . each-any))))
-                                                 #{e\ 1399}#)
-                                                (if (memv #{type\ 1397}#
-                                                          '(local-syntax-form))
-                                                  (#{chi-local-syntax\ 467}#
-                                                    #{value\ 1398}#
-                                                    #{e\ 1399}#
-                                                    #{er\ 1395}#
-                                                    #{w\ 1400}#
-                                                    #{s\ 1401}#
-                                                    #{mod\ 1402}#
-                                                    (lambda (#{forms\ 1436}#
-                                                             #{er\ 1437}#
-                                                             #{w\ 1438}#
-                                                             #{s\ 1439}#
-                                                             #{mod\ 1440}#)
-                                                      (#{parse\ 1382}#
-                                                        (letrec ((#{f\ 1448}#
-                                                                   (lambda 
(#{forms\ 1449}#)
-                                                                     (if 
(null? #{forms\ 1449}#)
-                                                                       (cdr 
#{body\ 1383}#)
-                                                                       (cons 
(cons #{er\ 1437}#
-                                                                               
    (#{wrap\ 441}#
-                                                                               
      (car #{forms\ 1449}#)
-                                                                               
      #{w\ 1438}#
-                                                                               
      #{mod\ 1440}#))
-                                                                             
(#{f\ 1448}#
-                                                                               
(cdr #{forms\ 1449}#)))))))
-                                                          (#{f\ 1448}#
-                                                            #{forms\ 1436}#))
-                                                        #{ids\ 1384}#
-                                                        #{labels\ 1385}#
-                                                        #{var-ids\ 1386}#
-                                                        #{vars\ 1387}#
-                                                        #{vals\ 1388}#
-                                                        #{bindings\ 1389}#)))
-                                                  (if (null? #{ids\ 1384}#)
-                                                    (#{build-sequence\ 324}#
+                                                  (let ((#{var\ 1430}#
+                                                          (#{gen-var\ 500}#
+                                                            #{id\ 1427}#)))
+                                                    (begin
+                                                      (#{extend-ribcage!\ 432}#
+                                                        #{ribcage\ 1385}#
+                                                        #{id\ 1427}#
+                                                        #{label\ 1428}#)
+                                                      (#{parse\ 1397}#
+                                                        (cdr #{body\ 1398}#)
+                                                        (cons #{id\ 1427}#
+                                                              #{ids\ 1399}#)
+                                                        (cons #{label\ 1428}#
+                                                              #{labels\ 1400}#)
+                                                        (cons #{id\ 1427}#
+                                                              #{var-ids\ 
1401}#)
+                                                        (cons #{var\ 1430}#
+                                                              #{vars\ 1402}#)
+                                                        (cons (cons #{er\ 
1410}#
+                                                                    (#{wrap\ 
456}#
+                                                                      #{e\ 
1414}#
+                                                                      #{w\ 
1415}#
+                                                                      #{mod\ 
1417}#))
+                                                              #{vals\ 1403}#)
+                                                        (cons (cons 'lexical
+                                                                    #{var\ 
1430}#)
+                                                              #{bindings\ 
1404}#)))))))
+                                            (if (eqv? #{type\ 1412}#
+                                                      'define-syntax-form)
+                                              (begin
+                                                (let ((#{id\ 1435}#
+                                                        (#{wrap\ 456}#
+                                                          #{value\ 1413}#
+                                                          #{w\ 1415}#
+                                                          #{mod\ 1417}#))
+                                                      (#{label\ 1436}#
+                                                        (#{gen-label\ 403}#)))
+                                                  (begin
+                                                    (#{extend-ribcage!\ 432}#
+                                                      #{ribcage\ 1385}#
+                                                      #{id\ 1435}#
+                                                      #{label\ 1436}#)
+                                                    (#{parse\ 1397}#
+                                                      (cdr #{body\ 1398}#)
+                                                      (cons #{id\ 1435}#
+                                                            #{ids\ 1399}#)
+                                                      (cons #{label\ 1436}#
+                                                            #{labels\ 1400}#)
+                                                      #{var-ids\ 1401}#
+                                                      #{vars\ 1402}#
+                                                      #{vals\ 1403}#
+                                                      (cons (cons 'macro
+                                                                  (cons #{er\ 
1410}#
+                                                                        
(#{wrap\ 456}#
+                                                                          #{e\ 
1414}#
+                                                                          #{w\ 
1415}#
+                                                                          
#{mod\ 1417}#)))
+                                                            #{bindings\ 
1404}#)))))
+                                              (if (eqv? #{type\ 1412}#
+                                                        'begin-form)
+                                                (let ((#{tmp\ 1439}#
+                                                        #{e\ 1414}#))
+                                                  (let ((#{tmp\ 1440}#
+                                                          ($sc-dispatch
+                                                            #{tmp\ 1439}#
+                                                            '(any .
+                                                                  each-any))))
+                                                    (if #{tmp\ 1440}#
+                                                      (@apply
+                                                        (lambda (#{_\ 1443}#
+                                                                 #{e1\ 1444}#)
+                                                          (#{parse\ 1397}#
+                                                            (letrec*
+                                                              ((#{f\ 1447}#
+                                                                 (lambda 
(#{forms\ 1448}#)
+                                                                   (if (null? 
#{forms\ 1448}#)
+                                                                     (cdr 
#{body\ 1398}#)
+                                                                     (cons 
(cons #{er\ 1410}#
+                                                                               
  (#{wrap\ 456}#
+                                                                               
    (car #{forms\ 1448}#)
+                                                                               
    #{w\ 1415}#
+                                                                               
    #{mod\ 1417}#))
+                                                                           
(#{f\ 1447}#
+                                                                             
(cdr #{forms\ 1448}#)))))))
+                                                              (begin
+                                                                (#{f\ 1447}#
+                                                                  #{e1\ 
1444}#)))
+                                                            #{ids\ 1399}#
+                                                            #{labels\ 1400}#
+                                                            #{var-ids\ 1401}#
+                                                            #{vars\ 1402}#
+                                                            #{vals\ 1403}#
+                                                            #{bindings\ 
1404}#))
+                                                        #{tmp\ 1440}#)
+                                                      (syntax-violation
+                                                        #f
+                                                        "source expression 
failed to match any pattern"
+                                                        #{tmp\ 1439}#))))
+                                                (if (eqv? #{type\ 1412}#
+                                                          'local-syntax-form)
+                                                  (#{chi-local-syntax\ 482}#
+                                                    #{value\ 1413}#
+                                                    #{e\ 1414}#
+                                                    #{er\ 1410}#
+                                                    #{w\ 1415}#
+                                                    #{s\ 1416}#
+                                                    #{mod\ 1417}#
+                                                    (lambda (#{forms\ 1451}#
+                                                             #{er\ 1452}#
+                                                             #{w\ 1453}#
+                                                             #{s\ 1454}#
+                                                             #{mod\ 1455}#)
+                                                      (#{parse\ 1397}#
+                                                        (letrec*
+                                                          ((#{f\ 1463}#
+                                                             (lambda (#{forms\ 
1464}#)
+                                                               (if (null? 
#{forms\ 1464}#)
+                                                                 (cdr #{body\ 
1398}#)
+                                                                 (cons (cons 
#{er\ 1452}#
+                                                                             
(#{wrap\ 456}#
+                                                                               
(car #{forms\ 1464}#)
+                                                                               
#{w\ 1453}#
+                                                                               
#{mod\ 1455}#))
+                                                                       (#{f\ 
1463}#
+                                                                         (cdr 
#{forms\ 1464}#)))))))
+                                                          (begin
+                                                            (#{f\ 1463}#
+                                                              #{forms\ 
1451}#)))
+                                                        #{ids\ 1399}#
+                                                        #{labels\ 1400}#
+                                                        #{var-ids\ 1401}#
+                                                        #{vars\ 1402}#
+                                                        #{vals\ 1403}#
+                                                        #{bindings\ 1404}#)))
+                                                  (if (null? #{ids\ 1399}#)
+                                                    (#{build-sequence\ 339}#
                                                       #f
-                                                      (map (lambda (#{x\ 
1452}#)
-                                                             (#{chi\ 457}#
-                                                               (cdr #{x\ 
1452}#)
-                                                               (car #{x\ 
1452}#)
+                                                      (map (lambda (#{x\ 
1467}#)
+                                                             (#{chi\ 472}#
+                                                               (cdr #{x\ 
1467}#)
+                                                               (car #{x\ 
1467}#)
                                                                '(())
-                                                               #{mod\ 1402}#))
-                                                           (cons (cons #{er\ 
1395}#
-                                                                       
(#{source-wrap\ 443}#
-                                                                         #{e\ 
1399}#
-                                                                         #{w\ 
1400}#
-                                                                         #{s\ 
1401}#
-                                                                         
#{mod\ 1402}#))
-                                                                 (cdr #{body\ 
1383}#))))
+                                                               #{mod\ 1417}#))
+                                                           (cons (cons #{er\ 
1410}#
+                                                                       
(#{source-wrap\ 458}#
+                                                                         #{e\ 
1414}#
+                                                                         #{w\ 
1415}#
+                                                                         #{s\ 
1416}#
+                                                                         
#{mod\ 1417}#))
+                                                                 (cdr #{body\ 
1398}#))))
                                                     (begin
-                                                      (if (not 
(#{valid-bound-ids?\ 435}#
-                                                                 #{ids\ 
1384}#))
+                                                      (if (not 
(#{valid-bound-ids?\ 450}#
+                                                                 #{ids\ 
1399}#))
                                                         (syntax-violation
                                                           #f
                                                           "invalid or 
duplicate identifier in definition"
-                                                          #{outer-form\ 
1357}#))
-                                                      (letrec ((#{loop\ 1459}#
-                                                                 (lambda 
(#{bs\ 1460}#
-                                                                          
#{er-cache\ 1461}#
-                                                                          
#{r-cache\ 1462}#)
-                                                                   (if (not 
(null? #{bs\ 1460}#))
-                                                                     (let 
((#{b\ 1465}#
-                                                                             
(car #{bs\ 1460}#)))
-                                                                       (if 
(eq? (car #{b\ 1465}#)
-                                                                               
 'macro)
-                                                                         (let 
((#{er\ 1468}#
-                                                                               
  (cadr #{b\ 1465}#)))
-                                                                           
(let ((#{r-cache\ 1470}#
-                                                                               
    (if (eq? #{er\ 1468}#
-                                                                               
             #{er-cache\ 1461}#)
-                                                                               
      #{r-cache\ 1462}#
-                                                                               
      (#{macros-only-env\ 364}#
-                                                                               
        #{er\ 1468}#))))
+                                                          #{outer-form\ 
1372}#))
+                                                      (letrec*
+                                                        ((#{loop\ 1474}#
+                                                           (lambda (#{bs\ 
1475}#
+                                                                    
#{er-cache\ 1476}#
+                                                                    #{r-cache\ 
1477}#)
+                                                             (if (not (null? 
#{bs\ 1475}#))
+                                                               (begin
+                                                                 (let ((#{b\ 
1480}#
+                                                                         (car 
#{bs\ 1475}#)))
+                                                                   (if (eq? 
(car #{b\ 1480}#)
+                                                                            
'macro)
+                                                                     (begin
+                                                                       (let 
((#{er\ 1483}#
+                                                                               
(car (cdr #{b\ 1480}#))))
+                                                                         (begin
+                                                                           
(let ((#{r-cache\ 1485}#
+                                                                               
    (if (eq? #{er\ 1483}#
+                                                                               
             #{er-cache\ 1476}#)
+                                                                               
      #{r-cache\ 1477}#
+                                                                               
      (#{macros-only-env\ 379}#
+                                                                               
        #{er\ 1483}#))))
                                                                              
(begin
                                                                                
(set-cdr!
-                                                                               
  #{b\ 1465}#
-                                                                               
  (#{eval-local-transformer\ 469}#
-                                                                               
    (#{chi\ 457}#
-                                                                               
      (cddr #{b\ 1465}#)
-                                                                               
      #{r-cache\ 1470}#
+                                                                               
  #{b\ 1480}#
+                                                                               
  (#{eval-local-transformer\ 484}#
+                                                                               
    (#{chi\ 472}#
+                                                                               
      (cdr (cdr #{b\ 1480}#))
+                                                                               
      #{r-cache\ 1485}#
                                                                                
      '(())
-                                                                               
      #{mod\ 1402}#)
-                                                                               
    #{mod\ 1402}#))
-                                                                               
(#{loop\ 1459}#
-                                                                               
  (cdr #{bs\ 1460}#)
-                                                                               
  #{er\ 1468}#
-                                                                               
  #{r-cache\ 1470}#))))
-                                                                         
(#{loop\ 1459}#
-                                                                           
(cdr #{bs\ 1460}#)
-                                                                           
#{er-cache\ 1461}#
-                                                                           
#{r-cache\ 1462}#)))))))
-                                                        (#{loop\ 1459}#
-                                                          #{bindings\ 1389}#
-                                                          #f
-                                                          #f))
+                                                                               
      #{mod\ 1417}#)
+                                                                               
    #{mod\ 1417}#))
+                                                                               
(#{loop\ 1474}#
+                                                                               
  (cdr #{bs\ 1475}#)
+                                                                               
  #{er\ 1483}#
+                                                                               
  #{r-cache\ 1485}#))))))
+                                                                     (#{loop\ 
1474}#
+                                                                       (cdr 
#{bs\ 1475}#)
+                                                                       
#{er-cache\ 1476}#
+                                                                       
#{r-cache\ 1477}#))))))))
+                                                        (begin
+                                                          (#{loop\ 1474}#
+                                                            #{bindings\ 1404}#
+                                                            #f
+                                                            #f)))
                                                       (set-cdr!
-                                                        #{r\ 1368}#
-                                                        (#{extend-env\ 360}#
-                                                          #{labels\ 1385}#
-                                                          #{bindings\ 1389}#
-                                                          (cdr #{r\ 1368}#)))
-                                                      (#{build-letrec\ 330}#
+                                                        #{r\ 1383}#
+                                                        (#{extend-env\ 375}#
+                                                          #{labels\ 1400}#
+                                                          #{bindings\ 1404}#
+                                                          (cdr #{r\ 1383}#)))
+                                                      (#{build-letrec\ 345}#
                                                         #f
+                                                        #t
                                                         (map syntax->datum
-                                                             #{var-ids\ 1386}#)
-                                                        #{vars\ 1387}#
-                                                        (map (lambda (#{x\ 
1473}#)
-                                                               (#{chi\ 457}#
-                                                                 (cdr #{x\ 
1473}#)
-                                                                 (car #{x\ 
1473}#)
+                                                             #{var-ids\ 1401}#)
+                                                        #{vars\ 1402}#
+                                                        (map (lambda (#{x\ 
1488}#)
+                                                               (#{chi\ 472}#
+                                                                 (cdr #{x\ 
1488}#)
+                                                                 (car #{x\ 
1488}#)
                                                                  '(())
-                                                                 #{mod\ 
1402}#))
-                                                             #{vals\ 1388}#)
-                                                        (#{build-sequence\ 
324}#
+                                                                 #{mod\ 
1417}#))
+                                                             #{vals\ 1403}#)
+                                                        (#{build-sequence\ 
339}#
                                                           #f
-                                                          (map (lambda (#{x\ 
1477}#)
-                                                                 (#{chi\ 457}#
-                                                                   (cdr #{x\ 
1477}#)
-                                                                   (car #{x\ 
1477}#)
+                                                          (map (lambda (#{x\ 
1492}#)
+                                                                 (#{chi\ 472}#
+                                                                   (cdr #{x\ 
1492}#)
+                                                                   (car #{x\ 
1492}#)
                                                                    '(())
-                                                                   #{mod\ 
1402}#))
-                                                               (cons (cons 
#{er\ 1395}#
-                                                                           
(#{source-wrap\ 443}#
-                                                                             
#{e\ 1399}#
-                                                                             
#{w\ 1400}#
-                                                                             
#{s\ 1401}#
-                                                                             
#{mod\ 1402}#))
-                                                                     (cdr 
#{body\ 1383}#))))))))))))))))))
-                       (#{parse\ 1382}#
-                         (map (lambda (#{x\ 1390}#)
-                                (cons #{r\ 1368}#
-                                      (#{wrap\ 441}#
-                                        #{x\ 1390}#
-                                        #{w\ 1373}#
-                                        #{mod\ 1360}#)))
-                              #{body\ 1356}#)
-                         '()
-                         '()
-                         '()
-                         '()
-                         '()
-                         '())))))))
-           (#{chi-macro\ 463}#
-             (lambda (#{p\ 1480}#
-                      #{e\ 1481}#
-                      #{r\ 1482}#
-                      #{w\ 1483}#
-                      #{s\ 1484}#
-                      #{rib\ 1485}#
-                      #{mod\ 1486}#)
-               (letrec ((#{rebuild-macro-output\ 1495}#
-                          (lambda (#{x\ 1496}# #{m\ 1497}#)
-                            (if (pair? #{x\ 1496}#)
-                              (#{decorate-source\ 290}#
-                                (cons (#{rebuild-macro-output\ 1495}#
-                                        (car #{x\ 1496}#)
-                                        #{m\ 1497}#)
-                                      (#{rebuild-macro-output\ 1495}#
-                                        (cdr #{x\ 1496}#)
-                                        #{m\ 1497}#))
-                                #{s\ 1484}#)
-                              (if (#{syntax-object?\ 336}# #{x\ 1496}#)
-                                (let ((#{w\ 1505}#
-                                        (#{syntax-object-wrap\ 340}#
-                                          #{x\ 1496}#)))
-                                  (let ((#{ms\ 1508}#
-                                          (#{wrap-marks\ 379}# #{w\ 1505}#))
-                                        (#{s\ 1509}#
-                                          (#{wrap-subst\ 381}# #{w\ 1505}#)))
-                                    (if (if (pair? #{ms\ 1508}#)
-                                          (eq? (car #{ms\ 1508}#) #f)
-                                          #f)
-                                      (#{make-syntax-object\ 334}#
-                                        (#{syntax-object-expression\ 338}#
-                                          #{x\ 1496}#)
-                                        (#{make-wrap\ 377}#
-                                          (cdr #{ms\ 1508}#)
-                                          (if #{rib\ 1485}#
-                                            (cons #{rib\ 1485}#
-                                                  (cdr #{s\ 1509}#))
-                                            (cdr #{s\ 1509}#)))
-                                        (#{syntax-object-module\ 342}#
-                                          #{x\ 1496}#))
-                                      (#{make-syntax-object\ 334}#
-                                        (#{decorate-source\ 290}#
-                                          (#{syntax-object-expression\ 338}#
-                                            #{x\ 1496}#)
-                                          #{s\ 1509}#)
-                                        (#{make-wrap\ 377}#
-                                          (cons #{m\ 1497}# #{ms\ 1508}#)
-                                          (if #{rib\ 1485}#
-                                            (cons #{rib\ 1485}#
-                                                  (cons 'shift
-                                                        #{s\ 1509}#))
-                                            (cons (quote shift) #{s\ 1509}#)))
-                                        (#{syntax-object-module\ 342}#
-                                          #{x\ 1496}#)))))
-                                (if (vector? #{x\ 1496}#)
-                                  (let ((#{n\ 1517}#
-                                          (vector-length #{x\ 1496}#)))
-                                    (let ((#{v\ 1519}#
-                                            (#{decorate-source\ 290}#
-                                              (make-vector #{n\ 1517}#)
-                                              #{x\ 1496}#)))
-                                      (letrec ((#{loop\ 1522}#
-                                                 (lambda (#{i\ 1523}#)
-                                                   (if (#{fx=\ 277}#
-                                                         #{i\ 1523}#
-                                                         #{n\ 1517}#)
-                                                     (begin
-                                                       (if #f #f)
-                                                       #{v\ 1519}#)
-                                                     (begin
-                                                       (vector-set!
-                                                         #{v\ 1519}#
-                                                         #{i\ 1523}#
-                                                         
(#{rebuild-macro-output\ 1495}#
-                                                           (vector-ref
-                                                             #{x\ 1496}#
-                                                             #{i\ 1523}#)
-                                                           #{m\ 1497}#))
-                                                       (#{loop\ 1522}#
-                                                         (#{fx+\ 273}#
-                                                           #{i\ 1523}#
-                                                           1)))))))
-                                        (#{loop\ 1522}# 0))))
-                                  (if (symbol? #{x\ 1496}#)
-                                    (syntax-violation
-                                      #f
-                                      "encountered raw symbol in macro output"
-                                      (#{source-wrap\ 443}#
-                                        #{e\ 1481}#
-                                        #{w\ 1483}#
-                                        (#{wrap-subst\ 381}# #{w\ 1483}#)
-                                        #{mod\ 1486}#)
-                                      #{x\ 1496}#)
-                                    (#{decorate-source\ 290}#
-                                      #{x\ 1496}#
-                                      #{s\ 1484}#))))))))
-                 (#{rebuild-macro-output\ 1495}#
-                   (#{p\ 1480}#
-                     (#{source-wrap\ 443}#
-                       #{e\ 1481}#
-                       (#{anti-mark\ 413}# #{w\ 1483}#)
-                       #{s\ 1484}#
-                       #{mod\ 1486}#))
-                   (gensym "m")))))
-           (#{chi-application\ 461}#
-             (lambda (#{x\ 1530}#
-                      #{e\ 1531}#
-                      #{r\ 1532}#
-                      #{w\ 1533}#
-                      #{s\ 1534}#
-                      #{mod\ 1535}#)
-               ((lambda (#{tmp\ 1542}#)
-                  ((lambda (#{tmp\ 1543}#)
-                     (if #{tmp\ 1543}#
-                       (apply (lambda (#{e0\ 1546}# #{e1\ 1547}#)
-                                (#{build-application\ 294}#
-                                  #{s\ 1534}#
-                                  #{x\ 1530}#
-                                  (map (lambda (#{e\ 1548}#)
-                                         (#{chi\ 457}#
-                                           #{e\ 1548}#
-                                           #{r\ 1532}#
-                                           #{w\ 1533}#
-                                           #{mod\ 1535}#))
-                                       #{e1\ 1547}#)))
-                              #{tmp\ 1543}#)
-                       (syntax-violation
-                         #f
-                         "source expression failed to match any pattern"
-                         #{tmp\ 1542}#)))
-                   ($sc-dispatch
-                     #{tmp\ 1542}#
-                     '(any . each-any))))
-                #{e\ 1531}#)))
-           (#{chi-expr\ 459}#
-             (lambda (#{type\ 1551}#
-                      #{value\ 1552}#
-                      #{e\ 1553}#
-                      #{r\ 1554}#
-                      #{w\ 1555}#
-                      #{s\ 1556}#
-                      #{mod\ 1557}#)
-               (if (memv #{type\ 1551}# (quote (lexical)))
-                 (#{build-lexical-reference\ 300}#
-                   'value
-                   #{s\ 1556}#
-                   #{e\ 1553}#
-                   #{value\ 1552}#)
-                 (if (memv #{type\ 1551}# (quote (core core-form)))
-                   (#{value\ 1552}#
-                     #{e\ 1553}#
-                     #{r\ 1554}#
-                     #{w\ 1555}#
-                     #{s\ 1556}#
-                     #{mod\ 1557}#)
-                   (if (memv #{type\ 1551}# (quote (module-ref)))
-                     (call-with-values
-                       (lambda ()
-                         (#{value\ 1552}#
-                           #{e\ 1553}#
-                           #{r\ 1554}#
-                           #{w\ 1555}#))
-                       (lambda (#{e\ 1568}#
-                                #{r\ 1569}#
-                                #{w\ 1570}#
-                                #{s\ 1571}#
-                                #{mod\ 1572}#)
-                         (#{chi\ 457}#
-                           #{e\ 1568}#
-                           #{r\ 1569}#
-                           #{w\ 1570}#
-                           #{mod\ 1572}#)))
-                     (if (memv #{type\ 1551}# (quote (lexical-call)))
-                       (#{chi-application\ 461}#
-                         (let ((#{id\ 1580}# (car #{e\ 1553}#)))
-                           (#{build-lexical-reference\ 300}#
+                                                                   #{mod\ 
1417}#))
+                                                               (cons (cons 
#{er\ 1410}#
+                                                                           
(#{source-wrap\ 458}#
+                                                                             
#{e\ 1414}#
+                                                                             
#{w\ 1415}#
+                                                                             
#{s\ 1416}#
+                                                                             
#{mod\ 1417}#))
+                                                                     (cdr 
#{body\ 1398}#)))))))))))))))))))
+                           (begin
+                             (#{parse\ 1397}#
+                               (map (lambda (#{x\ 1405}#)
+                                      (cons #{r\ 1383}#
+                                            (#{wrap\ 456}#
+                                              #{x\ 1405}#
+                                              #{w\ 1388}#
+                                              #{mod\ 1375}#)))
+                                    #{body\ 1371}#)
+                               '()
+                               '()
+                               '()
+                               '()
+                               '()
+                               '())))))))))))
+         (#{chi-macro\ 478}#
+           (lambda (#{p\ 1495}#
+                    #{e\ 1496}#
+                    #{r\ 1497}#
+                    #{w\ 1498}#
+                    #{s\ 1499}#
+                    #{rib\ 1500}#
+                    #{mod\ 1501}#)
+             (letrec*
+               ((#{rebuild-macro-output\ 1510}#
+                  (lambda (#{x\ 1511}# #{m\ 1512}#)
+                    (if (pair? #{x\ 1511}#)
+                      (#{decorate-source\ 305}#
+                        (cons (#{rebuild-macro-output\ 1510}#
+                                (car #{x\ 1511}#)
+                                #{m\ 1512}#)
+                              (#{rebuild-macro-output\ 1510}#
+                                (cdr #{x\ 1511}#)
+                                #{m\ 1512}#))
+                        #{s\ 1499}#)
+                      (if (#{syntax-object?\ 351}# #{x\ 1511}#)
+                        (begin
+                          (let ((#{w\ 1520}#
+                                  (#{syntax-object-wrap\ 355}# #{x\ 1511}#)))
+                            (begin
+                              (let ((#{ms\ 1523}#
+                                      (#{wrap-marks\ 394}# #{w\ 1520}#))
+                                    (#{s\ 1524}#
+                                      (#{wrap-subst\ 396}# #{w\ 1520}#)))
+                                (if (if (pair? #{ms\ 1523}#)
+                                      (eq? (car #{ms\ 1523}#) #f)
+                                      #f)
+                                  (#{make-syntax-object\ 349}#
+                                    (#{syntax-object-expression\ 353}#
+                                      #{x\ 1511}#)
+                                    (#{make-wrap\ 392}#
+                                      (cdr #{ms\ 1523}#)
+                                      (if #{rib\ 1500}#
+                                        (cons #{rib\ 1500}# (cdr #{s\ 1524}#))
+                                        (cdr #{s\ 1524}#)))
+                                    (#{syntax-object-module\ 357}#
+                                      #{x\ 1511}#))
+                                  (#{make-syntax-object\ 349}#
+                                    (#{decorate-source\ 305}#
+                                      (#{syntax-object-expression\ 353}#
+                                        #{x\ 1511}#)
+                                      #{s\ 1524}#)
+                                    (#{make-wrap\ 392}#
+                                      (cons #{m\ 1512}# #{ms\ 1523}#)
+                                      (if #{rib\ 1500}#
+                                        (cons #{rib\ 1500}#
+                                              (cons (quote shift) #{s\ 1524}#))
+                                        (cons (quote shift) #{s\ 1524}#)))
+                                    (#{syntax-object-module\ 357}#
+                                      #{x\ 1511}#)))))))
+                        (if (vector? #{x\ 1511}#)
+                          (begin
+                            (let ((#{n\ 1532}# (vector-length #{x\ 1511}#)))
+                              (begin
+                                (let ((#{v\ 1534}#
+                                        (#{decorate-source\ 305}#
+                                          (make-vector #{n\ 1532}#)
+                                          #{x\ 1511}#)))
+                                  (letrec*
+                                    ((#{loop\ 1537}#
+                                       (lambda (#{i\ 1538}#)
+                                         (if (#{fx=\ 292}#
+                                               #{i\ 1538}#
+                                               #{n\ 1532}#)
+                                           (begin (if #f #f) #{v\ 1534}#)
+                                           (begin
+                                             (vector-set!
+                                               #{v\ 1534}#
+                                               #{i\ 1538}#
+                                               (#{rebuild-macro-output\ 1510}#
+                                                 (vector-ref
+                                                   #{x\ 1511}#
+                                                   #{i\ 1538}#)
+                                                 #{m\ 1512}#))
+                                             (#{loop\ 1537}#
+                                               (#{fx+\ 288}#
+                                                 #{i\ 1538}#
+                                                 1)))))))
+                                    (begin (#{loop\ 1537}# 0)))))))
+                          (if (symbol? #{x\ 1511}#)
+                            (syntax-violation
+                              #f
+                              "encountered raw symbol in macro output"
+                              (#{source-wrap\ 458}#
+                                #{e\ 1496}#
+                                #{w\ 1498}#
+                                (#{wrap-subst\ 396}# #{w\ 1498}#)
+                                #{mod\ 1501}#)
+                              #{x\ 1511}#)
+                            (#{decorate-source\ 305}#
+                              #{x\ 1511}#
+                              #{s\ 1499}#))))))))
+               (begin
+                 (#{rebuild-macro-output\ 1510}#
+                   (#{p\ 1495}#
+                     (#{source-wrap\ 458}#
+                       #{e\ 1496}#
+                       (#{anti-mark\ 428}# #{w\ 1498}#)
+                       #{s\ 1499}#
+                       #{mod\ 1501}#))
+                   (gensym "m"))))))
+         (#{chi-application\ 476}#
+           (lambda (#{x\ 1545}#
+                    #{e\ 1546}#
+                    #{r\ 1547}#
+                    #{w\ 1548}#
+                    #{s\ 1549}#
+                    #{mod\ 1550}#)
+             (let ((#{tmp\ 1557}# #{e\ 1546}#))
+               (let ((#{tmp\ 1558}#
+                       ($sc-dispatch
+                         #{tmp\ 1557}#
+                         '(any . each-any))))
+                 (if #{tmp\ 1558}#
+                   (@apply
+                     (lambda (#{e0\ 1561}# #{e1\ 1562}#)
+                       (#{build-application\ 309}#
+                         #{s\ 1549}#
+                         #{x\ 1545}#
+                         (map (lambda (#{e\ 1563}#)
+                                (#{chi\ 472}#
+                                  #{e\ 1563}#
+                                  #{r\ 1547}#
+                                  #{w\ 1548}#
+                                  #{mod\ 1550}#))
+                              #{e1\ 1562}#)))
+                     #{tmp\ 1558}#)
+                   (syntax-violation
+                     #f
+                     "source expression failed to match any pattern"
+                     #{tmp\ 1557}#))))))
+         (#{chi-expr\ 474}#
+           (lambda (#{type\ 1566}#
+                    #{value\ 1567}#
+                    #{e\ 1568}#
+                    #{r\ 1569}#
+                    #{w\ 1570}#
+                    #{s\ 1571}#
+                    #{mod\ 1572}#)
+             (if (eqv? #{type\ 1566}# (quote lexical))
+               (#{build-lexical-reference\ 315}#
+                 'value
+                 #{s\ 1571}#
+                 #{e\ 1568}#
+                 #{value\ 1567}#)
+               (if (if (eqv? #{type\ 1566}# (quote core))
+                     #t
+                     (eqv? #{type\ 1566}# (quote core-form)))
+                 (#{value\ 1567}#
+                   #{e\ 1568}#
+                   #{r\ 1569}#
+                   #{w\ 1570}#
+                   #{s\ 1571}#
+                   #{mod\ 1572}#)
+                 (if (eqv? #{type\ 1566}# (quote module-ref))
+                   (call-with-values
+                     (lambda ()
+                       (#{value\ 1567}#
+                         #{e\ 1568}#
+                         #{r\ 1569}#
+                         #{w\ 1570}#))
+                     (lambda (#{e\ 1583}#
+                              #{r\ 1584}#
+                              #{w\ 1585}#
+                              #{s\ 1586}#
+                              #{mod\ 1587}#)
+                       (#{chi\ 472}#
+                         #{e\ 1583}#
+                         #{r\ 1584}#
+                         #{w\ 1585}#
+                         #{mod\ 1587}#)))
+                   (if (eqv? #{type\ 1566}# (quote lexical-call))
+                     (#{chi-application\ 476}#
+                       (begin
+                         (let ((#{id\ 1595}# (car #{e\ 1568}#)))
+                           (#{build-lexical-reference\ 315}#
                              'fun
-                             (#{source-annotation\ 351}# #{id\ 1580}#)
-                             (if (#{syntax-object?\ 336}# #{id\ 1580}#)
-                               (syntax->datum #{id\ 1580}#)
-                               #{id\ 1580}#)
-                             #{value\ 1552}#))
-                         #{e\ 1553}#
-                         #{r\ 1554}#
-                         #{w\ 1555}#
-                         #{s\ 1556}#
-                         #{mod\ 1557}#)
-                       (if (memv #{type\ 1551}# (quote (global-call)))
-                         (#{chi-application\ 461}#
-                           (#{build-global-reference\ 306}#
-                             (#{source-annotation\ 351}# (car #{e\ 1553}#))
-                             (if (#{syntax-object?\ 336}# #{value\ 1552}#)
-                               (#{syntax-object-expression\ 338}#
-                                 #{value\ 1552}#)
-                               #{value\ 1552}#)
-                             (if (#{syntax-object?\ 336}# #{value\ 1552}#)
-                               (#{syntax-object-module\ 342}# #{value\ 1552}#)
-                               #{mod\ 1557}#))
-                           #{e\ 1553}#
-                           #{r\ 1554}#
-                           #{w\ 1555}#
-                           #{s\ 1556}#
-                           #{mod\ 1557}#)
-                         (if (memv #{type\ 1551}# (quote (constant)))
-                           (#{build-data\ 322}#
-                             #{s\ 1556}#
-                             (#{strip\ 483}#
-                               (#{source-wrap\ 443}#
-                                 #{e\ 1553}#
-                                 #{w\ 1555}#
-                                 #{s\ 1556}#
-                                 #{mod\ 1557}#)
-                               '(())))
-                           (if (memv #{type\ 1551}# (quote (global)))
-                             (#{build-global-reference\ 306}#
-                               #{s\ 1556}#
-                               #{value\ 1552}#
-                               #{mod\ 1557}#)
-                             (if (memv #{type\ 1551}# (quote (call)))
-                               (#{chi-application\ 461}#
-                                 (#{chi\ 457}#
-                                   (car #{e\ 1553}#)
-                                   #{r\ 1554}#
-                                   #{w\ 1555}#
-                                   #{mod\ 1557}#)
-                                 #{e\ 1553}#
-                                 #{r\ 1554}#
-                                 #{w\ 1555}#
-                                 #{s\ 1556}#
-                                 #{mod\ 1557}#)
-                               (if (memv #{type\ 1551}# (quote (begin-form)))
-                                 ((lambda (#{tmp\ 1587}#)
-                                    ((lambda (#{tmp\ 1588}#)
-                                       (if #{tmp\ 1588}#
-                                         (apply (lambda (#{_\ 1592}#
-                                                         #{e1\ 1593}#
-                                                         #{e2\ 1594}#)
-                                                  (#{chi-sequence\ 445}#
-                                                    (cons #{e1\ 1593}#
-                                                          #{e2\ 1594}#)
-                                                    #{r\ 1554}#
-                                                    #{w\ 1555}#
-                                                    #{s\ 1556}#
-                                                    #{mod\ 1557}#))
-                                                #{tmp\ 1588}#)
+                             (#{source-annotation\ 366}# #{id\ 1595}#)
+                             (if (#{syntax-object?\ 351}# #{id\ 1595}#)
+                               (syntax->datum #{id\ 1595}#)
+                               #{id\ 1595}#)
+                             #{value\ 1567}#)))
+                       #{e\ 1568}#
+                       #{r\ 1569}#
+                       #{w\ 1570}#
+                       #{s\ 1571}#
+                       #{mod\ 1572}#)
+                     (if (eqv? #{type\ 1566}# (quote global-call))
+                       (#{chi-application\ 476}#
+                         (#{build-global-reference\ 321}#
+                           (#{source-annotation\ 366}# (car #{e\ 1568}#))
+                           (if (#{syntax-object?\ 351}# #{value\ 1567}#)
+                             (#{syntax-object-expression\ 353}#
+                               #{value\ 1567}#)
+                             #{value\ 1567}#)
+                           (if (#{syntax-object?\ 351}# #{value\ 1567}#)
+                             (#{syntax-object-module\ 357}# #{value\ 1567}#)
+                             #{mod\ 1572}#))
+                         #{e\ 1568}#
+                         #{r\ 1569}#
+                         #{w\ 1570}#
+                         #{s\ 1571}#
+                         #{mod\ 1572}#)
+                       (if (eqv? #{type\ 1566}# (quote constant))
+                         (#{build-data\ 337}#
+                           #{s\ 1571}#
+                           (#{strip\ 498}#
+                             (#{source-wrap\ 458}#
+                               #{e\ 1568}#
+                               #{w\ 1570}#
+                               #{s\ 1571}#
+                               #{mod\ 1572}#)
+                             '(())))
+                         (if (eqv? #{type\ 1566}# (quote global))
+                           (#{build-global-reference\ 321}#
+                             #{s\ 1571}#
+                             #{value\ 1567}#
+                             #{mod\ 1572}#)
+                           (if (eqv? #{type\ 1566}# (quote call))
+                             (#{chi-application\ 476}#
+                               (#{chi\ 472}#
+                                 (car #{e\ 1568}#)
+                                 #{r\ 1569}#
+                                 #{w\ 1570}#
+                                 #{mod\ 1572}#)
+                               #{e\ 1568}#
+                               #{r\ 1569}#
+                               #{w\ 1570}#
+                               #{s\ 1571}#
+                               #{mod\ 1572}#)
+                             (if (eqv? #{type\ 1566}# (quote begin-form))
+                               (let ((#{tmp\ 1602}# #{e\ 1568}#))
+                                 (let ((#{tmp\ 1603}#
+                                         ($sc-dispatch
+                                           #{tmp\ 1602}#
+                                           '(any any . each-any))))
+                                   (if #{tmp\ 1603}#
+                                     (@apply
+                                       (lambda (#{_\ 1607}#
+                                                #{e1\ 1608}#
+                                                #{e2\ 1609}#)
+                                         (#{chi-sequence\ 460}#
+                                           (cons #{e1\ 1608}# #{e2\ 1609}#)
+                                           #{r\ 1569}#
+                                           #{w\ 1570}#
+                                           #{s\ 1571}#
+                                           #{mod\ 1572}#))
+                                       #{tmp\ 1603}#)
+                                     (syntax-violation
+                                       #f
+                                       "source expression failed to match any 
pattern"
+                                       #{tmp\ 1602}#))))
+                               (if (eqv? #{type\ 1566}#
+                                         'local-syntax-form)
+                                 (#{chi-local-syntax\ 482}#
+                                   #{value\ 1567}#
+                                   #{e\ 1568}#
+                                   #{r\ 1569}#
+                                   #{w\ 1570}#
+                                   #{s\ 1571}#
+                                   #{mod\ 1572}#
+                                   #{chi-sequence\ 460}#)
+                                 (if (eqv? #{type\ 1566}#
+                                           'eval-when-form)
+                                   (let ((#{tmp\ 1613}# #{e\ 1568}#))
+                                     (let ((#{tmp\ 1614}#
+                                             ($sc-dispatch
+                                               #{tmp\ 1613}#
+                                               '(any each-any
+                                                     any
+                                                     .
+                                                     each-any))))
+                                       (if #{tmp\ 1614}#
+                                         (@apply
+                                           (lambda (#{_\ 1619}#
+                                                    #{x\ 1620}#
+                                                    #{e1\ 1621}#
+                                                    #{e2\ 1622}#)
+                                             (begin
+                                               (let ((#{when-list\ 1624}#
+                                                       (#{chi-when-list\ 466}#
+                                                         #{e\ 1568}#
+                                                         #{x\ 1620}#
+                                                         #{w\ 1570}#)))
+                                                 (if (memq 'eval
+                                                           #{when-list\ 1624}#)
+                                                   (#{chi-sequence\ 460}#
+                                                     (cons #{e1\ 1621}#
+                                                           #{e2\ 1622}#)
+                                                     #{r\ 1569}#
+                                                     #{w\ 1570}#
+                                                     #{s\ 1571}#
+                                                     #{mod\ 1572}#)
+                                                   (#{chi-void\ 486}#)))))
+                                           #{tmp\ 1614}#)
                                          (syntax-violation
                                            #f
                                            "source expression failed to match 
any pattern"
-                                           #{tmp\ 1587}#)))
-                                     ($sc-dispatch
-                                       #{tmp\ 1587}#
-                                       '(any any . each-any))))
-                                  #{e\ 1553}#)
-                                 (if (memv #{type\ 1551}#
-                                           '(local-syntax-form))
-                                   (#{chi-local-syntax\ 467}#
-                                     #{value\ 1552}#
-                                     #{e\ 1553}#
-                                     #{r\ 1554}#
-                                     #{w\ 1555}#
-                                     #{s\ 1556}#
-                                     #{mod\ 1557}#
-                                     #{chi-sequence\ 445}#)
-                                   (if (memv #{type\ 1551}#
-                                             '(eval-when-form))
-                                     ((lambda (#{tmp\ 1598}#)
-                                        ((lambda (#{tmp\ 1599}#)
-                                           (if #{tmp\ 1599}#
-                                             (apply (lambda (#{_\ 1604}#
-                                                             #{x\ 1605}#
-                                                             #{e1\ 1606}#
-                                                             #{e2\ 1607}#)
-                                                      (let ((#{when-list\ 
1609}#
-                                                              
(#{chi-when-list\ 451}#
-                                                                #{e\ 1553}#
-                                                                #{x\ 1605}#
-                                                                #{w\ 1555}#)))
-                                                        (if (memq 'eval
-                                                                  #{when-list\ 
1609}#)
-                                                          (#{chi-sequence\ 
445}#
-                                                            (cons #{e1\ 1606}#
-                                                                  #{e2\ 1607}#)
-                                                            #{r\ 1554}#
-                                                            #{w\ 1555}#
-                                                            #{s\ 1556}#
-                                                            #{mod\ 1557}#)
-                                                          (#{chi-void\ 
471}#))))
-                                                    #{tmp\ 1599}#)
-                                             (syntax-violation
-                                               #f
-                                               "source expression failed to 
match any pattern"
-                                               #{tmp\ 1598}#)))
-                                         ($sc-dispatch
-                                           #{tmp\ 1598}#
-                                           '(any each-any any . each-any))))
-                                      #{e\ 1553}#)
-                                     (if (memv #{type\ 1551}#
-                                               '(define-form
-                                                  define-syntax-form))
+                                           #{tmp\ 1613}#))))
+                                   (if (if (eqv? #{type\ 1566}#
+                                                 'define-form)
+                                         #t
+                                         (eqv? #{type\ 1566}#
+                                               'define-syntax-form))
+                                     (syntax-violation
+                                       #f
+                                       "definition in expression context"
+                                       #{e\ 1568}#
+                                       (#{wrap\ 456}#
+                                         #{value\ 1567}#
+                                         #{w\ 1570}#
+                                         #{mod\ 1572}#))
+                                     (if (eqv? #{type\ 1566}# (quote syntax))
                                        (syntax-violation
                                          #f
-                                         "definition in expression context"
-                                         #{e\ 1553}#
-                                         (#{wrap\ 441}#
-                                           #{value\ 1552}#
-                                           #{w\ 1555}#
-                                           #{mod\ 1557}#))
-                                       (if (memv #{type\ 1551}#
-                                                 '(syntax))
+                                         "reference to pattern variable 
outside syntax form"
+                                         (#{source-wrap\ 458}#
+                                           #{e\ 1568}#
+                                           #{w\ 1570}#
+                                           #{s\ 1571}#
+                                           #{mod\ 1572}#))
+                                       (if (eqv? #{type\ 1566}#
+                                                 'displaced-lexical)
                                          (syntax-violation
                                            #f
-                                           "reference to pattern variable 
outside syntax form"
-                                           (#{source-wrap\ 443}#
-                                             #{e\ 1553}#
-                                             #{w\ 1555}#
-                                             #{s\ 1556}#
-                                             #{mod\ 1557}#))
-                                         (if (memv #{type\ 1551}#
-                                                   '(displaced-lexical))
-                                           (syntax-violation
-                                             #f
-                                             "reference to identifier outside 
its scope"
-                                             (#{source-wrap\ 443}#
-                                               #{e\ 1553}#
-                                               #{w\ 1555}#
-                                               #{s\ 1556}#
-                                               #{mod\ 1557}#))
-                                           (syntax-violation
-                                             #f
-                                             "unexpected syntax"
-                                             (#{source-wrap\ 443}#
-                                               #{e\ 1553}#
-                                               #{w\ 1555}#
-                                               #{s\ 1556}#
-                                               #{mod\ 1557}#))))))))))))))))))
-           (#{chi\ 457}#
-             (lambda (#{e\ 1616}#
-                      #{r\ 1617}#
-                      #{w\ 1618}#
-                      #{mod\ 1619}#)
-               (call-with-values
-                 (lambda ()
-                   (#{syntax-type\ 453}#
-                     #{e\ 1616}#
-                     #{r\ 1617}#
-                     #{w\ 1618}#
-                     (#{source-annotation\ 351}# #{e\ 1616}#)
-                     #f
-                     #{mod\ 1619}#
-                     #f))
-                 (lambda (#{type\ 1624}#
-                          #{value\ 1625}#
-                          #{e\ 1626}#
-                          #{w\ 1627}#
-                          #{s\ 1628}#
-                          #{mod\ 1629}#)
-                   (#{chi-expr\ 459}#
-                     #{type\ 1624}#
-                     #{value\ 1625}#
-                     #{e\ 1626}#
-                     #{r\ 1617}#
-                     #{w\ 1627}#
-                     #{s\ 1628}#
-                     #{mod\ 1629}#)))))
-           (#{chi-top\ 455}#
-             (lambda (#{e\ 1636}#
-                      #{r\ 1637}#
-                      #{w\ 1638}#
-                      #{m\ 1639}#
-                      #{esew\ 1640}#
-                      #{mod\ 1641}#)
-               (call-with-values
-                 (lambda ()
-                   (#{syntax-type\ 453}#
-                     #{e\ 1636}#
-                     #{r\ 1637}#
-                     #{w\ 1638}#
-                     (#{source-annotation\ 351}# #{e\ 1636}#)
-                     #f
-                     #{mod\ 1641}#
-                     #f))
-                 (lambda (#{type\ 1662}#
-                          #{value\ 1663}#
-                          #{e\ 1664}#
-                          #{w\ 1665}#
-                          #{s\ 1666}#
-                          #{mod\ 1667}#)
-                   (if (memv #{type\ 1662}# (quote (begin-form)))
-                     ((lambda (#{tmp\ 1675}#)
-                        ((lambda (#{tmp\ 1676}#)
-                           (if #{tmp\ 1676}#
-                             (apply (lambda (#{_\ 1678}#) (#{chi-void\ 471}#))
-                                    #{tmp\ 1676}#)
-                             ((lambda (#{tmp\ 1679}#)
-                                (if #{tmp\ 1679}#
-                                  (apply (lambda (#{_\ 1683}#
-                                                  #{e1\ 1684}#
-                                                  #{e2\ 1685}#)
-                                           (#{chi-top-sequence\ 447}#
-                                             (cons #{e1\ 1684}# #{e2\ 1685}#)
-                                             #{r\ 1637}#
-                                             #{w\ 1665}#
-                                             #{s\ 1666}#
-                                             #{m\ 1639}#
-                                             #{esew\ 1640}#
-                                             #{mod\ 1667}#))
-                                         #{tmp\ 1679}#)
-                                  (syntax-violation
-                                    #f
-                                    "source expression failed to match any 
pattern"
-                                    #{tmp\ 1675}#)))
-                              ($sc-dispatch
-                                #{tmp\ 1675}#
-                                '(any any . each-any)))))
-                         ($sc-dispatch #{tmp\ 1675}# (quote (any)))))
-                      #{e\ 1664}#)
-                     (if (memv #{type\ 1662}# (quote (local-syntax-form)))
-                       (#{chi-local-syntax\ 467}#
-                         #{value\ 1663}#
-                         #{e\ 1664}#
-                         #{r\ 1637}#
-                         #{w\ 1665}#
-                         #{s\ 1666}#
-                         #{mod\ 1667}#
-                         (lambda (#{body\ 1688}#
-                                  #{r\ 1689}#
-                                  #{w\ 1690}#
-                                  #{s\ 1691}#
-                                  #{mod\ 1692}#)
-                           (#{chi-top-sequence\ 447}#
-                             #{body\ 1688}#
-                             #{r\ 1689}#
-                             #{w\ 1690}#
-                             #{s\ 1691}#
-                             #{m\ 1639}#
-                             #{esew\ 1640}#
-                             #{mod\ 1692}#)))
-                       (if (memv #{type\ 1662}# (quote (eval-when-form)))
-                         ((lambda (#{tmp\ 1699}#)
-                            ((lambda (#{tmp\ 1700}#)
-                               (if #{tmp\ 1700}#
-                                 (apply (lambda (#{_\ 1705}#
-                                                 #{x\ 1706}#
-                                                 #{e1\ 1707}#
-                                                 #{e2\ 1708}#)
-                                          (let ((#{when-list\ 1711}#
-                                                  (#{chi-when-list\ 451}#
-                                                    #{e\ 1664}#
-                                                    #{x\ 1706}#
-                                                    #{w\ 1665}#))
-                                                (#{body\ 1712}#
-                                                  (cons #{e1\ 1707}#
-                                                        #{e2\ 1708}#)))
-                                            (if (eq? #{m\ 1639}# (quote e))
-                                              (if (memq 'eval
-                                                        #{when-list\ 1711}#)
-                                                (#{chi-top-sequence\ 447}#
-                                                  #{body\ 1712}#
-                                                  #{r\ 1637}#
-                                                  #{w\ 1665}#
-                                                  #{s\ 1666}#
-                                                  (if (memq 'expand
-                                                            #{when-list\ 
1711}#)
-                                                    'c&e
-                                                    'e)
-                                                  '(eval)
-                                                  #{mod\ 1667}#)
-                                                (begin
-                                                  (if (memq 'expand
-                                                            #{when-list\ 
1711}#)
-                                                    (#{top-level-eval-hook\ 
281}#
-                                                      (#{chi-top-sequence\ 
447}#
-                                                        #{body\ 1712}#
-                                                        #{r\ 1637}#
-                                                        #{w\ 1665}#
-                                                        #{s\ 1666}#
-                                                        'e
-                                                        '(eval)
-                                                        #{mod\ 1667}#)
-                                                      #{mod\ 1667}#))
-                                                  (#{chi-void\ 471}#)))
-                                              (if (memq 'load
-                                                        #{when-list\ 1711}#)
-                                                (if (let ((#{t\ 1721}#
-                                                            (memq 'compile
-                                                                  #{when-list\ 
1711}#)))
-                                                      (if #{t\ 1721}#
-                                                        #{t\ 1721}#
-                                                        (let ((#{t\ 1724}#
-                                                                (memq 'expand
-                                                                      
#{when-list\ 1711}#)))
-                                                          (if #{t\ 1724}#
-                                                            #{t\ 1724}#
-                                                            (if (eq? #{m\ 
1639}#
-                                                                     'c&e)
-                                                              (memq 'eval
-                                                                    
#{when-list\ 1711}#)
-                                                              #f)))))
-                                                  (#{chi-top-sequence\ 447}#
-                                                    #{body\ 1712}#
-                                                    #{r\ 1637}#
-                                                    #{w\ 1665}#
-                                                    #{s\ 1666}#
-                                                    'c&e
-                                                    '(compile load)
-                                                    #{mod\ 1667}#)
-                                                  (if (memq #{m\ 1639}#
-                                                            '(c c&e))
-                                                    (#{chi-top-sequence\ 447}#
-                                                      #{body\ 1712}#
-                                                      #{r\ 1637}#
-                                                      #{w\ 1665}#
-                                                      #{s\ 1666}#
-                                                      'c
-                                                      '(load)
-                                                      #{mod\ 1667}#)
-                                                    (#{chi-void\ 471}#)))
-                                                (if (let ((#{t\ 1732}#
-                                                            (memq 'compile
-                                                                  #{when-list\ 
1711}#)))
-                                                      (if #{t\ 1732}#
-                                                        #{t\ 1732}#
-                                                        (let ((#{t\ 1735}#
-                                                                (memq 'expand
-                                                                      
#{when-list\ 1711}#)))
-                                                          (if #{t\ 1735}#
-                                                            #{t\ 1735}#
-                                                            (if (eq? #{m\ 
1639}#
-                                                                     'c&e)
-                                                              (memq 'eval
-                                                                    
#{when-list\ 1711}#)
-                                                              #f)))))
-                                                  (begin
-                                                    (#{top-level-eval-hook\ 
281}#
-                                                      (#{chi-top-sequence\ 
447}#
-                                                        #{body\ 1712}#
-                                                        #{r\ 1637}#
-                                                        #{w\ 1665}#
-                                                        #{s\ 1666}#
-                                                        'e
-                                                        '(eval)
-                                                        #{mod\ 1667}#)
-                                                      #{mod\ 1667}#)
-                                                    (#{chi-void\ 471}#))
-                                                  (#{chi-void\ 471}#))))))
-                                        #{tmp\ 1700}#)
-                                 (syntax-violation
-                                   #f
-                                   "source expression failed to match any 
pattern"
-                                   #{tmp\ 1699}#)))
-                             ($sc-dispatch
-                               #{tmp\ 1699}#
-                               '(any each-any any . each-any))))
-                          #{e\ 1664}#)
-                         (if (memv #{type\ 1662}#
-                                   '(define-syntax-form))
-                           (let ((#{n\ 1743}#
-                                   (#{id-var-name\ 429}#
-                                     #{value\ 1663}#
-                                     #{w\ 1665}#))
-                                 (#{r\ 1744}#
-                                   (#{macros-only-env\ 364}# #{r\ 1637}#)))
-                             (if (memv #{m\ 1639}# (quote (c)))
-                               (if (memq (quote compile) #{esew\ 1640}#)
-                                 (let ((#{e\ 1747}#
-                                         (#{chi-install-global\ 449}#
-                                           #{n\ 1743}#
-                                           (#{chi\ 457}#
-                                             #{e\ 1664}#
-                                             #{r\ 1744}#
-                                             #{w\ 1665}#
-                                             #{mod\ 1667}#))))
-                                   (begin
-                                     (#{top-level-eval-hook\ 281}#
-                                       #{e\ 1747}#
-                                       #{mod\ 1667}#)
-                                     (if (memq (quote load) #{esew\ 1640}#)
-                                       #{e\ 1747}#
-                                       (#{chi-void\ 471}#))))
-                                 (if (memq (quote load) #{esew\ 1640}#)
-                                   (#{chi-install-global\ 449}#
-                                     #{n\ 1743}#
-                                     (#{chi\ 457}#
-                                       #{e\ 1664}#
-                                       #{r\ 1744}#
-                                       #{w\ 1665}#
-                                       #{mod\ 1667}#))
-                                   (#{chi-void\ 471}#)))
-                               (if (memv #{m\ 1639}# (quote (c&e)))
-                                 (let ((#{e\ 1750}#
-                                         (#{chi-install-global\ 449}#
-                                           #{n\ 1743}#
-                                           (#{chi\ 457}#
-                                             #{e\ 1664}#
-                                             #{r\ 1744}#
-                                             #{w\ 1665}#
-                                             #{mod\ 1667}#))))
-                                   (begin
-                                     (#{top-level-eval-hook\ 281}#
-                                       #{e\ 1750}#
-                                       #{mod\ 1667}#)
-                                     #{e\ 1750}#))
+                                           "reference to identifier outside 
its scope"
+                                           (#{source-wrap\ 458}#
+                                             #{e\ 1568}#
+                                             #{w\ 1570}#
+                                             #{s\ 1571}#
+                                             #{mod\ 1572}#))
+                                         (syntax-violation
+                                           #f
+                                           "unexpected syntax"
+                                           (#{source-wrap\ 458}#
+                                             #{e\ 1568}#
+                                             #{w\ 1570}#
+                                             #{s\ 1571}#
+                                             #{mod\ 1572}#))))))))))))))))))
+         (#{chi\ 472}#
+           (lambda (#{e\ 1631}#
+                    #{r\ 1632}#
+                    #{w\ 1633}#
+                    #{mod\ 1634}#)
+             (call-with-values
+               (lambda ()
+                 (#{syntax-type\ 468}#
+                   #{e\ 1631}#
+                   #{r\ 1632}#
+                   #{w\ 1633}#
+                   (#{source-annotation\ 366}# #{e\ 1631}#)
+                   #f
+                   #{mod\ 1634}#
+                   #f))
+               (lambda (#{type\ 1639}#
+                        #{value\ 1640}#
+                        #{e\ 1641}#
+                        #{w\ 1642}#
+                        #{s\ 1643}#
+                        #{mod\ 1644}#)
+                 (#{chi-expr\ 474}#
+                   #{type\ 1639}#
+                   #{value\ 1640}#
+                   #{e\ 1641}#
+                   #{r\ 1632}#
+                   #{w\ 1642}#
+                   #{s\ 1643}#
+                   #{mod\ 1644}#)))))
+         (#{chi-top\ 470}#
+           (lambda (#{e\ 1651}#
+                    #{r\ 1652}#
+                    #{w\ 1653}#
+                    #{m\ 1654}#
+                    #{esew\ 1655}#
+                    #{mod\ 1656}#)
+             (call-with-values
+               (lambda ()
+                 (#{syntax-type\ 468}#
+                   #{e\ 1651}#
+                   #{r\ 1652}#
+                   #{w\ 1653}#
+                   (#{source-annotation\ 366}# #{e\ 1651}#)
+                   #f
+                   #{mod\ 1656}#
+                   #f))
+               (lambda (#{type\ 1677}#
+                        #{value\ 1678}#
+                        #{e\ 1679}#
+                        #{w\ 1680}#
+                        #{s\ 1681}#
+                        #{mod\ 1682}#)
+                 (if (eqv? #{type\ 1677}# (quote begin-form))
+                   (let ((#{tmp\ 1690}# #{e\ 1679}#))
+                     (let ((#{tmp\ 1691}#
+                             ($sc-dispatch #{tmp\ 1690}# (quote (any)))))
+                       (if #{tmp\ 1691}#
+                         (@apply
+                           (lambda (#{_\ 1693}#) (#{chi-void\ 486}#))
+                           #{tmp\ 1691}#)
+                         (let ((#{tmp\ 1694}#
+                                 ($sc-dispatch
+                                   #{tmp\ 1690}#
+                                   '(any any . each-any))))
+                           (if #{tmp\ 1694}#
+                             (@apply
+                               (lambda (#{_\ 1698}# #{e1\ 1699}# #{e2\ 1700}#)
+                                 (#{chi-top-sequence\ 462}#
+                                   (cons #{e1\ 1699}# #{e2\ 1700}#)
+                                   #{r\ 1652}#
+                                   #{w\ 1680}#
+                                   #{s\ 1681}#
+                                   #{m\ 1654}#
+                                   #{esew\ 1655}#
+                                   #{mod\ 1682}#))
+                               #{tmp\ 1694}#)
+                             (syntax-violation
+                               #f
+                               "source expression failed to match any pattern"
+                               #{tmp\ 1690}#))))))
+                   (if (eqv? #{type\ 1677}# (quote local-syntax-form))
+                     (#{chi-local-syntax\ 482}#
+                       #{value\ 1678}#
+                       #{e\ 1679}#
+                       #{r\ 1652}#
+                       #{w\ 1680}#
+                       #{s\ 1681}#
+                       #{mod\ 1682}#
+                       (lambda (#{body\ 1703}#
+                                #{r\ 1704}#
+                                #{w\ 1705}#
+                                #{s\ 1706}#
+                                #{mod\ 1707}#)
+                         (#{chi-top-sequence\ 462}#
+                           #{body\ 1703}#
+                           #{r\ 1704}#
+                           #{w\ 1705}#
+                           #{s\ 1706}#
+                           #{m\ 1654}#
+                           #{esew\ 1655}#
+                           #{mod\ 1707}#)))
+                     (if (eqv? #{type\ 1677}# (quote eval-when-form))
+                       (let ((#{tmp\ 1714}# #{e\ 1679}#))
+                         (let ((#{tmp\ 1715}#
+                                 ($sc-dispatch
+                                   #{tmp\ 1714}#
+                                   '(any each-any any . each-any))))
+                           (if #{tmp\ 1715}#
+                             (@apply
+                               (lambda (#{_\ 1720}#
+                                        #{x\ 1721}#
+                                        #{e1\ 1722}#
+                                        #{e2\ 1723}#)
                                  (begin
-                                   (if (memq (quote eval) #{esew\ 1640}#)
-                                     (#{top-level-eval-hook\ 281}#
-                                       (#{chi-install-global\ 449}#
-                                         #{n\ 1743}#
-                                         (#{chi\ 457}#
-                                           #{e\ 1664}#
-                                           #{r\ 1744}#
-                                           #{w\ 1665}#
-                                           #{mod\ 1667}#))
-                                       #{mod\ 1667}#))
-                                   (#{chi-void\ 471}#)))))
-                           (if (memv #{type\ 1662}# (quote (define-form)))
-                             (let ((#{n\ 1755}#
-                                     (#{id-var-name\ 429}#
-                                       #{value\ 1663}#
-                                       #{w\ 1665}#)))
-                               (let ((#{type\ 1757}#
-                                       (#{binding-type\ 355}#
-                                         (#{lookup\ 366}#
-                                           #{n\ 1755}#
-                                           #{r\ 1637}#
-                                           #{mod\ 1667}#))))
-                                 (if (memv #{type\ 1757}#
-                                           '(global core macro module-ref))
-                                   (begin
-                                     (if (if (memq #{m\ 1639}# (quote (c c&e)))
-                                           (if (not (module-local-variable
-                                                      (current-module)
-                                                      #{n\ 1755}#))
-                                             (current-module)
+                                   (let ((#{when-list\ 1726}#
+                                           (#{chi-when-list\ 466}#
+                                             #{e\ 1679}#
+                                             #{x\ 1721}#
+                                             #{w\ 1680}#))
+                                         (#{body\ 1727}#
+                                           (cons #{e1\ 1722}# #{e2\ 1723}#)))
+                                     (if (eq? #{m\ 1654}# (quote e))
+                                       (if (memq 'eval
+                                                 #{when-list\ 1726}#)
+                                         (#{chi-top-sequence\ 462}#
+                                           #{body\ 1727}#
+                                           #{r\ 1652}#
+                                           #{w\ 1680}#
+                                           #{s\ 1681}#
+                                           (if (memq 'expand
+                                                     #{when-list\ 1726}#)
+                                             'c&e
+                                             'e)
+                                           '(eval)
+                                           #{mod\ 1682}#)
+                                         (begin
+                                           (if (memq 'expand
+                                                     #{when-list\ 1726}#)
+                                             (#{top-level-eval-hook\ 296}#
+                                               (#{chi-top-sequence\ 462}#
+                                                 #{body\ 1727}#
+                                                 #{r\ 1652}#
+                                                 #{w\ 1680}#
+                                                 #{s\ 1681}#
+                                                 'e
+                                                 '(eval)
+                                                 #{mod\ 1682}#)
+                                               #{mod\ 1682}#))
+                                           (#{chi-void\ 486}#)))
+                                       (if (memq 'load
+                                                 #{when-list\ 1726}#)
+                                         (if (begin
+                                               (let ((#{t\ 1736}#
+                                                       (memq 'compile
+                                                             #{when-list\ 
1726}#)))
+                                                 (if #{t\ 1736}#
+                                                   #{t\ 1736}#
+                                                   (begin
+                                                     (let ((#{t\ 1739}#
+                                                             (memq 'expand
+                                                                   
#{when-list\ 1726}#)))
+                                                       (if #{t\ 1739}#
+                                                         #{t\ 1739}#
+                                                         (if (eq? #{m\ 1654}#
+                                                                  'c&e)
+                                                           (memq 'eval
+                                                                 #{when-list\ 
1726}#)
+                                                           #f)))))))
+                                           (#{chi-top-sequence\ 462}#
+                                             #{body\ 1727}#
+                                             #{r\ 1652}#
+                                             #{w\ 1680}#
+                                             #{s\ 1681}#
+                                             'c&e
+                                             '(compile load)
+                                             #{mod\ 1682}#)
+                                           (if (if (eq? #{m\ 1654}# (quote c))
+                                                 #t
+                                                 (eq? #{m\ 1654}# (quote c&e)))
+                                             (#{chi-top-sequence\ 462}#
+                                               #{body\ 1727}#
+                                               #{r\ 1652}#
+                                               #{w\ 1680}#
+                                               #{s\ 1681}#
+                                               'c
+                                               '(load)
+                                               #{mod\ 1682}#)
+                                             (#{chi-void\ 486}#)))
+                                         (if (begin
+                                               (let ((#{t\ 1747}#
+                                                       (memq 'compile
+                                                             #{when-list\ 
1726}#)))
+                                                 (if #{t\ 1747}#
+                                                   #{t\ 1747}#
+                                                   (begin
+                                                     (let ((#{t\ 1750}#
+                                                             (memq 'expand
+                                                                   
#{when-list\ 1726}#)))
+                                                       (if #{t\ 1750}#
+                                                         #{t\ 1750}#
+                                                         (if (eq? #{m\ 1654}#
+                                                                  'c&e)
+                                                           (memq 'eval
+                                                                 #{when-list\ 
1726}#)
+                                                           #f)))))))
+                                           (begin
+                                             (#{top-level-eval-hook\ 296}#
+                                               (#{chi-top-sequence\ 462}#
+                                                 #{body\ 1727}#
+                                                 #{r\ 1652}#
+                                                 #{w\ 1680}#
+                                                 #{s\ 1681}#
+                                                 'e
+                                                 '(eval)
+                                                 #{mod\ 1682}#)
+                                               #{mod\ 1682}#)
+                                             (#{chi-void\ 486}#))
+                                           (#{chi-void\ 486}#)))))))
+                               #{tmp\ 1715}#)
+                             (syntax-violation
+                               #f
+                               "source expression failed to match any pattern"
+                               #{tmp\ 1714}#))))
+                       (if (eqv? #{type\ 1677}# (quote define-syntax-form))
+                         (begin
+                           (let ((#{n\ 1758}#
+                                   (#{id-var-name\ 444}#
+                                     #{value\ 1678}#
+                                     #{w\ 1680}#))
+                                 (#{r\ 1759}#
+                                   (#{macros-only-env\ 379}# #{r\ 1652}#)))
+                             (if (eqv? #{m\ 1654}# (quote c))
+                               (if (memq (quote compile) #{esew\ 1655}#)
+                                 (begin
+                                   (let ((#{e\ 1762}#
+                                           (#{chi-install-global\ 464}#
+                                             #{n\ 1758}#
+                                             (#{chi\ 472}#
+                                               #{e\ 1679}#
+                                               #{r\ 1759}#
+                                               #{w\ 1680}#
+                                               #{mod\ 1682}#))))
+                                     (begin
+                                       (#{top-level-eval-hook\ 296}#
+                                         #{e\ 1762}#
+                                         #{mod\ 1682}#)
+                                       (if (memq (quote load) #{esew\ 1655}#)
+                                         #{e\ 1762}#
+                                         (#{chi-void\ 486}#)))))
+                                 (if (memq (quote load) #{esew\ 1655}#)
+                                   (#{chi-install-global\ 464}#
+                                     #{n\ 1758}#
+                                     (#{chi\ 472}#
+                                       #{e\ 1679}#
+                                       #{r\ 1759}#
+                                       #{w\ 1680}#
+                                       #{mod\ 1682}#))
+                                   (#{chi-void\ 486}#)))
+                               (if (eqv? #{m\ 1654}# (quote c&e))
+                                 (begin
+                                   (let ((#{e\ 1765}#
+                                           (#{chi-install-global\ 464}#
+                                             #{n\ 1758}#
+                                             (#{chi\ 472}#
+                                               #{e\ 1679}#
+                                               #{r\ 1759}#
+                                               #{w\ 1680}#
+                                               #{mod\ 1682}#))))
+                                     (begin
+                                       (#{top-level-eval-hook\ 296}#
+                                         #{e\ 1765}#
+                                         #{mod\ 1682}#)
+                                       #{e\ 1765}#)))
+                                 (begin
+                                   (if (memq (quote eval) #{esew\ 1655}#)
+                                     (#{top-level-eval-hook\ 296}#
+                                       (#{chi-install-global\ 464}#
+                                         #{n\ 1758}#
+                                         (#{chi\ 472}#
+                                           #{e\ 1679}#
+                                           #{r\ 1759}#
+                                           #{w\ 1680}#
+                                           #{mod\ 1682}#))
+                                       #{mod\ 1682}#))
+                                   (#{chi-void\ 486}#))))))
+                         (if (eqv? #{type\ 1677}# (quote define-form))
+                           (begin
+                             (let ((#{n\ 1770}#
+                                     (#{id-var-name\ 444}#
+                                       #{value\ 1678}#
+                                       #{w\ 1680}#)))
+                               (begin
+                                 (let ((#{type\ 1772}#
+                                         (#{binding-type\ 370}#
+                                           (#{lookup\ 381}#
+                                             #{n\ 1770}#
+                                             #{r\ 1652}#
+                                             #{mod\ 1682}#))))
+                                   (if (if (eqv? #{type\ 1772}# (quote global))
+                                         #t
+                                         (if (eqv? #{type\ 1772}# (quote core))
+                                           #t
+                                           (if (eqv? #{type\ 1772}#
+                                                     'macro)
+                                             #t
+                                             (eqv? #{type\ 1772}#
+                                                   'module-ref))))
+                                     (begin
+                                       (if (if (if (eq? #{m\ 1654}# (quote c))
+                                                 #t
+                                                 (eq? #{m\ 1654}# (quote c&e)))
+                                             (if (not (module-local-variable
+                                                        (current-module)
+                                                        #{n\ 1770}#))
+                                               (current-module)
+                                               #f)
                                              #f)
-                                           #f)
-                                       (let ((#{old\ 1763}#
-                                               (module-variable
-                                                 (current-module)
-                                                 #{n\ 1755}#)))
-                                         (module-define!
-                                           (current-module)
-                                           #{n\ 1755}#
-                                           (if (variable? #{old\ 1763}#)
-                                             (variable-ref #{old\ 1763}#)
-                                             #f))))
-                                     (let ((#{x\ 1766}#
-                                             (#{build-global-definition\ 312}#
-                                               #{s\ 1666}#
-                                               #{n\ 1755}#
-                                               (#{chi\ 457}#
-                                                 #{e\ 1664}#
-                                                 #{r\ 1637}#
-                                                 #{w\ 1665}#
-                                                 #{mod\ 1667}#))))
+                                         (begin
+                                           (let ((#{old\ 1778}#
+                                                   (module-variable
+                                                     (current-module)
+                                                     #{n\ 1770}#)))
+                                             (module-define!
+                                               (current-module)
+                                               #{n\ 1770}#
+                                               (if (variable? #{old\ 1778}#)
+                                                 (variable-ref #{old\ 1778}#)
+                                                 #f)))))
                                        (begin
-                                         (if (eq? #{m\ 1639}# (quote c&e))
-                                           (#{top-level-eval-hook\ 281}#
-                                             #{x\ 1766}#
-                                             #{mod\ 1667}#))
-                                         #{x\ 1766}#)))
-                                   (if (memv #{type\ 1757}#
-                                             '(displaced-lexical))
-                                     (syntax-violation
-                                       #f
-                                       "identifier out of context"
-                                       #{e\ 1664}#
-                                       (#{wrap\ 441}#
-                                         #{value\ 1663}#
-                                         #{w\ 1665}#
-                                         #{mod\ 1667}#))
-                                     (syntax-violation
-                                       #f
-                                       "cannot define keyword at top level"
-                                       #{e\ 1664}#
-                                       (#{wrap\ 441}#
-                                         #{value\ 1663}#
-                                         #{w\ 1665}#
-                                         #{mod\ 1667}#))))))
-                             (let ((#{x\ 1772}#
-                                     (#{chi-expr\ 459}#
-                                       #{type\ 1662}#
-                                       #{value\ 1663}#
-                                       #{e\ 1664}#
-                                       #{r\ 1637}#
-                                       #{w\ 1665}#
-                                       #{s\ 1666}#
-                                       #{mod\ 1667}#)))
+                                         (let ((#{x\ 1781}#
+                                                 (#{build-global-definition\ 
327}#
+                                                   #{s\ 1681}#
+                                                   #{n\ 1770}#
+                                                   (#{chi\ 472}#
+                                                     #{e\ 1679}#
+                                                     #{r\ 1652}#
+                                                     #{w\ 1680}#
+                                                     #{mod\ 1682}#))))
+                                           (begin
+                                             (if (eq? #{m\ 1654}# (quote c&e))
+                                               (#{top-level-eval-hook\ 296}#
+                                                 #{x\ 1781}#
+                                                 #{mod\ 1682}#))
+                                             #{x\ 1781}#))))
+                                     (if (eqv? #{type\ 1772}#
+                                               'displaced-lexical)
+                                       (syntax-violation
+                                         #f
+                                         "identifier out of context"
+                                         #{e\ 1679}#
+                                         (#{wrap\ 456}#
+                                           #{value\ 1678}#
+                                           #{w\ 1680}#
+                                           #{mod\ 1682}#))
+                                       (syntax-violation
+                                         #f
+                                         "cannot define keyword at top level"
+                                         #{e\ 1679}#
+                                         (#{wrap\ 456}#
+                                           #{value\ 1678}#
+                                           #{w\ 1680}#
+                                           #{mod\ 1682}#))))))))
+                           (begin
+                             (let ((#{x\ 1787}#
+                                     (#{chi-expr\ 474}#
+                                       #{type\ 1677}#
+                                       #{value\ 1678}#
+                                       #{e\ 1679}#
+                                       #{r\ 1652}#
+                                       #{w\ 1680}#
+                                       #{s\ 1681}#
+                                       #{mod\ 1682}#)))
                                (begin
-                                 (if (eq? #{m\ 1639}# (quote c&e))
-                                   (#{top-level-eval-hook\ 281}#
-                                     #{x\ 1772}#
-                                     #{mod\ 1667}#))
-                                 #{x\ 1772}#)))))))))))
-           (#{syntax-type\ 453}#
-             (lambda (#{e\ 1773}#
-                      #{r\ 1774}#
-                      #{w\ 1775}#
-                      #{s\ 1776}#
-                      #{rib\ 1777}#
-                      #{mod\ 1778}#
-                      #{for-car?\ 1779}#)
-               (if (symbol? #{e\ 1773}#)
-                 (let ((#{n\ 1791}#
-                         (#{id-var-name\ 429}# #{e\ 1773}# #{w\ 1775}#)))
-                   (let ((#{b\ 1793}#
-                           (#{lookup\ 366}#
-                             #{n\ 1791}#
-                             #{r\ 1774}#
-                             #{mod\ 1778}#)))
-                     (let ((#{type\ 1795}#
-                             (#{binding-type\ 355}# #{b\ 1793}#)))
-                       (if (memv #{type\ 1795}# (quote (lexical)))
-                         (values
-                           #{type\ 1795}#
-                           (#{binding-value\ 357}# #{b\ 1793}#)
-                           #{e\ 1773}#
-                           #{w\ 1775}#
-                           #{s\ 1776}#
-                           #{mod\ 1778}#)
-                         (if (memv #{type\ 1795}# (quote (global)))
-                           (values
-                             #{type\ 1795}#
-                             #{n\ 1791}#
-                             #{e\ 1773}#
-                             #{w\ 1775}#
-                             #{s\ 1776}#
-                             #{mod\ 1778}#)
-                           (if (memv #{type\ 1795}# (quote (macro)))
-                             (if #{for-car?\ 1779}#
-                               (values
-                                 #{type\ 1795}#
-                                 (#{binding-value\ 357}# #{b\ 1793}#)
-                                 #{e\ 1773}#
-                                 #{w\ 1775}#
-                                 #{s\ 1776}#
-                                 #{mod\ 1778}#)
-                               (#{syntax-type\ 453}#
-                                 (#{chi-macro\ 463}#
-                                   (#{binding-value\ 357}# #{b\ 1793}#)
-                                   #{e\ 1773}#
-                                   #{r\ 1774}#
-                                   #{w\ 1775}#
-                                   #{s\ 1776}#
-                                   #{rib\ 1777}#
-                                   #{mod\ 1778}#)
-                                 #{r\ 1774}#
-                                 '(())
-                                 #{s\ 1776}#
-                                 #{rib\ 1777}#
-                                 #{mod\ 1778}#
-                                 #f))
+                                 (if (eq? #{m\ 1654}# (quote c&e))
+                                   (#{top-level-eval-hook\ 296}#
+                                     #{x\ 1787}#
+                                     #{mod\ 1682}#))
+                                 #{x\ 1787}#))))))))))))
+         (#{syntax-type\ 468}#
+           (lambda (#{e\ 1788}#
+                    #{r\ 1789}#
+                    #{w\ 1790}#
+                    #{s\ 1791}#
+                    #{rib\ 1792}#
+                    #{mod\ 1793}#
+                    #{for-car?\ 1794}#)
+             (if (symbol? #{e\ 1788}#)
+               (begin
+                 (let ((#{n\ 1806}#
+                         (#{id-var-name\ 444}# #{e\ 1788}# #{w\ 1790}#)))
+                   (begin
+                     (let ((#{b\ 1808}#
+                             (#{lookup\ 381}#
+                               #{n\ 1806}#
+                               #{r\ 1789}#
+                               #{mod\ 1793}#)))
+                       (begin
+                         (let ((#{type\ 1810}#
+                                 (#{binding-type\ 370}# #{b\ 1808}#)))
+                           (if (eqv? #{type\ 1810}# (quote lexical))
                              (values
-                               #{type\ 1795}#
-                               (#{binding-value\ 357}# #{b\ 1793}#)
-                               #{e\ 1773}#
-                               #{w\ 1775}#
-                               #{s\ 1776}#
-                               #{mod\ 1778}#)))))))
-                 (if (pair? #{e\ 1773}#)
-                   (let ((#{first\ 1804}# (car #{e\ 1773}#)))
+                               #{type\ 1810}#
+                               (#{binding-value\ 372}# #{b\ 1808}#)
+                               #{e\ 1788}#
+                               #{w\ 1790}#
+                               #{s\ 1791}#
+                               #{mod\ 1793}#)
+                             (if (eqv? #{type\ 1810}# (quote global))
+                               (values
+                                 #{type\ 1810}#
+                                 #{n\ 1806}#
+                                 #{e\ 1788}#
+                                 #{w\ 1790}#
+                                 #{s\ 1791}#
+                                 #{mod\ 1793}#)
+                               (if (eqv? #{type\ 1810}# (quote macro))
+                                 (if #{for-car?\ 1794}#
+                                   (values
+                                     #{type\ 1810}#
+                                     (#{binding-value\ 372}# #{b\ 1808}#)
+                                     #{e\ 1788}#
+                                     #{w\ 1790}#
+                                     #{s\ 1791}#
+                                     #{mod\ 1793}#)
+                                   (#{syntax-type\ 468}#
+                                     (#{chi-macro\ 478}#
+                                       (#{binding-value\ 372}# #{b\ 1808}#)
+                                       #{e\ 1788}#
+                                       #{r\ 1789}#
+                                       #{w\ 1790}#
+                                       #{s\ 1791}#
+                                       #{rib\ 1792}#
+                                       #{mod\ 1793}#)
+                                     #{r\ 1789}#
+                                     '(())
+                                     #{s\ 1791}#
+                                     #{rib\ 1792}#
+                                     #{mod\ 1793}#
+                                     #f))
+                                 (values
+                                   #{type\ 1810}#
+                                   (#{binding-value\ 372}# #{b\ 1808}#)
+                                   #{e\ 1788}#
+                                   #{w\ 1790}#
+                                   #{s\ 1791}#
+                                   #{mod\ 1793}#))))))))))
+               (if (pair? #{e\ 1788}#)
+                 (begin
+                   (let ((#{first\ 1819}# (car #{e\ 1788}#)))
                      (call-with-values
                        (lambda ()
-                         (#{syntax-type\ 453}#
-                           #{first\ 1804}#
-                           #{r\ 1774}#
-                           #{w\ 1775}#
-                           #{s\ 1776}#
-                           #{rib\ 1777}#
-                           #{mod\ 1778}#
+                         (#{syntax-type\ 468}#
+                           #{first\ 1819}#
+                           #{r\ 1789}#
+                           #{w\ 1790}#
+                           #{s\ 1791}#
+                           #{rib\ 1792}#
+                           #{mod\ 1793}#
                            #t))
-                       (lambda (#{ftype\ 1805}#
-                                #{fval\ 1806}#
-                                #{fe\ 1807}#
-                                #{fw\ 1808}#
-                                #{fs\ 1809}#
-                                #{fmod\ 1810}#)
-                         (if (memv #{ftype\ 1805}# (quote (lexical)))
+                       (lambda (#{ftype\ 1820}#
+                                #{fval\ 1821}#
+                                #{fe\ 1822}#
+                                #{fw\ 1823}#
+                                #{fs\ 1824}#
+                                #{fmod\ 1825}#)
+                         (if (eqv? #{ftype\ 1820}# (quote lexical))
                            (values
                              'lexical-call
-                             #{fval\ 1806}#
-                             #{e\ 1773}#
-                             #{w\ 1775}#
-                             #{s\ 1776}#
-                             #{mod\ 1778}#)
-                           (if (memv #{ftype\ 1805}# (quote (global)))
+                             #{fval\ 1821}#
+                             #{e\ 1788}#
+                             #{w\ 1790}#
+                             #{s\ 1791}#
+                             #{mod\ 1793}#)
+                           (if (eqv? #{ftype\ 1820}# (quote global))
                              (values
                                'global-call
-                               (#{make-syntax-object\ 334}#
-                                 #{fval\ 1806}#
-                                 #{w\ 1775}#
-                                 #{fmod\ 1810}#)
-                               #{e\ 1773}#
-                               #{w\ 1775}#
-                               #{s\ 1776}#
-                               #{mod\ 1778}#)
-                             (if (memv #{ftype\ 1805}# (quote (macro)))
-                               (#{syntax-type\ 453}#
-                                 (#{chi-macro\ 463}#
-                                   #{fval\ 1806}#
-                                   #{e\ 1773}#
-                                   #{r\ 1774}#
-                                   #{w\ 1775}#
-                                   #{s\ 1776}#
-                                   #{rib\ 1777}#
-                                   #{mod\ 1778}#)
-                                 #{r\ 1774}#
+                               (#{make-syntax-object\ 349}#
+                                 #{fval\ 1821}#
+                                 #{w\ 1790}#
+                                 #{fmod\ 1825}#)
+                               #{e\ 1788}#
+                               #{w\ 1790}#
+                               #{s\ 1791}#
+                               #{mod\ 1793}#)
+                             (if (eqv? #{ftype\ 1820}# (quote macro))
+                               (#{syntax-type\ 468}#
+                                 (#{chi-macro\ 478}#
+                                   #{fval\ 1821}#
+                                   #{e\ 1788}#
+                                   #{r\ 1789}#
+                                   #{w\ 1790}#
+                                   #{s\ 1791}#
+                                   #{rib\ 1792}#
+                                   #{mod\ 1793}#)
+                                 #{r\ 1789}#
                                  '(())
-                                 #{s\ 1776}#
-                                 #{rib\ 1777}#
-                                 #{mod\ 1778}#
-                                 #{for-car?\ 1779}#)
-                               (if (memv #{ftype\ 1805}# (quote (module-ref)))
+                                 #{s\ 1791}#
+                                 #{rib\ 1792}#
+                                 #{mod\ 1793}#
+                                 #{for-car?\ 1794}#)
+                               (if (eqv? #{ftype\ 1820}# (quote module-ref))
                                  (call-with-values
                                    (lambda ()
-                                     (#{fval\ 1806}#
-                                       #{e\ 1773}#
-                                       #{r\ 1774}#
-                                       #{w\ 1775}#))
-                                   (lambda (#{e\ 1822}#
-                                            #{r\ 1823}#
-                                            #{w\ 1824}#
-                                            #{s\ 1825}#
-                                            #{mod\ 1826}#)
-                                     (#{syntax-type\ 453}#
-                                       #{e\ 1822}#
-                                       #{r\ 1823}#
-                                       #{w\ 1824}#
-                                       #{s\ 1825}#
-                                       #{rib\ 1777}#
-                                       #{mod\ 1826}#
-                                       #{for-car?\ 1779}#)))
-                                 (if (memv #{ftype\ 1805}# (quote (core)))
+                                     (#{fval\ 1821}#
+                                       #{e\ 1788}#
+                                       #{r\ 1789}#
+                                       #{w\ 1790}#))
+                                   (lambda (#{e\ 1837}#
+                                            #{r\ 1838}#
+                                            #{w\ 1839}#
+                                            #{s\ 1840}#
+                                            #{mod\ 1841}#)
+                                     (#{syntax-type\ 468}#
+                                       #{e\ 1837}#
+                                       #{r\ 1838}#
+                                       #{w\ 1839}#
+                                       #{s\ 1840}#
+                                       #{rib\ 1792}#
+                                       #{mod\ 1841}#
+                                       #{for-car?\ 1794}#)))
+                                 (if (eqv? #{ftype\ 1820}# (quote core))
                                    (values
                                      'core-form
-                                     #{fval\ 1806}#
-                                     #{e\ 1773}#
-                                     #{w\ 1775}#
-                                     #{s\ 1776}#
-                                     #{mod\ 1778}#)
-                                   (if (memv #{ftype\ 1805}#
-                                             '(local-syntax))
+                                     #{fval\ 1821}#
+                                     #{e\ 1788}#
+                                     #{w\ 1790}#
+                                     #{s\ 1791}#
+                                     #{mod\ 1793}#)
+                                   (if (eqv? #{ftype\ 1820}#
+                                             'local-syntax)
                                      (values
                                        'local-syntax-form
-                                       #{fval\ 1806}#
-                                       #{e\ 1773}#
-                                       #{w\ 1775}#
-                                       #{s\ 1776}#
-                                       #{mod\ 1778}#)
-                                     (if (memv #{ftype\ 1805}# (quote (begin)))
+                                       #{fval\ 1821}#
+                                       #{e\ 1788}#
+                                       #{w\ 1790}#
+                                       #{s\ 1791}#
+                                       #{mod\ 1793}#)
+                                     (if (eqv? #{ftype\ 1820}# (quote begin))
                                        (values
                                          'begin-form
                                          #f
-                                         #{e\ 1773}#
-                                         #{w\ 1775}#
-                                         #{s\ 1776}#
-                                         #{mod\ 1778}#)
-                                       (if (memv #{ftype\ 1805}#
-                                                 '(eval-when))
+                                         #{e\ 1788}#
+                                         #{w\ 1790}#
+                                         #{s\ 1791}#
+                                         #{mod\ 1793}#)
+                                       (if (eqv? #{ftype\ 1820}#
+                                                 'eval-when)
                                          (values
                                            'eval-when-form
                                            #f
-                                           #{e\ 1773}#
-                                           #{w\ 1775}#
-                                           #{s\ 1776}#
-                                           #{mod\ 1778}#)
-                                         (if (memv #{ftype\ 1805}#
-                                                   '(define))
-                                           ((lambda (#{tmp\ 1837}#)
-                                              ((lambda (#{tmp\ 1838}#)
-                                                 (if (if #{tmp\ 1838}#
-                                                       (apply (lambda (#{_\ 
1842}#
-                                                                       #{name\ 
1843}#
-                                                                       #{val\ 
1844}#)
-                                                                (#{id?\ 372}#
-                                                                  #{name\ 
1843}#))
-                                                              #{tmp\ 1838}#)
-                                                       #f)
-                                                   (apply (lambda (#{_\ 1848}#
-                                                                   #{name\ 
1849}#
-                                                                   #{val\ 
1850}#)
-                                                            (values
-                                                              'define-form
-                                                              #{name\ 1849}#
-                                                              #{val\ 1850}#
-                                                              #{w\ 1775}#
-                                                              #{s\ 1776}#
-                                                              #{mod\ 1778}#))
-                                                          #{tmp\ 1838}#)
-                                                   ((lambda (#{tmp\ 1851}#)
-                                                      (if (if #{tmp\ 1851}#
-                                                            (apply (lambda 
(#{_\ 1857}#
-                                                                            
#{name\ 1858}#
-                                                                            
#{args\ 1859}#
-                                                                            
#{e1\ 1860}#
-                                                                            
#{e2\ 1861}#)
-                                                                     (if 
(#{id?\ 372}#
-                                                                           
#{name\ 1858}#)
-                                                                       
(#{valid-bound-ids?\ 435}#
-                                                                         
(#{lambda-var-list\ 487}#
-                                                                           
#{args\ 1859}#))
-                                                                       #f))
-                                                                   #{tmp\ 
1851}#)
-                                                            #f)
-                                                        (apply (lambda (#{_\ 
1869}#
-                                                                        
#{name\ 1870}#
-                                                                        
#{args\ 1871}#
-                                                                        #{e1\ 
1872}#
-                                                                        #{e2\ 
1873}#)
-                                                                 (values
-                                                                   'define-form
-                                                                   (#{wrap\ 
441}#
-                                                                     #{name\ 
1870}#
-                                                                     #{w\ 
1775}#
-                                                                     #{mod\ 
1778}#)
-                                                                   
(#{decorate-source\ 290}#
-                                                                     (cons 
'#(syntax-object
-                                                                              
lambda
-                                                                              
((top)
-                                                                               
#(ribcage
-                                                                               
  #(_
-                                                                               
    name
-                                                                               
    args
-                                                                               
    e1
-                                                                               
    e2)
-                                                                               
  #((top)
-                                                                               
    (top)
-                                                                               
    (top)
-                                                                               
    (top)
-                                                                               
    (top))
-                                                                               
  #("i1864"
-                                                                               
    "i1865"
-                                                                               
    "i1866"
-                                                                               
    "i1867"
-                                                                               
    "i1868"))
-                                                                               
#(ribcage
-                                                                               
  ()
-                                                                               
  ()
-                                                                               
  ())
-                                                                               
#(ribcage
-                                                                               
  ()
-                                                                               
  ()
-                                                                               
  ())
-                                                                               
#(ribcage
-                                                                               
  #(ftype
-                                                                               
    fval
-                                                                               
    fe
-                                                                               
    fw
-                                                                               
    fs
-                                                                               
    fmod)
-                                                                               
  #((top)
-                                                                               
    (top)
-                                                                               
    (top)
-                                                                               
    (top)
-                                                                               
    (top)
-                                                                               
    (top))
-                                                                               
  #("i1811"
-                                                                               
    "i1812"
-                                                                               
    "i1813"
-                                                                               
    "i1814"
-                                                                               
    "i1815"
-                                                                               
    "i1816"))
-                                                                               
#(ribcage
-                                                                               
  ()
-                                                                               
  ()
-                                                                               
  ())
-                                                                               
#(ribcage
-                                                                               
  #(first)
-                                                                               
  #((top))
-                                                                               
  #("i1803"))
-                                                                               
#(ribcage
-                                                                               
  ()
-                                                                               
  ()
-                                                                               
  ())
-                                                                               
#(ribcage
-                                                                               
  ()
-                                                                               
  ()
-                                                                               
  ())
-                                                                               
#(ribcage
-                                                                               
  ()
-                                                                               
  ()
-                                                                               
  ())
-                                                                               
#(ribcage
-                                                                               
  #(e
-                                                                               
    r
-                                                                               
    w
-                                                                               
    s
-                                                                               
    rib
-                                                                               
    mod
-                                                                               
    for-car?)
-                                                                               
  #((top)
-                                                                               
    (top)
-                                                                               
    (top)
-                                                                               
    (top)
-                                                                               
    (top)
-                                                                               
    (top)
-                                                                               
    (top))
-                                                                               
  #("i1780"
-                                                                               
    "i1781"
-                                                                               
    "i1782"
-                                                                               
    "i1783"
-                                                                               
    "i1784"
-                                                                               
    "i1785"
-                                                                               
    "i1786"))
-                                                                               
#(ribcage
-                                                                               
  (lambda-var-list
-                                                                               
    gen-var
-                                                                               
    strip
-                                                                               
    chi-lambda-case
-                                                                               
    lambda*-formals
-                                                                               
    chi-simple-lambda
-                                                                               
    lambda-formals
-                                                                               
    ellipsis?
-                                                                               
    chi-void
-                                                                               
    eval-local-transformer
-                                                                               
    chi-local-syntax
-                                                                               
    chi-body
-                                                                               
    chi-macro
-                                                                               
    chi-application
-                                                                               
    chi-expr
-                                                                               
    chi
-                                                                               
    chi-top
-                                                                               
    syntax-type
-                                                                               
    chi-when-list
-                                                                               
    chi-install-global
-                                                                               
    chi-top-sequence
-                                                                               
    chi-sequence
-                                                                               
    source-wrap
-                                                                               
    wrap
-                                                                               
    bound-id-member?
-                                                                               
    distinct-bound-ids?
-                                                                               
    valid-bound-ids?
-                                                                               
    bound-id=?
-                                                                               
    free-id=?
-                                                                               
    id-var-name
-                                                                               
    same-marks?
-                                                                               
    join-marks
-                                                                               
    join-wraps
-                                                                               
    smart-append
-                                                                               
    make-binding-wrap
-                                                                               
    extend-ribcage!
-                                                                               
    make-empty-ribcage
-                                                                               
    new-mark
-                                                                               
    anti-mark
-                                                                               
    the-anti-mark
-                                                                               
    top-marked?
-                                                                               
    top-wrap
-                                                                               
    empty-wrap
-                                                                               
    set-ribcage-labels!
-                                                                               
    set-ribcage-marks!
-                                                                               
    set-ribcage-symnames!
-                                                                               
    ribcage-labels
-                                                                               
    ribcage-marks
-                                                                               
    ribcage-symnames
-                                                                               
    ribcage?
-                                                                               
    make-ribcage
-                                                                               
    gen-labels
-                                                                               
    gen-label
-                                                                               
    make-rename
-                                                                               
    rename-marks
-                                                                               
    rename-new
-                                                                               
    rename-old
-                                                                               
    subst-rename?
-                                                                               
    wrap-subst
-                                                                               
    wrap-marks
-                                                                               
    make-wrap
-                                                                               
    id-sym-name&marks
-                                                                               
    id-sym-name
-                                                                               
    id?
-                                                                               
    nonsymbol-id?
-                                                                               
    global-extend
-                                                                               
    lookup
-                                                                               
    macros-only-env
-                                                                               
    extend-var-env
-                                                                               
    extend-env
-                                                                               
    null-env
-                                                                               
    binding-value
-                                                                               
    binding-type
-                                                                               
    make-binding
-                                                                               
    arg-check
-                                                                               
    source-annotation
-                                                                               
    no-source
-                                                                               
    set-syntax-object-module!
-                                                                               
    set-syntax-object-wrap!
-                                                                               
    set-syntax-object-expression!
-                                                                               
    syntax-object-module
-                                                                               
    syntax-object-wrap
-                                                                               
    syntax-object-expression
-                                                                               
    syntax-object?
-                                                                               
    make-syntax-object
-                                                                               
    build-lexical-var
-                                                                               
    build-letrec
-                                                                               
    build-named-let
-                                                                               
    build-let
-                                                                               
    build-sequence
-                                                                               
    build-data
-                                                                               
    build-primref
-                                                                               
    build-lambda-case
-                                                                               
    build-case-lambda
-                                                                               
    build-simple-lambda
-                                                                               
    build-global-definition
-                                                                               
    maybe-name-value!
-                                                                               
    build-global-assignment
-                                                                               
    build-global-reference
-                                                                               
    analyze-variable
-                                                                               
    build-lexical-assignment
-                                                                               
    build-lexical-reference
-                                                                               
    build-dynlet
-                                                                               
    build-conditional
-                                                                               
    build-application
-                                                                               
    build-void
-                                                                               
    decorate-source
-                                                                               
    get-global-definition-hook
-                                                                               
    put-global-definition-hook
-                                                                               
    gensym-hook
-                                                                               
    local-eval-hook
-                                                                               
    top-level-eval-hook
-                                                                               
    fx<
-                                                                               
    fx=
-                                                                               
    fx-
-                                                                               
    fx+
-                                                                               
    set-lambda-meta!
-                                                                               
    lambda-meta
-                                                                               
    lambda?
-                                                                               
    make-dynlet
-                                                                               
    make-letrec
-                                                                               
    make-let
-                                                                               
    make-lambda-case
-                                                                               
    make-lambda
-                                                                               
    make-sequence
-                                                                               
    make-application
-                                                                               
    make-conditional
-                                                                               
    make-toplevel-define
-                                                                               
    make-toplevel-set
-                                                                               
    make-toplevel-ref
-                                                                               
    make-module-set
-                                                                               
    make-module-ref
-                                                                               
    make-lexical-set
-                                                                               
    make-lexical-ref
-                                                                               
    make-primitive-ref
-                                                                               
    make-const
-                                                                               
    make-void)
-                                                                               
  ((top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top))
-                                                                               
  ("i486"
-                                                                               
   "i484"
-                                                                               
   "i482"
-                                                                               
   "i480"
-                                                                               
   "i478"
-                                                                               
   "i476"
-                                                                               
   "i474"
-                                                                               
   "i472"
-                                                                               
   "i470"
-                                                                               
   "i468"
-                                                                               
   "i466"
-                                                                               
   "i464"
-                                                                               
   "i462"
-                                                                               
   "i460"
-                                                                               
   "i458"
-                                                                               
   "i456"
-                                                                               
   "i454"
-                                                                               
   "i452"
-                                                                               
   "i450"
-                                                                               
   "i448"
-                                                                               
   "i446"
-                                                                               
   "i444"
-                                                                               
   "i442"
-                                                                               
   "i440"
-                                                                               
   "i438"
-                                                                               
   "i436"
-                                                                               
   "i434"
-                                                                               
   "i432"
-                                                                               
   "i430"
-                                                                               
   "i428"
-                                                                               
   "i426"
-                                                                               
   "i424"
-                                                                               
   "i422"
-                                                                               
   "i420"
-                                                                               
   "i418"
-                                                                               
   "i416"
-                                                                               
   "i415"
-                                                                               
   "i414"
-                                                                               
   "i412"
-                                                                               
   "i411"
-                                                                               
   "i410"
-                                                                               
   "i409"
-                                                                               
   "i408"
-                                                                               
   "i406"
-                                                                               
   "i404"
-                                                                               
   "i402"
-                                                                               
   "i400"
-                                                                               
   "i398"
-                                                                               
   "i396"
-                                                                               
   "i394"
-                                                                               
   "i392"
-                                                                               
   "i389"
-                                                                               
   "i387"
-                                                                               
   "i386"
-                                                                               
   "i385"
-                                                                               
   "i384"
-                                                                               
   "i383"
-                                                                               
   "i382"
-                                                                               
   "i380"
-                                                                               
   "i378"
-                                                                               
   "i376"
-                                                                               
   "i374"
-                                                                               
   "i373"
-                                                                               
   "i371"
-                                                                               
   "i369"
-                                                                               
   "i367"
-                                                                               
   "i365"
-                                                                               
   "i363"
-                                                                               
   "i361"
-                                                                               
   "i359"
-                                                                               
   "i358"
-                                                                               
   "i356"
-                                                                               
   "i354"
-                                                                               
   "i353"
-                                                                               
   "i352"
-                                                                               
   "i350"
-                                                                               
   "i349"
-                                                                               
   "i347"
-                                                                               
   "i345"
-                                                                               
   "i343"
-                                                                               
   "i341"
-                                                                               
   "i339"
-                                                                               
   "i337"
-                                                                               
   "i335"
-                                                                               
   "i333"
-                                                                               
   "i331"
-                                                                               
   "i329"
-                                                                               
   "i327"
-                                                                               
   "i325"
-                                                                               
   "i323"
-                                                                               
   "i321"
-                                                                               
   "i319"
-                                                                               
   "i317"
-                                                                               
   "i315"
-                                                                               
   "i313"
-                                                                               
   "i311"
-                                                                               
   "i309"
-                                                                               
   "i307"
-                                                                               
   "i305"
-                                                                               
   "i303"
-                                                                               
   "i301"
-                                                                               
   "i299"
-                                                                               
   "i297"
-                                                                               
   "i295"
-                                                                               
   "i293"
-                                                                               
   "i291"
-                                                                               
   "i289"
-                                                                               
   "i287"
-                                                                               
   "i285"
-                                                                               
   "i284"
-                                                                               
   "i282"
-                                                                               
   "i280"
-                                                                               
   "i278"
-                                                                               
   "i276"
-                                                                               
   "i274"
-                                                                               
   "i272"
-                                                                               
   "i270"
-                                                                               
   "i268"
-                                                                               
   "i266"
-                                                                               
   "i263"
-                                                                               
   "i261"
-                                                                               
   "i259"
-                                                                               
   "i257"
-                                                                               
   "i255"
-                                                                               
   "i253"
-                                                                               
   "i251"
-                                                                               
   "i249"
-                                                                               
   "i247"
-                                                                               
   "i245"
-                                                                               
   "i243"
-                                                                               
   "i241"
-                                                                               
   "i239"
-                                                                               
   "i237"
-                                                                               
   "i235"
-                                                                               
   "i233"
-                                                                               
   "i231"
-                                                                               
   "i229"))
-                                                                               
#(ribcage
-                                                                               
  (define-structure
-                                                                               
    define-expansion-accessors
-                                                                               
    define-expansion-constructors
-                                                                               
    and-map*)
-                                                                               
  ((top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top))
-                                                                               
  ("i23"
-                                                                               
   "i22"
-                                                                               
   "i21"
-                                                                               
   "i19")))
-                                                                              
(hygiene
-                                                                               
 guile))
-                                                                           
(#{wrap\ 441}#
-                                                                             
(cons #{args\ 1871}#
-                                                                               
    (cons #{e1\ 1872}#
-                                                                               
          #{e2\ 1873}#))
-                                                                             
#{w\ 1775}#
-                                                                             
#{mod\ 1778}#))
-                                                                     #{s\ 
1776}#)
-                                                                   '(())
-                                                                   #{s\ 1776}#
-                                                                   #{mod\ 
1778}#))
-                                                               #{tmp\ 1851}#)
-                                                        ((lambda (#{tmp\ 
1876}#)
-                                                           (if (if #{tmp\ 
1876}#
-                                                                 (apply 
(lambda (#{_\ 1879}#
-                                                                               
  #{name\ 1880}#)
-                                                                          
(#{id?\ 372}#
-                                                                            
#{name\ 1880}#))
-                                                                        #{tmp\ 
1876}#)
-                                                                 #f)
-                                                             (apply (lambda 
(#{_\ 1883}#
-                                                                             
#{name\ 1884}#)
-                                                                      (values
-                                                                        
'define-form
-                                                                        
(#{wrap\ 441}#
-                                                                          
#{name\ 1884}#
-                                                                          #{w\ 
1775}#
-                                                                          
#{mod\ 1778}#)
-                                                                        
'(#(syntax-object
-                                                                            if
-                                                                            
((top)
-                                                                             
#(ribcage
-                                                                               
#(_
-                                                                               
  name)
-                                                                               
#((top)
-                                                                               
  (top))
-                                                                               
#("i1881"
-                                                                               
  "i1882"))
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
#(ftype
-                                                                               
  fval
-                                                                               
  fe
-                                                                               
  fw
-                                                                               
  fs
-                                                                               
  fmod)
-                                                                               
#((top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top))
-                                                                               
#("i1811"
-                                                                               
  "i1812"
-                                                                               
  "i1813"
-                                                                               
  "i1814"
-                                                                               
  "i1815"
-                                                                               
  "i1816"))
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
#(first)
-                                                                               
#((top))
-                                                                               
#("i1803"))
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
#(e
-                                                                               
  r
-                                                                               
  w
-                                                                               
  s
-                                                                               
  rib
-                                                                               
  mod
-                                                                               
  for-car?)
-                                                                               
#((top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top))
-                                                                               
#("i1780"
-                                                                               
  "i1781"
-                                                                               
  "i1782"
-                                                                               
  "i1783"
-                                                                               
  "i1784"
-                                                                               
  "i1785"
-                                                                               
  "i1786"))
-                                                                             
#(ribcage
-                                                                               
(lambda-var-list
-                                                                               
  gen-var
-                                                                               
  strip
-                                                                               
  chi-lambda-case
-                                                                               
  lambda*-formals
-                                                                               
  chi-simple-lambda
-                                                                               
  lambda-formals
-                                                                               
  ellipsis?
-                                                                               
  chi-void
-                                                                               
  eval-local-transformer
-                                                                               
  chi-local-syntax
-                                                                               
  chi-body
-                                                                               
  chi-macro
-                                                                               
  chi-application
-                                                                               
  chi-expr
-                                                                               
  chi
-                                                                               
  chi-top
-                                                                               
  syntax-type
-                                                                               
  chi-when-list
-                                                                               
  chi-install-global
-                                                                               
  chi-top-sequence
-                                                                               
  chi-sequence
-                                                                               
  source-wrap
-                                                                               
  wrap
-                                                                               
  bound-id-member?
-                                                                               
  distinct-bound-ids?
-                                                                               
  valid-bound-ids?
-                                                                               
  bound-id=?
-                                                                               
  free-id=?
-                                                                               
  id-var-name
-                                                                               
  same-marks?
-                                                                               
  join-marks
-                                                                               
  join-wraps
-                                                                               
  smart-append
-                                                                               
  make-binding-wrap
-                                                                               
  extend-ribcage!
-                                                                               
  make-empty-ribcage
-                                                                               
  new-mark
-                                                                               
  anti-mark
-                                                                               
  the-anti-mark
-                                                                               
  top-marked?
-                                                                               
  top-wrap
-                                                                               
  empty-wrap
-                                                                               
  set-ribcage-labels!
-                                                                               
  set-ribcage-marks!
-                                                                               
  set-ribcage-symnames!
-                                                                               
  ribcage-labels
-                                                                               
  ribcage-marks
-                                                                               
  ribcage-symnames
-                                                                               
  ribcage?
-                                                                               
  make-ribcage
-                                                                               
  gen-labels
-                                                                               
  gen-label
-                                                                               
  make-rename
-                                                                               
  rename-marks
-                                                                               
  rename-new
-                                                                               
  rename-old
-                                                                               
  subst-rename?
-                                                                               
  wrap-subst
-                                                                               
  wrap-marks
-                                                                               
  make-wrap
-                                                                               
  id-sym-name&marks
-                                                                               
  id-sym-name
-                                                                               
  id?
-                                                                               
  nonsymbol-id?
-                                                                               
  global-extend
-                                                                               
  lookup
-                                                                               
  macros-only-env
-                                                                               
  extend-var-env
-                                                                               
  extend-env
-                                                                               
  null-env
-                                                                               
  binding-value
-                                                                               
  binding-type
-                                                                               
  make-binding
-                                                                               
  arg-check
-                                                                               
  source-annotation
-                                                                               
  no-source
-                                                                               
  set-syntax-object-module!
-                                                                               
  set-syntax-object-wrap!
-                                                                               
  set-syntax-object-expression!
-                                                                               
  syntax-object-module
-                                                                               
  syntax-object-wrap
-                                                                               
  syntax-object-expression
-                                                                               
  syntax-object?
-                                                                               
  make-syntax-object
-                                                                               
  build-lexical-var
-                                                                               
  build-letrec
-                                                                               
  build-named-let
-                                                                               
  build-let
-                                                                               
  build-sequence
-                                                                               
  build-data
-                                                                               
  build-primref
-                                                                               
  build-lambda-case
-                                                                               
  build-case-lambda
-                                                                               
  build-simple-lambda
-                                                                               
  build-global-definition
-                                                                               
  maybe-name-value!
-                                                                               
  build-global-assignment
-                                                                               
  build-global-reference
-                                                                               
  analyze-variable
-                                                                               
  build-lexical-assignment
-                                                                               
  build-lexical-reference
-                                                                               
  build-dynlet
-                                                                               
  build-conditional
-                                                                               
  build-application
-                                                                               
  build-void
-                                                                               
  decorate-source
-                                                                               
  get-global-definition-hook
-                                                                               
  put-global-definition-hook
-                                                                               
  gensym-hook
-                                                                               
  local-eval-hook
-                                                                               
  top-level-eval-hook
-                                                                               
  fx<
-                                                                               
  fx=
-                                                                               
  fx-
-                                                                               
  fx+
-                                                                               
  set-lambda-meta!
-                                                                               
  lambda-meta
-                                                                               
  lambda?
-                                                                               
  make-dynlet
-                                                                               
  make-letrec
-                                                                               
  make-let
-                                                                               
  make-lambda-case
-                                                                               
  make-lambda
-                                                                               
  make-sequence
-                                                                               
  make-application
-                                                                               
  make-conditional
-                                                                               
  make-toplevel-define
-                                                                               
  make-toplevel-set
-                                                                               
  make-toplevel-ref
-                                                                               
  make-module-set
-                                                                               
  make-module-ref
-                                                                               
  make-lexical-set
-                                                                               
  make-lexical-ref
-                                                                               
  make-primitive-ref
-                                                                               
  make-const
-                                                                               
  make-void)
-                                                                               
((top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top))
-                                                                               
("i486"
-                                                                               
 "i484"
-                                                                               
 "i482"
-                                                                               
 "i480"
-                                                                               
 "i478"
-                                                                               
 "i476"
-                                                                               
 "i474"
-                                                                               
 "i472"
-                                                                               
 "i470"
-                                                                               
 "i468"
-                                                                               
 "i466"
-                                                                               
 "i464"
-                                                                               
 "i462"
-                                                                               
 "i460"
-                                                                               
 "i458"
-                                                                               
 "i456"
-                                                                               
 "i454"
-                                                                               
 "i452"
-                                                                               
 "i450"
-                                                                               
 "i448"
-                                                                               
 "i446"
-                                                                               
 "i444"
-                                                                               
 "i442"
-                                                                               
 "i440"
-                                                                               
 "i438"
-                                                                               
 "i436"
-                                                                               
 "i434"
-                                                                               
 "i432"
-                                                                               
 "i430"
-                                                                               
 "i428"
-                                                                               
 "i426"
-                                                                               
 "i424"
-                                                                               
 "i422"
-                                                                               
 "i420"
-                                                                               
 "i418"
-                                                                               
 "i416"
-                                                                               
 "i415"
-                                                                               
 "i414"
-                                                                               
 "i412"
-                                                                               
 "i411"
-                                                                               
 "i410"
-                                                                               
 "i409"
-                                                                               
 "i408"
-                                                                               
 "i406"
-                                                                               
 "i404"
-                                                                               
 "i402"
-                                                                               
 "i400"
-                                                                               
 "i398"
-                                                                               
 "i396"
-                                                                               
 "i394"
-                                                                               
 "i392"
-                                                                               
 "i389"
-                                                                               
 "i387"
-                                                                               
 "i386"
-                                                                               
 "i385"
-                                                                               
 "i384"
-                                                                               
 "i383"
-                                                                               
 "i382"
-                                                                               
 "i380"
-                                                                               
 "i378"
-                                                                               
 "i376"
-                                                                               
 "i374"
-                                                                               
 "i373"
-                                                                               
 "i371"
-                                                                               
 "i369"
-                                                                               
 "i367"
-                                                                               
 "i365"
-                                                                               
 "i363"
-                                                                               
 "i361"
-                                                                               
 "i359"
-                                                                               
 "i358"
-                                                                               
 "i356"
-                                                                               
 "i354"
-                                                                               
 "i353"
-                                                                               
 "i352"
-                                                                               
 "i350"
-                                                                               
 "i349"
-                                                                               
 "i347"
-                                                                               
 "i345"
-                                                                               
 "i343"
-                                                                               
 "i341"
-                                                                               
 "i339"
-                                                                               
 "i337"
-                                                                               
 "i335"
-                                                                               
 "i333"
-                                                                               
 "i331"
-                                                                               
 "i329"
-                                                                               
 "i327"
-                                                                               
 "i325"
-                                                                               
 "i323"
-                                                                               
 "i321"
-                                                                               
 "i319"
-                                                                               
 "i317"
-                                                                               
 "i315"
-                                                                               
 "i313"
-                                                                               
 "i311"
-                                                                               
 "i309"
-                                                                               
 "i307"
-                                                                               
 "i305"
-                                                                               
 "i303"
-                                                                               
 "i301"
-                                                                               
 "i299"
-                                                                               
 "i297"
-                                                                               
 "i295"
-                                                                               
 "i293"
-                                                                               
 "i291"
-                                                                               
 "i289"
-                                                                               
 "i287"
-                                                                               
 "i285"
-                                                                               
 "i284"
-                                                                               
 "i282"
-                                                                               
 "i280"
-                                                                               
 "i278"
-                                                                               
 "i276"
-                                                                               
 "i274"
-                                                                               
 "i272"
-                                                                               
 "i270"
-                                                                               
 "i268"
-                                                                               
 "i266"
-                                                                               
 "i263"
-                                                                               
 "i261"
-                                                                               
 "i259"
-                                                                               
 "i257"
-                                                                               
 "i255"
-                                                                               
 "i253"
-                                                                               
 "i251"
-                                                                               
 "i249"
-                                                                               
 "i247"
-                                                                               
 "i245"
-                                                                               
 "i243"
-                                                                               
 "i241"
-                                                                               
 "i239"
-                                                                               
 "i237"
-                                                                               
 "i235"
-                                                                               
 "i233"
-                                                                               
 "i231"
-                                                                               
 "i229"))
-                                                                             
#(ribcage
-                                                                               
(define-structure
-                                                                               
  define-expansion-accessors
-                                                                               
  define-expansion-constructors
-                                                                               
  and-map*)
-                                                                               
((top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top))
-                                                                               
("i23"
-                                                                               
 "i22"
-                                                                               
 "i21"
-                                                                               
 "i19")))
-                                                                            
(hygiene
-                                                                              
guile))
-                                                                          
#(syntax-object
-                                                                            #f
-                                                                            
((top)
-                                                                             
#(ribcage
-                                                                               
#(_
-                                                                               
  name)
-                                                                               
#((top)
-                                                                               
  (top))
-                                                                               
#("i1881"
-                                                                               
  "i1882"))
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
#(ftype
-                                                                               
  fval
-                                                                               
  fe
-                                                                               
  fw
-                                                                               
  fs
-                                                                               
  fmod)
-                                                                               
#((top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top))
-                                                                               
#("i1811"
-                                                                               
  "i1812"
-                                                                               
  "i1813"
-                                                                               
  "i1814"
-                                                                               
  "i1815"
-                                                                               
  "i1816"))
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
#(first)
-                                                                               
#((top))
-                                                                               
#("i1803"))
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
#(e
-                                                                               
  r
-                                                                               
  w
-                                                                               
  s
-                                                                               
  rib
-                                                                               
  mod
-                                                                               
  for-car?)
-                                                                               
#((top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top))
-                                                                               
#("i1780"
-                                                                               
  "i1781"
-                                                                               
  "i1782"
-                                                                               
  "i1783"
-                                                                               
  "i1784"
-                                                                               
  "i1785"
-                                                                               
  "i1786"))
-                                                                             
#(ribcage
-                                                                               
(lambda-var-list
-                                                                               
  gen-var
-                                                                               
  strip
-                                                                               
  chi-lambda-case
-                                                                               
  lambda*-formals
-                                                                               
  chi-simple-lambda
-                                                                               
  lambda-formals
-                                                                               
  ellipsis?
-                                                                               
  chi-void
-                                                                               
  eval-local-transformer
-                                                                               
  chi-local-syntax
-                                                                               
  chi-body
-                                                                               
  chi-macro
-                                                                               
  chi-application
-                                                                               
  chi-expr
-                                                                               
  chi
-                                                                               
  chi-top
-                                                                               
  syntax-type
-                                                                               
  chi-when-list
-                                                                               
  chi-install-global
-                                                                               
  chi-top-sequence
-                                                                               
  chi-sequence
-                                                                               
  source-wrap
-                                                                               
  wrap
-                                                                               
  bound-id-member?
-                                                                               
  distinct-bound-ids?
-                                                                               
  valid-bound-ids?
-                                                                               
  bound-id=?
-                                                                               
  free-id=?
-                                                                               
  id-var-name
-                                                                               
  same-marks?
-                                                                               
  join-marks
-                                                                               
  join-wraps
-                                                                               
  smart-append
-                                                                               
  make-binding-wrap
-                                                                               
  extend-ribcage!
-                                                                               
  make-empty-ribcage
-                                                                               
  new-mark
-                                                                               
  anti-mark
-                                                                               
  the-anti-mark
-                                                                               
  top-marked?
-                                                                               
  top-wrap
-                                                                               
  empty-wrap
-                                                                               
  set-ribcage-labels!
-                                                                               
  set-ribcage-marks!
-                                                                               
  set-ribcage-symnames!
-                                                                               
  ribcage-labels
-                                                                               
  ribcage-marks
-                                                                               
  ribcage-symnames
-                                                                               
  ribcage?
-                                                                               
  make-ribcage
-                                                                               
  gen-labels
-                                                                               
  gen-label
-                                                                               
  make-rename
-                                                                               
  rename-marks
-                                                                               
  rename-new
-                                                                               
  rename-old
-                                                                               
  subst-rename?
-                                                                               
  wrap-subst
-                                                                               
  wrap-marks
-                                                                               
  make-wrap
-                                                                               
  id-sym-name&marks
-                                                                               
  id-sym-name
-                                                                               
  id?
-                                                                               
  nonsymbol-id?
-                                                                               
  global-extend
-                                                                               
  lookup
-                                                                               
  macros-only-env
-                                                                               
  extend-var-env
-                                                                               
  extend-env
-                                                                               
  null-env
-                                                                               
  binding-value
-                                                                               
  binding-type
-                                                                               
  make-binding
-                                                                               
  arg-check
-                                                                               
  source-annotation
-                                                                               
  no-source
-                                                                               
  set-syntax-object-module!
-                                                                               
  set-syntax-object-wrap!
-                                                                               
  set-syntax-object-expression!
-                                                                               
  syntax-object-module
-                                                                               
  syntax-object-wrap
-                                                                               
  syntax-object-expression
-                                                                               
  syntax-object?
-                                                                               
  make-syntax-object
-                                                                               
  build-lexical-var
-                                                                               
  build-letrec
-                                                                               
  build-named-let
-                                                                               
  build-let
-                                                                               
  build-sequence
-                                                                               
  build-data
-                                                                               
  build-primref
-                                                                               
  build-lambda-case
-                                                                               
  build-case-lambda
-                                                                               
  build-simple-lambda
-                                                                               
  build-global-definition
-                                                                               
  maybe-name-value!
-                                                                               
  build-global-assignment
-                                                                               
  build-global-reference
-                                                                               
  analyze-variable
-                                                                               
  build-lexical-assignment
-                                                                               
  build-lexical-reference
-                                                                               
  build-dynlet
-                                                                               
  build-conditional
-                                                                               
  build-application
-                                                                               
  build-void
-                                                                               
  decorate-source
-                                                                               
  get-global-definition-hook
-                                                                               
  put-global-definition-hook
-                                                                               
  gensym-hook
-                                                                               
  local-eval-hook
-                                                                               
  top-level-eval-hook
-                                                                               
  fx<
-                                                                               
  fx=
-                                                                               
  fx-
-                                                                               
  fx+
-                                                                               
  set-lambda-meta!
-                                                                               
  lambda-meta
-                                                                               
  lambda?
-                                                                               
  make-dynlet
-                                                                               
  make-letrec
-                                                                               
  make-let
-                                                                               
  make-lambda-case
-                                                                               
  make-lambda
-                                                                               
  make-sequence
-                                                                               
  make-application
-                                                                               
  make-conditional
-                                                                               
  make-toplevel-define
-                                                                               
  make-toplevel-set
-                                                                               
  make-toplevel-ref
-                                                                               
  make-module-set
-                                                                               
  make-module-ref
-                                                                               
  make-lexical-set
-                                                                               
  make-lexical-ref
-                                                                               
  make-primitive-ref
-                                                                               
  make-const
-                                                                               
  make-void)
-                                                                               
((top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top))
-                                                                               
("i486"
-                                                                               
 "i484"
-                                                                               
 "i482"
-                                                                               
 "i480"
-                                                                               
 "i478"
-                                                                               
 "i476"
-                                                                               
 "i474"
-                                                                               
 "i472"
-                                                                               
 "i470"
-                                                                               
 "i468"
-                                                                               
 "i466"
-                                                                               
 "i464"
-                                                                               
 "i462"
-                                                                               
 "i460"
-                                                                               
 "i458"
-                                                                               
 "i456"
-                                                                               
 "i454"
-                                                                               
 "i452"
-                                                                               
 "i450"
-                                                                               
 "i448"
-                                                                               
 "i446"
-                                                                               
 "i444"
-                                                                               
 "i442"
-                                                                               
 "i440"
-                                                                               
 "i438"
-                                                                               
 "i436"
-                                                                               
 "i434"
-                                                                               
 "i432"
-                                                                               
 "i430"
-                                                                               
 "i428"
-                                                                               
 "i426"
-                                                                               
 "i424"
-                                                                               
 "i422"
-                                                                               
 "i420"
-                                                                               
 "i418"
-                                                                               
 "i416"
-                                                                               
 "i415"
-                                                                               
 "i414"
-                                                                               
 "i412"
-                                                                               
 "i411"
-                                                                               
 "i410"
-                                                                               
 "i409"
-                                                                               
 "i408"
-                                                                               
 "i406"
-                                                                               
 "i404"
-                                                                               
 "i402"
-                                                                               
 "i400"
-                                                                               
 "i398"
-                                                                               
 "i396"
-                                                                               
 "i394"
-                                                                               
 "i392"
-                                                                               
 "i389"
-                                                                               
 "i387"
-                                                                               
 "i386"
-                                                                               
 "i385"
-                                                                               
 "i384"
-                                                                               
 "i383"
-                                                                               
 "i382"
-                                                                               
 "i380"
-                                                                               
 "i378"
-                                                                               
 "i376"
-                                                                               
 "i374"
-                                                                               
 "i373"
-                                                                               
 "i371"
-                                                                               
 "i369"
-                                                                               
 "i367"
-                                                                               
 "i365"
-                                                                               
 "i363"
-                                                                               
 "i361"
-                                                                               
 "i359"
-                                                                               
 "i358"
-                                                                               
 "i356"
-                                                                               
 "i354"
-                                                                               
 "i353"
-                                                                               
 "i352"
-                                                                               
 "i350"
-                                                                               
 "i349"
-                                                                               
 "i347"
-                                                                               
 "i345"
-                                                                               
 "i343"
-                                                                               
 "i341"
-                                                                               
 "i339"
-                                                                               
 "i337"
-                                                                               
 "i335"
-                                                                               
 "i333"
-                                                                               
 "i331"
-                                                                               
 "i329"
-                                                                               
 "i327"
-                                                                               
 "i325"
-                                                                               
 "i323"
-                                                                               
 "i321"
-                                                                               
 "i319"
-                                                                               
 "i317"
-                                                                               
 "i315"
-                                                                               
 "i313"
-                                                                               
 "i311"
-                                                                               
 "i309"
-                                                                               
 "i307"
-                                                                               
 "i305"
-                                                                               
 "i303"
-                                                                               
 "i301"
-                                                                               
 "i299"
-                                                                               
 "i297"
-                                                                               
 "i295"
-                                                                               
 "i293"
-                                                                               
 "i291"
-                                                                               
 "i289"
-                                                                               
 "i287"
-                                                                               
 "i285"
-                                                                               
 "i284"
-                                                                               
 "i282"
-                                                                               
 "i280"
-                                                                               
 "i278"
-                                                                               
 "i276"
-                                                                               
 "i274"
-                                                                               
 "i272"
-                                                                               
 "i270"
-                                                                               
 "i268"
-                                                                               
 "i266"
-                                                                               
 "i263"
-                                                                               
 "i261"
-                                                                               
 "i259"
-                                                                               
 "i257"
-                                                                               
 "i255"
-                                                                               
 "i253"
-                                                                               
 "i251"
-                                                                               
 "i249"
-                                                                               
 "i247"
-                                                                               
 "i245"
-                                                                               
 "i243"
-                                                                               
 "i241"
-                                                                               
 "i239"
-                                                                               
 "i237"
-                                                                               
 "i235"
-                                                                               
 "i233"
-                                                                               
 "i231"
-                                                                               
 "i229"))
-                                                                             
#(ribcage
-                                                                               
(define-structure
-                                                                               
  define-expansion-accessors
-                                                                               
  define-expansion-constructors
-                                                                               
  and-map*)
-                                                                               
((top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top))
-                                                                               
("i23"
-                                                                               
 "i22"
-                                                                               
 "i21"
-                                                                               
 "i19")))
-                                                                            
(hygiene
-                                                                              
guile))
-                                                                          
#(syntax-object
-                                                                            #f
-                                                                            
((top)
-                                                                             
#(ribcage
-                                                                               
#(_
-                                                                               
  name)
-                                                                               
#((top)
-                                                                               
  (top))
-                                                                               
#("i1881"
-                                                                               
  "i1882"))
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
#(ftype
-                                                                               
  fval
-                                                                               
  fe
-                                                                               
  fw
-                                                                               
  fs
-                                                                               
  fmod)
-                                                                               
#((top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top))
-                                                                               
#("i1811"
-                                                                               
  "i1812"
-                                                                               
  "i1813"
-                                                                               
  "i1814"
-                                                                               
  "i1815"
-                                                                               
  "i1816"))
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
#(first)
-                                                                               
#((top))
-                                                                               
#("i1803"))
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
#(e
-                                                                               
  r
-                                                                               
  w
-                                                                               
  s
-                                                                               
  rib
-                                                                               
  mod
-                                                                               
  for-car?)
-                                                                               
#((top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top))
-                                                                               
#("i1780"
-                                                                               
  "i1781"
-                                                                               
  "i1782"
-                                                                               
  "i1783"
-                                                                               
  "i1784"
-                                                                               
  "i1785"
-                                                                               
  "i1786"))
-                                                                             
#(ribcage
-                                                                               
(lambda-var-list
-                                                                               
  gen-var
-                                                                               
  strip
-                                                                               
  chi-lambda-case
-                                                                               
  lambda*-formals
-                                                                               
  chi-simple-lambda
-                                                                               
  lambda-formals
-                                                                               
  ellipsis?
-                                                                               
  chi-void
-                                                                               
  eval-local-transformer
-                                                                               
  chi-local-syntax
-                                                                               
  chi-body
-                                                                               
  chi-macro
-                                                                               
  chi-application
-                                                                               
  chi-expr
-                                                                               
  chi
-                                                                               
  chi-top
-                                                                               
  syntax-type
-                                                                               
  chi-when-list
-                                                                               
  chi-install-global
-                                                                               
  chi-top-sequence
-                                                                               
  chi-sequence
-                                                                               
  source-wrap
-                                                                               
  wrap
-                                                                               
  bound-id-member?
-                                                                               
  distinct-bound-ids?
-                                                                               
  valid-bound-ids?
-                                                                               
  bound-id=?
-                                                                               
  free-id=?
-                                                                               
  id-var-name
-                                                                               
  same-marks?
-                                                                               
  join-marks
-                                                                               
  join-wraps
-                                                                               
  smart-append
-                                                                               
  make-binding-wrap
-                                                                               
  extend-ribcage!
-                                                                               
  make-empty-ribcage
-                                                                               
  new-mark
-                                                                               
  anti-mark
-                                                                               
  the-anti-mark
-                                                                               
  top-marked?
-                                                                               
  top-wrap
-                                                                               
  empty-wrap
-                                                                               
  set-ribcage-labels!
-                                                                               
  set-ribcage-marks!
-                                                                               
  set-ribcage-symnames!
-                                                                               
  ribcage-labels
-                                                                               
  ribcage-marks
-                                                                               
  ribcage-symnames
-                                                                               
  ribcage?
-                                                                               
  make-ribcage
-                                                                               
  gen-labels
-                                                                               
  gen-label
-                                                                               
  make-rename
-                                                                               
  rename-marks
-                                                                               
  rename-new
-                                                                               
  rename-old
-                                                                               
  subst-rename?
-                                                                               
  wrap-subst
-                                                                               
  wrap-marks
-                                                                               
  make-wrap
-                                                                               
  id-sym-name&marks
-                                                                               
  id-sym-name
-                                                                               
  id?
-                                                                               
  nonsymbol-id?
-                                                                               
  global-extend
-                                                                               
  lookup
-                                                                               
  macros-only-env
-                                                                               
  extend-var-env
-                                                                               
  extend-env
-                                                                               
  null-env
-                                                                               
  binding-value
-                                                                               
  binding-type
-                                                                               
  make-binding
-                                                                               
  arg-check
-                                                                               
  source-annotation
-                                                                               
  no-source
-                                                                               
  set-syntax-object-module!
-                                                                               
  set-syntax-object-wrap!
-                                                                               
  set-syntax-object-expression!
-                                                                               
  syntax-object-module
-                                                                               
  syntax-object-wrap
-                                                                               
  syntax-object-expression
-                                                                               
  syntax-object?
-                                                                               
  make-syntax-object
-                                                                               
  build-lexical-var
-                                                                               
  build-letrec
-                                                                               
  build-named-let
-                                                                               
  build-let
-                                                                               
  build-sequence
-                                                                               
  build-data
-                                                                               
  build-primref
-                                                                               
  build-lambda-case
-                                                                               
  build-case-lambda
-                                                                               
  build-simple-lambda
-                                                                               
  build-global-definition
-                                                                               
  maybe-name-value!
-                                                                               
  build-global-assignment
-                                                                               
  build-global-reference
-                                                                               
  analyze-variable
-                                                                               
  build-lexical-assignment
-                                                                               
  build-lexical-reference
-                                                                               
  build-dynlet
-                                                                               
  build-conditional
-                                                                               
  build-application
-                                                                               
  build-void
-                                                                               
  decorate-source
-                                                                               
  get-global-definition-hook
-                                                                               
  put-global-definition-hook
-                                                                               
  gensym-hook
-                                                                               
  local-eval-hook
-                                                                               
  top-level-eval-hook
-                                                                               
  fx<
-                                                                               
  fx=
-                                                                               
  fx-
-                                                                               
  fx+
-                                                                               
  set-lambda-meta!
-                                                                               
  lambda-meta
-                                                                               
  lambda?
-                                                                               
  make-dynlet
-                                                                               
  make-letrec
-                                                                               
  make-let
-                                                                               
  make-lambda-case
-                                                                               
  make-lambda
-                                                                               
  make-sequence
-                                                                               
  make-application
-                                                                               
  make-conditional
-                                                                               
  make-toplevel-define
-                                                                               
  make-toplevel-set
-                                                                               
  make-toplevel-ref
-                                                                               
  make-module-set
-                                                                               
  make-module-ref
-                                                                               
  make-lexical-set
-                                                                               
  make-lexical-ref
-                                                                               
  make-primitive-ref
-                                                                               
  make-const
-                                                                               
  make-void)
-                                                                               
((top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top))
-                                                                               
("i486"
-                                                                               
 "i484"
-                                                                               
 "i482"
-                                                                               
 "i480"
-                                                                               
 "i478"
-                                                                               
 "i476"
-                                                                               
 "i474"
-                                                                               
 "i472"
-                                                                               
 "i470"
-                                                                               
 "i468"
-                                                                               
 "i466"
-                                                                               
 "i464"
-                                                                               
 "i462"
-                                                                               
 "i460"
-                                                                               
 "i458"
-                                                                               
 "i456"
-                                                                               
 "i454"
-                                                                               
 "i452"
-                                                                               
 "i450"
-                                                                               
 "i448"
-                                                                               
 "i446"
-                                                                               
 "i444"
-                                                                               
 "i442"
-                                                                               
 "i440"
-                                                                               
 "i438"
-                                                                               
 "i436"
-                                                                               
 "i434"
-                                                                               
 "i432"
-                                                                               
 "i430"
-                                                                               
 "i428"
-                                                                               
 "i426"
-                                                                               
 "i424"
-                                                                               
 "i422"
-                                                                               
 "i420"
-                                                                               
 "i418"
-                                                                               
 "i416"
-                                                                               
 "i415"
-                                                                               
 "i414"
-                                                                               
 "i412"
-                                                                               
 "i411"
-                                                                               
 "i410"
-                                                                               
 "i409"
-                                                                               
 "i408"
-                                                                               
 "i406"
-                                                                               
 "i404"
-                                                                               
 "i402"
-                                                                               
 "i400"
-                                                                               
 "i398"
-                                                                               
 "i396"
-                                                                               
 "i394"
-                                                                               
 "i392"
-                                                                               
 "i389"
-                                                                               
 "i387"
-                                                                               
 "i386"
-                                                                               
 "i385"
-                                                                               
 "i384"
-                                                                               
 "i383"
-                                                                               
 "i382"
-                                                                               
 "i380"
-                                                                               
 "i378"
-                                                                               
 "i376"
-                                                                               
 "i374"
-                                                                               
 "i373"
-                                                                               
 "i371"
-                                                                               
 "i369"
-                                                                               
 "i367"
-                                                                               
 "i365"
-                                                                               
 "i363"
-                                                                               
 "i361"
-                                                                               
 "i359"
-                                                                               
 "i358"
-                                                                               
 "i356"
-                                                                               
 "i354"
-                                                                               
 "i353"
-                                                                               
 "i352"
-                                                                               
 "i350"
-                                                                               
 "i349"
-                                                                               
 "i347"
-                                                                               
 "i345"
-                                                                               
 "i343"
-                                                                               
 "i341"
-                                                                               
 "i339"
-                                                                               
 "i337"
-                                                                               
 "i335"
-                                                                               
 "i333"
-                                                                               
 "i331"
-                                                                               
 "i329"
-                                                                               
 "i327"
-                                                                               
 "i325"
-                                                                               
 "i323"
-                                                                               
 "i321"
-                                                                               
 "i319"
-                                                                               
 "i317"
-                                                                               
 "i315"
-                                                                               
 "i313"
-                                                                               
 "i311"
-                                                                               
 "i309"
-                                                                               
 "i307"
-                                                                               
 "i305"
-                                                                               
 "i303"
-                                                                               
 "i301"
-                                                                               
 "i299"
-                                                                               
 "i297"
-                                                                               
 "i295"
-                                                                               
 "i293"
-                                                                               
 "i291"
-                                                                               
 "i289"
-                                                                               
 "i287"
-                                                                               
 "i285"
-                                                                               
 "i284"
-                                                                               
 "i282"
-                                                                               
 "i280"
-                                                                               
 "i278"
-                                                                               
 "i276"
-                                                                               
 "i274"
-                                                                               
 "i272"
-                                                                               
 "i270"
-                                                                               
 "i268"
-                                                                               
 "i266"
-                                                                               
 "i263"
-                                                                               
 "i261"
-                                                                               
 "i259"
-                                                                               
 "i257"
-                                                                               
 "i255"
-                                                                               
 "i253"
-                                                                               
 "i251"
-                                                                               
 "i249"
-                                                                               
 "i247"
-                                                                               
 "i245"
-                                                                               
 "i243"
-                                                                               
 "i241"
-                                                                               
 "i239"
-                                                                               
 "i237"
-                                                                               
 "i235"
-                                                                               
 "i233"
-                                                                               
 "i231"
-                                                                               
 "i229"))
-                                                                             
#(ribcage
-                                                                               
(define-structure
-                                                                               
  define-expansion-accessors
-                                                                               
  define-expansion-constructors
-                                                                               
  and-map*)
-                                                                               
((top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top))
-                                                                               
("i23"
-                                                                               
 "i22"
-                                                                               
 "i21"
-                                                                               
 "i19")))
-                                                                            
(hygiene
-                                                                              
guile)))
-                                                                        '(())
-                                                                        #{s\ 
1776}#
-                                                                        #{mod\ 
1778}#))
-                                                                    #{tmp\ 
1876}#)
-                                                             (syntax-violation
-                                                               #f
-                                                               "source 
expression failed to match any pattern"
-                                                               #{tmp\ 1837}#)))
+                                           #{e\ 1788}#
+                                           #{w\ 1790}#
+                                           #{s\ 1791}#
+                                           #{mod\ 1793}#)
+                                         (if (eqv? #{ftype\ 1820}#
+                                                   'define)
+                                           (let ((#{tmp\ 1852}# #{e\ 1788}#))
+                                             (let ((#{tmp\ 1853}#
+                                                     ($sc-dispatch
+                                                       #{tmp\ 1852}#
+                                                       '(any any any))))
+                                               (if (if #{tmp\ 1853}#
+                                                     (@apply
+                                                       (lambda (#{_\ 1857}#
+                                                                #{name\ 1858}#
+                                                                #{val\ 1859}#)
+                                                         (#{id?\ 387}#
+                                                           #{name\ 1858}#))
+                                                       #{tmp\ 1853}#)
+                                                     #f)
+                                                 (@apply
+                                                   (lambda (#{_\ 1863}#
+                                                            #{name\ 1864}#
+                                                            #{val\ 1865}#)
+                                                     (values
+                                                       'define-form
+                                                       #{name\ 1864}#
+                                                       #{val\ 1865}#
+                                                       #{w\ 1790}#
+                                                       #{s\ 1791}#
+                                                       #{mod\ 1793}#))
+                                                   #{tmp\ 1853}#)
+                                                 (let ((#{tmp\ 1866}#
                                                          ($sc-dispatch
-                                                           #{tmp\ 1837}#
-                                                           '(any any)))))
-                                                    ($sc-dispatch
-                                                      #{tmp\ 1837}#
-                                                      '(any (any . any)
-                                                            any
-                                                            .
-                                                            each-any)))))
-                                               ($sc-dispatch
-                                                 #{tmp\ 1837}#
-                                                 '(any any any))))
-                                            #{e\ 1773}#)
-                                           (if (memv #{ftype\ 1805}#
-                                                     '(define-syntax))
-                                             ((lambda (#{tmp\ 1887}#)
-                                                ((lambda (#{tmp\ 1888}#)
-                                                   (if (if #{tmp\ 1888}#
-                                                         (apply (lambda (#{_\ 
1892}#
-                                                                         
#{name\ 1893}#
-                                                                         
#{val\ 1894}#)
-                                                                  (#{id?\ 372}#
-                                                                    #{name\ 
1893}#))
-                                                                #{tmp\ 1888}#)
+                                                           #{tmp\ 1852}#
+                                                           '(any (any . any)
+                                                                 any
+                                                                 .
+                                                                 each-any))))
+                                                   (if (if #{tmp\ 1866}#
+                                                         (@apply
+                                                           (lambda (#{_\ 1872}#
+                                                                    #{name\ 
1873}#
+                                                                    #{args\ 
1874}#
+                                                                    #{e1\ 
1875}#
+                                                                    #{e2\ 
1876}#)
+                                                             (if (#{id?\ 387}#
+                                                                   #{name\ 
1873}#)
+                                                               
(#{valid-bound-ids?\ 450}#
+                                                                 
(#{lambda-var-list\ 502}#
+                                                                   #{args\ 
1874}#))
+                                                               #f))
+                                                           #{tmp\ 1866}#)
                                                          #f)
-                                                     (apply (lambda (#{_\ 
1898}#
-                                                                     #{name\ 
1899}#
-                                                                     #{val\ 
1900}#)
-                                                              (values
-                                                                
'define-syntax-form
-                                                                #{name\ 1899}#
-                                                                #{val\ 1900}#
-                                                                #{w\ 1775}#
-                                                                #{s\ 1776}#
-                                                                #{mod\ 1778}#))
-                                                            #{tmp\ 1888}#)
-                                                     (syntax-violation
-                                                       #f
-                                                       "source expression 
failed to match any pattern"
-                                                       #{tmp\ 1887}#)))
-                                                 ($sc-dispatch
-                                                   #{tmp\ 1887}#
-                                                   '(any any any))))
-                                              #{e\ 1773}#)
+                                                     (@apply
+                                                       (lambda (#{_\ 1884}#
+                                                                #{name\ 1885}#
+                                                                #{args\ 1886}#
+                                                                #{e1\ 1887}#
+                                                                #{e2\ 1888}#)
+                                                         (values
+                                                           'define-form
+                                                           (#{wrap\ 456}#
+                                                             #{name\ 1885}#
+                                                             #{w\ 1790}#
+                                                             #{mod\ 1793}#)
+                                                           (#{decorate-source\ 
305}#
+                                                             (cons 
'#(syntax-object
+                                                                      lambda
+                                                                      ((top)
+                                                                       
#(ribcage
+                                                                         #(_
+                                                                           name
+                                                                           args
+                                                                           e1
+                                                                           e2)
+                                                                         
#((top)
+                                                                           
(top)
+                                                                           
(top)
+                                                                           
(top)
+                                                                           
(top))
+                                                                         
#("i1879"
+                                                                           
"i1880"
+                                                                           
"i1881"
+                                                                           
"i1882"
+                                                                           
"i1883"))
+                                                                       
#(ribcage
+                                                                         ()
+                                                                         ()
+                                                                         ())
+                                                                       
#(ribcage
+                                                                         ()
+                                                                         ()
+                                                                         ())
+                                                                       
#(ribcage
+                                                                         
#(ftype
+                                                                           fval
+                                                                           fe
+                                                                           fw
+                                                                           fs
+                                                                           
fmod)
+                                                                         
#((top)
+                                                                           
(top)
+                                                                           
(top)
+                                                                           
(top)
+                                                                           
(top)
+                                                                           
(top))
+                                                                         
#("i1826"
+                                                                           
"i1827"
+                                                                           
"i1828"
+                                                                           
"i1829"
+                                                                           
"i1830"
+                                                                           
"i1831"))
+                                                                       
#(ribcage
+                                                                         ()
+                                                                         ()
+                                                                         ())
+                                                                       
#(ribcage
+                                                                         
#(first)
+                                                                         
#((top))
+                                                                         
#("i1818"))
+                                                                       
#(ribcage
+                                                                         ()
+                                                                         ()
+                                                                         ())
+                                                                       
#(ribcage
+                                                                         ()
+                                                                         ()
+                                                                         ())
+                                                                       
#(ribcage
+                                                                         ()
+                                                                         ()
+                                                                         ())
+                                                                       
#(ribcage
+                                                                         #(e
+                                                                           r
+                                                                           w
+                                                                           s
+                                                                           rib
+                                                                           mod
+                                                                           
for-car?)
+                                                                         
#((top)
+                                                                           
(top)
+                                                                           
(top)
+                                                                           
(top)
+                                                                           
(top)
+                                                                           
(top)
+                                                                           
(top))
+                                                                         
#("i1795"
+                                                                           
"i1796"
+                                                                           
"i1797"
+                                                                           
"i1798"
+                                                                           
"i1799"
+                                                                           
"i1800"
+                                                                           
"i1801"))
+                                                                       
#(ribcage
+                                                                         
(lambda-var-list
+                                                                           
gen-var
+                                                                           
strip
+                                                                           
chi-lambda-case
+                                                                           
lambda*-formals
+                                                                           
chi-simple-lambda
+                                                                           
lambda-formals
+                                                                           
ellipsis?
+                                                                           
chi-void
+                                                                           
eval-local-transformer
+                                                                           
chi-local-syntax
+                                                                           
chi-body
+                                                                           
chi-macro
+                                                                           
chi-application
+                                                                           
chi-expr
+                                                                           chi
+                                                                           
chi-top
+                                                                           
syntax-type
+                                                                           
chi-when-list
+                                                                           
chi-install-global
+                                                                           
chi-top-sequence
+                                                                           
chi-sequence
+                                                                           
source-wrap
+                                                                           wrap
+                                                                           
bound-id-member?
+                                                                           
distinct-bound-ids?
+                                                                           
valid-bound-ids?
+                                                                           
bound-id=?
+                                                                           
free-id=?
+                                                                           
id-var-name
+                                                                           
same-marks?
+                                                                           
join-marks
+                                                                           
join-wraps
+                                                                           
smart-append
+                                                                           
make-binding-wrap
+                                                                           
extend-ribcage!
+                                                                           
make-empty-ribcage
+                                                                           
new-mark
+                                                                           
anti-mark
+                                                                           
the-anti-mark
+                                                                           
top-marked?
+                                                                           
top-wrap
+                                                                           
empty-wrap
+                                                                           
set-ribcage-labels!
+                                                                           
set-ribcage-marks!
+                                                                           
set-ribcage-symnames!
+                                                                           
ribcage-labels
+                                                                           
ribcage-marks
+                                                                           
ribcage-symnames
+                                                                           
ribcage?
+                                                                           
make-ribcage
+                                                                           
gen-labels
+                                                                           
gen-label
+                                                                           
make-rename
+                                                                           
rename-marks
+                                                                           
rename-new
+                                                                           
rename-old
+                                                                           
subst-rename?
+                                                                           
wrap-subst
+                                                                           
wrap-marks
+                                                                           
make-wrap
+                                                                           
id-sym-name&marks
+                                                                           
id-sym-name
+                                                                           id?
+                                                                           
nonsymbol-id?
+                                                                           
global-extend
+                                                                           
lookup
+                                                                           
macros-only-env
+                                                                           
extend-var-env
+                                                                           
extend-env
+                                                                           
null-env
+                                                                           
binding-value
+                                                                           
binding-type
+                                                                           
make-binding
+                                                                           
arg-check
+                                                                           
source-annotation
+                                                                           
no-source
+                                                                           
set-syntax-object-module!
+                                                                           
set-syntax-object-wrap!
+                                                                           
set-syntax-object-expression!
+                                                                           
syntax-object-module
+                                                                           
syntax-object-wrap
+                                                                           
syntax-object-expression
+                                                                           
syntax-object?
+                                                                           
make-syntax-object
+                                                                           
build-lexical-var
+                                                                           
build-letrec
+                                                                           
build-named-let
+                                                                           
build-let
+                                                                           
build-sequence
+                                                                           
build-data
+                                                                           
build-primref
+                                                                           
build-lambda-case
+                                                                           
build-case-lambda
+                                                                           
build-simple-lambda
+                                                                           
build-global-definition
+                                                                           
maybe-name-value!
+                                                                           
build-global-assignment
+                                                                           
build-global-reference
+                                                                           
analyze-variable
+                                                                           
build-lexical-assignment
+                                                                           
build-lexical-reference
+                                                                           
build-dynlet
+                                                                           
build-conditional
+                                                                           
build-application
+                                                                           
build-void
+                                                                           
decorate-source
+                                                                           
get-global-definition-hook
+                                                                           
put-global-definition-hook
+                                                                           
gensym-hook
+                                                                           
local-eval-hook
+                                                                           
top-level-eval-hook
+                                                                           fx<
+                                                                           fx=
+                                                                           fx-
+                                                                           fx+
+                                                                           
set-lambda-meta!
+                                                                           
lambda-meta
+                                                                           
lambda?
+                                                                           
make-dynlet
+                                                                           
make-letrec
+                                                                           
make-let
+                                                                           
make-lambda-case
+                                                                           
make-lambda
+                                                                           
make-sequence
+                                                                           
make-application
+                                                                           
make-conditional
+                                                                           
make-toplevel-define
+                                                                           
make-toplevel-set
+                                                                           
make-toplevel-ref
+                                                                           
make-module-set
+                                                                           
make-module-ref
+                                                                           
make-lexical-set
+                                                                           
make-lexical-ref
+                                                                           
make-primitive-ref
+                                                                           
make-const
+                                                                           
make-void)
+                                                                         ((top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          (top)
+                                                                          
(top))
+                                                                         
("i501"
+                                                                          
"i499"
+                                                                          
"i497"
+                                                                          
"i495"
+                                                                          
"i493"
+                                                                          
"i491"
+                                                                          
"i489"
+                                                                          
"i487"
+                                                                          
"i485"
+                                                                          
"i483"
+                                                                          
"i481"
+                                                                          
"i479"
+                                                                          
"i477"
+                                                                          
"i475"
+                                                                          
"i473"
+                                                                          
"i471"
+                                                                          
"i469"
+                                                                          
"i467"
+                                                                          
"i465"
+                                                                          
"i463"
+                                                                          
"i461"
+                                                                          
"i459"
+                                                                          
"i457"
+                                                                          
"i455"
+                                                                          
"i453"
+                                                                          
"i451"
+                                                                          
"i449"
+                                                                          
"i447"
+                                                                          
"i445"
+                                                                          
"i443"
+                                                                          
"i441"
+                                                                          
"i439"
+                                                                          
"i437"
+                                                                          
"i435"
+                                                                          
"i433"
+                                                                          
"i431"
+                                                                          
"i430"
+                                                                          
"i429"
+                                                                          
"i427"
+                                                                          
"i426"
+                                                                          
"i425"
+                                                                          
"i424"
+                                                                          
"i423"
+                                                                          
"i421"
+                                                                          
"i419"
+                                                                          
"i417"
+                                                                          
"i415"
+                                                                          
"i413"
+                                                                          
"i411"
+                                                                          
"i409"
+                                                                          
"i407"
+                                                                          
"i404"
+                                                                          
"i402"
+                                                                          
"i401"
+                                                                          
"i400"
+                                                                          
"i399"
+                                                                          
"i398"
+                                                                          
"i397"
+                                                                          
"i395"
+                                                                          
"i393"
+                                                                          
"i391"
+                                                                          
"i389"
+                                                                          
"i388"
+                                                                          
"i386"
+                                                                          
"i384"
+                                                                          
"i382"
+                                                                          
"i380"
+                                                                          
"i378"
+                                                                          
"i376"
+                                                                          
"i374"
+                                                                          
"i373"
+                                                                          
"i371"
+                                                                          
"i369"
+                                                                          
"i368"
+                                                                          
"i367"
+                                                                          
"i365"
+                                                                          
"i364"
+                                                                          
"i362"
+                                                                          
"i360"
+                                                                          
"i358"
+                                                                          
"i356"
+                                                                          
"i354"
+                                                                          
"i352"
+                                                                          
"i350"
+                                                                          
"i348"
+                                                                          
"i346"
+                                                                          
"i344"
+                                                                          
"i342"
+                                                                          
"i340"
+                                                                          
"i338"
+                                                                          
"i336"
+                                                                          
"i334"
+                                                                          
"i332"
+                                                                          
"i330"
+                                                                          
"i328"
+                                                                          
"i326"
+                                                                          
"i324"
+                                                                          
"i322"
+                                                                          
"i320"
+                                                                          
"i318"
+                                                                          
"i316"
+                                                                          
"i314"
+                                                                          
"i312"
+                                                                          
"i310"
+                                                                          
"i308"
+                                                                          
"i306"
+                                                                          
"i304"
+                                                                          
"i302"
+                                                                          
"i300"
+                                                                          
"i299"
+                                                                          
"i297"
+                                                                          
"i295"
+                                                                          
"i293"
+                                                                          
"i291"
+                                                                          
"i289"
+                                                                          
"i287"
+                                                                          
"i285"
+                                                                          
"i283"
+                                                                          
"i281"
+                                                                          
"i278"
+                                                                          
"i276"
+                                                                          
"i274"
+                                                                          
"i272"
+                                                                          
"i270"
+                                                                          
"i268"
+                                                                          
"i266"
+                                                                          
"i264"
+                                                                          
"i262"
+                                                                          
"i260"
+                                                                          
"i258"
+                                                                          
"i256"
+                                                                          
"i254"
+                                                                          
"i252"
+                                                                          
"i250"
+                                                                          
"i248"
+                                                                          
"i246"
+                                                                          
"i244"))
+                                                                       
#(ribcage
+                                                                         
(define-structure
+                                                                           
define-expansion-accessors
+                                                                           
define-expansion-constructors
+                                                                           
and-map*)
+                                                                         ((top)
+                                                                          (top)
+                                                                          (top)
+                                                                          
(top))
+                                                                         ("i38"
+                                                                          "i37"
+                                                                          "i36"
+                                                                          
"i34")))
+                                                                      (hygiene
+                                                                        guile))
+                                                                   (#{wrap\ 
456}#
+                                                                     (cons 
#{args\ 1886}#
+                                                                           
(cons #{e1\ 1887}#
+                                                                               
  #{e2\ 1888}#))
+                                                                     #{w\ 
1790}#
+                                                                     #{mod\ 
1793}#))
+                                                             #{s\ 1791}#)
+                                                           '(())
+                                                           #{s\ 1791}#
+                                                           #{mod\ 1793}#))
+                                                       #{tmp\ 1866}#)
+                                                     (let ((#{tmp\ 1891}#
+                                                             ($sc-dispatch
+                                                               #{tmp\ 1852}#
+                                                               '(any any))))
+                                                       (if (if #{tmp\ 1891}#
+                                                             (@apply
+                                                               (lambda (#{_\ 
1894}#
+                                                                        
#{name\ 1895}#)
+                                                                 (#{id?\ 387}#
+                                                                   #{name\ 
1895}#))
+                                                               #{tmp\ 1891}#)
+                                                             #f)
+                                                         (@apply
+                                                           (lambda (#{_\ 1898}#
+                                                                    #{name\ 
1899}#)
+                                                             (values
+                                                               'define-form
+                                                               (#{wrap\ 456}#
+                                                                 #{name\ 1899}#
+                                                                 #{w\ 1790}#
+                                                                 #{mod\ 1793}#)
+                                                               
'(#(syntax-object
+                                                                   if
+                                                                   ((top)
+                                                                    #(ribcage
+                                                                      #(_ name)
+                                                                      #((top)
+                                                                        (top))
+                                                                      #("i1896"
+                                                                        
"i1897"))
+                                                                    #(ribcage
+                                                                      ()
+                                                                      ()
+                                                                      ())
+                                                                    #(ribcage
+                                                                      ()
+                                                                      ()
+                                                                      ())
+                                                                    #(ribcage
+                                                                      #(ftype
+                                                                        fval
+                                                                        fe
+                                                                        fw
+                                                                        fs
+                                                                        fmod)
+                                                                      #((top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top))
+                                                                      #("i1826"
+                                                                        "i1827"
+                                                                        "i1828"
+                                                                        "i1829"
+                                                                        "i1830"
+                                                                        
"i1831"))
+                                                                    #(ribcage
+                                                                      ()
+                                                                      ()
+                                                                      ())
+                                                                    #(ribcage
+                                                                      #(first)
+                                                                      #((top))
+                                                                      
#("i1818"))
+                                                                    #(ribcage
+                                                                      ()
+                                                                      ()
+                                                                      ())
+                                                                    #(ribcage
+                                                                      ()
+                                                                      ()
+                                                                      ())
+                                                                    #(ribcage
+                                                                      ()
+                                                                      ()
+                                                                      ())
+                                                                    #(ribcage
+                                                                      #(e
+                                                                        r
+                                                                        w
+                                                                        s
+                                                                        rib
+                                                                        mod
+                                                                        
for-car?)
+                                                                      #((top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top))
+                                                                      #("i1795"
+                                                                        "i1796"
+                                                                        "i1797"
+                                                                        "i1798"
+                                                                        "i1799"
+                                                                        "i1800"
+                                                                        
"i1801"))
+                                                                    #(ribcage
+                                                                      
(lambda-var-list
+                                                                        gen-var
+                                                                        strip
+                                                                        
chi-lambda-case
+                                                                        
lambda*-formals
+                                                                        
chi-simple-lambda
+                                                                        
lambda-formals
+                                                                        
ellipsis?
+                                                                        
chi-void
+                                                                        
eval-local-transformer
+                                                                        
chi-local-syntax
+                                                                        
chi-body
+                                                                        
chi-macro
+                                                                        
chi-application
+                                                                        
chi-expr
+                                                                        chi
+                                                                        chi-top
+                                                                        
syntax-type
+                                                                        
chi-when-list
+                                                                        
chi-install-global
+                                                                        
chi-top-sequence
+                                                                        
chi-sequence
+                                                                        
source-wrap
+                                                                        wrap
+                                                                        
bound-id-member?
+                                                                        
distinct-bound-ids?
+                                                                        
valid-bound-ids?
+                                                                        
bound-id=?
+                                                                        
free-id=?
+                                                                        
id-var-name
+                                                                        
same-marks?
+                                                                        
join-marks
+                                                                        
join-wraps
+                                                                        
smart-append
+                                                                        
make-binding-wrap
+                                                                        
extend-ribcage!
+                                                                        
make-empty-ribcage
+                                                                        
new-mark
+                                                                        
anti-mark
+                                                                        
the-anti-mark
+                                                                        
top-marked?
+                                                                        
top-wrap
+                                                                        
empty-wrap
+                                                                        
set-ribcage-labels!
+                                                                        
set-ribcage-marks!
+                                                                        
set-ribcage-symnames!
+                                                                        
ribcage-labels
+                                                                        
ribcage-marks
+                                                                        
ribcage-symnames
+                                                                        
ribcage?
+                                                                        
make-ribcage
+                                                                        
gen-labels
+                                                                        
gen-label
+                                                                        
make-rename
+                                                                        
rename-marks
+                                                                        
rename-new
+                                                                        
rename-old
+                                                                        
subst-rename?
+                                                                        
wrap-subst
+                                                                        
wrap-marks
+                                                                        
make-wrap
+                                                                        
id-sym-name&marks
+                                                                        
id-sym-name
+                                                                        id?
+                                                                        
nonsymbol-id?
+                                                                        
global-extend
+                                                                        lookup
+                                                                        
macros-only-env
+                                                                        
extend-var-env
+                                                                        
extend-env
+                                                                        
null-env
+                                                                        
binding-value
+                                                                        
binding-type
+                                                                        
make-binding
+                                                                        
arg-check
+                                                                        
source-annotation
+                                                                        
no-source
+                                                                        
set-syntax-object-module!
+                                                                        
set-syntax-object-wrap!
+                                                                        
set-syntax-object-expression!
+                                                                        
syntax-object-module
+                                                                        
syntax-object-wrap
+                                                                        
syntax-object-expression
+                                                                        
syntax-object?
+                                                                        
make-syntax-object
+                                                                        
build-lexical-var
+                                                                        
build-letrec
+                                                                        
build-named-let
+                                                                        
build-let
+                                                                        
build-sequence
+                                                                        
build-data
+                                                                        
build-primref
+                                                                        
build-lambda-case
+                                                                        
build-case-lambda
+                                                                        
build-simple-lambda
+                                                                        
build-global-definition
+                                                                        
maybe-name-value!
+                                                                        
build-global-assignment
+                                                                        
build-global-reference
+                                                                        
analyze-variable
+                                                                        
build-lexical-assignment
+                                                                        
build-lexical-reference
+                                                                        
build-dynlet
+                                                                        
build-conditional
+                                                                        
build-application
+                                                                        
build-void
+                                                                        
decorate-source
+                                                                        
get-global-definition-hook
+                                                                        
put-global-definition-hook
+                                                                        
gensym-hook
+                                                                        
local-eval-hook
+                                                                        
top-level-eval-hook
+                                                                        fx<
+                                                                        fx=
+                                                                        fx-
+                                                                        fx+
+                                                                        
set-lambda-meta!
+                                                                        
lambda-meta
+                                                                        lambda?
+                                                                        
make-dynlet
+                                                                        
make-letrec
+                                                                        
make-let
+                                                                        
make-lambda-case
+                                                                        
make-lambda
+                                                                        
make-sequence
+                                                                        
make-application
+                                                                        
make-conditional
+                                                                        
make-toplevel-define
+                                                                        
make-toplevel-set
+                                                                        
make-toplevel-ref
+                                                                        
make-module-set
+                                                                        
make-module-ref
+                                                                        
make-lexical-set
+                                                                        
make-lexical-ref
+                                                                        
make-primitive-ref
+                                                                        
make-const
+                                                                        
make-void)
+                                                                      ((top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top))
+                                                                      ("i501"
+                                                                       "i499"
+                                                                       "i497"
+                                                                       "i495"
+                                                                       "i493"
+                                                                       "i491"
+                                                                       "i489"
+                                                                       "i487"
+                                                                       "i485"
+                                                                       "i483"
+                                                                       "i481"
+                                                                       "i479"
+                                                                       "i477"
+                                                                       "i475"
+                                                                       "i473"
+                                                                       "i471"
+                                                                       "i469"
+                                                                       "i467"
+                                                                       "i465"
+                                                                       "i463"
+                                                                       "i461"
+                                                                       "i459"
+                                                                       "i457"
+                                                                       "i455"
+                                                                       "i453"
+                                                                       "i451"
+                                                                       "i449"
+                                                                       "i447"
+                                                                       "i445"
+                                                                       "i443"
+                                                                       "i441"
+                                                                       "i439"
+                                                                       "i437"
+                                                                       "i435"
+                                                                       "i433"
+                                                                       "i431"
+                                                                       "i430"
+                                                                       "i429"
+                                                                       "i427"
+                                                                       "i426"
+                                                                       "i425"
+                                                                       "i424"
+                                                                       "i423"
+                                                                       "i421"
+                                                                       "i419"
+                                                                       "i417"
+                                                                       "i415"
+                                                                       "i413"
+                                                                       "i411"
+                                                                       "i409"
+                                                                       "i407"
+                                                                       "i404"
+                                                                       "i402"
+                                                                       "i401"
+                                                                       "i400"
+                                                                       "i399"
+                                                                       "i398"
+                                                                       "i397"
+                                                                       "i395"
+                                                                       "i393"
+                                                                       "i391"
+                                                                       "i389"
+                                                                       "i388"
+                                                                       "i386"
+                                                                       "i384"
+                                                                       "i382"
+                                                                       "i380"
+                                                                       "i378"
+                                                                       "i376"
+                                                                       "i374"
+                                                                       "i373"
+                                                                       "i371"
+                                                                       "i369"
+                                                                       "i368"
+                                                                       "i367"
+                                                                       "i365"
+                                                                       "i364"
+                                                                       "i362"
+                                                                       "i360"
+                                                                       "i358"
+                                                                       "i356"
+                                                                       "i354"
+                                                                       "i352"
+                                                                       "i350"
+                                                                       "i348"
+                                                                       "i346"
+                                                                       "i344"
+                                                                       "i342"
+                                                                       "i340"
+                                                                       "i338"
+                                                                       "i336"
+                                                                       "i334"
+                                                                       "i332"
+                                                                       "i330"
+                                                                       "i328"
+                                                                       "i326"
+                                                                       "i324"
+                                                                       "i322"
+                                                                       "i320"
+                                                                       "i318"
+                                                                       "i316"
+                                                                       "i314"
+                                                                       "i312"
+                                                                       "i310"
+                                                                       "i308"
+                                                                       "i306"
+                                                                       "i304"
+                                                                       "i302"
+                                                                       "i300"
+                                                                       "i299"
+                                                                       "i297"
+                                                                       "i295"
+                                                                       "i293"
+                                                                       "i291"
+                                                                       "i289"
+                                                                       "i287"
+                                                                       "i285"
+                                                                       "i283"
+                                                                       "i281"
+                                                                       "i278"
+                                                                       "i276"
+                                                                       "i274"
+                                                                       "i272"
+                                                                       "i270"
+                                                                       "i268"
+                                                                       "i266"
+                                                                       "i264"
+                                                                       "i262"
+                                                                       "i260"
+                                                                       "i258"
+                                                                       "i256"
+                                                                       "i254"
+                                                                       "i252"
+                                                                       "i250"
+                                                                       "i248"
+                                                                       "i246"
+                                                                       "i244"))
+                                                                    #(ribcage
+                                                                      
(define-structure
+                                                                        
define-expansion-accessors
+                                                                        
define-expansion-constructors
+                                                                        
and-map*)
+                                                                      ((top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top))
+                                                                      ("i38"
+                                                                       "i37"
+                                                                       "i36"
+                                                                       "i34")))
+                                                                   (hygiene
+                                                                     guile))
+                                                                 
#(syntax-object
+                                                                   #f
+                                                                   ((top)
+                                                                    #(ribcage
+                                                                      #(_ name)
+                                                                      #((top)
+                                                                        (top))
+                                                                      #("i1896"
+                                                                        
"i1897"))
+                                                                    #(ribcage
+                                                                      ()
+                                                                      ()
+                                                                      ())
+                                                                    #(ribcage
+                                                                      ()
+                                                                      ()
+                                                                      ())
+                                                                    #(ribcage
+                                                                      #(ftype
+                                                                        fval
+                                                                        fe
+                                                                        fw
+                                                                        fs
+                                                                        fmod)
+                                                                      #((top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top))
+                                                                      #("i1826"
+                                                                        "i1827"
+                                                                        "i1828"
+                                                                        "i1829"
+                                                                        "i1830"
+                                                                        
"i1831"))
+                                                                    #(ribcage
+                                                                      ()
+                                                                      ()
+                                                                      ())
+                                                                    #(ribcage
+                                                                      #(first)
+                                                                      #((top))
+                                                                      
#("i1818"))
+                                                                    #(ribcage
+                                                                      ()
+                                                                      ()
+                                                                      ())
+                                                                    #(ribcage
+                                                                      ()
+                                                                      ()
+                                                                      ())
+                                                                    #(ribcage
+                                                                      ()
+                                                                      ()
+                                                                      ())
+                                                                    #(ribcage
+                                                                      #(e
+                                                                        r
+                                                                        w
+                                                                        s
+                                                                        rib
+                                                                        mod
+                                                                        
for-car?)
+                                                                      #((top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top))
+                                                                      #("i1795"
+                                                                        "i1796"
+                                                                        "i1797"
+                                                                        "i1798"
+                                                                        "i1799"
+                                                                        "i1800"
+                                                                        
"i1801"))
+                                                                    #(ribcage
+                                                                      
(lambda-var-list
+                                                                        gen-var
+                                                                        strip
+                                                                        
chi-lambda-case
+                                                                        
lambda*-formals
+                                                                        
chi-simple-lambda
+                                                                        
lambda-formals
+                                                                        
ellipsis?
+                                                                        
chi-void
+                                                                        
eval-local-transformer
+                                                                        
chi-local-syntax
+                                                                        
chi-body
+                                                                        
chi-macro
+                                                                        
chi-application
+                                                                        
chi-expr
+                                                                        chi
+                                                                        chi-top
+                                                                        
syntax-type
+                                                                        
chi-when-list
+                                                                        
chi-install-global
+                                                                        
chi-top-sequence
+                                                                        
chi-sequence
+                                                                        
source-wrap
+                                                                        wrap
+                                                                        
bound-id-member?
+                                                                        
distinct-bound-ids?
+                                                                        
valid-bound-ids?
+                                                                        
bound-id=?
+                                                                        
free-id=?
+                                                                        
id-var-name
+                                                                        
same-marks?
+                                                                        
join-marks
+                                                                        
join-wraps
+                                                                        
smart-append
+                                                                        
make-binding-wrap
+                                                                        
extend-ribcage!
+                                                                        
make-empty-ribcage
+                                                                        
new-mark
+                                                                        
anti-mark
+                                                                        
the-anti-mark
+                                                                        
top-marked?
+                                                                        
top-wrap
+                                                                        
empty-wrap
+                                                                        
set-ribcage-labels!
+                                                                        
set-ribcage-marks!
+                                                                        
set-ribcage-symnames!
+                                                                        
ribcage-labels
+                                                                        
ribcage-marks
+                                                                        
ribcage-symnames
+                                                                        
ribcage?
+                                                                        
make-ribcage
+                                                                        
gen-labels
+                                                                        
gen-label
+                                                                        
make-rename
+                                                                        
rename-marks
+                                                                        
rename-new
+                                                                        
rename-old
+                                                                        
subst-rename?
+                                                                        
wrap-subst
+                                                                        
wrap-marks
+                                                                        
make-wrap
+                                                                        
id-sym-name&marks
+                                                                        
id-sym-name
+                                                                        id?
+                                                                        
nonsymbol-id?
+                                                                        
global-extend
+                                                                        lookup
+                                                                        
macros-only-env
+                                                                        
extend-var-env
+                                                                        
extend-env
+                                                                        
null-env
+                                                                        
binding-value
+                                                                        
binding-type
+                                                                        
make-binding
+                                                                        
arg-check
+                                                                        
source-annotation
+                                                                        
no-source
+                                                                        
set-syntax-object-module!
+                                                                        
set-syntax-object-wrap!
+                                                                        
set-syntax-object-expression!
+                                                                        
syntax-object-module
+                                                                        
syntax-object-wrap
+                                                                        
syntax-object-expression
+                                                                        
syntax-object?
+                                                                        
make-syntax-object
+                                                                        
build-lexical-var
+                                                                        
build-letrec
+                                                                        
build-named-let
+                                                                        
build-let
+                                                                        
build-sequence
+                                                                        
build-data
+                                                                        
build-primref
+                                                                        
build-lambda-case
+                                                                        
build-case-lambda
+                                                                        
build-simple-lambda
+                                                                        
build-global-definition
+                                                                        
maybe-name-value!
+                                                                        
build-global-assignment
+                                                                        
build-global-reference
+                                                                        
analyze-variable
+                                                                        
build-lexical-assignment
+                                                                        
build-lexical-reference
+                                                                        
build-dynlet
+                                                                        
build-conditional
+                                                                        
build-application
+                                                                        
build-void
+                                                                        
decorate-source
+                                                                        
get-global-definition-hook
+                                                                        
put-global-definition-hook
+                                                                        
gensym-hook
+                                                                        
local-eval-hook
+                                                                        
top-level-eval-hook
+                                                                        fx<
+                                                                        fx=
+                                                                        fx-
+                                                                        fx+
+                                                                        
set-lambda-meta!
+                                                                        
lambda-meta
+                                                                        lambda?
+                                                                        
make-dynlet
+                                                                        
make-letrec
+                                                                        
make-let
+                                                                        
make-lambda-case
+                                                                        
make-lambda
+                                                                        
make-sequence
+                                                                        
make-application
+                                                                        
make-conditional
+                                                                        
make-toplevel-define
+                                                                        
make-toplevel-set
+                                                                        
make-toplevel-ref
+                                                                        
make-module-set
+                                                                        
make-module-ref
+                                                                        
make-lexical-set
+                                                                        
make-lexical-ref
+                                                                        
make-primitive-ref
+                                                                        
make-const
+                                                                        
make-void)
+                                                                      ((top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top))
+                                                                      ("i501"
+                                                                       "i499"
+                                                                       "i497"
+                                                                       "i495"
+                                                                       "i493"
+                                                                       "i491"
+                                                                       "i489"
+                                                                       "i487"
+                                                                       "i485"
+                                                                       "i483"
+                                                                       "i481"
+                                                                       "i479"
+                                                                       "i477"
+                                                                       "i475"
+                                                                       "i473"
+                                                                       "i471"
+                                                                       "i469"
+                                                                       "i467"
+                                                                       "i465"
+                                                                       "i463"
+                                                                       "i461"
+                                                                       "i459"
+                                                                       "i457"
+                                                                       "i455"
+                                                                       "i453"
+                                                                       "i451"
+                                                                       "i449"
+                                                                       "i447"
+                                                                       "i445"
+                                                                       "i443"
+                                                                       "i441"
+                                                                       "i439"
+                                                                       "i437"
+                                                                       "i435"
+                                                                       "i433"
+                                                                       "i431"
+                                                                       "i430"
+                                                                       "i429"
+                                                                       "i427"
+                                                                       "i426"
+                                                                       "i425"
+                                                                       "i424"
+                                                                       "i423"
+                                                                       "i421"
+                                                                       "i419"
+                                                                       "i417"
+                                                                       "i415"
+                                                                       "i413"
+                                                                       "i411"
+                                                                       "i409"
+                                                                       "i407"
+                                                                       "i404"
+                                                                       "i402"
+                                                                       "i401"
+                                                                       "i400"
+                                                                       "i399"
+                                                                       "i398"
+                                                                       "i397"
+                                                                       "i395"
+                                                                       "i393"
+                                                                       "i391"
+                                                                       "i389"
+                                                                       "i388"
+                                                                       "i386"
+                                                                       "i384"
+                                                                       "i382"
+                                                                       "i380"
+                                                                       "i378"
+                                                                       "i376"
+                                                                       "i374"
+                                                                       "i373"
+                                                                       "i371"
+                                                                       "i369"
+                                                                       "i368"
+                                                                       "i367"
+                                                                       "i365"
+                                                                       "i364"
+                                                                       "i362"
+                                                                       "i360"
+                                                                       "i358"
+                                                                       "i356"
+                                                                       "i354"
+                                                                       "i352"
+                                                                       "i350"
+                                                                       "i348"
+                                                                       "i346"
+                                                                       "i344"
+                                                                       "i342"
+                                                                       "i340"
+                                                                       "i338"
+                                                                       "i336"
+                                                                       "i334"
+                                                                       "i332"
+                                                                       "i330"
+                                                                       "i328"
+                                                                       "i326"
+                                                                       "i324"
+                                                                       "i322"
+                                                                       "i320"
+                                                                       "i318"
+                                                                       "i316"
+                                                                       "i314"
+                                                                       "i312"
+                                                                       "i310"
+                                                                       "i308"
+                                                                       "i306"
+                                                                       "i304"
+                                                                       "i302"
+                                                                       "i300"
+                                                                       "i299"
+                                                                       "i297"
+                                                                       "i295"
+                                                                       "i293"
+                                                                       "i291"
+                                                                       "i289"
+                                                                       "i287"
+                                                                       "i285"
+                                                                       "i283"
+                                                                       "i281"
+                                                                       "i278"
+                                                                       "i276"
+                                                                       "i274"
+                                                                       "i272"
+                                                                       "i270"
+                                                                       "i268"
+                                                                       "i266"
+                                                                       "i264"
+                                                                       "i262"
+                                                                       "i260"
+                                                                       "i258"
+                                                                       "i256"
+                                                                       "i254"
+                                                                       "i252"
+                                                                       "i250"
+                                                                       "i248"
+                                                                       "i246"
+                                                                       "i244"))
+                                                                    #(ribcage
+                                                                      
(define-structure
+                                                                        
define-expansion-accessors
+                                                                        
define-expansion-constructors
+                                                                        
and-map*)
+                                                                      ((top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top))
+                                                                      ("i38"
+                                                                       "i37"
+                                                                       "i36"
+                                                                       "i34")))
+                                                                   (hygiene
+                                                                     guile))
+                                                                 
#(syntax-object
+                                                                   #f
+                                                                   ((top)
+                                                                    #(ribcage
+                                                                      #(_ name)
+                                                                      #((top)
+                                                                        (top))
+                                                                      #("i1896"
+                                                                        
"i1897"))
+                                                                    #(ribcage
+                                                                      ()
+                                                                      ()
+                                                                      ())
+                                                                    #(ribcage
+                                                                      ()
+                                                                      ()
+                                                                      ())
+                                                                    #(ribcage
+                                                                      #(ftype
+                                                                        fval
+                                                                        fe
+                                                                        fw
+                                                                        fs
+                                                                        fmod)
+                                                                      #((top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top))
+                                                                      #("i1826"
+                                                                        "i1827"
+                                                                        "i1828"
+                                                                        "i1829"
+                                                                        "i1830"
+                                                                        
"i1831"))
+                                                                    #(ribcage
+                                                                      ()
+                                                                      ()
+                                                                      ())
+                                                                    #(ribcage
+                                                                      #(first)
+                                                                      #((top))
+                                                                      
#("i1818"))
+                                                                    #(ribcage
+                                                                      ()
+                                                                      ()
+                                                                      ())
+                                                                    #(ribcage
+                                                                      ()
+                                                                      ()
+                                                                      ())
+                                                                    #(ribcage
+                                                                      ()
+                                                                      ()
+                                                                      ())
+                                                                    #(ribcage
+                                                                      #(e
+                                                                        r
+                                                                        w
+                                                                        s
+                                                                        rib
+                                                                        mod
+                                                                        
for-car?)
+                                                                      #((top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top))
+                                                                      #("i1795"
+                                                                        "i1796"
+                                                                        "i1797"
+                                                                        "i1798"
+                                                                        "i1799"
+                                                                        "i1800"
+                                                                        
"i1801"))
+                                                                    #(ribcage
+                                                                      
(lambda-var-list
+                                                                        gen-var
+                                                                        strip
+                                                                        
chi-lambda-case
+                                                                        
lambda*-formals
+                                                                        
chi-simple-lambda
+                                                                        
lambda-formals
+                                                                        
ellipsis?
+                                                                        
chi-void
+                                                                        
eval-local-transformer
+                                                                        
chi-local-syntax
+                                                                        
chi-body
+                                                                        
chi-macro
+                                                                        
chi-application
+                                                                        
chi-expr
+                                                                        chi
+                                                                        chi-top
+                                                                        
syntax-type
+                                                                        
chi-when-list
+                                                                        
chi-install-global
+                                                                        
chi-top-sequence
+                                                                        
chi-sequence
+                                                                        
source-wrap
+                                                                        wrap
+                                                                        
bound-id-member?
+                                                                        
distinct-bound-ids?
+                                                                        
valid-bound-ids?
+                                                                        
bound-id=?
+                                                                        
free-id=?
+                                                                        
id-var-name
+                                                                        
same-marks?
+                                                                        
join-marks
+                                                                        
join-wraps
+                                                                        
smart-append
+                                                                        
make-binding-wrap
+                                                                        
extend-ribcage!
+                                                                        
make-empty-ribcage
+                                                                        
new-mark
+                                                                        
anti-mark
+                                                                        
the-anti-mark
+                                                                        
top-marked?
+                                                                        
top-wrap
+                                                                        
empty-wrap
+                                                                        
set-ribcage-labels!
+                                                                        
set-ribcage-marks!
+                                                                        
set-ribcage-symnames!
+                                                                        
ribcage-labels
+                                                                        
ribcage-marks
+                                                                        
ribcage-symnames
+                                                                        
ribcage?
+                                                                        
make-ribcage
+                                                                        
gen-labels
+                                                                        
gen-label
+                                                                        
make-rename
+                                                                        
rename-marks
+                                                                        
rename-new
+                                                                        
rename-old
+                                                                        
subst-rename?
+                                                                        
wrap-subst
+                                                                        
wrap-marks
+                                                                        
make-wrap
+                                                                        
id-sym-name&marks
+                                                                        
id-sym-name
+                                                                        id?
+                                                                        
nonsymbol-id?
+                                                                        
global-extend
+                                                                        lookup
+                                                                        
macros-only-env
+                                                                        
extend-var-env
+                                                                        
extend-env
+                                                                        
null-env
+                                                                        
binding-value
+                                                                        
binding-type
+                                                                        
make-binding
+                                                                        
arg-check
+                                                                        
source-annotation
+                                                                        
no-source
+                                                                        
set-syntax-object-module!
+                                                                        
set-syntax-object-wrap!
+                                                                        
set-syntax-object-expression!
+                                                                        
syntax-object-module
+                                                                        
syntax-object-wrap
+                                                                        
syntax-object-expression
+                                                                        
syntax-object?
+                                                                        
make-syntax-object
+                                                                        
build-lexical-var
+                                                                        
build-letrec
+                                                                        
build-named-let
+                                                                        
build-let
+                                                                        
build-sequence
+                                                                        
build-data
+                                                                        
build-primref
+                                                                        
build-lambda-case
+                                                                        
build-case-lambda
+                                                                        
build-simple-lambda
+                                                                        
build-global-definition
+                                                                        
maybe-name-value!
+                                                                        
build-global-assignment
+                                                                        
build-global-reference
+                                                                        
analyze-variable
+                                                                        
build-lexical-assignment
+                                                                        
build-lexical-reference
+                                                                        
build-dynlet
+                                                                        
build-conditional
+                                                                        
build-application
+                                                                        
build-void
+                                                                        
decorate-source
+                                                                        
get-global-definition-hook
+                                                                        
put-global-definition-hook
+                                                                        
gensym-hook
+                                                                        
local-eval-hook
+                                                                        
top-level-eval-hook
+                                                                        fx<
+                                                                        fx=
+                                                                        fx-
+                                                                        fx+
+                                                                        
set-lambda-meta!
+                                                                        
lambda-meta
+                                                                        lambda?
+                                                                        
make-dynlet
+                                                                        
make-letrec
+                                                                        
make-let
+                                                                        
make-lambda-case
+                                                                        
make-lambda
+                                                                        
make-sequence
+                                                                        
make-application
+                                                                        
make-conditional
+                                                                        
make-toplevel-define
+                                                                        
make-toplevel-set
+                                                                        
make-toplevel-ref
+                                                                        
make-module-set
+                                                                        
make-module-ref
+                                                                        
make-lexical-set
+                                                                        
make-lexical-ref
+                                                                        
make-primitive-ref
+                                                                        
make-const
+                                                                        
make-void)
+                                                                      ((top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top))
+                                                                      ("i501"
+                                                                       "i499"
+                                                                       "i497"
+                                                                       "i495"
+                                                                       "i493"
+                                                                       "i491"
+                                                                       "i489"
+                                                                       "i487"
+                                                                       "i485"
+                                                                       "i483"
+                                                                       "i481"
+                                                                       "i479"
+                                                                       "i477"
+                                                                       "i475"
+                                                                       "i473"
+                                                                       "i471"
+                                                                       "i469"
+                                                                       "i467"
+                                                                       "i465"
+                                                                       "i463"
+                                                                       "i461"
+                                                                       "i459"
+                                                                       "i457"
+                                                                       "i455"
+                                                                       "i453"
+                                                                       "i451"
+                                                                       "i449"
+                                                                       "i447"
+                                                                       "i445"
+                                                                       "i443"
+                                                                       "i441"
+                                                                       "i439"
+                                                                       "i437"
+                                                                       "i435"
+                                                                       "i433"
+                                                                       "i431"
+                                                                       "i430"
+                                                                       "i429"
+                                                                       "i427"
+                                                                       "i426"
+                                                                       "i425"
+                                                                       "i424"
+                                                                       "i423"
+                                                                       "i421"
+                                                                       "i419"
+                                                                       "i417"
+                                                                       "i415"
+                                                                       "i413"
+                                                                       "i411"
+                                                                       "i409"
+                                                                       "i407"
+                                                                       "i404"
+                                                                       "i402"
+                                                                       "i401"
+                                                                       "i400"
+                                                                       "i399"
+                                                                       "i398"
+                                                                       "i397"
+                                                                       "i395"
+                                                                       "i393"
+                                                                       "i391"
+                                                                       "i389"
+                                                                       "i388"
+                                                                       "i386"
+                                                                       "i384"
+                                                                       "i382"
+                                                                       "i380"
+                                                                       "i378"
+                                                                       "i376"
+                                                                       "i374"
+                                                                       "i373"
+                                                                       "i371"
+                                                                       "i369"
+                                                                       "i368"
+                                                                       "i367"
+                                                                       "i365"
+                                                                       "i364"
+                                                                       "i362"
+                                                                       "i360"
+                                                                       "i358"
+                                                                       "i356"
+                                                                       "i354"
+                                                                       "i352"
+                                                                       "i350"
+                                                                       "i348"
+                                                                       "i346"
+                                                                       "i344"
+                                                                       "i342"
+                                                                       "i340"
+                                                                       "i338"
+                                                                       "i336"
+                                                                       "i334"
+                                                                       "i332"
+                                                                       "i330"
+                                                                       "i328"
+                                                                       "i326"
+                                                                       "i324"
+                                                                       "i322"
+                                                                       "i320"
+                                                                       "i318"
+                                                                       "i316"
+                                                                       "i314"
+                                                                       "i312"
+                                                                       "i310"
+                                                                       "i308"
+                                                                       "i306"
+                                                                       "i304"
+                                                                       "i302"
+                                                                       "i300"
+                                                                       "i299"
+                                                                       "i297"
+                                                                       "i295"
+                                                                       "i293"
+                                                                       "i291"
+                                                                       "i289"
+                                                                       "i287"
+                                                                       "i285"
+                                                                       "i283"
+                                                                       "i281"
+                                                                       "i278"
+                                                                       "i276"
+                                                                       "i274"
+                                                                       "i272"
+                                                                       "i270"
+                                                                       "i268"
+                                                                       "i266"
+                                                                       "i264"
+                                                                       "i262"
+                                                                       "i260"
+                                                                       "i258"
+                                                                       "i256"
+                                                                       "i254"
+                                                                       "i252"
+                                                                       "i250"
+                                                                       "i248"
+                                                                       "i246"
+                                                                       "i244"))
+                                                                    #(ribcage
+                                                                      
(define-structure
+                                                                        
define-expansion-accessors
+                                                                        
define-expansion-constructors
+                                                                        
and-map*)
+                                                                      ((top)
+                                                                       (top)
+                                                                       (top)
+                                                                       (top))
+                                                                      ("i38"
+                                                                       "i37"
+                                                                       "i36"
+                                                                       "i34")))
+                                                                   (hygiene
+                                                                     guile)))
+                                                               '(())
+                                                               #{s\ 1791}#
+                                                               #{mod\ 1793}#))
+                                                           #{tmp\ 1891}#)
+                                                         (syntax-violation
+                                                           #f
+                                                           "source expression 
failed to match any pattern"
+                                                           #{tmp\ 
1852}#))))))))
+                                           (if (eqv? #{ftype\ 1820}#
+                                                     'define-syntax)
+                                             (let ((#{tmp\ 1902}# #{e\ 1788}#))
+                                               (let ((#{tmp\ 1903}#
+                                                       ($sc-dispatch
+                                                         #{tmp\ 1902}#
+                                                         '(any any any))))
+                                                 (if (if #{tmp\ 1903}#
+                                                       (@apply
+                                                         (lambda (#{_\ 1907}#
+                                                                  #{name\ 
1908}#
+                                                                  #{val\ 
1909}#)
+                                                           (#{id?\ 387}#
+                                                             #{name\ 1908}#))
+                                                         #{tmp\ 1903}#)
+                                                       #f)
+                                                   (@apply
+                                                     (lambda (#{_\ 1913}#
+                                                              #{name\ 1914}#
+                                                              #{val\ 1915}#)
+                                                       (values
+                                                         'define-syntax-form
+                                                         #{name\ 1914}#
+                                                         #{val\ 1915}#
+                                                         #{w\ 1790}#
+                                                         #{s\ 1791}#
+                                                         #{mod\ 1793}#))
+                                                     #{tmp\ 1903}#)
+                                                   (syntax-violation
+                                                     #f
+                                                     "source expression failed 
to match any pattern"
+                                                     #{tmp\ 1902}#))))
                                              (values
                                                'call
                                                #f
-                                               #{e\ 1773}#
-                                               #{w\ 1775}#
-                                               #{s\ 1776}#
-                                               #{mod\ 1778}#))))))))))))))
-                   (if (#{syntax-object?\ 336}# #{e\ 1773}#)
-                     (#{syntax-type\ 453}#
-                       (#{syntax-object-expression\ 338}# #{e\ 1773}#)
-                       #{r\ 1774}#
-                       (#{join-wraps\ 423}#
-                         #{w\ 1775}#
-                         (#{syntax-object-wrap\ 340}# #{e\ 1773}#))
-                       (let ((#{t\ 1906}#
-                               (#{source-annotation\ 351}# #{e\ 1773}#)))
-                         (if #{t\ 1906}# #{t\ 1906}# #{s\ 1776}#))
-                       #{rib\ 1777}#
-                       (let ((#{t\ 1910}#
-                               (#{syntax-object-module\ 342}# #{e\ 1773}#)))
-                         (if #{t\ 1910}# #{t\ 1910}# #{mod\ 1778}#))
-                       #{for-car?\ 1779}#)
-                     (if (self-evaluating? #{e\ 1773}#)
-                       (values
-                         'constant
-                         #f
-                         #{e\ 1773}#
-                         #{w\ 1775}#
-                         #{s\ 1776}#
-                         #{mod\ 1778}#)
-                       (values
-                         'other
-                         #f
-                         #{e\ 1773}#
-                         #{w\ 1775}#
-                         #{s\ 1776}#
-                         #{mod\ 1778}#)))))))
-           (#{chi-when-list\ 451}#
-             (lambda (#{e\ 1915}# #{when-list\ 1916}# #{w\ 1917}#)
-               (letrec ((#{f\ 1924}#
-                          (lambda (#{when-list\ 1925}# #{situations\ 1926}#)
-                            (if (null? #{when-list\ 1925}#)
-                              #{situations\ 1926}#
-                              (#{f\ 1924}#
-                                (cdr #{when-list\ 1925}#)
-                                (cons (let ((#{x\ 1928}#
-                                              (car #{when-list\ 1925}#)))
-                                        (if (#{free-id=?\ 431}#
-                                              #{x\ 1928}#
+                                               #{e\ 1788}#
+                                               #{w\ 1790}#
+                                               #{s\ 1791}#
+                                               #{mod\ 1793}#)))))))))))))))
+                 (if (#{syntax-object?\ 351}# #{e\ 1788}#)
+                   (#{syntax-type\ 468}#
+                     (#{syntax-object-expression\ 353}# #{e\ 1788}#)
+                     #{r\ 1789}#
+                     (#{join-wraps\ 438}#
+                       #{w\ 1790}#
+                       (#{syntax-object-wrap\ 355}# #{e\ 1788}#))
+                     (begin
+                       (let ((#{t\ 1921}#
+                               (#{source-annotation\ 366}# #{e\ 1788}#)))
+                         (if #{t\ 1921}# #{t\ 1921}# #{s\ 1791}#)))
+                     #{rib\ 1792}#
+                     (begin
+                       (let ((#{t\ 1925}#
+                               (#{syntax-object-module\ 357}# #{e\ 1788}#)))
+                         (if #{t\ 1925}# #{t\ 1925}# #{mod\ 1793}#)))
+                     #{for-car?\ 1794}#)
+                   (if (self-evaluating? #{e\ 1788}#)
+                     (values
+                       'constant
+                       #f
+                       #{e\ 1788}#
+                       #{w\ 1790}#
+                       #{s\ 1791}#
+                       #{mod\ 1793}#)
+                     (values
+                       'other
+                       #f
+                       #{e\ 1788}#
+                       #{w\ 1790}#
+                       #{s\ 1791}#
+                       #{mod\ 1793}#)))))))
+         (#{chi-when-list\ 466}#
+           (lambda (#{e\ 1930}# #{when-list\ 1931}# #{w\ 1932}#)
+             (letrec*
+               ((#{f\ 1939}#
+                  (lambda (#{when-list\ 1940}# #{situations\ 1941}#)
+                    (if (null? #{when-list\ 1940}#)
+                      #{situations\ 1941}#
+                      (#{f\ 1939}#
+                        (cdr #{when-list\ 1940}#)
+                        (cons (begin
+                                (let ((#{x\ 1943}# (car #{when-list\ 1940}#)))
+                                  (if (#{free-id=?\ 446}#
+                                        #{x\ 1943}#
+                                        '#(syntax-object
+                                           compile
+                                           ((top)
+                                            #(ribcage () () ())
+                                            #(ribcage () () ())
+                                            #(ribcage () () ())
+                                            #(ribcage #(x) #((top)) #("i1942"))
+                                            #(ribcage () () ())
+                                            #(ribcage
+                                              #(f when-list situations)
+                                              #((top) (top) (top))
+                                              #("i1936" "i1937" "i1938"))
+                                            #(ribcage () () ())
+                                            #(ribcage
+                                              #(e when-list w)
+                                              #((top) (top) (top))
+                                              #("i1933" "i1934" "i1935"))
+                                            #(ribcage
+                                              (lambda-var-list
+                                                gen-var
+                                                strip
+                                                chi-lambda-case
+                                                lambda*-formals
+                                                chi-simple-lambda
+                                                lambda-formals
+                                                ellipsis?
+                                                chi-void
+                                                eval-local-transformer
+                                                chi-local-syntax
+                                                chi-body
+                                                chi-macro
+                                                chi-application
+                                                chi-expr
+                                                chi
+                                                chi-top
+                                                syntax-type
+                                                chi-when-list
+                                                chi-install-global
+                                                chi-top-sequence
+                                                chi-sequence
+                                                source-wrap
+                                                wrap
+                                                bound-id-member?
+                                                distinct-bound-ids?
+                                                valid-bound-ids?
+                                                bound-id=?
+                                                free-id=?
+                                                id-var-name
+                                                same-marks?
+                                                join-marks
+                                                join-wraps
+                                                smart-append
+                                                make-binding-wrap
+                                                extend-ribcage!
+                                                make-empty-ribcage
+                                                new-mark
+                                                anti-mark
+                                                the-anti-mark
+                                                top-marked?
+                                                top-wrap
+                                                empty-wrap
+                                                set-ribcage-labels!
+                                                set-ribcage-marks!
+                                                set-ribcage-symnames!
+                                                ribcage-labels
+                                                ribcage-marks
+                                                ribcage-symnames
+                                                ribcage?
+                                                make-ribcage
+                                                gen-labels
+                                                gen-label
+                                                make-rename
+                                                rename-marks
+                                                rename-new
+                                                rename-old
+                                                subst-rename?
+                                                wrap-subst
+                                                wrap-marks
+                                                make-wrap
+                                                id-sym-name&marks
+                                                id-sym-name
+                                                id?
+                                                nonsymbol-id?
+                                                global-extend
+                                                lookup
+                                                macros-only-env
+                                                extend-var-env
+                                                extend-env
+                                                null-env
+                                                binding-value
+                                                binding-type
+                                                make-binding
+                                                arg-check
+                                                source-annotation
+                                                no-source
+                                                set-syntax-object-module!
+                                                set-syntax-object-wrap!
+                                                set-syntax-object-expression!
+                                                syntax-object-module
+                                                syntax-object-wrap
+                                                syntax-object-expression
+                                                syntax-object?
+                                                make-syntax-object
+                                                build-lexical-var
+                                                build-letrec
+                                                build-named-let
+                                                build-let
+                                                build-sequence
+                                                build-data
+                                                build-primref
+                                                build-lambda-case
+                                                build-case-lambda
+                                                build-simple-lambda
+                                                build-global-definition
+                                                maybe-name-value!
+                                                build-global-assignment
+                                                build-global-reference
+                                                analyze-variable
+                                                build-lexical-assignment
+                                                build-lexical-reference
+                                                build-dynlet
+                                                build-conditional
+                                                build-application
+                                                build-void
+                                                decorate-source
+                                                get-global-definition-hook
+                                                put-global-definition-hook
+                                                gensym-hook
+                                                local-eval-hook
+                                                top-level-eval-hook
+                                                fx<
+                                                fx=
+                                                fx-
+                                                fx+
+                                                set-lambda-meta!
+                                                lambda-meta
+                                                lambda?
+                                                make-dynlet
+                                                make-letrec
+                                                make-let
+                                                make-lambda-case
+                                                make-lambda
+                                                make-sequence
+                                                make-application
+                                                make-conditional
+                                                make-toplevel-define
+                                                make-toplevel-set
+                                                make-toplevel-ref
+                                                make-module-set
+                                                make-module-ref
+                                                make-lexical-set
+                                                make-lexical-ref
+                                                make-primitive-ref
+                                                make-const
+                                                make-void)
+                                              ((top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top)
+                                               (top))
+                                              ("i501"
+                                               "i499"
+                                               "i497"
+                                               "i495"
+                                               "i493"
+                                               "i491"
+                                               "i489"
+                                               "i487"
+                                               "i485"
+                                               "i483"
+                                               "i481"
+                                               "i479"
+                                               "i477"
+                                               "i475"
+                                               "i473"
+                                               "i471"
+                                               "i469"
+                                               "i467"
+                                               "i465"
+                                               "i463"
+                                               "i461"
+                                               "i459"
+                                               "i457"
+                                               "i455"
+                                               "i453"
+                                               "i451"
+                                               "i449"
+                                               "i447"
+                                               "i445"
+                                               "i443"
+                                               "i441"
+                                               "i439"
+                                               "i437"
+                                               "i435"
+                                               "i433"
+                                               "i431"
+                                               "i430"
+                                               "i429"
+                                               "i427"
+                                               "i426"
+                                               "i425"
+                                               "i424"
+                                               "i423"
+                                               "i421"
+                                               "i419"
+                                               "i417"
+                                               "i415"
+                                               "i413"
+                                               "i411"
+                                               "i409"
+                                               "i407"
+                                               "i404"
+                                               "i402"
+                                               "i401"
+                                               "i400"
+                                               "i399"
+                                               "i398"
+                                               "i397"
+                                               "i395"
+                                               "i393"
+                                               "i391"
+                                               "i389"
+                                               "i388"
+                                               "i386"
+                                               "i384"
+                                               "i382"
+                                               "i380"
+                                               "i378"
+                                               "i376"
+                                               "i374"
+                                               "i373"
+                                               "i371"
+                                               "i369"
+                                               "i368"
+                                               "i367"
+                                               "i365"
+                                               "i364"
+                                               "i362"
+                                               "i360"
+                                               "i358"
+                                               "i356"
+                                               "i354"
+                                               "i352"
+                                               "i350"
+                                               "i348"
+                                               "i346"
+                                               "i344"
+                                               "i342"
+                                               "i340"
+                                               "i338"
+                                               "i336"
+                                               "i334"
+                                               "i332"
+                                               "i330"
+                                               "i328"
+                                               "i326"
+                                               "i324"
+                                               "i322"
+                                               "i320"
+                                               "i318"
+                                               "i316"
+                                               "i314"
+                                               "i312"
+                                               "i310"
+                                               "i308"
+                                               "i306"
+                                               "i304"
+                                               "i302"
+                                               "i300"
+                                               "i299"
+                                               "i297"
+                                               "i295"
+                                               "i293"
+                                               "i291"
+                                               "i289"
+                                               "i287"
+                                               "i285"
+                                               "i283"
+                                               "i281"
+                                               "i278"
+                                               "i276"
+                                               "i274"
+                                               "i272"
+                                               "i270"
+                                               "i268"
+                                               "i266"
+                                               "i264"
+                                               "i262"
+                                               "i260"
+                                               "i258"
+                                               "i256"
+                                               "i254"
+                                               "i252"
+                                               "i250"
+                                               "i248"
+                                               "i246"
+                                               "i244"))
+                                            #(ribcage
+                                              (define-structure
+                                                define-expansion-accessors
+                                                define-expansion-constructors
+                                                and-map*)
+                                              ((top) (top) (top) (top))
+                                              ("i38" "i37" "i36" "i34")))
+                                           (hygiene guile)))
+                                    'compile
+                                    (if (#{free-id=?\ 446}#
+                                          #{x\ 1943}#
+                                          '#(syntax-object
+                                             load
+                                             ((top)
+                                              #(ribcage () () ())
+                                              #(ribcage () () ())
+                                              #(ribcage () () ())
+                                              #(ribcage
+                                                #(x)
+                                                #((top))
+                                                #("i1942"))
+                                              #(ribcage () () ())
+                                              #(ribcage
+                                                #(f when-list situations)
+                                                #((top) (top) (top))
+                                                #("i1936" "i1937" "i1938"))
+                                              #(ribcage () () ())
+                                              #(ribcage
+                                                #(e when-list w)
+                                                #((top) (top) (top))
+                                                #("i1933" "i1934" "i1935"))
+                                              #(ribcage
+                                                (lambda-var-list
+                                                  gen-var
+                                                  strip
+                                                  chi-lambda-case
+                                                  lambda*-formals
+                                                  chi-simple-lambda
+                                                  lambda-formals
+                                                  ellipsis?
+                                                  chi-void
+                                                  eval-local-transformer
+                                                  chi-local-syntax
+                                                  chi-body
+                                                  chi-macro
+                                                  chi-application
+                                                  chi-expr
+                                                  chi
+                                                  chi-top
+                                                  syntax-type
+                                                  chi-when-list
+                                                  chi-install-global
+                                                  chi-top-sequence
+                                                  chi-sequence
+                                                  source-wrap
+                                                  wrap
+                                                  bound-id-member?
+                                                  distinct-bound-ids?
+                                                  valid-bound-ids?
+                                                  bound-id=?
+                                                  free-id=?
+                                                  id-var-name
+                                                  same-marks?
+                                                  join-marks
+                                                  join-wraps
+                                                  smart-append
+                                                  make-binding-wrap
+                                                  extend-ribcage!
+                                                  make-empty-ribcage
+                                                  new-mark
+                                                  anti-mark
+                                                  the-anti-mark
+                                                  top-marked?
+                                                  top-wrap
+                                                  empty-wrap
+                                                  set-ribcage-labels!
+                                                  set-ribcage-marks!
+                                                  set-ribcage-symnames!
+                                                  ribcage-labels
+                                                  ribcage-marks
+                                                  ribcage-symnames
+                                                  ribcage?
+                                                  make-ribcage
+                                                  gen-labels
+                                                  gen-label
+                                                  make-rename
+                                                  rename-marks
+                                                  rename-new
+                                                  rename-old
+                                                  subst-rename?
+                                                  wrap-subst
+                                                  wrap-marks
+                                                  make-wrap
+                                                  id-sym-name&marks
+                                                  id-sym-name
+                                                  id?
+                                                  nonsymbol-id?
+                                                  global-extend
+                                                  lookup
+                                                  macros-only-env
+                                                  extend-var-env
+                                                  extend-env
+                                                  null-env
+                                                  binding-value
+                                                  binding-type
+                                                  make-binding
+                                                  arg-check
+                                                  source-annotation
+                                                  no-source
+                                                  set-syntax-object-module!
+                                                  set-syntax-object-wrap!
+                                                  set-syntax-object-expression!
+                                                  syntax-object-module
+                                                  syntax-object-wrap
+                                                  syntax-object-expression
+                                                  syntax-object?
+                                                  make-syntax-object
+                                                  build-lexical-var
+                                                  build-letrec
+                                                  build-named-let
+                                                  build-let
+                                                  build-sequence
+                                                  build-data
+                                                  build-primref
+                                                  build-lambda-case
+                                                  build-case-lambda
+                                                  build-simple-lambda
+                                                  build-global-definition
+                                                  maybe-name-value!
+                                                  build-global-assignment
+                                                  build-global-reference
+                                                  analyze-variable
+                                                  build-lexical-assignment
+                                                  build-lexical-reference
+                                                  build-dynlet
+                                                  build-conditional
+                                                  build-application
+                                                  build-void
+                                                  decorate-source
+                                                  get-global-definition-hook
+                                                  put-global-definition-hook
+                                                  gensym-hook
+                                                  local-eval-hook
+                                                  top-level-eval-hook
+                                                  fx<
+                                                  fx=
+                                                  fx-
+                                                  fx+
+                                                  set-lambda-meta!
+                                                  lambda-meta
+                                                  lambda?
+                                                  make-dynlet
+                                                  make-letrec
+                                                  make-let
+                                                  make-lambda-case
+                                                  make-lambda
+                                                  make-sequence
+                                                  make-application
+                                                  make-conditional
+                                                  make-toplevel-define
+                                                  make-toplevel-set
+                                                  make-toplevel-ref
+                                                  make-module-set
+                                                  make-module-ref
+                                                  make-lexical-set
+                                                  make-lexical-ref
+                                                  make-primitive-ref
+                                                  make-const
+                                                  make-void)
+                                                ((top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top)
+                                                 (top))
+                                                ("i501"
+                                                 "i499"
+                                                 "i497"
+                                                 "i495"
+                                                 "i493"
+                                                 "i491"
+                                                 "i489"
+                                                 "i487"
+                                                 "i485"
+                                                 "i483"
+                                                 "i481"
+                                                 "i479"
+                                                 "i477"
+                                                 "i475"
+                                                 "i473"
+                                                 "i471"
+                                                 "i469"
+                                                 "i467"
+                                                 "i465"
+                                                 "i463"
+                                                 "i461"
+                                                 "i459"
+                                                 "i457"
+                                                 "i455"
+                                                 "i453"
+                                                 "i451"
+                                                 "i449"
+                                                 "i447"
+                                                 "i445"
+                                                 "i443"
+                                                 "i441"
+                                                 "i439"
+                                                 "i437"
+                                                 "i435"
+                                                 "i433"
+                                                 "i431"
+                                                 "i430"
+                                                 "i429"
+                                                 "i427"
+                                                 "i426"
+                                                 "i425"
+                                                 "i424"
+                                                 "i423"
+                                                 "i421"
+                                                 "i419"
+                                                 "i417"
+                                                 "i415"
+                                                 "i413"
+                                                 "i411"
+                                                 "i409"
+                                                 "i407"
+                                                 "i404"
+                                                 "i402"
+                                                 "i401"
+                                                 "i400"
+                                                 "i399"
+                                                 "i398"
+                                                 "i397"
+                                                 "i395"
+                                                 "i393"
+                                                 "i391"
+                                                 "i389"
+                                                 "i388"
+                                                 "i386"
+                                                 "i384"
+                                                 "i382"
+                                                 "i380"
+                                                 "i378"
+                                                 "i376"
+                                                 "i374"
+                                                 "i373"
+                                                 "i371"
+                                                 "i369"
+                                                 "i368"
+                                                 "i367"
+                                                 "i365"
+                                                 "i364"
+                                                 "i362"
+                                                 "i360"
+                                                 "i358"
+                                                 "i356"
+                                                 "i354"
+                                                 "i352"
+                                                 "i350"
+                                                 "i348"
+                                                 "i346"
+                                                 "i344"
+                                                 "i342"
+                                                 "i340"
+                                                 "i338"
+                                                 "i336"
+                                                 "i334"
+                                                 "i332"
+                                                 "i330"
+                                                 "i328"
+                                                 "i326"
+                                                 "i324"
+                                                 "i322"
+                                                 "i320"
+                                                 "i318"
+                                                 "i316"
+                                                 "i314"
+                                                 "i312"
+                                                 "i310"
+                                                 "i308"
+                                                 "i306"
+                                                 "i304"
+                                                 "i302"
+                                                 "i300"
+                                                 "i299"
+                                                 "i297"
+                                                 "i295"
+                                                 "i293"
+                                                 "i291"
+                                                 "i289"
+                                                 "i287"
+                                                 "i285"
+                                                 "i283"
+                                                 "i281"
+                                                 "i278"
+                                                 "i276"
+                                                 "i274"
+                                                 "i272"
+                                                 "i270"
+                                                 "i268"
+                                                 "i266"
+                                                 "i264"
+                                                 "i262"
+                                                 "i260"
+                                                 "i258"
+                                                 "i256"
+                                                 "i254"
+                                                 "i252"
+                                                 "i250"
+                                                 "i248"
+                                                 "i246"
+                                                 "i244"))
+                                              #(ribcage
+                                                (define-structure
+                                                  define-expansion-accessors
+                                                  define-expansion-constructors
+                                                  and-map*)
+                                                ((top) (top) (top) (top))
+                                                ("i38" "i37" "i36" "i34")))
+                                             (hygiene guile)))
+                                      'load
+                                      (if (#{free-id=?\ 446}#
+                                            #{x\ 1943}#
+                                            '#(syntax-object
+                                               eval
+                                               ((top)
+                                                #(ribcage () () ())
+                                                #(ribcage () () ())
+                                                #(ribcage () () ())
+                                                #(ribcage
+                                                  #(x)
+                                                  #((top))
+                                                  #("i1942"))
+                                                #(ribcage () () ())
+                                                #(ribcage
+                                                  #(f when-list situations)
+                                                  #((top) (top) (top))
+                                                  #("i1936" "i1937" "i1938"))
+                                                #(ribcage () () ())
+                                                #(ribcage
+                                                  #(e when-list w)
+                                                  #((top) (top) (top))
+                                                  #("i1933" "i1934" "i1935"))
+                                                #(ribcage
+                                                  (lambda-var-list
+                                                    gen-var
+                                                    strip
+                                                    chi-lambda-case
+                                                    lambda*-formals
+                                                    chi-simple-lambda
+                                                    lambda-formals
+                                                    ellipsis?
+                                                    chi-void
+                                                    eval-local-transformer
+                                                    chi-local-syntax
+                                                    chi-body
+                                                    chi-macro
+                                                    chi-application
+                                                    chi-expr
+                                                    chi
+                                                    chi-top
+                                                    syntax-type
+                                                    chi-when-list
+                                                    chi-install-global
+                                                    chi-top-sequence
+                                                    chi-sequence
+                                                    source-wrap
+                                                    wrap
+                                                    bound-id-member?
+                                                    distinct-bound-ids?
+                                                    valid-bound-ids?
+                                                    bound-id=?
+                                                    free-id=?
+                                                    id-var-name
+                                                    same-marks?
+                                                    join-marks
+                                                    join-wraps
+                                                    smart-append
+                                                    make-binding-wrap
+                                                    extend-ribcage!
+                                                    make-empty-ribcage
+                                                    new-mark
+                                                    anti-mark
+                                                    the-anti-mark
+                                                    top-marked?
+                                                    top-wrap
+                                                    empty-wrap
+                                                    set-ribcage-labels!
+                                                    set-ribcage-marks!
+                                                    set-ribcage-symnames!
+                                                    ribcage-labels
+                                                    ribcage-marks
+                                                    ribcage-symnames
+                                                    ribcage?
+                                                    make-ribcage
+                                                    gen-labels
+                                                    gen-label
+                                                    make-rename
+                                                    rename-marks
+                                                    rename-new
+                                                    rename-old
+                                                    subst-rename?
+                                                    wrap-subst
+                                                    wrap-marks
+                                                    make-wrap
+                                                    id-sym-name&marks
+                                                    id-sym-name
+                                                    id?
+                                                    nonsymbol-id?
+                                                    global-extend
+                                                    lookup
+                                                    macros-only-env
+                                                    extend-var-env
+                                                    extend-env
+                                                    null-env
+                                                    binding-value
+                                                    binding-type
+                                                    make-binding
+                                                    arg-check
+                                                    source-annotation
+                                                    no-source
+                                                    set-syntax-object-module!
+                                                    set-syntax-object-wrap!
+                                                    
set-syntax-object-expression!
+                                                    syntax-object-module
+                                                    syntax-object-wrap
+                                                    syntax-object-expression
+                                                    syntax-object?
+                                                    make-syntax-object
+                                                    build-lexical-var
+                                                    build-letrec
+                                                    build-named-let
+                                                    build-let
+                                                    build-sequence
+                                                    build-data
+                                                    build-primref
+                                                    build-lambda-case
+                                                    build-case-lambda
+                                                    build-simple-lambda
+                                                    build-global-definition
+                                                    maybe-name-value!
+                                                    build-global-assignment
+                                                    build-global-reference
+                                                    analyze-variable
+                                                    build-lexical-assignment
+                                                    build-lexical-reference
+                                                    build-dynlet
+                                                    build-conditional
+                                                    build-application
+                                                    build-void
+                                                    decorate-source
+                                                    get-global-definition-hook
+                                                    put-global-definition-hook
+                                                    gensym-hook
+                                                    local-eval-hook
+                                                    top-level-eval-hook
+                                                    fx<
+                                                    fx=
+                                                    fx-
+                                                    fx+
+                                                    set-lambda-meta!
+                                                    lambda-meta
+                                                    lambda?
+                                                    make-dynlet
+                                                    make-letrec
+                                                    make-let
+                                                    make-lambda-case
+                                                    make-lambda
+                                                    make-sequence
+                                                    make-application
+                                                    make-conditional
+                                                    make-toplevel-define
+                                                    make-toplevel-set
+                                                    make-toplevel-ref
+                                                    make-module-set
+                                                    make-module-ref
+                                                    make-lexical-set
+                                                    make-lexical-ref
+                                                    make-primitive-ref
+                                                    make-const
+                                                    make-void)
+                                                  ((top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top)
+                                                   (top))
+                                                  ("i501"
+                                                   "i499"
+                                                   "i497"
+                                                   "i495"
+                                                   "i493"
+                                                   "i491"
+                                                   "i489"
+                                                   "i487"
+                                                   "i485"
+                                                   "i483"
+                                                   "i481"
+                                                   "i479"
+                                                   "i477"
+                                                   "i475"
+                                                   "i473"
+                                                   "i471"
+                                                   "i469"
+                                                   "i467"
+                                                   "i465"
+                                                   "i463"
+                                                   "i461"
+                                                   "i459"
+                                                   "i457"
+                                                   "i455"
+                                                   "i453"
+                                                   "i451"
+                                                   "i449"
+                                                   "i447"
+                                                   "i445"
+                                                   "i443"
+                                                   "i441"
+                                                   "i439"
+                                                   "i437"
+                                                   "i435"
+                                                   "i433"
+                                                   "i431"
+                                                   "i430"
+                                                   "i429"
+                                                   "i427"
+                                                   "i426"
+                                                   "i425"
+                                                   "i424"
+                                                   "i423"
+                                                   "i421"
+                                                   "i419"
+                                                   "i417"
+                                                   "i415"
+                                                   "i413"
+                                                   "i411"
+                                                   "i409"
+                                                   "i407"
+                                                   "i404"
+                                                   "i402"
+                                                   "i401"
+                                                   "i400"
+                                                   "i399"
+                                                   "i398"
+                                                   "i397"
+                                                   "i395"
+                                                   "i393"
+                                                   "i391"
+                                                   "i389"
+                                                   "i388"
+                                                   "i386"
+                                                   "i384"
+                                                   "i382"
+                                                   "i380"
+                                                   "i378"
+                                                   "i376"
+                                                   "i374"
+                                                   "i373"
+                                                   "i371"
+                                                   "i369"
+                                                   "i368"
+                                                   "i367"
+                                                   "i365"
+                                                   "i364"
+                                                   "i362"
+                                                   "i360"
+                                                   "i358"
+                                                   "i356"
+                                                   "i354"
+                                                   "i352"
+                                                   "i350"
+                                                   "i348"
+                                                   "i346"
+                                                   "i344"
+                                                   "i342"
+                                                   "i340"
+                                                   "i338"
+                                                   "i336"
+                                                   "i334"
+                                                   "i332"
+                                                   "i330"
+                                                   "i328"
+                                                   "i326"
+                                                   "i324"
+                                                   "i322"
+                                                   "i320"
+                                                   "i318"
+                                                   "i316"
+                                                   "i314"
+                                                   "i312"
+                                                   "i310"
+                                                   "i308"
+                                                   "i306"
+                                                   "i304"
+                                                   "i302"
+                                                   "i300"
+                                                   "i299"
+                                                   "i297"
+                                                   "i295"
+                                                   "i293"
+                                                   "i291"
+                                                   "i289"
+                                                   "i287"
+                                                   "i285"
+                                                   "i283"
+                                                   "i281"
+                                                   "i278"
+                                                   "i276"
+                                                   "i274"
+                                                   "i272"
+                                                   "i270"
+                                                   "i268"
+                                                   "i266"
+                                                   "i264"
+                                                   "i262"
+                                                   "i260"
+                                                   "i258"
+                                                   "i256"
+                                                   "i254"
+                                                   "i252"
+                                                   "i250"
+                                                   "i248"
+                                                   "i246"
+                                                   "i244"))
+                                                #(ribcage
+                                                  (define-structure
+                                                    define-expansion-accessors
+                                                    
define-expansion-constructors
+                                                    and-map*)
+                                                  ((top) (top) (top) (top))
+                                                  ("i38" "i37" "i36" "i34")))
+                                               (hygiene guile)))
+                                        'eval
+                                        (if (#{free-id=?\ 446}#
+                                              #{x\ 1943}#
                                               '#(syntax-object
-                                                 compile
+                                                 expand
                                                  ((top)
                                                   #(ribcage () () ())
                                                   #(ribcage () () ())
@@ -6002,17 +7396,17 @@
                                                   #(ribcage
                                                     #(x)
                                                     #((top))
-                                                    #("i1927"))
+                                                    #("i1942"))
                                                   #(ribcage () () ())
                                                   #(ribcage
                                                     #(f when-list situations)
                                                     #((top) (top) (top))
-                                                    #("i1921" "i1922" "i1923"))
+                                                    #("i1936" "i1937" "i1938"))
                                                   #(ribcage () () ())
                                                   #(ribcage
                                                     #(e when-list w)
                                                     #((top) (top) (top))
-                                                    #("i1918" "i1919" "i1920"))
+                                                    #("i1933" "i1934" "i1935"))
                                                   #(ribcage
                                                     (lambda-var-list
                                                       gen-var
@@ -6288,63 +7682,71 @@
                                                      (top)
                                                      (top)
                                                      (top))
-                                                    ("i486"
-                                                     "i484"
-                                                     "i482"
-                                                     "i480"
-                                                     "i478"
-                                                     "i476"
-                                                     "i474"
-                                                     "i472"
-                                                     "i470"
-                                                     "i468"
-                                                     "i466"
-                                                     "i464"
-                                                     "i462"
-                                                     "i460"
-                                                     "i458"
-                                                     "i456"
-                                                     "i454"
-                                                     "i452"
-                                                     "i450"
-                                                     "i448"
-                                                     "i446"
-                                                     "i444"
-                                                     "i442"
-                                                     "i440"
-                                                     "i438"
-                                                     "i436"
-                                                     "i434"
-                                                     "i432"
+                                                    ("i501"
+                                                     "i499"
+                                                     "i497"
+                                                     "i495"
+                                                     "i493"
+                                                     "i491"
+                                                     "i489"
+                                                     "i487"
+                                                     "i485"
+                                                     "i483"
+                                                     "i481"
+                                                     "i479"
+                                                     "i477"
+                                                     "i475"
+                                                     "i473"
+                                                     "i471"
+                                                     "i469"
+                                                     "i467"
+                                                     "i465"
+                                                     "i463"
+                                                     "i461"
+                                                     "i459"
+                                                     "i457"
+                                                     "i455"
+                                                     "i453"
+                                                     "i451"
+                                                     "i449"
+                                                     "i447"
+                                                     "i445"
+                                                     "i443"
+                                                     "i441"
+                                                     "i439"
+                                                     "i437"
+                                                     "i435"
+                                                     "i433"
+                                                     "i431"
                                                      "i430"
-                                                     "i428"
+                                                     "i429"
+                                                     "i427"
                                                      "i426"
+                                                     "i425"
                                                      "i424"
-                                                     "i422"
-                                                     "i420"
-                                                     "i418"
-                                                     "i416"
+                                                     "i423"
+                                                     "i421"
+                                                     "i419"
+                                                     "i417"
                                                      "i415"
-                                                     "i414"
-                                                     "i412"
+                                                     "i413"
                                                      "i411"
-                                                     "i410"
                                                      "i409"
-                                                     "i408"
-                                                     "i406"
+                                                     "i407"
                                                      "i404"
                                                      "i402"
+                                                     "i401"
                                                      "i400"
+                                                     "i399"
                                                      "i398"
-                                                     "i396"
-                                                     "i394"
-                                                     "i392"
+                                                     "i397"
+                                                     "i395"
+                                                     "i393"
+                                                     "i391"
                                                      "i389"
-                                                     "i387"
+                                                     "i388"
                                                      "i386"
-                                                     "i385"
                                                      "i384"
-                                                     "i383"
                                                      "i382"
                                                      "i380"
                                                      "i378"
@@ -6353,42 +7755,42 @@
                                                      "i373"
                                                      "i371"
                                                      "i369"
+                                                     "i368"
                                                      "i367"
                                                      "i365"
-                                                     "i363"
-                                                     "i361"
-                                                     "i359"
+                                                     "i364"
+                                                     "i362"
+                                                     "i360"
                                                      "i358"
                                                      "i356"
                                                      "i354"
-                                                     "i353"
                                                      "i352"
                                                      "i350"
-                                                     "i349"
-                                                     "i347"
-                                                     "i345"
-                                                     "i343"
-                                                     "i341"
-                                                     "i339"
-                                                     "i337"
-                                                     "i335"
-                                                     "i333"
-                                                     "i331"
-                                                     "i329"
-                                                     "i327"
-                                                     "i325"
-                                                     "i323"
-                                                     "i321"
-                                                     "i319"
-                                                     "i317"
-                                                     "i315"
-                                                     "i313"
-                                                     "i311"
-                                                     "i309"
-                                                     "i307"
-                                                     "i305"
-                                                     "i303"
-                                                     "i301"
+                                                     "i348"
+                                                     "i346"
+                                                     "i344"
+                                                     "i342"
+                                                     "i340"
+                                                     "i338"
+                                                     "i336"
+                                                     "i334"
+                                                     "i332"
+                                                     "i330"
+                                                     "i328"
+                                                     "i326"
+                                                     "i324"
+                                                     "i322"
+                                                     "i320"
+                                                     "i318"
+                                                     "i316"
+                                                     "i314"
+                                                     "i312"
+                                                     "i310"
+                                                     "i308"
+                                                     "i306"
+                                                     "i304"
+                                                     "i302"
+                                                     "i300"
                                                      "i299"
                                                      "i297"
                                                      "i295"
@@ -6397,9 +7799,8 @@
                                                      "i289"
                                                      "i287"
                                                      "i285"
-                                                     "i284"
-                                                     "i282"
-                                                     "i280"
+                                                     "i283"
+                                                     "i281"
                                                      "i278"
                                                      "i276"
                                                      "i274"
@@ -6407,3712 +7808,3493 @@
                                                      "i270"
                                                      "i268"
                                                      "i266"
-                                                     "i263"
-                                                     "i261"
-                                                     "i259"
-                                                     "i257"
-                                                     "i255"
-                                                     "i253"
-                                                     "i251"
-                                                     "i249"
-                                                     "i247"
-                                                     "i245"
-                                                     "i243"
-                                                     "i241"
-                                                     "i239"
-                                                     "i237"
-                                                     "i235"
-                                                     "i233"
-                                                     "i231"
-                                                     "i229"))
+                                                     "i264"
+                                                     "i262"
+                                                     "i260"
+                                                     "i258"
+                                                     "i256"
+                                                     "i254"
+                                                     "i252"
+                                                     "i250"
+                                                     "i248"
+                                                     "i246"
+                                                     "i244"))
                                                   #(ribcage
                                                     (define-structure
                                                       
define-expansion-accessors
                                                       
define-expansion-constructors
                                                       and-map*)
                                                     ((top) (top) (top) (top))
-                                                    ("i23" "i22" "i21" "i19")))
+                                                    ("i38" "i37" "i36" "i34")))
                                                  (hygiene guile)))
-                                          'compile
-                                          (if (#{free-id=?\ 431}#
-                                                #{x\ 1928}#
-                                                '#(syntax-object
-                                                   load
-                                                   ((top)
-                                                    #(ribcage () () ())
-                                                    #(ribcage () () ())
-                                                    #(ribcage () () ())
-                                                    #(ribcage
-                                                      #(x)
-                                                      #((top))
-                                                      #("i1927"))
-                                                    #(ribcage () () ())
-                                                    #(ribcage
-                                                      #(f when-list situations)
-                                                      #((top) (top) (top))
-                                                      #("i1921"
-                                                        "i1922"
-                                                        "i1923"))
-                                                    #(ribcage () () ())
-                                                    #(ribcage
-                                                      #(e when-list w)
-                                                      #((top) (top) (top))
-                                                      #("i1918"
-                                                        "i1919"
-                                                        "i1920"))
-                                                    #(ribcage
-                                                      (lambda-var-list
-                                                        gen-var
-                                                        strip
-                                                        chi-lambda-case
-                                                        lambda*-formals
-                                                        chi-simple-lambda
-                                                        lambda-formals
-                                                        ellipsis?
-                                                        chi-void
-                                                        eval-local-transformer
-                                                        chi-local-syntax
-                                                        chi-body
-                                                        chi-macro
-                                                        chi-application
-                                                        chi-expr
-                                                        chi
-                                                        chi-top
-                                                        syntax-type
-                                                        chi-when-list
-                                                        chi-install-global
-                                                        chi-top-sequence
-                                                        chi-sequence
-                                                        source-wrap
-                                                        wrap
-                                                        bound-id-member?
-                                                        distinct-bound-ids?
-                                                        valid-bound-ids?
-                                                        bound-id=?
-                                                        free-id=?
-                                                        id-var-name
-                                                        same-marks?
-                                                        join-marks
-                                                        join-wraps
-                                                        smart-append
-                                                        make-binding-wrap
-                                                        extend-ribcage!
-                                                        make-empty-ribcage
-                                                        new-mark
-                                                        anti-mark
-                                                        the-anti-mark
-                                                        top-marked?
-                                                        top-wrap
-                                                        empty-wrap
-                                                        set-ribcage-labels!
-                                                        set-ribcage-marks!
-                                                        set-ribcage-symnames!
-                                                        ribcage-labels
-                                                        ribcage-marks
-                                                        ribcage-symnames
-                                                        ribcage?
-                                                        make-ribcage
-                                                        gen-labels
-                                                        gen-label
-                                                        make-rename
-                                                        rename-marks
-                                                        rename-new
-                                                        rename-old
-                                                        subst-rename?
-                                                        wrap-subst
-                                                        wrap-marks
-                                                        make-wrap
-                                                        id-sym-name&marks
-                                                        id-sym-name
-                                                        id?
-                                                        nonsymbol-id?
-                                                        global-extend
-                                                        lookup
-                                                        macros-only-env
-                                                        extend-var-env
-                                                        extend-env
-                                                        null-env
-                                                        binding-value
-                                                        binding-type
-                                                        make-binding
-                                                        arg-check
-                                                        source-annotation
-                                                        no-source
-                                                        
set-syntax-object-module!
-                                                        set-syntax-object-wrap!
-                                                        
set-syntax-object-expression!
-                                                        syntax-object-module
-                                                        syntax-object-wrap
-                                                        
syntax-object-expression
-                                                        syntax-object?
-                                                        make-syntax-object
-                                                        build-lexical-var
-                                                        build-letrec
-                                                        build-named-let
-                                                        build-let
-                                                        build-sequence
-                                                        build-data
-                                                        build-primref
-                                                        build-lambda-case
-                                                        build-case-lambda
-                                                        build-simple-lambda
-                                                        build-global-definition
-                                                        maybe-name-value!
-                                                        build-global-assignment
-                                                        build-global-reference
-                                                        analyze-variable
-                                                        
build-lexical-assignment
-                                                        build-lexical-reference
-                                                        build-dynlet
-                                                        build-conditional
-                                                        build-application
-                                                        build-void
-                                                        decorate-source
-                                                        
get-global-definition-hook
-                                                        
put-global-definition-hook
-                                                        gensym-hook
-                                                        local-eval-hook
-                                                        top-level-eval-hook
-                                                        fx<
-                                                        fx=
-                                                        fx-
-                                                        fx+
-                                                        set-lambda-meta!
-                                                        lambda-meta
-                                                        lambda?
-                                                        make-dynlet
-                                                        make-letrec
-                                                        make-let
-                                                        make-lambda-case
-                                                        make-lambda
-                                                        make-sequence
-                                                        make-application
-                                                        make-conditional
-                                                        make-toplevel-define
-                                                        make-toplevel-set
-                                                        make-toplevel-ref
-                                                        make-module-set
-                                                        make-module-ref
-                                                        make-lexical-set
-                                                        make-lexical-ref
-                                                        make-primitive-ref
-                                                        make-const
-                                                        make-void)
-                                                      ((top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top)
-                                                       (top))
-                                                      ("i486"
-                                                       "i484"
-                                                       "i482"
-                                                       "i480"
-                                                       "i478"
-                                                       "i476"
-                                                       "i474"
-                                                       "i472"
-                                                       "i470"
-                                                       "i468"
-                                                       "i466"
-                                                       "i464"
-                                                       "i462"
-                                                       "i460"
-                                                       "i458"
-                                                       "i456"
-                                                       "i454"
-                                                       "i452"
-                                                       "i450"
-                                                       "i448"
-                                                       "i446"
-                                                       "i444"
-                                                       "i442"
-                                                       "i440"
-                                                       "i438"
-                                                       "i436"
-                                                       "i434"
-                                                       "i432"
-                                                       "i430"
-                                                       "i428"
-                                                       "i426"
-                                                       "i424"
-                                                       "i422"
-                                                       "i420"
-                                                       "i418"
-                                                       "i416"
-                                                       "i415"
-                                                       "i414"
-                                                       "i412"
-                                                       "i411"
-                                                       "i410"
-                                                       "i409"
-                                                       "i408"
-                                                       "i406"
-                                                       "i404"
-                                                       "i402"
-                                                       "i400"
-                                                       "i398"
-                                                       "i396"
-                                                       "i394"
-                                                       "i392"
-                                                       "i389"
-                                                       "i387"
-                                                       "i386"
-                                                       "i385"
-                                                       "i384"
-                                                       "i383"
-                                                       "i382"
-                                                       "i380"
-                                                       "i378"
-                                                       "i376"
-                                                       "i374"
-                                                       "i373"
-                                                       "i371"
-                                                       "i369"
-                                                       "i367"
-                                                       "i365"
-                                                       "i363"
-                                                       "i361"
-                                                       "i359"
-                                                       "i358"
-                                                       "i356"
-                                                       "i354"
-                                                       "i353"
-                                                       "i352"
-                                                       "i350"
-                                                       "i349"
-                                                       "i347"
-                                                       "i345"
-                                                       "i343"
-                                                       "i341"
-                                                       "i339"
-                                                       "i337"
-                                                       "i335"
-                                                       "i333"
-                                                       "i331"
-                                                       "i329"
-                                                       "i327"
-                                                       "i325"
-                                                       "i323"
-                                                       "i321"
-                                                       "i319"
-                                                       "i317"
-                                                       "i315"
-                                                       "i313"
-                                                       "i311"
-                                                       "i309"
-                                                       "i307"
-                                                       "i305"
-                                                       "i303"
-                                                       "i301"
-                                                       "i299"
-                                                       "i297"
-                                                       "i295"
-                                                       "i293"
-                                                       "i291"
-                                                       "i289"
-                                                       "i287"
-                                                       "i285"
-                                                       "i284"
-                                                       "i282"
-                                                       "i280"
-                                                       "i278"
-                                                       "i276"
-                                                       "i274"
-                                                       "i272"
-                                                       "i270"
-                                                       "i268"
-                                                       "i266"
-                                                       "i263"
-                                                       "i261"
-                                                       "i259"
-                                                       "i257"
-                                                       "i255"
-                                                       "i253"
-                                                       "i251"
-                                                       "i249"
-                                                       "i247"
-                                                       "i245"
-                                                       "i243"
-                                                       "i241"
-                                                       "i239"
-                                                       "i237"
-                                                       "i235"
-                                                       "i233"
-                                                       "i231"
-                                                       "i229"))
-                                                    #(ribcage
-                                                      (define-structure
-                                                        
define-expansion-accessors
-                                                        
define-expansion-constructors
-                                                        and-map*)
-                                                      ((top) (top) (top) (top))
-                                                      ("i23"
-                                                       "i22"
-                                                       "i21"
-                                                       "i19")))
-                                                   (hygiene guile)))
-                                            'load
-                                            (if (#{free-id=?\ 431}#
-                                                  #{x\ 1928}#
-                                                  '#(syntax-object
-                                                     eval
-                                                     ((top)
-                                                      #(ribcage () () ())
-                                                      #(ribcage () () ())
-                                                      #(ribcage () () ())
-                                                      #(ribcage
-                                                        #(x)
-                                                        #((top))
-                                                        #("i1927"))
-                                                      #(ribcage () () ())
-                                                      #(ribcage
-                                                        #(f
-                                                          when-list
-                                                          situations)
-                                                        #((top) (top) (top))
-                                                        #("i1921"
-                                                          "i1922"
-                                                          "i1923"))
-                                                      #(ribcage () () ())
-                                                      #(ribcage
-                                                        #(e when-list w)
-                                                        #((top) (top) (top))
-                                                        #("i1918"
-                                                          "i1919"
-                                                          "i1920"))
-                                                      #(ribcage
-                                                        (lambda-var-list
-                                                          gen-var
-                                                          strip
-                                                          chi-lambda-case
-                                                          lambda*-formals
-                                                          chi-simple-lambda
-                                                          lambda-formals
-                                                          ellipsis?
-                                                          chi-void
-                                                          
eval-local-transformer
-                                                          chi-local-syntax
-                                                          chi-body
-                                                          chi-macro
-                                                          chi-application
-                                                          chi-expr
-                                                          chi
-                                                          chi-top
-                                                          syntax-type
-                                                          chi-when-list
-                                                          chi-install-global
-                                                          chi-top-sequence
-                                                          chi-sequence
-                                                          source-wrap
-                                                          wrap
-                                                          bound-id-member?
-                                                          distinct-bound-ids?
-                                                          valid-bound-ids?
-                                                          bound-id=?
-                                                          free-id=?
-                                                          id-var-name
-                                                          same-marks?
-                                                          join-marks
-                                                          join-wraps
-                                                          smart-append
-                                                          make-binding-wrap
-                                                          extend-ribcage!
-                                                          make-empty-ribcage
-                                                          new-mark
-                                                          anti-mark
-                                                          the-anti-mark
-                                                          top-marked?
-                                                          top-wrap
-                                                          empty-wrap
-                                                          set-ribcage-labels!
-                                                          set-ribcage-marks!
-                                                          set-ribcage-symnames!
-                                                          ribcage-labels
-                                                          ribcage-marks
-                                                          ribcage-symnames
-                                                          ribcage?
-                                                          make-ribcage
-                                                          gen-labels
-                                                          gen-label
-                                                          make-rename
-                                                          rename-marks
-                                                          rename-new
-                                                          rename-old
-                                                          subst-rename?
-                                                          wrap-subst
-                                                          wrap-marks
-                                                          make-wrap
-                                                          id-sym-name&marks
-                                                          id-sym-name
-                                                          id?
-                                                          nonsymbol-id?
-                                                          global-extend
-                                                          lookup
-                                                          macros-only-env
-                                                          extend-var-env
-                                                          extend-env
-                                                          null-env
-                                                          binding-value
-                                                          binding-type
-                                                          make-binding
-                                                          arg-check
-                                                          source-annotation
-                                                          no-source
-                                                          
set-syntax-object-module!
-                                                          
set-syntax-object-wrap!
-                                                          
set-syntax-object-expression!
-                                                          syntax-object-module
-                                                          syntax-object-wrap
-                                                          
syntax-object-expression
-                                                          syntax-object?
-                                                          make-syntax-object
-                                                          build-lexical-var
-                                                          build-letrec
-                                                          build-named-let
-                                                          build-let
-                                                          build-sequence
-                                                          build-data
-                                                          build-primref
-                                                          build-lambda-case
-                                                          build-case-lambda
-                                                          build-simple-lambda
-                                                          
build-global-definition
-                                                          maybe-name-value!
-                                                          
build-global-assignment
-                                                          
build-global-reference
-                                                          analyze-variable
-                                                          
build-lexical-assignment
-                                                          
build-lexical-reference
-                                                          build-dynlet
-                                                          build-conditional
-                                                          build-application
-                                                          build-void
-                                                          decorate-source
-                                                          
get-global-definition-hook
-                                                          
put-global-definition-hook
-                                                          gensym-hook
-                                                          local-eval-hook
-                                                          top-level-eval-hook
-                                                          fx<
-                                                          fx=
-                                                          fx-
-                                                          fx+
-                                                          set-lambda-meta!
-                                                          lambda-meta
-                                                          lambda?
-                                                          make-dynlet
-                                                          make-letrec
-                                                          make-let
-                                                          make-lambda-case
-                                                          make-lambda
-                                                          make-sequence
-                                                          make-application
-                                                          make-conditional
-                                                          make-toplevel-define
-                                                          make-toplevel-set
-                                                          make-toplevel-ref
-                                                          make-module-set
-                                                          make-module-ref
-                                                          make-lexical-set
-                                                          make-lexical-ref
-                                                          make-primitive-ref
-                                                          make-const
-                                                          make-void)
-                                                        ((top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top)
-                                                         (top))
-                                                        ("i486"
-                                                         "i484"
-                                                         "i482"
-                                                         "i480"
-                                                         "i478"
-                                                         "i476"
-                                                         "i474"
-                                                         "i472"
-                                                         "i470"
-                                                         "i468"
-                                                         "i466"
-                                                         "i464"
-                                                         "i462"
-                                                         "i460"
-                                                         "i458"
-                                                         "i456"
-                                                         "i454"
-                                                         "i452"
-                                                         "i450"
-                                                         "i448"
-                                                         "i446"
-                                                         "i444"
-                                                         "i442"
-                                                         "i440"
-                                                         "i438"
-                                                         "i436"
-                                                         "i434"
-                                                         "i432"
-                                                         "i430"
-                                                         "i428"
-                                                         "i426"
-                                                         "i424"
-                                                         "i422"
-                                                         "i420"
-                                                         "i418"
-                                                         "i416"
-                                                         "i415"
-                                                         "i414"
-                                                         "i412"
-                                                         "i411"
-                                                         "i410"
-                                                         "i409"
-                                                         "i408"
-                                                         "i406"
-                                                         "i404"
-                                                         "i402"
-                                                         "i400"
-                                                         "i398"
-                                                         "i396"
-                                                         "i394"
-                                                         "i392"
-                                                         "i389"
-                                                         "i387"
-                                                         "i386"
-                                                         "i385"
-                                                         "i384"
-                                                         "i383"
-                                                         "i382"
-                                                         "i380"
-                                                         "i378"
-                                                         "i376"
-                                                         "i374"
-                                                         "i373"
-                                                         "i371"
-                                                         "i369"
-                                                         "i367"
-                                                         "i365"
-                                                         "i363"
-                                                         "i361"
-                                                         "i359"
-                                                         "i358"
-                                                         "i356"
-                                                         "i354"
-                                                         "i353"
-                                                         "i352"
-                                                         "i350"
-                                                         "i349"
-                                                         "i347"
-                                                         "i345"
-                                                         "i343"
-                                                         "i341"
-                                                         "i339"
-                                                         "i337"
-                                                         "i335"
-                                                         "i333"
-                                                         "i331"
-                                                         "i329"
-                                                         "i327"
-                                                         "i325"
-                                                         "i323"
-                                                         "i321"
-                                                         "i319"
-                                                         "i317"
-                                                         "i315"
-                                                         "i313"
-                                                         "i311"
-                                                         "i309"
-                                                         "i307"
-                                                         "i305"
-                                                         "i303"
-                                                         "i301"
-                                                         "i299"
-                                                         "i297"
-                                                         "i295"
-                                                         "i293"
-                                                         "i291"
-                                                         "i289"
-                                                         "i287"
-                                                         "i285"
-                                                         "i284"
-                                                         "i282"
-                                                         "i280"
-                                                         "i278"
-                                                         "i276"
-                                                         "i274"
-                                                         "i272"
-                                                         "i270"
-                                                         "i268"
-                                                         "i266"
-                                                         "i263"
-                                                         "i261"
-                                                         "i259"
-                                                         "i257"
-                                                         "i255"
-                                                         "i253"
-                                                         "i251"
-                                                         "i249"
-                                                         "i247"
-                                                         "i245"
-                                                         "i243"
-                                                         "i241"
-                                                         "i239"
-                                                         "i237"
-                                                         "i235"
-                                                         "i233"
-                                                         "i231"
-                                                         "i229"))
-                                                      #(ribcage
-                                                        (define-structure
-                                                          
define-expansion-accessors
-                                                          
define-expansion-constructors
-                                                          and-map*)
-                                                        ((top)
-                                                         (top)
-                                                         (top)
-                                                         (top))
-                                                        ("i23"
-                                                         "i22"
-                                                         "i21"
-                                                         "i19")))
-                                                     (hygiene guile)))
-                                              'eval
-                                              (if (#{free-id=?\ 431}#
-                                                    #{x\ 1928}#
-                                                    '#(syntax-object
-                                                       expand
-                                                       ((top)
-                                                        #(ribcage () () ())
-                                                        #(ribcage () () ())
-                                                        #(ribcage () () ())
-                                                        #(ribcage
-                                                          #(x)
-                                                          #((top))
-                                                          #("i1927"))
-                                                        #(ribcage () () ())
-                                                        #(ribcage
-                                                          #(f
-                                                            when-list
-                                                            situations)
-                                                          #((top) (top) (top))
-                                                          #("i1921"
-                                                            "i1922"
-                                                            "i1923"))
-                                                        #(ribcage () () ())
-                                                        #(ribcage
-                                                          #(e when-list w)
-                                                          #((top) (top) (top))
-                                                          #("i1918"
-                                                            "i1919"
-                                                            "i1920"))
-                                                        #(ribcage
-                                                          (lambda-var-list
-                                                            gen-var
-                                                            strip
-                                                            chi-lambda-case
-                                                            lambda*-formals
-                                                            chi-simple-lambda
-                                                            lambda-formals
-                                                            ellipsis?
-                                                            chi-void
-                                                            
eval-local-transformer
-                                                            chi-local-syntax
-                                                            chi-body
-                                                            chi-macro
-                                                            chi-application
-                                                            chi-expr
-                                                            chi
-                                                            chi-top
-                                                            syntax-type
-                                                            chi-when-list
-                                                            chi-install-global
-                                                            chi-top-sequence
-                                                            chi-sequence
-                                                            source-wrap
-                                                            wrap
-                                                            bound-id-member?
-                                                            distinct-bound-ids?
-                                                            valid-bound-ids?
-                                                            bound-id=?
-                                                            free-id=?
-                                                            id-var-name
-                                                            same-marks?
-                                                            join-marks
-                                                            join-wraps
-                                                            smart-append
-                                                            make-binding-wrap
-                                                            extend-ribcage!
-                                                            make-empty-ribcage
-                                                            new-mark
-                                                            anti-mark
-                                                            the-anti-mark
-                                                            top-marked?
-                                                            top-wrap
-                                                            empty-wrap
-                                                            set-ribcage-labels!
-                                                            set-ribcage-marks!
-                                                            
set-ribcage-symnames!
-                                                            ribcage-labels
-                                                            ribcage-marks
-                                                            ribcage-symnames
-                                                            ribcage?
-                                                            make-ribcage
-                                                            gen-labels
-                                                            gen-label
-                                                            make-rename
-                                                            rename-marks
-                                                            rename-new
-                                                            rename-old
-                                                            subst-rename?
-                                                            wrap-subst
-                                                            wrap-marks
-                                                            make-wrap
-                                                            id-sym-name&marks
-                                                            id-sym-name
-                                                            id?
-                                                            nonsymbol-id?
-                                                            global-extend
-                                                            lookup
-                                                            macros-only-env
-                                                            extend-var-env
-                                                            extend-env
-                                                            null-env
-                                                            binding-value
-                                                            binding-type
-                                                            make-binding
-                                                            arg-check
-                                                            source-annotation
-                                                            no-source
-                                                            
set-syntax-object-module!
-                                                            
set-syntax-object-wrap!
-                                                            
set-syntax-object-expression!
-                                                            
syntax-object-module
-                                                            syntax-object-wrap
-                                                            
syntax-object-expression
-                                                            syntax-object?
-                                                            make-syntax-object
-                                                            build-lexical-var
-                                                            build-letrec
-                                                            build-named-let
-                                                            build-let
-                                                            build-sequence
-                                                            build-data
-                                                            build-primref
-                                                            build-lambda-case
-                                                            build-case-lambda
-                                                            build-simple-lambda
-                                                            
build-global-definition
-                                                            maybe-name-value!
-                                                            
build-global-assignment
-                                                            
build-global-reference
-                                                            analyze-variable
-                                                            
build-lexical-assignment
-                                                            
build-lexical-reference
-                                                            build-dynlet
-                                                            build-conditional
-                                                            build-application
-                                                            build-void
-                                                            decorate-source
-                                                            
get-global-definition-hook
-                                                            
put-global-definition-hook
-                                                            gensym-hook
-                                                            local-eval-hook
-                                                            top-level-eval-hook
-                                                            fx<
-                                                            fx=
-                                                            fx-
-                                                            fx+
-                                                            set-lambda-meta!
-                                                            lambda-meta
-                                                            lambda?
-                                                            make-dynlet
-                                                            make-letrec
-                                                            make-let
-                                                            make-lambda-case
-                                                            make-lambda
-                                                            make-sequence
-                                                            make-application
-                                                            make-conditional
-                                                            
make-toplevel-define
-                                                            make-toplevel-set
-                                                            make-toplevel-ref
-                                                            make-module-set
-                                                            make-module-ref
-                                                            make-lexical-set
-                                                            make-lexical-ref
-                                                            make-primitive-ref
-                                                            make-const
-                                                            make-void)
-                                                          ((top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top))
-                                                          ("i486"
-                                                           "i484"
-                                                           "i482"
-                                                           "i480"
-                                                           "i478"
-                                                           "i476"
-                                                           "i474"
-                                                           "i472"
-                                                           "i470"
-                                                           "i468"
-                                                           "i466"
-                                                           "i464"
-                                                           "i462"
-                                                           "i460"
-                                                           "i458"
-                                                           "i456"
-                                                           "i454"
-                                                           "i452"
-                                                           "i450"
-                                                           "i448"
-                                                           "i446"
-                                                           "i444"
-                                                           "i442"
-                                                           "i440"
-                                                           "i438"
-                                                           "i436"
-                                                           "i434"
-                                                           "i432"
-                                                           "i430"
-                                                           "i428"
-                                                           "i426"
-                                                           "i424"
-                                                           "i422"
-                                                           "i420"
-                                                           "i418"
-                                                           "i416"
-                                                           "i415"
-                                                           "i414"
-                                                           "i412"
-                                                           "i411"
-                                                           "i410"
-                                                           "i409"
-                                                           "i408"
-                                                           "i406"
-                                                           "i404"
-                                                           "i402"
-                                                           "i400"
-                                                           "i398"
-                                                           "i396"
-                                                           "i394"
-                                                           "i392"
-                                                           "i389"
-                                                           "i387"
-                                                           "i386"
-                                                           "i385"
-                                                           "i384"
-                                                           "i383"
-                                                           "i382"
-                                                           "i380"
-                                                           "i378"
-                                                           "i376"
-                                                           "i374"
-                                                           "i373"
-                                                           "i371"
-                                                           "i369"
-                                                           "i367"
-                                                           "i365"
-                                                           "i363"
-                                                           "i361"
-                                                           "i359"
-                                                           "i358"
-                                                           "i356"
-                                                           "i354"
-                                                           "i353"
-                                                           "i352"
-                                                           "i350"
-                                                           "i349"
-                                                           "i347"
-                                                           "i345"
-                                                           "i343"
-                                                           "i341"
-                                                           "i339"
-                                                           "i337"
-                                                           "i335"
-                                                           "i333"
-                                                           "i331"
-                                                           "i329"
-                                                           "i327"
-                                                           "i325"
-                                                           "i323"
-                                                           "i321"
-                                                           "i319"
-                                                           "i317"
-                                                           "i315"
-                                                           "i313"
-                                                           "i311"
-                                                           "i309"
-                                                           "i307"
-                                                           "i305"
-                                                           "i303"
-                                                           "i301"
-                                                           "i299"
-                                                           "i297"
-                                                           "i295"
-                                                           "i293"
-                                                           "i291"
-                                                           "i289"
-                                                           "i287"
-                                                           "i285"
-                                                           "i284"
-                                                           "i282"
-                                                           "i280"
-                                                           "i278"
-                                                           "i276"
-                                                           "i274"
-                                                           "i272"
-                                                           "i270"
-                                                           "i268"
-                                                           "i266"
-                                                           "i263"
-                                                           "i261"
-                                                           "i259"
-                                                           "i257"
-                                                           "i255"
-                                                           "i253"
-                                                           "i251"
-                                                           "i249"
-                                                           "i247"
-                                                           "i245"
-                                                           "i243"
-                                                           "i241"
-                                                           "i239"
-                                                           "i237"
-                                                           "i235"
-                                                           "i233"
-                                                           "i231"
-                                                           "i229"))
-                                                        #(ribcage
-                                                          (define-structure
-                                                            
define-expansion-accessors
-                                                            
define-expansion-constructors
-                                                            and-map*)
-                                                          ((top)
-                                                           (top)
-                                                           (top)
-                                                           (top))
-                                                          ("i23"
-                                                           "i22"
-                                                           "i21"
-                                                           "i19")))
-                                                       (hygiene guile)))
-                                                'expand
-                                                (syntax-violation
-                                                  'eval-when
-                                                  "invalid situation"
-                                                  #{e\ 1915}#
-                                                  (#{wrap\ 441}#
-                                                    #{x\ 1928}#
-                                                    #{w\ 1917}#
-                                                    #f)))))))
-                                      #{situations\ 1926}#))))))
-                 (#{f\ 1924}# #{when-list\ 1916}# (quote ())))))
-           (#{chi-install-global\ 449}#
-             (lambda (#{name\ 1938}# #{e\ 1939}#)
-               (#{build-global-definition\ 312}#
+                                          'expand
+                                          (syntax-violation
+                                            'eval-when
+                                            "invalid situation"
+                                            #{e\ 1930}#
+                                            (#{wrap\ 456}#
+                                              #{x\ 1943}#
+                                              #{w\ 1932}#
+                                              #f))))))))
+                              #{situations\ 1941}#))))))
+               (begin
+                 (#{f\ 1939}# #{when-list\ 1931}# (quote ()))))))
+         (#{chi-install-global\ 464}#
+           (lambda (#{name\ 1953}# #{e\ 1954}#)
+             (#{build-global-definition\ 327}#
+               #f
+               #{name\ 1953}#
+               (#{build-application\ 309}#
                  #f
-                 #{name\ 1938}#
-                 (#{build-application\ 294}#
+                 (#{build-primref\ 335}#
                    #f
-                   (#{build-primref\ 320}#
-                     #f
-                     'make-syntax-transformer)
-                   (list (#{build-data\ 322}# #f #{name\ 1938}#)
-                         (#{build-data\ 322}# #f (quote macro))
-                         #{e\ 1939}#)))))
-           (#{chi-top-sequence\ 447}#
-             (lambda (#{body\ 1947}#
-                      #{r\ 1948}#
-                      #{w\ 1949}#
-                      #{s\ 1950}#
-                      #{m\ 1951}#
-                      #{esew\ 1952}#
-                      #{mod\ 1953}#)
-               (#{build-sequence\ 324}#
-                 #{s\ 1950}#
-                 (letrec ((#{dobody\ 1969}#
-                            (lambda (#{body\ 1970}#
-                                     #{r\ 1971}#
-                                     #{w\ 1972}#
-                                     #{m\ 1973}#
-                                     #{esew\ 1974}#
-                                     #{mod\ 1975}#
-                                     #{out\ 1976}#)
-                              (if (null? #{body\ 1970}#)
-                                (reverse #{out\ 1976}#)
-                                (#{dobody\ 1969}#
-                                  (cdr #{body\ 1970}#)
-                                  #{r\ 1971}#
-                                  #{w\ 1972}#
-                                  #{m\ 1973}#
-                                  #{esew\ 1974}#
-                                  #{mod\ 1975}#
-                                  (cons (#{chi-top\ 455}#
-                                          (car #{body\ 1970}#)
-                                          #{r\ 1971}#
-                                          #{w\ 1972}#
-                                          #{m\ 1973}#
-                                          #{esew\ 1974}#
-                                          #{mod\ 1975}#)
-                                        #{out\ 1976}#))))))
-                   (#{dobody\ 1969}#
-                     #{body\ 1947}#
-                     #{r\ 1948}#
-                     #{w\ 1949}#
-                     #{m\ 1951}#
-                     #{esew\ 1952}#
-                     #{mod\ 1953}#
-                     '())))))
-           (#{chi-sequence\ 445}#
-             (lambda (#{body\ 1977}#
-                      #{r\ 1978}#
-                      #{w\ 1979}#
-                      #{s\ 1980}#
-                      #{mod\ 1981}#)
-               (#{build-sequence\ 324}#
-                 #{s\ 1980}#
-                 (letrec ((#{dobody\ 1992}#
-                            (lambda (#{body\ 1993}#
-                                     #{r\ 1994}#
-                                     #{w\ 1995}#
-                                     #{mod\ 1996}#)
-                              (if (null? #{body\ 1993}#)
-                                '()
-                                (let ((#{first\ 1998}#
-                                        (#{chi\ 457}#
-                                          (car #{body\ 1993}#)
-                                          #{r\ 1994}#
-                                          #{w\ 1995}#
-                                          #{mod\ 1996}#)))
-                                  (cons #{first\ 1998}#
-                                        (#{dobody\ 1992}#
-                                          (cdr #{body\ 1993}#)
-                                          #{r\ 1994}#
-                                          #{w\ 1995}#
-                                          #{mod\ 1996}#)))))))
-                   (#{dobody\ 1992}#
-                     #{body\ 1977}#
-                     #{r\ 1978}#
-                     #{w\ 1979}#
-                     #{mod\ 1981}#)))))
-           (#{source-wrap\ 443}#
-             (lambda (#{x\ 1999}#
-                      #{w\ 2000}#
-                      #{s\ 2001}#
-                      #{defmod\ 2002}#)
-               (#{wrap\ 441}#
-                 (#{decorate-source\ 290}#
-                   #{x\ 1999}#
-                   #{s\ 2001}#)
-                 #{w\ 2000}#
-                 #{defmod\ 2002}#)))
-           (#{wrap\ 441}#
-             (lambda (#{x\ 2007}# #{w\ 2008}# #{defmod\ 2009}#)
-               (if (if (null? (#{wrap-marks\ 379}# #{w\ 2008}#))
-                     (null? (#{wrap-subst\ 381}# #{w\ 2008}#))
-                     #f)
-                 #{x\ 2007}#
-                 (if (#{syntax-object?\ 336}# #{x\ 2007}#)
-                   (#{make-syntax-object\ 334}#
-                     (#{syntax-object-expression\ 338}# #{x\ 2007}#)
-                     (#{join-wraps\ 423}#
-                       #{w\ 2008}#
-                       (#{syntax-object-wrap\ 340}# #{x\ 2007}#))
-                     (#{syntax-object-module\ 342}# #{x\ 2007}#))
-                   (if (null? #{x\ 2007}#)
-                     #{x\ 2007}#
-                     (#{make-syntax-object\ 334}#
-                       #{x\ 2007}#
-                       #{w\ 2008}#
-                       #{defmod\ 2009}#))))))
-           (#{bound-id-member?\ 439}#
-             (lambda (#{x\ 2022}# #{list\ 2023}#)
-               (if (not (null? #{list\ 2023}#))
-                 (let ((#{t\ 2030}#
-                         (#{bound-id=?\ 433}#
-                           #{x\ 2022}#
-                           (car #{list\ 2023}#))))
-                   (if #{t\ 2030}#
-                     #{t\ 2030}#
-                     (#{bound-id-member?\ 439}#
-                       #{x\ 2022}#
-                       (cdr #{list\ 2023}#))))
-                 #f)))
-           (#{distinct-bound-ids?\ 437}#
-             (lambda (#{ids\ 2032}#)
-               (letrec ((#{distinct?\ 2036}#
-                          (lambda (#{ids\ 2037}#)
-                            (let ((#{t\ 2040}# (null? #{ids\ 2037}#)))
-                              (if #{t\ 2040}#
-                                #{t\ 2040}#
-                                (if (not (#{bound-id-member?\ 439}#
-                                           (car #{ids\ 2037}#)
-                                           (cdr #{ids\ 2037}#)))
-                                  (#{distinct?\ 2036}# (cdr #{ids\ 2037}#))
-                                  #f))))))
-                 (#{distinct?\ 2036}# #{ids\ 2032}#))))
-           (#{valid-bound-ids?\ 435}#
-             (lambda (#{ids\ 2044}#)
-               (if (letrec ((#{all-ids?\ 2049}#
-                              (lambda (#{ids\ 2050}#)
-                                (let ((#{t\ 2053}# (null? #{ids\ 2050}#)))
-                                  (if #{t\ 2053}#
-                                    #{t\ 2053}#
-                                    (if (#{id?\ 372}# (car #{ids\ 2050}#))
-                                      (#{all-ids?\ 2049}# (cdr #{ids\ 2050}#))
-                                      #f))))))
-                     (#{all-ids?\ 2049}# #{ids\ 2044}#))
-                 (#{distinct-bound-ids?\ 437}# #{ids\ 2044}#)
-                 #f)))
-           (#{bound-id=?\ 433}#
-             (lambda (#{i\ 2058}# #{j\ 2059}#)
-               (if (if (#{syntax-object?\ 336}# #{i\ 2058}#)
-                     (#{syntax-object?\ 336}# #{j\ 2059}#)
-                     #f)
-                 (if (eq? (#{syntax-object-expression\ 338}# #{i\ 2058}#)
-                          (#{syntax-object-expression\ 338}# #{j\ 2059}#))
-                   (#{same-marks?\ 427}#
-                     (#{wrap-marks\ 379}#
-                       (#{syntax-object-wrap\ 340}# #{i\ 2058}#))
-                     (#{wrap-marks\ 379}#
-                       (#{syntax-object-wrap\ 340}# #{j\ 2059}#)))
+                   'make-syntax-transformer)
+                 (list (#{build-data\ 337}# #f #{name\ 1953}#)
+                       (#{build-data\ 337}# #f (quote macro))
+                       #{e\ 1954}#)))))
+         (#{chi-top-sequence\ 462}#
+           (lambda (#{body\ 1962}#
+                    #{r\ 1963}#
+                    #{w\ 1964}#
+                    #{s\ 1965}#
+                    #{m\ 1966}#
+                    #{esew\ 1967}#
+                    #{mod\ 1968}#)
+             (#{build-sequence\ 339}#
+               #{s\ 1965}#
+               (letrec*
+                 ((#{dobody\ 1984}#
+                    (lambda (#{body\ 1985}#
+                             #{r\ 1986}#
+                             #{w\ 1987}#
+                             #{m\ 1988}#
+                             #{esew\ 1989}#
+                             #{mod\ 1990}#
+                             #{out\ 1991}#)
+                      (if (null? #{body\ 1985}#)
+                        (reverse #{out\ 1991}#)
+                        (#{dobody\ 1984}#
+                          (cdr #{body\ 1985}#)
+                          #{r\ 1986}#
+                          #{w\ 1987}#
+                          #{m\ 1988}#
+                          #{esew\ 1989}#
+                          #{mod\ 1990}#
+                          (cons (#{chi-top\ 470}#
+                                  (car #{body\ 1985}#)
+                                  #{r\ 1986}#
+                                  #{w\ 1987}#
+                                  #{m\ 1988}#
+                                  #{esew\ 1989}#
+                                  #{mod\ 1990}#)
+                                #{out\ 1991}#))))))
+                 (begin
+                   (#{dobody\ 1984}#
+                     #{body\ 1962}#
+                     #{r\ 1963}#
+                     #{w\ 1964}#
+                     #{m\ 1966}#
+                     #{esew\ 1967}#
+                     #{mod\ 1968}#
+                     '()))))))
+         (#{chi-sequence\ 460}#
+           (lambda (#{body\ 1992}#
+                    #{r\ 1993}#
+                    #{w\ 1994}#
+                    #{s\ 1995}#
+                    #{mod\ 1996}#)
+             (#{build-sequence\ 339}#
+               #{s\ 1995}#
+               (letrec*
+                 ((#{dobody\ 2007}#
+                    (lambda (#{body\ 2008}#
+                             #{r\ 2009}#
+                             #{w\ 2010}#
+                             #{mod\ 2011}#)
+                      (if (null? #{body\ 2008}#)
+                        '()
+                        (begin
+                          (let ((#{first\ 2013}#
+                                  (#{chi\ 472}#
+                                    (car #{body\ 2008}#)
+                                    #{r\ 2009}#
+                                    #{w\ 2010}#
+                                    #{mod\ 2011}#)))
+                            (cons #{first\ 2013}#
+                                  (#{dobody\ 2007}#
+                                    (cdr #{body\ 2008}#)
+                                    #{r\ 2009}#
+                                    #{w\ 2010}#
+                                    #{mod\ 2011}#))))))))
+                 (begin
+                   (#{dobody\ 2007}#
+                     #{body\ 1992}#
+                     #{r\ 1993}#
+                     #{w\ 1994}#
+                     #{mod\ 1996}#))))))
+         (#{source-wrap\ 458}#
+           (lambda (#{x\ 2014}#
+                    #{w\ 2015}#
+                    #{s\ 2016}#
+                    #{defmod\ 2017}#)
+             (#{wrap\ 456}#
+               (#{decorate-source\ 305}#
+                 #{x\ 2014}#
+                 #{s\ 2016}#)
+               #{w\ 2015}#
+               #{defmod\ 2017}#)))
+         (#{wrap\ 456}#
+           (lambda (#{x\ 2022}# #{w\ 2023}# #{defmod\ 2024}#)
+             (if (if (null? (#{wrap-marks\ 394}# #{w\ 2023}#))
+                   (null? (#{wrap-subst\ 396}# #{w\ 2023}#))
                    #f)
-                 (eq? #{i\ 2058}# #{j\ 2059}#))))
-           (#{free-id=?\ 431}#
-             (lambda (#{i\ 2066}# #{j\ 2067}#)
-               (if (eq? (let ((#{x\ 2073}# #{i\ 2066}#))
-                          (if (#{syntax-object?\ 336}# #{x\ 2073}#)
-                            (#{syntax-object-expression\ 338}# #{x\ 2073}#)
-                            #{x\ 2073}#))
-                        (let ((#{x\ 2076}# #{j\ 2067}#))
-                          (if (#{syntax-object?\ 336}# #{x\ 2076}#)
-                            (#{syntax-object-expression\ 338}# #{x\ 2076}#)
-                            #{x\ 2076}#)))
-                 (eq? (#{id-var-name\ 429}# #{i\ 2066}# (quote (())))
-                      (#{id-var-name\ 429}# #{j\ 2067}# (quote (()))))
-                 #f)))
-           (#{id-var-name\ 429}#
-             (lambda (#{id\ 2080}# #{w\ 2081}#)
-               (letrec ((#{search-vector-rib\ 2090}#
-                          (lambda (#{sym\ 2102}#
-                                   #{subst\ 2103}#
-                                   #{marks\ 2104}#
-                                   #{symnames\ 2105}#
-                                   #{ribcage\ 2106}#)
-                            (let ((#{n\ 2113}#
-                                    (vector-length #{symnames\ 2105}#)))
-                              (letrec ((#{f\ 2116}#
-                                         (lambda (#{i\ 2117}#)
-                                           (if (#{fx=\ 277}#
-                                                 #{i\ 2117}#
-                                                 #{n\ 2113}#)
-                                             (#{search\ 2086}#
-                                               #{sym\ 2102}#
-                                               (cdr #{subst\ 2103}#)
-                                               #{marks\ 2104}#)
-                                             (if (if (eq? (vector-ref
-                                                            #{symnames\ 2105}#
-                                                            #{i\ 2117}#)
-                                                          #{sym\ 2102}#)
-                                                   (#{same-marks?\ 427}#
-                                                     #{marks\ 2104}#
-                                                     (vector-ref
-                                                       (#{ribcage-marks\ 399}#
-                                                         #{ribcage\ 2106}#)
-                                                       #{i\ 2117}#))
-                                                   #f)
-                                               (values
-                                                 (vector-ref
-                                                   (#{ribcage-labels\ 401}#
-                                                     #{ribcage\ 2106}#)
-                                                   #{i\ 2117}#)
-                                                 #{marks\ 2104}#)
-                                               (#{f\ 2116}#
-                                                 (#{fx+\ 273}#
-                                                   #{i\ 2117}#
-                                                   1)))))))
-                                (#{f\ 2116}# 0)))))
-                        (#{search-list-rib\ 2088}#
-                          (lambda (#{sym\ 2125}#
-                                   #{subst\ 2126}#
-                                   #{marks\ 2127}#
-                                   #{symnames\ 2128}#
-                                   #{ribcage\ 2129}#)
-                            (letrec ((#{f\ 2138}#
-                                       (lambda (#{symnames\ 2139}# #{i\ 2140}#)
-                                         (if (null? #{symnames\ 2139}#)
-                                           (#{search\ 2086}#
-                                             #{sym\ 2125}#
-                                             (cdr #{subst\ 2126}#)
-                                             #{marks\ 2127}#)
-                                           (if (if (eq? (car #{symnames\ 
2139}#)
-                                                        #{sym\ 2125}#)
-                                                 (#{same-marks?\ 427}#
-                                                   #{marks\ 2127}#
-                                                   (list-ref
-                                                     (#{ribcage-marks\ 399}#
-                                                       #{ribcage\ 2129}#)
-                                                     #{i\ 2140}#))
-                                                 #f)
-                                             (values
-                                               (list-ref
-                                                 (#{ribcage-labels\ 401}#
-                                                   #{ribcage\ 2129}#)
-                                                 #{i\ 2140}#)
-                                               #{marks\ 2127}#)
-                                             (#{f\ 2138}#
-                                               (cdr #{symnames\ 2139}#)
-                                               (#{fx+\ 273}#
-                                                 #{i\ 2140}#
-                                                 1)))))))
-                              (#{f\ 2138}# #{symnames\ 2128}# 0))))
-                        (#{search\ 2086}#
-                          (lambda (#{sym\ 2148}#
-                                   #{subst\ 2149}#
-                                   #{marks\ 2150}#)
-                            (if (null? #{subst\ 2149}#)
-                              (values #f #{marks\ 2150}#)
-                              (let ((#{fst\ 2155}# (car #{subst\ 2149}#)))
-                                (if (eq? #{fst\ 2155}# (quote shift))
-                                  (#{search\ 2086}#
-                                    #{sym\ 2148}#
-                                    (cdr #{subst\ 2149}#)
-                                    (cdr #{marks\ 2150}#))
-                                  (let ((#{symnames\ 2157}#
-                                          (#{ribcage-symnames\ 397}#
-                                            #{fst\ 2155}#)))
-                                    (if (vector? #{symnames\ 2157}#)
-                                      (#{search-vector-rib\ 2090}#
-                                        #{sym\ 2148}#
-                                        #{subst\ 2149}#
-                                        #{marks\ 2150}#
-                                        #{symnames\ 2157}#
-                                        #{fst\ 2155}#)
-                                      (#{search-list-rib\ 2088}#
-                                        #{sym\ 2148}#
-                                        #{subst\ 2149}#
-                                        #{marks\ 2150}#
-                                        #{symnames\ 2157}#
-                                        #{fst\ 2155}#)))))))))
-                 (if (symbol? #{id\ 2080}#)
-                   (let ((#{t\ 2160}#
-                           (call-with-values
-                             (lambda ()
-                               (#{search\ 2086}#
-                                 #{id\ 2080}#
-                                 (#{wrap-subst\ 381}# #{w\ 2081}#)
-                                 (#{wrap-marks\ 379}# #{w\ 2081}#)))
-                             (lambda (#{x\ 2162}# . #{ignore\ 2163}#)
-                               #{x\ 2162}#))))
-                     (if #{t\ 2160}# #{t\ 2160}# #{id\ 2080}#))
-                   (if (#{syntax-object?\ 336}# #{id\ 2080}#)
-                     (let ((#{id\ 2171}#
-                             (#{syntax-object-expression\ 338}# #{id\ 2080}#))
-                           (#{w1\ 2172}#
-                             (#{syntax-object-wrap\ 340}# #{id\ 2080}#)))
-                       (let ((#{marks\ 2174}#
-                               (#{join-marks\ 425}#
-                                 (#{wrap-marks\ 379}# #{w\ 2081}#)
-                                 (#{wrap-marks\ 379}# #{w1\ 2172}#))))
-                         (call-with-values
-                           (lambda ()
-                             (#{search\ 2086}#
-                               #{id\ 2171}#
-                               (#{wrap-subst\ 381}# #{w\ 2081}#)
-                               #{marks\ 2174}#))
-                           (lambda (#{new-id\ 2175}# #{marks\ 2176}#)
-                             (let ((#{t\ 2181}# #{new-id\ 2175}#))
-                               (if #{t\ 2181}#
-                                 #{t\ 2181}#
-                                 (let ((#{t\ 2184}#
-                                         (call-with-values
-                                           (lambda ()
-                                             (#{search\ 2086}#
-                                               #{id\ 2171}#
-                                               (#{wrap-subst\ 381}#
-                                                 #{w1\ 2172}#)
-                                               #{marks\ 2176}#))
-                                           (lambda (#{x\ 2186}#
-                                                    .
-                                                    #{ignore\ 2187}#)
-                                             #{x\ 2186}#))))
-                                   (if #{t\ 2184}#
-                                     #{t\ 2184}#
-                                     #{id\ 2171}#))))))))
+               #{x\ 2022}#
+               (if (#{syntax-object?\ 351}# #{x\ 2022}#)
+                 (#{make-syntax-object\ 349}#
+                   (#{syntax-object-expression\ 353}# #{x\ 2022}#)
+                   (#{join-wraps\ 438}#
+                     #{w\ 2023}#
+                     (#{syntax-object-wrap\ 355}# #{x\ 2022}#))
+                   (#{syntax-object-module\ 357}# #{x\ 2022}#))
+                 (if (null? #{x\ 2022}#)
+                   #{x\ 2022}#
+                   (#{make-syntax-object\ 349}#
+                     #{x\ 2022}#
+                     #{w\ 2023}#
+                     #{defmod\ 2024}#))))))
+         (#{bound-id-member?\ 454}#
+           (lambda (#{x\ 2037}# #{list\ 2038}#)
+             (if (not (null? #{list\ 2038}#))
+               (begin
+                 (let ((#{t\ 2045}#
+                         (#{bound-id=?\ 448}#
+                           #{x\ 2037}#
+                           (car #{list\ 2038}#))))
+                   (if #{t\ 2045}#
+                     #{t\ 2045}#
+                     (#{bound-id-member?\ 454}#
+                       #{x\ 2037}#
+                       (cdr #{list\ 2038}#)))))
+               #f)))
+         (#{distinct-bound-ids?\ 452}#
+           (lambda (#{ids\ 2047}#)
+             (letrec*
+               ((#{distinct?\ 2051}#
+                  (lambda (#{ids\ 2052}#)
+                    (begin
+                      (let ((#{t\ 2055}# (null? #{ids\ 2052}#)))
+                        (if #{t\ 2055}#
+                          #{t\ 2055}#
+                          (if (not (#{bound-id-member?\ 454}#
+                                     (car #{ids\ 2052}#)
+                                     (cdr #{ids\ 2052}#)))
+                            (#{distinct?\ 2051}# (cdr #{ids\ 2052}#))
+                            #f)))))))
+               (begin (#{distinct?\ 2051}# #{ids\ 2047}#)))))
+         (#{valid-bound-ids?\ 450}#
+           (lambda (#{ids\ 2059}#)
+             (if (letrec*
+                   ((#{all-ids?\ 2064}#
+                      (lambda (#{ids\ 2065}#)
+                        (begin
+                          (let ((#{t\ 2068}# (null? #{ids\ 2065}#)))
+                            (if #{t\ 2068}#
+                              #{t\ 2068}#
+                              (if (#{id?\ 387}# (car #{ids\ 2065}#))
+                                (#{all-ids?\ 2064}# (cdr #{ids\ 2065}#))
+                                #f)))))))
+                   (begin (#{all-ids?\ 2064}# #{ids\ 2059}#)))
+               (#{distinct-bound-ids?\ 452}# #{ids\ 2059}#)
+               #f)))
+         (#{bound-id=?\ 448}#
+           (lambda (#{i\ 2073}# #{j\ 2074}#)
+             (if (if (#{syntax-object?\ 351}# #{i\ 2073}#)
+                   (#{syntax-object?\ 351}# #{j\ 2074}#)
+                   #f)
+               (if (eq? (#{syntax-object-expression\ 353}# #{i\ 2073}#)
+                        (#{syntax-object-expression\ 353}# #{j\ 2074}#))
+                 (#{same-marks?\ 442}#
+                   (#{wrap-marks\ 394}#
+                     (#{syntax-object-wrap\ 355}# #{i\ 2073}#))
+                   (#{wrap-marks\ 394}#
+                     (#{syntax-object-wrap\ 355}# #{j\ 2074}#)))
+                 #f)
+               (eq? #{i\ 2073}# #{j\ 2074}#))))
+         (#{free-id=?\ 446}#
+           (lambda (#{i\ 2081}# #{j\ 2082}#)
+             (if (eq? (begin
+                        (let ((#{x\ 2088}# #{i\ 2081}#))
+                          (if (#{syntax-object?\ 351}# #{x\ 2088}#)
+                            (#{syntax-object-expression\ 353}# #{x\ 2088}#)
+                            #{x\ 2088}#)))
+                      (begin
+                        (let ((#{x\ 2091}# #{j\ 2082}#))
+                          (if (#{syntax-object?\ 351}# #{x\ 2091}#)
+                            (#{syntax-object-expression\ 353}# #{x\ 2091}#)
+                            #{x\ 2091}#))))
+               (eq? (#{id-var-name\ 444}# #{i\ 2081}# (quote (())))
+                    (#{id-var-name\ 444}# #{j\ 2082}# (quote (()))))
+               #f)))
+         (#{id-var-name\ 444}#
+           (lambda (#{id\ 2095}# #{w\ 2096}#)
+             (letrec*
+               ((#{search-vector-rib\ 2105}#
+                  (lambda (#{sym\ 2117}#
+                           #{subst\ 2118}#
+                           #{marks\ 2119}#
+                           #{symnames\ 2120}#
+                           #{ribcage\ 2121}#)
+                    (begin
+                      (let ((#{n\ 2128}# (vector-length #{symnames\ 2120}#)))
+                        (letrec*
+                          ((#{f\ 2131}#
+                             (lambda (#{i\ 2132}#)
+                               (if (#{fx=\ 292}# #{i\ 2132}# #{n\ 2128}#)
+                                 (#{search\ 2101}#
+                                   #{sym\ 2117}#
+                                   (cdr #{subst\ 2118}#)
+                                   #{marks\ 2119}#)
+                                 (if (if (eq? (vector-ref
+                                                #{symnames\ 2120}#
+                                                #{i\ 2132}#)
+                                              #{sym\ 2117}#)
+                                       (#{same-marks?\ 442}#
+                                         #{marks\ 2119}#
+                                         (vector-ref
+                                           (#{ribcage-marks\ 414}#
+                                             #{ribcage\ 2121}#)
+                                           #{i\ 2132}#))
+                                       #f)
+                                   (values
+                                     (vector-ref
+                                       (#{ribcage-labels\ 416}#
+                                         #{ribcage\ 2121}#)
+                                       #{i\ 2132}#)
+                                     #{marks\ 2119}#)
+                                   (#{f\ 2131}#
+                                     (#{fx+\ 288}# #{i\ 2132}# 1)))))))
+                          (begin (#{f\ 2131}# 0)))))))
+                (#{search-list-rib\ 2103}#
+                  (lambda (#{sym\ 2140}#
+                           #{subst\ 2141}#
+                           #{marks\ 2142}#
+                           #{symnames\ 2143}#
+                           #{ribcage\ 2144}#)
+                    (letrec*
+                      ((#{f\ 2153}#
+                         (lambda (#{symnames\ 2154}# #{i\ 2155}#)
+                           (if (null? #{symnames\ 2154}#)
+                             (#{search\ 2101}#
+                               #{sym\ 2140}#
+                               (cdr #{subst\ 2141}#)
+                               #{marks\ 2142}#)
+                             (if (if (eq? (car #{symnames\ 2154}#)
+                                          #{sym\ 2140}#)
+                                   (#{same-marks?\ 442}#
+                                     #{marks\ 2142}#
+                                     (list-ref
+                                       (#{ribcage-marks\ 414}#
+                                         #{ribcage\ 2144}#)
+                                       #{i\ 2155}#))
+                                   #f)
+                               (values
+                                 (list-ref
+                                   (#{ribcage-labels\ 416}# #{ribcage\ 2144}#)
+                                   #{i\ 2155}#)
+                                 #{marks\ 2142}#)
+                               (#{f\ 2153}#
+                                 (cdr #{symnames\ 2154}#)
+                                 (#{fx+\ 288}# #{i\ 2155}# 1)))))))
+                      (begin (#{f\ 2153}# #{symnames\ 2143}# 0)))))
+                (#{search\ 2101}#
+                  (lambda (#{sym\ 2163}# #{subst\ 2164}# #{marks\ 2165}#)
+                    (if (null? #{subst\ 2164}#)
+                      (values #f #{marks\ 2165}#)
+                      (begin
+                        (let ((#{fst\ 2170}# (car #{subst\ 2164}#)))
+                          (if (eq? #{fst\ 2170}# (quote shift))
+                            (#{search\ 2101}#
+                              #{sym\ 2163}#
+                              (cdr #{subst\ 2164}#)
+                              (cdr #{marks\ 2165}#))
+                            (begin
+                              (let ((#{symnames\ 2172}#
+                                      (#{ribcage-symnames\ 412}#
+                                        #{fst\ 2170}#)))
+                                (if (vector? #{symnames\ 2172}#)
+                                  (#{search-vector-rib\ 2105}#
+                                    #{sym\ 2163}#
+                                    #{subst\ 2164}#
+                                    #{marks\ 2165}#
+                                    #{symnames\ 2172}#
+                                    #{fst\ 2170}#)
+                                  (#{search-list-rib\ 2103}#
+                                    #{sym\ 2163}#
+                                    #{subst\ 2164}#
+                                    #{marks\ 2165}#
+                                    #{symnames\ 2172}#
+                                    #{fst\ 2170}#)))))))))))
+               (begin
+                 (if (symbol? #{id\ 2095}#)
+                   (begin
+                     (let ((#{t\ 2175}#
+                             (call-with-values
+                               (lambda ()
+                                 (#{search\ 2101}#
+                                   #{id\ 2095}#
+                                   (#{wrap-subst\ 396}# #{w\ 2096}#)
+                                   (#{wrap-marks\ 394}# #{w\ 2096}#)))
+                               (lambda (#{x\ 2177}# . #{ignore\ 2178}#)
+                                 #{x\ 2177}#))))
+                       (if #{t\ 2175}# #{t\ 2175}# #{id\ 2095}#)))
+                   (if (#{syntax-object?\ 351}# #{id\ 2095}#)
+                     (begin
+                       (let ((#{id\ 2186}#
+                               (#{syntax-object-expression\ 353}#
+                                 #{id\ 2095}#))
+                             (#{w1\ 2187}#
+                               (#{syntax-object-wrap\ 355}# #{id\ 2095}#)))
+                         (begin
+                           (let ((#{marks\ 2189}#
+                                   (#{join-marks\ 440}#
+                                     (#{wrap-marks\ 394}# #{w\ 2096}#)
+                                     (#{wrap-marks\ 394}# #{w1\ 2187}#))))
+                             (call-with-values
+                               (lambda ()
+                                 (#{search\ 2101}#
+                                   #{id\ 2186}#
+                                   (#{wrap-subst\ 396}# #{w\ 2096}#)
+                                   #{marks\ 2189}#))
+                               (lambda (#{new-id\ 2190}# #{marks\ 2191}#)
+                                 (begin
+                                   (let ((#{t\ 2196}# #{new-id\ 2190}#))
+                                     (if #{t\ 2196}#
+                                       #{t\ 2196}#
+                                       (begin
+                                         (let ((#{t\ 2199}#
+                                                 (call-with-values
+                                                   (lambda ()
+                                                     (#{search\ 2101}#
+                                                       #{id\ 2186}#
+                                                       (#{wrap-subst\ 396}#
+                                                         #{w1\ 2187}#)
+                                                       #{marks\ 2191}#))
+                                                   (lambda (#{x\ 2201}#
+                                                            .
+                                                            #{ignore\ 2202}#)
+                                                     #{x\ 2201}#))))
+                                           (if #{t\ 2199}#
+                                             #{t\ 2199}#
+                                             #{id\ 2186}#))))))))))))
                      (syntax-violation
                        'id-var-name
                        "invalid id"
-                       #{id\ 2080}#))))))
-           (#{same-marks?\ 427}#
-             (lambda (#{x\ 2192}# #{y\ 2193}#)
-               (let ((#{t\ 2198}# (eq? #{x\ 2192}# #{y\ 2193}#)))
-                 (if #{t\ 2198}#
-                   #{t\ 2198}#
-                   (if (not (null? #{x\ 2192}#))
-                     (if (not (null? #{y\ 2193}#))
-                       (if (eq? (car #{x\ 2192}#) (car #{y\ 2193}#))
-                         (#{same-marks?\ 427}#
-                           (cdr #{x\ 2192}#)
-                           (cdr #{y\ 2193}#))
+                       #{id\ 2095}#)))))))
+         (#{same-marks?\ 442}#
+           (lambda (#{x\ 2207}# #{y\ 2208}#)
+             (begin
+               (let ((#{t\ 2213}# (eq? #{x\ 2207}# #{y\ 2208}#)))
+                 (if #{t\ 2213}#
+                   #{t\ 2213}#
+                   (if (not (null? #{x\ 2207}#))
+                     (if (not (null? #{y\ 2208}#))
+                       (if (eq? (car #{x\ 2207}#) (car #{y\ 2208}#))
+                         (#{same-marks?\ 442}#
+                           (cdr #{x\ 2207}#)
+                           (cdr #{y\ 2208}#))
                          #f)
                        #f)
-                     #f)))))
-           (#{join-marks\ 425}#
-             (lambda (#{m1\ 2204}# #{m2\ 2205}#)
-               (#{smart-append\ 421}# #{m1\ 2204}# #{m2\ 2205}#)))
-           (#{join-wraps\ 423}#
-             (lambda (#{w1\ 2208}# #{w2\ 2209}#)
-               (let ((#{m1\ 2214}# (#{wrap-marks\ 379}# #{w1\ 2208}#))
-                     (#{s1\ 2215}# (#{wrap-subst\ 381}# #{w1\ 2208}#)))
-                 (if (null? #{m1\ 2214}#)
-                   (if (null? #{s1\ 2215}#)
-                     #{w2\ 2209}#
-                     (#{make-wrap\ 377}#
-                       (#{wrap-marks\ 379}# #{w2\ 2209}#)
-                       (#{smart-append\ 421}#
-                         #{s1\ 2215}#
-                         (#{wrap-subst\ 381}# #{w2\ 2209}#))))
-                   (#{make-wrap\ 377}#
-                     (#{smart-append\ 421}#
-                       #{m1\ 2214}#
-                       (#{wrap-marks\ 379}# #{w2\ 2209}#))
-                     (#{smart-append\ 421}#
-                       #{s1\ 2215}#
-                       (#{wrap-subst\ 381}# #{w2\ 2209}#)))))))
-           (#{smart-append\ 421}#
-             (lambda (#{m1\ 2216}# #{m2\ 2217}#)
-               (if (null? #{m2\ 2217}#)
-                 #{m1\ 2216}#
-                 (append #{m1\ 2216}# #{m2\ 2217}#))))
-           (#{make-binding-wrap\ 419}#
-             (lambda (#{ids\ 2220}# #{labels\ 2221}# #{w\ 2222}#)
-               (if (null? #{ids\ 2220}#)
-                 #{w\ 2222}#
-                 (#{make-wrap\ 377}#
-                   (#{wrap-marks\ 379}# #{w\ 2222}#)
-                   (cons (let ((#{labelvec\ 2227}#
-                                 (list->vector #{labels\ 2221}#)))
-                           (let ((#{n\ 2229}#
-                                   (vector-length #{labelvec\ 2227}#)))
-                             (let ((#{symnamevec\ 2232}#
-                                     (make-vector #{n\ 2229}#))
-                                   (#{marksvec\ 2233}#
-                                     (make-vector #{n\ 2229}#)))
+                     #f))))))
+         (#{join-marks\ 440}#
+           (lambda (#{m1\ 2219}# #{m2\ 2220}#)
+             (#{smart-append\ 436}# #{m1\ 2219}# #{m2\ 2220}#)))
+         (#{join-wraps\ 438}#
+           (lambda (#{w1\ 2223}# #{w2\ 2224}#)
+             (begin
+               (let ((#{m1\ 2229}# (#{wrap-marks\ 394}# #{w1\ 2223}#))
+                     (#{s1\ 2230}# (#{wrap-subst\ 396}# #{w1\ 2223}#)))
+                 (if (null? #{m1\ 2229}#)
+                   (if (null? #{s1\ 2230}#)
+                     #{w2\ 2224}#
+                     (#{make-wrap\ 392}#
+                       (#{wrap-marks\ 394}# #{w2\ 2224}#)
+                       (#{smart-append\ 436}#
+                         #{s1\ 2230}#
+                         (#{wrap-subst\ 396}# #{w2\ 2224}#))))
+                   (#{make-wrap\ 392}#
+                     (#{smart-append\ 436}#
+                       #{m1\ 2229}#
+                       (#{wrap-marks\ 394}# #{w2\ 2224}#))
+                     (#{smart-append\ 436}#
+                       #{s1\ 2230}#
+                       (#{wrap-subst\ 396}# #{w2\ 2224}#))))))))
+         (#{smart-append\ 436}#
+           (lambda (#{m1\ 2231}# #{m2\ 2232}#)
+             (if (null? #{m2\ 2232}#)
+               #{m1\ 2231}#
+               (append #{m1\ 2231}# #{m2\ 2232}#))))
+         (#{make-binding-wrap\ 434}#
+           (lambda (#{ids\ 2235}# #{labels\ 2236}# #{w\ 2237}#)
+             (if (null? #{ids\ 2235}#)
+               #{w\ 2237}#
+               (#{make-wrap\ 392}#
+                 (#{wrap-marks\ 394}# #{w\ 2237}#)
+                 (cons (begin
+                         (let ((#{labelvec\ 2242}#
+                                 (list->vector #{labels\ 2236}#)))
+                           (begin
+                             (let ((#{n\ 2244}#
+                                     (vector-length #{labelvec\ 2242}#)))
                                (begin
-                                 (letrec ((#{f\ 2237}#
-                                            (lambda (#{ids\ 2238}# #{i\ 2239}#)
-                                              (if (not (null? #{ids\ 2238}#))
-                                                (call-with-values
-                                                  (lambda ()
-                                                    (#{id-sym-name&marks\ 375}#
-                                                      (car #{ids\ 2238}#)
-                                                      #{w\ 2222}#))
-                                                  (lambda (#{symname\ 2240}#
-                                                           #{marks\ 2241}#)
-                                                    (begin
-                                                      (vector-set!
-                                                        #{symnamevec\ 2232}#
-                                                        #{i\ 2239}#
-                                                        #{symname\ 2240}#)
-                                                      (vector-set!
-                                                        #{marksvec\ 2233}#
-                                                        #{i\ 2239}#
-                                                        #{marks\ 2241}#)
-                                                      (#{f\ 2237}#
-                                                        (cdr #{ids\ 2238}#)
-                                                        (#{fx+\ 273}#
-                                                          #{i\ 2239}#
-                                                          1)))))))))
-                                   (#{f\ 2237}# #{ids\ 2220}# 0))
-                                 (#{make-ribcage\ 393}#
-                                   #{symnamevec\ 2232}#
-                                   #{marksvec\ 2233}#
-                                   #{labelvec\ 2227}#)))))
-                         (#{wrap-subst\ 381}# #{w\ 2222}#))))))
-           (#{extend-ribcage!\ 417}#
-             (lambda (#{ribcage\ 2244}# #{id\ 2245}# #{label\ 2246}#)
-               (begin
-                 (#{set-ribcage-symnames!\ 403}#
-                   #{ribcage\ 2244}#
-                   (cons (#{syntax-object-expression\ 338}# #{id\ 2245}#)
-                         (#{ribcage-symnames\ 397}# #{ribcage\ 2244}#)))
-                 (#{set-ribcage-marks!\ 405}#
-                   #{ribcage\ 2244}#
-                   (cons (#{wrap-marks\ 379}#
-                           (#{syntax-object-wrap\ 340}# #{id\ 2245}#))
-                         (#{ribcage-marks\ 399}# #{ribcage\ 2244}#)))
-                 (#{set-ribcage-labels!\ 407}#
-                   #{ribcage\ 2244}#
-                   (cons #{label\ 2246}#
-                         (#{ribcage-labels\ 401}# #{ribcage\ 2244}#))))))
-           (#{anti-mark\ 413}#
-             (lambda (#{w\ 2250}#)
-               (#{make-wrap\ 377}#
-                 (cons #f (#{wrap-marks\ 379}# #{w\ 2250}#))
-                 (cons 'shift
-                       (#{wrap-subst\ 381}# #{w\ 2250}#)))))
-           (#{set-ribcage-labels!\ 407}#
-             (lambda (#{x\ 2253}# #{update\ 2254}#)
-               (vector-set! #{x\ 2253}# 3 #{update\ 2254}#)))
-           (#{set-ribcage-marks!\ 405}#
-             (lambda (#{x\ 2257}# #{update\ 2258}#)
-               (vector-set! #{x\ 2257}# 2 #{update\ 2258}#)))
-           (#{set-ribcage-symnames!\ 403}#
-             (lambda (#{x\ 2261}# #{update\ 2262}#)
-               (vector-set! #{x\ 2261}# 1 #{update\ 2262}#)))
-           (#{ribcage-labels\ 401}#
-             (lambda (#{x\ 2265}#) (vector-ref #{x\ 2265}# 3)))
-           (#{ribcage-marks\ 399}#
-             (lambda (#{x\ 2267}#) (vector-ref #{x\ 2267}# 2)))
-           (#{ribcage-symnames\ 397}#
-             (lambda (#{x\ 2269}#) (vector-ref #{x\ 2269}# 1)))
-           (#{ribcage?\ 395}#
-             (lambda (#{x\ 2271}#)
-               (if (vector? #{x\ 2271}#)
-                 (if (= (vector-length #{x\ 2271}#) 4)
-                   (eq? (vector-ref #{x\ 2271}# 0) (quote ribcage))
-                   #f)
-                 #f)))
-           (#{make-ribcage\ 393}#
-             (lambda (#{symnames\ 2276}#
-                      #{marks\ 2277}#
-                      #{labels\ 2278}#)
-               (vector
-                 'ribcage
-                 #{symnames\ 2276}#
-                 #{marks\ 2277}#
-                 #{labels\ 2278}#)))
-           (#{gen-labels\ 390}#
-             (lambda (#{ls\ 2282}#)
-               (if (null? #{ls\ 2282}#)
-                 '()
-                 (cons (#{gen-label\ 388}#)
-                       (#{gen-labels\ 390}# (cdr #{ls\ 2282}#))))))
-           (#{gen-label\ 388}#
-             (lambda () (symbol->string (gensym "i"))))
-           (#{wrap-subst\ 381}# cdr)
-           (#{wrap-marks\ 379}# car)
-           (#{make-wrap\ 377}# cons)
-           (#{id-sym-name&marks\ 375}#
-             (lambda (#{x\ 2284}# #{w\ 2285}#)
-               (if (#{syntax-object?\ 336}# #{x\ 2284}#)
-                 (values
-                   (#{syntax-object-expression\ 338}# #{x\ 2284}#)
-                   (#{join-marks\ 425}#
-                     (#{wrap-marks\ 379}# #{w\ 2285}#)
-                     (#{wrap-marks\ 379}#
-                       (#{syntax-object-wrap\ 340}# #{x\ 2284}#))))
-                 (values
-                   #{x\ 2284}#
-                   (#{wrap-marks\ 379}# #{w\ 2285}#)))))
-           (#{id?\ 372}#
-             (lambda (#{x\ 2288}#)
-               (if (symbol? #{x\ 2288}#)
-                 #t
-                 (if (#{syntax-object?\ 336}# #{x\ 2288}#)
-                   (symbol?
-                     (#{syntax-object-expression\ 338}# #{x\ 2288}#))
-                   #f))))
-           (#{nonsymbol-id?\ 370}#
-             (lambda (#{x\ 2295}#)
-               (if (#{syntax-object?\ 336}# #{x\ 2295}#)
+                                 (let ((#{symnamevec\ 2247}#
+                                         (make-vector #{n\ 2244}#))
+                                       (#{marksvec\ 2248}#
+                                         (make-vector #{n\ 2244}#)))
+                                   (begin
+                                     (letrec*
+                                       ((#{f\ 2252}#
+                                          (lambda (#{ids\ 2253}# #{i\ 2254}#)
+                                            (if (not (null? #{ids\ 2253}#))
+                                              (call-with-values
+                                                (lambda ()
+                                                  (#{id-sym-name&marks\ 390}#
+                                                    (car #{ids\ 2253}#)
+                                                    #{w\ 2237}#))
+                                                (lambda (#{symname\ 2255}#
+                                                         #{marks\ 2256}#)
+                                                  (begin
+                                                    (vector-set!
+                                                      #{symnamevec\ 2247}#
+                                                      #{i\ 2254}#
+                                                      #{symname\ 2255}#)
+                                                    (vector-set!
+                                                      #{marksvec\ 2248}#
+                                                      #{i\ 2254}#
+                                                      #{marks\ 2256}#)
+                                                    (#{f\ 2252}#
+                                                      (cdr #{ids\ 2253}#)
+                                                      (#{fx+\ 288}#
+                                                        #{i\ 2254}#
+                                                        1)))))))))
+                                       (begin (#{f\ 2252}# #{ids\ 2235}# 0)))
+                                     (#{make-ribcage\ 408}#
+                                       #{symnamevec\ 2247}#
+                                       #{marksvec\ 2248}#
+                                       #{labelvec\ 2242}#))))))))
+                       (#{wrap-subst\ 396}# #{w\ 2237}#))))))
+         (#{extend-ribcage!\ 432}#
+           (lambda (#{ribcage\ 2259}# #{id\ 2260}# #{label\ 2261}#)
+             (begin
+               (#{set-ribcage-symnames!\ 418}#
+                 #{ribcage\ 2259}#
+                 (cons (#{syntax-object-expression\ 353}# #{id\ 2260}#)
+                       (#{ribcage-symnames\ 412}# #{ribcage\ 2259}#)))
+               (#{set-ribcage-marks!\ 420}#
+                 #{ribcage\ 2259}#
+                 (cons (#{wrap-marks\ 394}#
+                         (#{syntax-object-wrap\ 355}# #{id\ 2260}#))
+                       (#{ribcage-marks\ 414}# #{ribcage\ 2259}#)))
+               (#{set-ribcage-labels!\ 422}#
+                 #{ribcage\ 2259}#
+                 (cons #{label\ 2261}#
+                       (#{ribcage-labels\ 416}# #{ribcage\ 2259}#))))))
+         (#{anti-mark\ 428}#
+           (lambda (#{w\ 2265}#)
+             (#{make-wrap\ 392}#
+               (cons #f (#{wrap-marks\ 394}# #{w\ 2265}#))
+               (cons 'shift
+                     (#{wrap-subst\ 396}# #{w\ 2265}#)))))
+         (#{set-ribcage-labels!\ 422}#
+           (lambda (#{x\ 2268}# #{update\ 2269}#)
+             (vector-set! #{x\ 2268}# 3 #{update\ 2269}#)))
+         (#{set-ribcage-marks!\ 420}#
+           (lambda (#{x\ 2272}# #{update\ 2273}#)
+             (vector-set! #{x\ 2272}# 2 #{update\ 2273}#)))
+         (#{set-ribcage-symnames!\ 418}#
+           (lambda (#{x\ 2276}# #{update\ 2277}#)
+             (vector-set! #{x\ 2276}# 1 #{update\ 2277}#)))
+         (#{ribcage-labels\ 416}#
+           (lambda (#{x\ 2280}#) (vector-ref #{x\ 2280}# 3)))
+         (#{ribcage-marks\ 414}#
+           (lambda (#{x\ 2282}#) (vector-ref #{x\ 2282}# 2)))
+         (#{ribcage-symnames\ 412}#
+           (lambda (#{x\ 2284}#) (vector-ref #{x\ 2284}# 1)))
+         (#{make-ribcage\ 408}#
+           (lambda (#{symnames\ 2291}#
+                    #{marks\ 2292}#
+                    #{labels\ 2293}#)
+             (vector
+               'ribcage
+               #{symnames\ 2291}#
+               #{marks\ 2292}#
+               #{labels\ 2293}#)))
+         (#{gen-labels\ 405}#
+           (lambda (#{ls\ 2297}#)
+             (if (null? #{ls\ 2297}#)
+               '()
+               (cons (#{gen-label\ 403}#)
+                     (#{gen-labels\ 405}# (cdr #{ls\ 2297}#))))))
+         (#{gen-label\ 403}#
+           (lambda () (symbol->string (gensym "i"))))
+         (#{id-sym-name&marks\ 390}#
+           (lambda (#{x\ 2299}# #{w\ 2300}#)
+             (if (#{syntax-object?\ 351}# #{x\ 2299}#)
+               (values
+                 (#{syntax-object-expression\ 353}# #{x\ 2299}#)
+                 (#{join-marks\ 440}#
+                   (#{wrap-marks\ 394}# #{w\ 2300}#)
+                   (#{wrap-marks\ 394}#
+                     (#{syntax-object-wrap\ 355}# #{x\ 2299}#))))
+               (values
+                 #{x\ 2299}#
+                 (#{wrap-marks\ 394}# #{w\ 2300}#)))))
+         (#{id?\ 387}#
+           (lambda (#{x\ 2303}#)
+             (if (symbol? #{x\ 2303}#)
+               #t
+               (if (#{syntax-object?\ 351}# #{x\ 2303}#)
                  (symbol?
-                   (#{syntax-object-expression\ 338}# #{x\ 2295}#))
-                 #f)))
-           (#{global-extend\ 368}#
-             (lambda (#{type\ 2299}# #{sym\ 2300}# #{val\ 2301}#)
-               (#{put-global-definition-hook\ 286}#
-                 #{sym\ 2300}#
-                 #{type\ 2299}#
-                 #{val\ 2301}#)))
-           (#{lookup\ 366}#
-             (lambda (#{x\ 2305}# #{r\ 2306}# #{mod\ 2307}#)
-               (let ((#{t\ 2313}# (assq #{x\ 2305}# #{r\ 2306}#)))
-                 (if #{t\ 2313}#
-                   (cdr #{t\ 2313}#)
-                   (if (symbol? #{x\ 2305}#)
-                     (let ((#{t\ 2319}#
-                             (#{get-global-definition-hook\ 288}#
-                               #{x\ 2305}#
-                               #{mod\ 2307}#)))
-                       (if #{t\ 2319}# #{t\ 2319}# (quote (global))))
-                     '(displaced-lexical))))))
-           (#{macros-only-env\ 364}#
-             (lambda (#{r\ 2324}#)
-               (if (null? #{r\ 2324}#)
-                 '()
-                 (let ((#{a\ 2327}# (car #{r\ 2324}#)))
-                   (if (eq? (cadr #{a\ 2327}#) (quote macro))
-                     (cons #{a\ 2327}#
-                           (#{macros-only-env\ 364}# (cdr #{r\ 2324}#)))
-                     (#{macros-only-env\ 364}# (cdr #{r\ 2324}#)))))))
-           (#{extend-var-env\ 362}#
-             (lambda (#{labels\ 2328}# #{vars\ 2329}# #{r\ 2330}#)
-               (if (null? #{labels\ 2328}#)
-                 #{r\ 2330}#
-                 (#{extend-var-env\ 362}#
-                   (cdr #{labels\ 2328}#)
-                   (cdr #{vars\ 2329}#)
-                   (cons (cons (car #{labels\ 2328}#)
-                               (cons (quote lexical) (car #{vars\ 2329}#)))
-                         #{r\ 2330}#)))))
-           (#{extend-env\ 360}#
-             (lambda (#{labels\ 2335}# #{bindings\ 2336}# #{r\ 2337}#)
-               (if (null? #{labels\ 2335}#)
-                 #{r\ 2337}#
-                 (#{extend-env\ 360}#
-                   (cdr #{labels\ 2335}#)
-                   (cdr #{bindings\ 2336}#)
-                   (cons (cons (car #{labels\ 2335}#)
-                               (car #{bindings\ 2336}#))
-                         #{r\ 2337}#)))))
-           (#{binding-value\ 357}# cdr)
-           (#{binding-type\ 355}# car)
-           (#{source-annotation\ 351}#
-             (lambda (#{x\ 2341}#)
-               (if (#{syntax-object?\ 336}# #{x\ 2341}#)
-                 (#{source-annotation\ 351}#
-                   (#{syntax-object-expression\ 338}# #{x\ 2341}#))
-                 (if (pair? #{x\ 2341}#)
-                   (let ((#{props\ 2348}# (source-properties #{x\ 2341}#)))
-                     (if (pair? #{props\ 2348}#) #{props\ 2348}# #f))
-                   #f))))
-           (#{set-syntax-object-module!\ 348}#
-             (lambda (#{x\ 2350}# #{update\ 2351}#)
-               (vector-set! #{x\ 2350}# 3 #{update\ 2351}#)))
-           (#{set-syntax-object-wrap!\ 346}#
-             (lambda (#{x\ 2354}# #{update\ 2355}#)
-               (vector-set! #{x\ 2354}# 2 #{update\ 2355}#)))
-           (#{set-syntax-object-expression!\ 344}#
-             (lambda (#{x\ 2358}# #{update\ 2359}#)
-               (vector-set! #{x\ 2358}# 1 #{update\ 2359}#)))
-           (#{syntax-object-module\ 342}#
-             (lambda (#{x\ 2362}#) (vector-ref #{x\ 2362}# 3)))
-           (#{syntax-object-wrap\ 340}#
-             (lambda (#{x\ 2364}#) (vector-ref #{x\ 2364}# 2)))
-           (#{syntax-object-expression\ 338}#
-             (lambda (#{x\ 2366}#) (vector-ref #{x\ 2366}# 1)))
-           (#{syntax-object?\ 336}#
-             (lambda (#{x\ 2368}#)
-               (if (vector? #{x\ 2368}#)
-                 (if (= (vector-length #{x\ 2368}#) 4)
-                   (eq? (vector-ref #{x\ 2368}# 0)
-                        'syntax-object)
-                   #f)
-                 #f)))
-           (#{make-syntax-object\ 334}#
-             (lambda (#{expression\ 2373}#
-                      #{wrap\ 2374}#
-                      #{module\ 2375}#)
-               (vector
-                 'syntax-object
-                 #{expression\ 2373}#
-                 #{wrap\ 2374}#
-                 #{module\ 2375}#)))
-           (#{build-letrec\ 330}#
-             (lambda (#{src\ 2379}#
-                      #{ids\ 2380}#
-                      #{vars\ 2381}#
-                      #{val-exps\ 2382}#
-                      #{body-exp\ 2383}#)
-               (if (null? #{vars\ 2381}#)
-                 #{body-exp\ 2383}#
+                   (#{syntax-object-expression\ 353}# #{x\ 2303}#))
+                 #f))))
+         (#{nonsymbol-id?\ 385}#
+           (lambda (#{x\ 2310}#)
+             (if (#{syntax-object?\ 351}# #{x\ 2310}#)
+               (symbol?
+                 (#{syntax-object-expression\ 353}# #{x\ 2310}#))
+               #f)))
+         (#{global-extend\ 383}#
+           (lambda (#{type\ 2314}# #{sym\ 2315}# #{val\ 2316}#)
+             (#{put-global-definition-hook\ 301}#
+               #{sym\ 2315}#
+               #{type\ 2314}#
+               #{val\ 2316}#)))
+         (#{lookup\ 381}#
+           (lambda (#{x\ 2320}# #{r\ 2321}# #{mod\ 2322}#)
+             (begin
+               (let ((#{t\ 2328}# (assq #{x\ 2320}# #{r\ 2321}#)))
+                 (if #{t\ 2328}#
+                   (cdr #{t\ 2328}#)
+                   (if (symbol? #{x\ 2320}#)
+                     (begin
+                       (let ((#{t\ 2334}#
+                               (#{get-global-definition-hook\ 303}#
+                                 #{x\ 2320}#
+                                 #{mod\ 2322}#)))
+                         (if #{t\ 2334}# #{t\ 2334}# (quote (global)))))
+                     '(displaced-lexical)))))))
+         (#{macros-only-env\ 379}#
+           (lambda (#{r\ 2339}#)
+             (if (null? #{r\ 2339}#)
+               '()
+               (begin
+                 (let ((#{a\ 2342}# (car #{r\ 2339}#)))
+                   (if (eq? (car (cdr #{a\ 2342}#)) (quote macro))
+                     (cons #{a\ 2342}#
+                           (#{macros-only-env\ 379}# (cdr #{r\ 2339}#)))
+                     (#{macros-only-env\ 379}# (cdr #{r\ 2339}#))))))))
+         (#{extend-var-env\ 377}#
+           (lambda (#{labels\ 2343}# #{vars\ 2344}# #{r\ 2345}#)
+             (if (null? #{labels\ 2343}#)
+               #{r\ 2345}#
+               (#{extend-var-env\ 377}#
+                 (cdr #{labels\ 2343}#)
+                 (cdr #{vars\ 2344}#)
+                 (cons (cons (car #{labels\ 2343}#)
+                             (cons (quote lexical) (car #{vars\ 2344}#)))
+                       #{r\ 2345}#)))))
+         (#{extend-env\ 375}#
+           (lambda (#{labels\ 2350}# #{bindings\ 2351}# #{r\ 2352}#)
+             (if (null? #{labels\ 2350}#)
+               #{r\ 2352}#
+               (#{extend-env\ 375}#
+                 (cdr #{labels\ 2350}#)
+                 (cdr #{bindings\ 2351}#)
+                 (cons (cons (car #{labels\ 2350}#)
+                             (car #{bindings\ 2351}#))
+                       #{r\ 2352}#)))))
+         (#{source-annotation\ 366}#
+           (lambda (#{x\ 2356}#)
+             (if (#{syntax-object?\ 351}# #{x\ 2356}#)
+               (#{source-annotation\ 366}#
+                 (#{syntax-object-expression\ 353}# #{x\ 2356}#))
+               (if (pair? #{x\ 2356}#)
                  (begin
-                   (for-each
-                     #{maybe-name-value!\ 310}#
-                     #{ids\ 2380}#
-                     #{val-exps\ 2382}#)
-                   (#{make-letrec\ 262}#
-                     #{src\ 2379}#
-                     #{ids\ 2380}#
-                     #{vars\ 2381}#
-                     #{val-exps\ 2382}#
-                     #{body-exp\ 2383}#)))))
-           (#{build-named-let\ 328}#
-             (lambda (#{src\ 2389}#
-                      #{ids\ 2390}#
-                      #{vars\ 2391}#
-                      #{val-exps\ 2392}#
-                      #{body-exp\ 2393}#)
-               (let ((#{f\ 2403}# (car #{vars\ 2391}#))
-                     (#{f-name\ 2404}# (car #{ids\ 2390}#))
-                     (#{vars\ 2405}# (cdr #{vars\ 2391}#))
-                     (#{ids\ 2406}# (cdr #{ids\ 2390}#)))
-                 (let ((#{proc\ 2408}#
-                         (#{build-simple-lambda\ 314}#
-                           #{src\ 2389}#
-                           #{ids\ 2406}#
-                           #f
-                           #{vars\ 2405}#
-                           '()
-                           #{body-exp\ 2393}#)))
-                   (begin
-                     (#{maybe-name-value!\ 310}#
-                       #{f-name\ 2404}#
-                       #{proc\ 2408}#)
-                     (for-each
-                       #{maybe-name-value!\ 310}#
-                       #{ids\ 2406}#
-                       #{val-exps\ 2392}#)
-                     (#{make-letrec\ 262}#
-                       #{src\ 2389}#
-                       (list #{f-name\ 2404}#)
-                       (list #{f\ 2403}#)
-                       (list #{proc\ 2408}#)
-                       (#{build-application\ 294}#
-                         #{src\ 2389}#
-                         (#{build-lexical-reference\ 300}#
-                           'fun
-                           #{src\ 2389}#
-                           #{f-name\ 2404}#
-                           #{f\ 2403}#)
-                         #{val-exps\ 2392}#)))))))
-           (#{build-let\ 326}#
-             (lambda (#{src\ 2409}#
-                      #{ids\ 2410}#
-                      #{vars\ 2411}#
-                      #{val-exps\ 2412}#
-                      #{body-exp\ 2413}#)
+                   (let ((#{props\ 2363}# (source-properties #{x\ 2356}#)))
+                     (if (pair? #{props\ 2363}#) #{props\ 2363}# #f)))
+                 #f))))
+         (#{syntax-object-module\ 357}#
+           (lambda (#{x\ 2377}#) (vector-ref #{x\ 2377}# 3)))
+         (#{syntax-object-wrap\ 355}#
+           (lambda (#{x\ 2379}#) (vector-ref #{x\ 2379}# 2)))
+         (#{syntax-object-expression\ 353}#
+           (lambda (#{x\ 2381}#) (vector-ref #{x\ 2381}# 1)))
+         (#{syntax-object?\ 351}#
+           (lambda (#{x\ 2383}#)
+             (if (vector? #{x\ 2383}#)
+               (if (= (vector-length #{x\ 2383}#) 4)
+                 (eq? (vector-ref #{x\ 2383}# 0)
+                      'syntax-object)
+                 #f)
+               #f)))
+         (#{make-syntax-object\ 349}#
+           (lambda (#{expression\ 2388}#
+                    #{wrap\ 2389}#
+                    #{module\ 2390}#)
+             (vector
+               'syntax-object
+               #{expression\ 2388}#
+               #{wrap\ 2389}#
+               #{module\ 2390}#)))
+         (#{build-letrec\ 345}#
+           (lambda (#{src\ 2394}#
+                    #{in-order?\ 2395}#
+                    #{ids\ 2396}#
+                    #{vars\ 2397}#
+                    #{val-exps\ 2398}#
+                    #{body-exp\ 2399}#)
+             (if (null? #{vars\ 2397}#)
+               #{body-exp\ 2399}#
                (begin
                  (for-each
-                   #{maybe-name-value!\ 310}#
-                   #{ids\ 2410}#
-                   #{val-exps\ 2412}#)
-                 (if (null? #{vars\ 2411}#)
-                   #{body-exp\ 2413}#
-                   (#{make-let\ 260}#
-                     #{src\ 2409}#
-                     #{ids\ 2410}#
-                     #{vars\ 2411}#
-                     #{val-exps\ 2412}#
-                     #{body-exp\ 2413}#)))))
-           (#{build-sequence\ 324}#
-             (lambda (#{src\ 2419}# #{exps\ 2420}#)
-               (if (null? (cdr #{exps\ 2420}#))
-                 (car #{exps\ 2420}#)
-                 (#{make-sequence\ 254}#
-                   #{src\ 2419}#
-                   #{exps\ 2420}#))))
-           (#{build-data\ 322}#
-             (lambda (#{src\ 2423}# #{exp\ 2424}#)
-               (#{make-const\ 232}# #{src\ 2423}# #{exp\ 2424}#)))
-           (#{build-primref\ 320}#
-             (lambda (#{src\ 2427}# #{name\ 2428}#)
-               (if (equal?
-                     (module-name (current-module))
-                     '(guile))
-                 (#{make-toplevel-ref\ 244}#
-                   #{src\ 2427}#
-                   #{name\ 2428}#)
-                 (#{make-module-ref\ 240}#
-                   #{src\ 2427}#
-                   '(guile)
-                   #{name\ 2428}#
-                   #f))))
-           (#{build-lambda-case\ 318}#
-             (lambda (#{src\ 2431}#
-                      #{req\ 2432}#
-                      #{opt\ 2433}#
-                      #{rest\ 2434}#
-                      #{kw\ 2435}#
-                      #{inits\ 2436}#
-                      #{vars\ 2437}#
-                      #{body\ 2438}#
-                      #{else-case\ 2439}#)
-               (#{make-lambda-case\ 258}#
-                 #{src\ 2431}#
-                 #{req\ 2432}#
-                 #{opt\ 2433}#
-                 #{rest\ 2434}#
-                 #{kw\ 2435}#
-                 #{inits\ 2436}#
-                 #{vars\ 2437}#
-                 #{body\ 2438}#
-                 #{else-case\ 2439}#)))
-           (#{build-case-lambda\ 316}#
-             (lambda (#{src\ 2449}# #{meta\ 2450}# #{body\ 2451}#)
-               (#{make-lambda\ 256}#
-                 #{src\ 2449}#
-                 #{meta\ 2450}#
-                 #{body\ 2451}#)))
-           (#{build-simple-lambda\ 314}#
-             (lambda (#{src\ 2455}#
-                      #{req\ 2456}#
-                      #{rest\ 2457}#
-                      #{vars\ 2458}#
-                      #{meta\ 2459}#
-                      #{exp\ 2460}#)
-               (#{make-lambda\ 256}#
-                 #{src\ 2455}#
-                 #{meta\ 2459}#
-                 (#{make-lambda-case\ 258}#
-                   #{src\ 2455}#
-                   #{req\ 2456}#
-                   #f
-                   #{rest\ 2457}#
-                   #f
-                   '()
-                   #{vars\ 2458}#
-                   #{exp\ 2460}#
-                   #f))))
-           (#{build-global-definition\ 312}#
-             (lambda (#{source\ 2467}# #{var\ 2468}# #{exp\ 2469}#)
+                   #{maybe-name-value!\ 325}#
+                   #{ids\ 2396}#
+                   #{val-exps\ 2398}#)
+                 (#{make-letrec\ 277}#
+                   #{src\ 2394}#
+                   #{in-order?\ 2395}#
+                   #{ids\ 2396}#
+                   #{vars\ 2397}#
+                   #{val-exps\ 2398}#
+                   #{body-exp\ 2399}#)))))
+         (#{build-named-let\ 343}#
+           (lambda (#{src\ 2406}#
+                    #{ids\ 2407}#
+                    #{vars\ 2408}#
+                    #{val-exps\ 2409}#
+                    #{body-exp\ 2410}#)
+             (begin
+               (let ((#{f\ 2420}# (car #{vars\ 2408}#))
+                     (#{f-name\ 2421}# (car #{ids\ 2407}#))
+                     (#{vars\ 2422}# (cdr #{vars\ 2408}#))
+                     (#{ids\ 2423}# (cdr #{ids\ 2407}#)))
+                 (begin
+                   (let ((#{proc\ 2425}#
+                           (#{build-simple-lambda\ 329}#
+                             #{src\ 2406}#
+                             #{ids\ 2423}#
+                             #f
+                             #{vars\ 2422}#
+                             '()
+                             #{body-exp\ 2410}#)))
+                     (begin
+                       (#{maybe-name-value!\ 325}#
+                         #{f-name\ 2421}#
+                         #{proc\ 2425}#)
+                       (for-each
+                         #{maybe-name-value!\ 325}#
+                         #{ids\ 2423}#
+                         #{val-exps\ 2409}#)
+                       (#{make-letrec\ 277}#
+                         #{src\ 2406}#
+                         #f
+                         (list #{f-name\ 2421}#)
+                         (list #{f\ 2420}#)
+                         (list #{proc\ 2425}#)
+                         (#{build-application\ 309}#
+                           #{src\ 2406}#
+                           (#{build-lexical-reference\ 315}#
+                             'fun
+                             #{src\ 2406}#
+                             #{f-name\ 2421}#
+                             #{f\ 2420}#)
+                           #{val-exps\ 2409}#)))))))))
+         (#{build-let\ 341}#
+           (lambda (#{src\ 2426}#
+                    #{ids\ 2427}#
+                    #{vars\ 2428}#
+                    #{val-exps\ 2429}#
+                    #{body-exp\ 2430}#)
+             (begin
+               (for-each
+                 #{maybe-name-value!\ 325}#
+                 #{ids\ 2427}#
+                 #{val-exps\ 2429}#)
+               (if (null? #{vars\ 2428}#)
+                 #{body-exp\ 2430}#
+                 (#{make-let\ 275}#
+                   #{src\ 2426}#
+                   #{ids\ 2427}#
+                   #{vars\ 2428}#
+                   #{val-exps\ 2429}#
+                   #{body-exp\ 2430}#)))))
+         (#{build-sequence\ 339}#
+           (lambda (#{src\ 2436}# #{exps\ 2437}#)
+             (if (null? (cdr #{exps\ 2437}#))
+               (car #{exps\ 2437}#)
+               (#{make-sequence\ 269}#
+                 #{src\ 2436}#
+                 #{exps\ 2437}#))))
+         (#{build-data\ 337}#
+           (lambda (#{src\ 2440}# #{exp\ 2441}#)
+             (#{make-const\ 247}# #{src\ 2440}# #{exp\ 2441}#)))
+         (#{build-primref\ 335}#
+           (lambda (#{src\ 2444}# #{name\ 2445}#)
+             (if (equal?
+                   (module-name (current-module))
+                   '(guile))
+               (#{make-toplevel-ref\ 259}#
+                 #{src\ 2444}#
+                 #{name\ 2445}#)
+               (#{make-module-ref\ 255}#
+                 #{src\ 2444}#
+                 '(guile)
+                 #{name\ 2445}#
+                 #f))))
+         (#{build-lambda-case\ 333}#
+           (lambda (#{src\ 2448}#
+                    #{req\ 2449}#
+                    #{opt\ 2450}#
+                    #{rest\ 2451}#
+                    #{kw\ 2452}#
+                    #{inits\ 2453}#
+                    #{vars\ 2454}#
+                    #{body\ 2455}#
+                    #{else-case\ 2456}#)
+             (#{make-lambda-case\ 273}#
+               #{src\ 2448}#
+               #{req\ 2449}#
+               #{opt\ 2450}#
+               #{rest\ 2451}#
+               #{kw\ 2452}#
+               #{inits\ 2453}#
+               #{vars\ 2454}#
+               #{body\ 2455}#
+               #{else-case\ 2456}#)))
+         (#{build-case-lambda\ 331}#
+           (lambda (#{src\ 2466}# #{meta\ 2467}# #{body\ 2468}#)
+             (#{make-lambda\ 271}#
+               #{src\ 2466}#
+               #{meta\ 2467}#
+               #{body\ 2468}#)))
+         (#{build-simple-lambda\ 329}#
+           (lambda (#{src\ 2472}#
+                    #{req\ 2473}#
+                    #{rest\ 2474}#
+                    #{vars\ 2475}#
+                    #{meta\ 2476}#
+                    #{exp\ 2477}#)
+             (#{make-lambda\ 271}#
+               #{src\ 2472}#
+               #{meta\ 2476}#
+               (#{make-lambda-case\ 273}#
+                 #{src\ 2472}#
+                 #{req\ 2473}#
+                 #f
+                 #{rest\ 2474}#
+                 #f
+                 '()
+                 #{vars\ 2475}#
+                 #{exp\ 2477}#
+                 #f))))
+         (#{build-global-definition\ 327}#
+           (lambda (#{source\ 2484}# #{var\ 2485}# #{exp\ 2486}#)
+             (begin
+               (#{maybe-name-value!\ 325}#
+                 #{var\ 2485}#
+                 #{exp\ 2486}#)
+               (#{make-toplevel-define\ 263}#
+                 #{source\ 2484}#
+                 #{var\ 2485}#
+                 #{exp\ 2486}#))))
+         (#{maybe-name-value!\ 325}#
+           (lambda (#{name\ 2490}# #{val\ 2491}#)
+             (if (#{lambda?\ 282}# #{val\ 2491}#)
                (begin
-                 (#{maybe-name-value!\ 310}#
-                   #{var\ 2468}#
-                   #{exp\ 2469}#)
-                 (#{make-toplevel-define\ 248}#
-                   #{source\ 2467}#
-                   #{var\ 2468}#
-                   #{exp\ 2469}#))))
-           (#{maybe-name-value!\ 310}#
-             (lambda (#{name\ 2473}# #{val\ 2474}#)
-               (if (#{lambda?\ 267}# #{val\ 2474}#)
-                 (let ((#{meta\ 2478}#
-                         (#{lambda-meta\ 269}# #{val\ 2474}#)))
-                   (if (not (assq (quote name) #{meta\ 2478}#))
-                     (#{set-lambda-meta!\ 271}#
-                       #{val\ 2474}#
-                       (acons 'name
-                              #{name\ 2473}#
-                              #{meta\ 2478}#)))))))
-           (#{build-global-assignment\ 308}#
-             (lambda (#{source\ 2479}#
-                      #{var\ 2480}#
-                      #{exp\ 2481}#
-                      #{mod\ 2482}#)
-               (#{analyze-variable\ 304}#
-                 #{mod\ 2482}#
-                 #{var\ 2480}#
-                 (lambda (#{mod\ 2487}# #{var\ 2488}# #{public?\ 2489}#)
-                   (#{make-module-set\ 242}#
-                     #{source\ 2479}#
-                     #{mod\ 2487}#
-                     #{var\ 2488}#
-                     #{public?\ 2489}#
-                     #{exp\ 2481}#))
-                 (lambda (#{var\ 2493}#)
-                   (#{make-toplevel-set\ 246}#
-                     #{source\ 2479}#
-                     #{var\ 2493}#
-                     #{exp\ 2481}#)))))
-           (#{build-global-reference\ 306}#
-             (lambda (#{source\ 2495}# #{var\ 2496}# #{mod\ 2497}#)
-               (#{analyze-variable\ 304}#
-                 #{mod\ 2497}#
-                 #{var\ 2496}#
-                 (lambda (#{mod\ 2501}# #{var\ 2502}# #{public?\ 2503}#)
-                   (#{make-module-ref\ 240}#
-                     #{source\ 2495}#
-                     #{mod\ 2501}#
-                     #{var\ 2502}#
-                     #{public?\ 2503}#))
-                 (lambda (#{var\ 2507}#)
-                   (#{make-toplevel-ref\ 244}#
-                     #{source\ 2495}#
-                     #{var\ 2507}#)))))
-           (#{analyze-variable\ 304}#
-             (lambda (#{mod\ 2509}#
-                      #{var\ 2510}#
-                      #{modref-cont\ 2511}#
-                      #{bare-cont\ 2512}#)
-               (if (not #{mod\ 2509}#)
-                 (#{bare-cont\ 2512}# #{var\ 2510}#)
-                 (let ((#{kind\ 2519}# (car #{mod\ 2509}#))
-                       (#{mod\ 2520}# (cdr #{mod\ 2509}#)))
-                   (if (memv #{kind\ 2519}# (quote (public)))
-                     (#{modref-cont\ 2511}#
-                       #{mod\ 2520}#
-                       #{var\ 2510}#
+                 (let ((#{meta\ 2495}#
+                         (#{lambda-meta\ 284}# #{val\ 2491}#)))
+                   (if (not (assq (quote name) #{meta\ 2495}#))
+                     (#{set-lambda-meta!\ 286}#
+                       #{val\ 2491}#
+                       (cons (cons (quote name) #{name\ 2490}#)
+                             #{meta\ 2495}#))))))))
+         (#{build-global-assignment\ 323}#
+           (lambda (#{source\ 2496}#
+                    #{var\ 2497}#
+                    #{exp\ 2498}#
+                    #{mod\ 2499}#)
+             (#{analyze-variable\ 319}#
+               #{mod\ 2499}#
+               #{var\ 2497}#
+               (lambda (#{mod\ 2504}# #{var\ 2505}# #{public?\ 2506}#)
+                 (#{make-module-set\ 257}#
+                   #{source\ 2496}#
+                   #{mod\ 2504}#
+                   #{var\ 2505}#
+                   #{public?\ 2506}#
+                   #{exp\ 2498}#))
+               (lambda (#{var\ 2510}#)
+                 (#{make-toplevel-set\ 261}#
+                   #{source\ 2496}#
+                   #{var\ 2510}#
+                   #{exp\ 2498}#)))))
+         (#{build-global-reference\ 321}#
+           (lambda (#{source\ 2512}# #{var\ 2513}# #{mod\ 2514}#)
+             (#{analyze-variable\ 319}#
+               #{mod\ 2514}#
+               #{var\ 2513}#
+               (lambda (#{mod\ 2518}# #{var\ 2519}# #{public?\ 2520}#)
+                 (#{make-module-ref\ 255}#
+                   #{source\ 2512}#
+                   #{mod\ 2518}#
+                   #{var\ 2519}#
+                   #{public?\ 2520}#))
+               (lambda (#{var\ 2524}#)
+                 (#{make-toplevel-ref\ 259}#
+                   #{source\ 2512}#
+                   #{var\ 2524}#)))))
+         (#{analyze-variable\ 319}#
+           (lambda (#{mod\ 2526}#
+                    #{var\ 2527}#
+                    #{modref-cont\ 2528}#
+                    #{bare-cont\ 2529}#)
+             (if (not #{mod\ 2526}#)
+               (#{bare-cont\ 2529}# #{var\ 2527}#)
+               (begin
+                 (let ((#{kind\ 2536}# (car #{mod\ 2526}#))
+                       (#{mod\ 2537}# (cdr #{mod\ 2526}#)))
+                   (if (eqv? #{kind\ 2536}# (quote public))
+                     (#{modref-cont\ 2528}#
+                       #{mod\ 2537}#
+                       #{var\ 2527}#
                        #t)
-                     (if (memv #{kind\ 2519}# (quote (private)))
+                     (if (eqv? #{kind\ 2536}# (quote private))
                        (if (not (equal?
-                                  #{mod\ 2520}#
+                                  #{mod\ 2537}#
                                   (module-name (current-module))))
-                         (#{modref-cont\ 2511}#
-                           #{mod\ 2520}#
-                           #{var\ 2510}#
+                         (#{modref-cont\ 2528}#
+                           #{mod\ 2537}#
+                           #{var\ 2527}#
                            #f)
-                         (#{bare-cont\ 2512}# #{var\ 2510}#))
-                       (if (memv #{kind\ 2519}# (quote (bare)))
-                         (#{bare-cont\ 2512}# #{var\ 2510}#)
-                         (if (memv #{kind\ 2519}# (quote (hygiene)))
+                         (#{bare-cont\ 2529}# #{var\ 2527}#))
+                       (if (eqv? #{kind\ 2536}# (quote bare))
+                         (#{bare-cont\ 2529}# #{var\ 2527}#)
+                         (if (eqv? #{kind\ 2536}# (quote hygiene))
                            (if (if (not (equal?
-                                          #{mod\ 2520}#
+                                          #{mod\ 2537}#
                                           (module-name (current-module))))
                                  (module-variable
-                                   (resolve-module #{mod\ 2520}#)
-                                   #{var\ 2510}#)
+                                   (resolve-module #{mod\ 2537}#)
+                                   #{var\ 2527}#)
                                  #f)
-                             (#{modref-cont\ 2511}#
-                               #{mod\ 2520}#
-                               #{var\ 2510}#
+                             (#{modref-cont\ 2528}#
+                               #{mod\ 2537}#
+                               #{var\ 2527}#
                                #f)
-                             (#{bare-cont\ 2512}# #{var\ 2510}#))
+                             (#{bare-cont\ 2529}# #{var\ 2527}#))
                            (syntax-violation
                              #f
                              "bad module kind"
-                             #{var\ 2510}#
-                             #{mod\ 2520}#)))))))))
-           (#{build-lexical-assignment\ 302}#
-             (lambda (#{source\ 2528}#
-                      #{name\ 2529}#
-                      #{var\ 2530}#
-                      #{exp\ 2531}#)
-               (#{make-lexical-set\ 238}#
-                 #{source\ 2528}#
-                 #{name\ 2529}#
-                 #{var\ 2530}#
-                 #{exp\ 2531}#)))
-           (#{build-lexical-reference\ 300}#
-             (lambda (#{type\ 2536}#
-                      #{source\ 2537}#
-                      #{name\ 2538}#
-                      #{var\ 2539}#)
-               (#{make-lexical-ref\ 236}#
-                 #{source\ 2537}#
-                 #{name\ 2538}#
-                 #{var\ 2539}#)))
-           (#{build-dynlet\ 298}#
-             (lambda (#{source\ 2544}#
-                      #{fluids\ 2545}#
-                      #{vals\ 2546}#
-                      #{body\ 2547}#)
-               (#{make-dynlet\ 264}#
-                 #{source\ 2544}#
-                 #{fluids\ 2545}#
-                 #{vals\ 2546}#
-                 #{body\ 2547}#)))
-           (#{build-conditional\ 296}#
-             (lambda (#{source\ 2552}#
-                      #{test-exp\ 2553}#
-                      #{then-exp\ 2554}#
-                      #{else-exp\ 2555}#)
-               (#{make-conditional\ 250}#
-                 #{source\ 2552}#
-                 #{test-exp\ 2553}#
-                 #{then-exp\ 2554}#
-                 #{else-exp\ 2555}#)))
-           (#{build-application\ 294}#
-             (lambda (#{source\ 2560}#
-                      #{fun-exp\ 2561}#
-                      #{arg-exps\ 2562}#)
-               (#{make-application\ 252}#
-                 #{source\ 2560}#
-                 #{fun-exp\ 2561}#
-                 #{arg-exps\ 2562}#)))
-           (#{build-void\ 292}#
-             (lambda (#{source\ 2566}#)
-               (#{make-void\ 230}# #{source\ 2566}#)))
-           (#{decorate-source\ 290}#
-             (lambda (#{e\ 2568}# #{s\ 2569}#)
-               (begin
-                 (if (if (pair? #{e\ 2568}#) #{s\ 2569}# #f)
-                   (set-source-properties! #{e\ 2568}# #{s\ 2569}#))
-                 #{e\ 2568}#)))
-           (#{get-global-definition-hook\ 288}#
-             (lambda (#{symbol\ 2574}# #{module\ 2575}#)
+                             #{var\ 2527}#
+                             #{mod\ 2537}#))))))))))
+         (#{build-lexical-assignment\ 317}#
+           (lambda (#{source\ 2545}#
+                    #{name\ 2546}#
+                    #{var\ 2547}#
+                    #{exp\ 2548}#)
+             (#{make-lexical-set\ 253}#
+               #{source\ 2545}#
+               #{name\ 2546}#
+               #{var\ 2547}#
+               #{exp\ 2548}#)))
+         (#{build-lexical-reference\ 315}#
+           (lambda (#{type\ 2553}#
+                    #{source\ 2554}#
+                    #{name\ 2555}#
+                    #{var\ 2556}#)
+             (#{make-lexical-ref\ 251}#
+               #{source\ 2554}#
+               #{name\ 2555}#
+               #{var\ 2556}#)))
+         (#{build-dynlet\ 313}#
+           (lambda (#{source\ 2561}#
+                    #{fluids\ 2562}#
+                    #{vals\ 2563}#
+                    #{body\ 2564}#)
+             (#{make-dynlet\ 279}#
+               #{source\ 2561}#
+               #{fluids\ 2562}#
+               #{vals\ 2563}#
+               #{body\ 2564}#)))
+         (#{build-conditional\ 311}#
+           (lambda (#{source\ 2569}#
+                    #{test-exp\ 2570}#
+                    #{then-exp\ 2571}#
+                    #{else-exp\ 2572}#)
+             (#{make-conditional\ 265}#
+               #{source\ 2569}#
+               #{test-exp\ 2570}#
+               #{then-exp\ 2571}#
+               #{else-exp\ 2572}#)))
+         (#{build-application\ 309}#
+           (lambda (#{source\ 2577}#
+                    #{fun-exp\ 2578}#
+                    #{arg-exps\ 2579}#)
+             (#{make-application\ 267}#
+               #{source\ 2577}#
+               #{fun-exp\ 2578}#
+               #{arg-exps\ 2579}#)))
+         (#{build-void\ 307}#
+           (lambda (#{source\ 2583}#)
+             (#{make-void\ 245}# #{source\ 2583}#)))
+         (#{decorate-source\ 305}#
+           (lambda (#{e\ 2585}# #{s\ 2586}#)
+             (begin
+               (if (if (pair? #{e\ 2585}#) #{s\ 2586}# #f)
+                 (set-source-properties! #{e\ 2585}# #{s\ 2586}#))
+               #{e\ 2585}#)))
+         (#{get-global-definition-hook\ 303}#
+           (lambda (#{symbol\ 2591}# #{module\ 2592}#)
+             (begin
+               (if (if (not #{module\ 2592}#) (current-module) #f)
+                 (warn "module system is booted, we should have a module"
+                       #{symbol\ 2591}#))
                (begin
-                 (if (if (not #{module\ 2575}#) (current-module) #f)
-                   (warn "module system is booted, we should have a module"
-                         #{symbol\ 2574}#))
-                 (let ((#{v\ 2581}#
+                 (let ((#{v\ 2598}#
                          (module-variable
-                           (if #{module\ 2575}#
-                             (resolve-module (cdr #{module\ 2575}#))
+                           (if #{module\ 2592}#
+                             (resolve-module (cdr #{module\ 2592}#))
                              (current-module))
-                           #{symbol\ 2574}#)))
-                   (if #{v\ 2581}#
-                     (if (variable-bound? #{v\ 2581}#)
-                       (let ((#{val\ 2586}# (variable-ref #{v\ 2581}#)))
-                         (if (macro? #{val\ 2586}#)
-                           (if (macro-type #{val\ 2586}#)
-                             (cons (macro-type #{val\ 2586}#)
-                                   (macro-binding #{val\ 2586}#))
-                             #f)
-                           #f))
+                           #{symbol\ 2591}#)))
+                   (if #{v\ 2598}#
+                     (if (variable-bound? #{v\ 2598}#)
+                       (begin
+                         (let ((#{val\ 2603}# (variable-ref #{v\ 2598}#)))
+                           (if (macro? #{val\ 2603}#)
+                             (if (macro-type #{val\ 2603}#)
+                               (cons (macro-type #{val\ 2603}#)
+                                     (macro-binding #{val\ 2603}#))
+                               #f)
+                             #f)))
                        #f)
-                     #f)))))
-           (#{put-global-definition-hook\ 286}#
-             (lambda (#{symbol\ 2590}# #{type\ 2591}# #{val\ 2592}#)
-               (module-define!
-                 (current-module)
-                 #{symbol\ 2590}#
-                 (make-syntax-transformer
-                   #{symbol\ 2590}#
-                   #{type\ 2591}#
-                   #{val\ 2592}#))))
-           (#{local-eval-hook\ 283}#
-             (lambda (#{x\ 2596}# #{mod\ 2597}#)
-               (primitive-eval #{x\ 2596}#)))
-           (#{top-level-eval-hook\ 281}#
-             (lambda (#{x\ 2600}# #{mod\ 2601}#)
-               (primitive-eval #{x\ 2600}#)))
-           (#{fx<\ 279}# <)
-           (#{fx=\ 277}# =)
-           (#{fx-\ 275}# -)
-           (#{fx+\ 273}# +)
-           (#{set-lambda-meta!\ 271}#
-             (lambda (#{x\ 2604}# #{v\ 2605}#)
-               (struct-set! #{x\ 2604}# 1 #{v\ 2605}#)))
-           (#{lambda-meta\ 269}#
-             (lambda (#{x\ 2608}#) (struct-ref #{x\ 2608}# 1)))
-           (#{lambda?\ 267}#
-             (lambda (#{x\ 2610}#)
-               (if (struct? #{x\ 2610}#)
-                 (eq? (struct-vtable #{x\ 2610}#)
-                      (vector-ref %expanded-vtables 13))
-                 #f)))
-           (#{make-dynlet\ 264}#
-             (lambda (#{src\ 2614}#
-                      #{fluids\ 2615}#
-                      #{vals\ 2616}#
-                      #{body\ 2617}#)
-               (make-struct
-                 (vector-ref %expanded-vtables 17)
-                 0
-                 #{src\ 2614}#
-                 #{fluids\ 2615}#
-                 #{vals\ 2616}#
-                 #{body\ 2617}#)))
-           (#{make-letrec\ 262}#
-             (lambda (#{src\ 2622}#
-                      #{names\ 2623}#
-                      #{gensyms\ 2624}#
-                      #{vals\ 2625}#
-                      #{body\ 2626}#)
-               (make-struct
-                 (vector-ref %expanded-vtables 16)
-                 0
-                 #{src\ 2622}#
-                 #{names\ 2623}#
-                 #{gensyms\ 2624}#
-                 #{vals\ 2625}#
-                 #{body\ 2626}#)))
-           (#{make-let\ 260}#
-             (lambda (#{src\ 2632}#
-                      #{names\ 2633}#
-                      #{gensyms\ 2634}#
-                      #{vals\ 2635}#
-                      #{body\ 2636}#)
-               (make-struct
-                 (vector-ref %expanded-vtables 15)
-                 0
-                 #{src\ 2632}#
-                 #{names\ 2633}#
-                 #{gensyms\ 2634}#
-                 #{vals\ 2635}#
-                 #{body\ 2636}#)))
-           (#{make-lambda-case\ 258}#
-             (lambda (#{src\ 2642}#
-                      #{req\ 2643}#
-                      #{opt\ 2644}#
-                      #{rest\ 2645}#
-                      #{kw\ 2646}#
-                      #{inits\ 2647}#
-                      #{gensyms\ 2648}#
-                      #{body\ 2649}#
-                      #{alternate\ 2650}#)
-               (make-struct
-                 (vector-ref %expanded-vtables 14)
-                 0
-                 #{src\ 2642}#
-                 #{req\ 2643}#
-                 #{opt\ 2644}#
-                 #{rest\ 2645}#
-                 #{kw\ 2646}#
-                 #{inits\ 2647}#
-                 #{gensyms\ 2648}#
-                 #{body\ 2649}#
-                 #{alternate\ 2650}#)))
-           (#{make-lambda\ 256}#
-             (lambda (#{src\ 2660}# #{meta\ 2661}# #{body\ 2662}#)
-               (make-struct
-                 (vector-ref %expanded-vtables 13)
-                 0
-                 #{src\ 2660}#
-                 #{meta\ 2661}#
-                 #{body\ 2662}#)))
-           (#{make-sequence\ 254}#
-             (lambda (#{src\ 2666}# #{exps\ 2667}#)
-               (make-struct
-                 (vector-ref %expanded-vtables 12)
-                 0
-                 #{src\ 2666}#
-                 #{exps\ 2667}#)))
-           (#{make-application\ 252}#
-             (lambda (#{src\ 2670}# #{proc\ 2671}# #{args\ 2672}#)
-               (make-struct
-                 (vector-ref %expanded-vtables 11)
-                 0
-                 #{src\ 2670}#
-                 #{proc\ 2671}#
-                 #{args\ 2672}#)))
-           (#{make-conditional\ 250}#
-             (lambda (#{src\ 2676}#
-                      #{test\ 2677}#
-                      #{consequent\ 2678}#
-                      #{alternate\ 2679}#)
-               (make-struct
-                 (vector-ref %expanded-vtables 10)
-                 0
-                 #{src\ 2676}#
-                 #{test\ 2677}#
-                 #{consequent\ 2678}#
-                 #{alternate\ 2679}#)))
-           (#{make-toplevel-define\ 248}#
-             (lambda (#{src\ 2684}# #{name\ 2685}# #{exp\ 2686}#)
-               (make-struct
-                 (vector-ref %expanded-vtables 9)
-                 0
-                 #{src\ 2684}#
-                 #{name\ 2685}#
-                 #{exp\ 2686}#)))
-           (#{make-toplevel-set\ 246}#
-             (lambda (#{src\ 2690}# #{name\ 2691}# #{exp\ 2692}#)
-               (make-struct
-                 (vector-ref %expanded-vtables 8)
-                 0
-                 #{src\ 2690}#
-                 #{name\ 2691}#
-                 #{exp\ 2692}#)))
-           (#{make-toplevel-ref\ 244}#
-             (lambda (#{src\ 2696}# #{name\ 2697}#)
-               (make-struct
-                 (vector-ref %expanded-vtables 7)
-                 0
-                 #{src\ 2696}#
-                 #{name\ 2697}#)))
-           (#{make-module-set\ 242}#
-             (lambda (#{src\ 2700}#
-                      #{mod\ 2701}#
-                      #{name\ 2702}#
-                      #{public?\ 2703}#
-                      #{exp\ 2704}#)
-               (make-struct
-                 (vector-ref %expanded-vtables 6)
-                 0
-                 #{src\ 2700}#
-                 #{mod\ 2701}#
-                 #{name\ 2702}#
-                 #{public?\ 2703}#
-                 #{exp\ 2704}#)))
-           (#{make-module-ref\ 240}#
-             (lambda (#{src\ 2710}#
-                      #{mod\ 2711}#
-                      #{name\ 2712}#
-                      #{public?\ 2713}#)
-               (make-struct
-                 (vector-ref %expanded-vtables 5)
-                 0
-                 #{src\ 2710}#
-                 #{mod\ 2711}#
-                 #{name\ 2712}#
-                 #{public?\ 2713}#)))
-           (#{make-lexical-set\ 238}#
-             (lambda (#{src\ 2718}#
-                      #{name\ 2719}#
-                      #{gensym\ 2720}#
-                      #{exp\ 2721}#)
-               (make-struct
-                 (vector-ref %expanded-vtables 4)
-                 0
-                 #{src\ 2718}#
-                 #{name\ 2719}#
-                 #{gensym\ 2720}#
-                 #{exp\ 2721}#)))
-           (#{make-lexical-ref\ 236}#
-             (lambda (#{src\ 2726}# #{name\ 2727}# #{gensym\ 2728}#)
-               (make-struct
-                 (vector-ref %expanded-vtables 3)
-                 0
-                 #{src\ 2726}#
-                 #{name\ 2727}#
-                 #{gensym\ 2728}#)))
-           (#{make-primitive-ref\ 234}#
-             (lambda (#{src\ 2732}# #{name\ 2733}#)
-               (make-struct
-                 (vector-ref %expanded-vtables 2)
-                 0
-                 #{src\ 2732}#
-                 #{name\ 2733}#)))
-           (#{make-const\ 232}#
-             (lambda (#{src\ 2736}# #{exp\ 2737}#)
-               (make-struct
-                 (vector-ref %expanded-vtables 1)
-                 0
-                 #{src\ 2736}#
-                 #{exp\ 2737}#)))
-           (#{make-void\ 230}#
-             (lambda (#{src\ 2740}#)
-               (make-struct
-                 (vector-ref %expanded-vtables 0)
-                 0
-                 #{src\ 2740}#))))
-    (begin
-      (#{global-extend\ 368}#
-        'local-syntax
-        'letrec-syntax
-        #t)
-      (#{global-extend\ 368}#
-        'local-syntax
-        'let-syntax
-        #f)
-      (#{global-extend\ 368}#
-        'core
-        'fluid-let-syntax
-        (lambda (#{e\ 2742}#
-                 #{r\ 2743}#
-                 #{w\ 2744}#
-                 #{s\ 2745}#
-                 #{mod\ 2746}#)
-          ((lambda (#{tmp\ 2752}#)
-             ((lambda (#{tmp\ 2753}#)
-                (if (if #{tmp\ 2753}#
-                      (apply (lambda (#{_\ 2759}#
-                                      #{var\ 2760}#
-                                      #{val\ 2761}#
-                                      #{e1\ 2762}#
-                                      #{e2\ 2763}#)
-                               (#{valid-bound-ids?\ 435}# #{var\ 2760}#))
-                             #{tmp\ 2753}#)
-                      #f)
-                  (apply (lambda (#{_\ 2770}#
-                                  #{var\ 2771}#
-                                  #{val\ 2772}#
-                                  #{e1\ 2773}#
-                                  #{e2\ 2774}#)
-                           (let ((#{names\ 2776}#
-                                   (map (lambda (#{x\ 2777}#)
-                                          (#{id-var-name\ 429}#
-                                            #{x\ 2777}#
-                                            #{w\ 2744}#))
-                                        #{var\ 2771}#)))
-                             (begin
-                               (for-each
-                                 (lambda (#{id\ 2780}# #{n\ 2781}#)
-                                   (let ((#{atom-key\ 2786}#
-                                           (#{binding-type\ 355}#
-                                             (#{lookup\ 366}#
-                                               #{n\ 2781}#
-                                               #{r\ 2743}#
-                                               #{mod\ 2746}#))))
-                                     (if (memv #{atom-key\ 2786}#
-                                               '(displaced-lexical))
-                                       (syntax-violation
-                                         'fluid-let-syntax
-                                         "identifier out of context"
-                                         #{e\ 2742}#
-                                         (#{source-wrap\ 443}#
-                                           #{id\ 2780}#
-                                           #{w\ 2744}#
-                                           #{s\ 2745}#
-                                           #{mod\ 2746}#)))))
-                                 #{var\ 2771}#
-                                 #{names\ 2776}#)
-                               (#{chi-body\ 465}#
-                                 (cons #{e1\ 2773}# #{e2\ 2774}#)
-                                 (#{source-wrap\ 443}#
-                                   #{e\ 2742}#
-                                   #{w\ 2744}#
-                                   #{s\ 2745}#
-                                   #{mod\ 2746}#)
-                                 (#{extend-env\ 360}#
-                                   #{names\ 2776}#
-                                   (let ((#{trans-r\ 2791}#
-                                           (#{macros-only-env\ 364}#
-                                             #{r\ 2743}#)))
-                                     (map (lambda (#{x\ 2792}#)
-                                            (cons 'macro
-                                                  (#{eval-local-transformer\ 
469}#
-                                                    (#{chi\ 457}#
-                                                      #{x\ 2792}#
-                                                      #{trans-r\ 2791}#
-                                                      #{w\ 2744}#
-                                                      #{mod\ 2746}#)
-                                                    #{mod\ 2746}#)))
-                                          #{val\ 2772}#))
-                                   #{r\ 2743}#)
-                                 #{w\ 2744}#
-                                 #{mod\ 2746}#))))
-                         #{tmp\ 2753}#)
-                  ((lambda (#{_\ 2797}#)
-                     (syntax-violation
-                       'fluid-let-syntax
-                       "bad syntax"
-                       (#{source-wrap\ 443}#
-                         #{e\ 2742}#
-                         #{w\ 2744}#
-                         #{s\ 2745}#
-                         #{mod\ 2746}#)))
-                   #{tmp\ 2752}#)))
-              ($sc-dispatch
-                #{tmp\ 2752}#
-                '(any #(each (any any)) any . each-any))))
-           #{e\ 2742}#)))
-      (#{global-extend\ 368}#
-        'core
-        'quote
-        (lambda (#{e\ 2798}#
-                 #{r\ 2799}#
-                 #{w\ 2800}#
-                 #{s\ 2801}#
-                 #{mod\ 2802}#)
-          ((lambda (#{tmp\ 2808}#)
-             ((lambda (#{tmp\ 2809}#)
-                (if #{tmp\ 2809}#
-                  (apply (lambda (#{_\ 2812}# #{e\ 2813}#)
-                           (#{build-data\ 322}#
-                             #{s\ 2801}#
-                             (#{strip\ 483}# #{e\ 2813}# #{w\ 2800}#)))
-                         #{tmp\ 2809}#)
-                  ((lambda (#{_\ 2815}#)
-                     (syntax-violation
-                       'quote
-                       "bad syntax"
-                       (#{source-wrap\ 443}#
-                         #{e\ 2798}#
-                         #{w\ 2800}#
-                         #{s\ 2801}#
-                         #{mod\ 2802}#)))
-                   #{tmp\ 2808}#)))
-              ($sc-dispatch #{tmp\ 2808}# (quote (any any)))))
-           #{e\ 2798}#)))
-      (#{global-extend\ 368}#
-        'core
-        'syntax
-        (letrec ((#{regen\ 2831}#
-                   (lambda (#{x\ 2832}#)
-                     (let ((#{atom-key\ 2836}# (car #{x\ 2832}#)))
-                       (if (memv #{atom-key\ 2836}# (quote (ref)))
-                         (#{build-lexical-reference\ 300}#
-                           'value
-                           #f
-                           (cadr #{x\ 2832}#)
-                           (cadr #{x\ 2832}#))
-                         (if (memv #{atom-key\ 2836}# (quote (primitive)))
-                           (#{build-primref\ 320}# #f (cadr #{x\ 2832}#))
-                           (if (memv #{atom-key\ 2836}# (quote (quote)))
-                             (#{build-data\ 322}# #f (cadr #{x\ 2832}#))
-                             (if (memv #{atom-key\ 2836}# (quote (lambda)))
-                               (if (list? (cadr #{x\ 2832}#))
-                                 (#{build-simple-lambda\ 314}#
-                                   #f
-                                   (cadr #{x\ 2832}#)
+                     #f))))))
+         (#{put-global-definition-hook\ 301}#
+           (lambda (#{symbol\ 2607}# #{type\ 2608}# #{val\ 2609}#)
+             (module-define!
+               (current-module)
+               #{symbol\ 2607}#
+               (make-syntax-transformer
+                 #{symbol\ 2607}#
+                 #{type\ 2608}#
+                 #{val\ 2609}#))))
+         (#{local-eval-hook\ 298}#
+           (lambda (#{x\ 2613}# #{mod\ 2614}#)
+             (primitive-eval #{x\ 2613}#)))
+         (#{top-level-eval-hook\ 296}#
+           (lambda (#{x\ 2617}# #{mod\ 2618}#)
+             (primitive-eval #{x\ 2617}#)))
+         (#{set-lambda-meta!\ 286}#
+           (lambda (#{x\ 2621}# #{v\ 2622}#)
+             (struct-set! #{x\ 2621}# 1 #{v\ 2622}#)))
+         (#{lambda-meta\ 284}#
+           (lambda (#{x\ 2625}#) (struct-ref #{x\ 2625}# 1)))
+         (#{lambda?\ 282}#
+           (lambda (#{x\ 2627}#)
+             (if (struct? #{x\ 2627}#)
+               (eq? (struct-vtable #{x\ 2627}#)
+                    (vector-ref %expanded-vtables 13))
+               #f)))
+         (#{make-dynlet\ 279}#
+           (lambda (#{src\ 2631}#
+                    #{fluids\ 2632}#
+                    #{vals\ 2633}#
+                    #{body\ 2634}#)
+             (make-struct/no-tail
+               (vector-ref %expanded-vtables 17)
+               #{src\ 2631}#
+               #{fluids\ 2632}#
+               #{vals\ 2633}#
+               #{body\ 2634}#)))
+         (#{make-letrec\ 277}#
+           (lambda (#{src\ 2639}#
+                    #{in-order?\ 2640}#
+                    #{names\ 2641}#
+                    #{gensyms\ 2642}#
+                    #{vals\ 2643}#
+                    #{body\ 2644}#)
+             (make-struct/no-tail
+               (vector-ref %expanded-vtables 16)
+               #{src\ 2639}#
+               #{in-order?\ 2640}#
+               #{names\ 2641}#
+               #{gensyms\ 2642}#
+               #{vals\ 2643}#
+               #{body\ 2644}#)))
+         (#{make-let\ 275}#
+           (lambda (#{src\ 2651}#
+                    #{names\ 2652}#
+                    #{gensyms\ 2653}#
+                    #{vals\ 2654}#
+                    #{body\ 2655}#)
+             (make-struct/no-tail
+               (vector-ref %expanded-vtables 15)
+               #{src\ 2651}#
+               #{names\ 2652}#
+               #{gensyms\ 2653}#
+               #{vals\ 2654}#
+               #{body\ 2655}#)))
+         (#{make-lambda-case\ 273}#
+           (lambda (#{src\ 2661}#
+                    #{req\ 2662}#
+                    #{opt\ 2663}#
+                    #{rest\ 2664}#
+                    #{kw\ 2665}#
+                    #{inits\ 2666}#
+                    #{gensyms\ 2667}#
+                    #{body\ 2668}#
+                    #{alternate\ 2669}#)
+             (make-struct/no-tail
+               (vector-ref %expanded-vtables 14)
+               #{src\ 2661}#
+               #{req\ 2662}#
+               #{opt\ 2663}#
+               #{rest\ 2664}#
+               #{kw\ 2665}#
+               #{inits\ 2666}#
+               #{gensyms\ 2667}#
+               #{body\ 2668}#
+               #{alternate\ 2669}#)))
+         (#{make-lambda\ 271}#
+           (lambda (#{src\ 2679}# #{meta\ 2680}# #{body\ 2681}#)
+             (make-struct/no-tail
+               (vector-ref %expanded-vtables 13)
+               #{src\ 2679}#
+               #{meta\ 2680}#
+               #{body\ 2681}#)))
+         (#{make-sequence\ 269}#
+           (lambda (#{src\ 2685}# #{exps\ 2686}#)
+             (make-struct/no-tail
+               (vector-ref %expanded-vtables 12)
+               #{src\ 2685}#
+               #{exps\ 2686}#)))
+         (#{make-application\ 267}#
+           (lambda (#{src\ 2689}# #{proc\ 2690}# #{args\ 2691}#)
+             (make-struct/no-tail
+               (vector-ref %expanded-vtables 11)
+               #{src\ 2689}#
+               #{proc\ 2690}#
+               #{args\ 2691}#)))
+         (#{make-conditional\ 265}#
+           (lambda (#{src\ 2695}#
+                    #{test\ 2696}#
+                    #{consequent\ 2697}#
+                    #{alternate\ 2698}#)
+             (make-struct/no-tail
+               (vector-ref %expanded-vtables 10)
+               #{src\ 2695}#
+               #{test\ 2696}#
+               #{consequent\ 2697}#
+               #{alternate\ 2698}#)))
+         (#{make-toplevel-define\ 263}#
+           (lambda (#{src\ 2703}# #{name\ 2704}# #{exp\ 2705}#)
+             (make-struct/no-tail
+               (vector-ref %expanded-vtables 9)
+               #{src\ 2703}#
+               #{name\ 2704}#
+               #{exp\ 2705}#)))
+         (#{make-toplevel-set\ 261}#
+           (lambda (#{src\ 2709}# #{name\ 2710}# #{exp\ 2711}#)
+             (make-struct/no-tail
+               (vector-ref %expanded-vtables 8)
+               #{src\ 2709}#
+               #{name\ 2710}#
+               #{exp\ 2711}#)))
+         (#{make-toplevel-ref\ 259}#
+           (lambda (#{src\ 2715}# #{name\ 2716}#)
+             (make-struct/no-tail
+               (vector-ref %expanded-vtables 7)
+               #{src\ 2715}#
+               #{name\ 2716}#)))
+         (#{make-module-set\ 257}#
+           (lambda (#{src\ 2719}#
+                    #{mod\ 2720}#
+                    #{name\ 2721}#
+                    #{public?\ 2722}#
+                    #{exp\ 2723}#)
+             (make-struct/no-tail
+               (vector-ref %expanded-vtables 6)
+               #{src\ 2719}#
+               #{mod\ 2720}#
+               #{name\ 2721}#
+               #{public?\ 2722}#
+               #{exp\ 2723}#)))
+         (#{make-module-ref\ 255}#
+           (lambda (#{src\ 2729}#
+                    #{mod\ 2730}#
+                    #{name\ 2731}#
+                    #{public?\ 2732}#)
+             (make-struct/no-tail
+               (vector-ref %expanded-vtables 5)
+               #{src\ 2729}#
+               #{mod\ 2730}#
+               #{name\ 2731}#
+               #{public?\ 2732}#)))
+         (#{make-lexical-set\ 253}#
+           (lambda (#{src\ 2737}#
+                    #{name\ 2738}#
+                    #{gensym\ 2739}#
+                    #{exp\ 2740}#)
+             (make-struct/no-tail
+               (vector-ref %expanded-vtables 4)
+               #{src\ 2737}#
+               #{name\ 2738}#
+               #{gensym\ 2739}#
+               #{exp\ 2740}#)))
+         (#{make-lexical-ref\ 251}#
+           (lambda (#{src\ 2745}# #{name\ 2746}# #{gensym\ 2747}#)
+             (make-struct/no-tail
+               (vector-ref %expanded-vtables 3)
+               #{src\ 2745}#
+               #{name\ 2746}#
+               #{gensym\ 2747}#)))
+         (#{make-const\ 247}#
+           (lambda (#{src\ 2755}# #{exp\ 2756}#)
+             (make-struct/no-tail
+               (vector-ref %expanded-vtables 1)
+               #{src\ 2755}#
+               #{exp\ 2756}#)))
+         (#{make-void\ 245}#
+           (lambda (#{src\ 2759}#)
+             (make-struct/no-tail
+               (vector-ref %expanded-vtables 0)
+               #{src\ 2759}#))))
+        (begin
+          (set! #{ribcage?\ 410}#
+            (lambda (#{x\ 2286}#)
+              (if (vector? #{x\ 2286}#)
+                (if (= (vector-length #{x\ 2286}#) 4)
+                  (eq? (vector-ref #{x\ 2286}# 0) (quote ribcage))
+                  #f)
+                #f)))
+          (set! #{wrap-subst\ 396}# cdr)
+          (set! #{wrap-marks\ 394}# car)
+          (set! #{make-wrap\ 392}# cons)
+          (set! #{binding-value\ 372}# cdr)
+          (set! #{binding-type\ 370}# car)
+          (set! #{set-syntax-object-module!\ 363}#
+            (lambda (#{x\ 2365}# #{update\ 2366}#)
+              (vector-set! #{x\ 2365}# 3 #{update\ 2366}#)))
+          (set! #{set-syntax-object-wrap!\ 361}#
+            (lambda (#{x\ 2369}# #{update\ 2370}#)
+              (vector-set! #{x\ 2369}# 2 #{update\ 2370}#)))
+          (set! #{set-syntax-object-expression!\ 359}#
+            (lambda (#{x\ 2373}# #{update\ 2374}#)
+              (vector-set! #{x\ 2373}# 1 #{update\ 2374}#)))
+          (set! #{fx<\ 294}# <)
+          (set! #{fx=\ 292}# =)
+          (set! #{fx-\ 290}# -)
+          (set! #{fx+\ 288}# +)
+          (set! #{make-primitive-ref\ 249}#
+            (lambda (#{src\ 2751}# #{name\ 2752}#)
+              (make-struct/no-tail
+                (vector-ref %expanded-vtables 2)
+                #{src\ 2751}#
+                #{name\ 2752}#)))
+          (begin
+            (#{global-extend\ 383}#
+              'local-syntax
+              'letrec-syntax
+              #t)
+            (#{global-extend\ 383}#
+              'local-syntax
+              'let-syntax
+              #f)
+            (#{global-extend\ 383}#
+              'core
+              'fluid-let-syntax
+              (lambda (#{e\ 2761}#
+                       #{r\ 2762}#
+                       #{w\ 2763}#
+                       #{s\ 2764}#
+                       #{mod\ 2765}#)
+                (let ((#{tmp\ 2771}# #{e\ 2761}#))
+                  (let ((#{tmp\ 2772}#
+                          ($sc-dispatch
+                            #{tmp\ 2771}#
+                            '(any #(each (any any)) any . each-any))))
+                    (if (if #{tmp\ 2772}#
+                          (@apply
+                            (lambda (#{_\ 2778}#
+                                     #{var\ 2779}#
+                                     #{val\ 2780}#
+                                     #{e1\ 2781}#
+                                     #{e2\ 2782}#)
+                              (#{valid-bound-ids?\ 450}# #{var\ 2779}#))
+                            #{tmp\ 2772}#)
+                          #f)
+                      (@apply
+                        (lambda (#{_\ 2789}#
+                                 #{var\ 2790}#
+                                 #{val\ 2791}#
+                                 #{e1\ 2792}#
+                                 #{e2\ 2793}#)
+                          (begin
+                            (let ((#{names\ 2795}#
+                                    (map (lambda (#{x\ 2796}#)
+                                           (#{id-var-name\ 444}#
+                                             #{x\ 2796}#
+                                             #{w\ 2763}#))
+                                         #{var\ 2790}#)))
+                              (begin
+                                (for-each
+                                  (lambda (#{id\ 2799}# #{n\ 2800}#)
+                                    (begin
+                                      (let ((#{atom-key\ 2805}#
+                                              (#{binding-type\ 370}#
+                                                (#{lookup\ 381}#
+                                                  #{n\ 2800}#
+                                                  #{r\ 2762}#
+                                                  #{mod\ 2765}#))))
+                                        (if (eqv? #{atom-key\ 2805}#
+                                                  'displaced-lexical)
+                                          (syntax-violation
+                                            'fluid-let-syntax
+                                            "identifier out of context"
+                                            #{e\ 2761}#
+                                            (#{source-wrap\ 458}#
+                                              #{id\ 2799}#
+                                              #{w\ 2763}#
+                                              #{s\ 2764}#
+                                              #{mod\ 2765}#))))))
+                                  #{var\ 2790}#
+                                  #{names\ 2795}#)
+                                (#{chi-body\ 480}#
+                                  (cons #{e1\ 2792}# #{e2\ 2793}#)
+                                  (#{source-wrap\ 458}#
+                                    #{e\ 2761}#
+                                    #{w\ 2763}#
+                                    #{s\ 2764}#
+                                    #{mod\ 2765}#)
+                                  (#{extend-env\ 375}#
+                                    #{names\ 2795}#
+                                    (begin
+                                      (let ((#{trans-r\ 2810}#
+                                              (#{macros-only-env\ 379}#
+                                                #{r\ 2762}#)))
+                                        (map (lambda (#{x\ 2811}#)
+                                               (cons 'macro
+                                                     
(#{eval-local-transformer\ 484}#
+                                                       (#{chi\ 472}#
+                                                         #{x\ 2811}#
+                                                         #{trans-r\ 2810}#
+                                                         #{w\ 2763}#
+                                                         #{mod\ 2765}#)
+                                                       #{mod\ 2765}#)))
+                                             #{val\ 2791}#)))
+                                    #{r\ 2762}#)
+                                  #{w\ 2763}#
+                                  #{mod\ 2765}#)))))
+                        #{tmp\ 2772}#)
+                      (let ((#{_\ 2816}# #{tmp\ 2771}#))
+                        (syntax-violation
+                          'fluid-let-syntax
+                          "bad syntax"
+                          (#{source-wrap\ 458}#
+                            #{e\ 2761}#
+                            #{w\ 2763}#
+                            #{s\ 2764}#
+                            #{mod\ 2765}#))))))))
+            (#{global-extend\ 383}#
+              'core
+              'quote
+              (lambda (#{e\ 2817}#
+                       #{r\ 2818}#
+                       #{w\ 2819}#
+                       #{s\ 2820}#
+                       #{mod\ 2821}#)
+                (let ((#{tmp\ 2827}# #{e\ 2817}#))
+                  (let ((#{tmp\ 2828}#
+                          ($sc-dispatch #{tmp\ 2827}# (quote (any any)))))
+                    (if #{tmp\ 2828}#
+                      (@apply
+                        (lambda (#{_\ 2831}# #{e\ 2832}#)
+                          (#{build-data\ 337}#
+                            #{s\ 2820}#
+                            (#{strip\ 498}# #{e\ 2832}# #{w\ 2819}#)))
+                        #{tmp\ 2828}#)
+                      (let ((#{_\ 2834}# #{tmp\ 2827}#))
+                        (syntax-violation
+                          'quote
+                          "bad syntax"
+                          (#{source-wrap\ 458}#
+                            #{e\ 2817}#
+                            #{w\ 2819}#
+                            #{s\ 2820}#
+                            #{mod\ 2821}#))))))))
+            (#{global-extend\ 383}#
+              'core
+              'syntax
+              (letrec*
+                ((#{regen\ 2850}#
+                   (lambda (#{x\ 2851}#)
+                     (begin
+                       (let ((#{atom-key\ 2855}# (car #{x\ 2851}#)))
+                         (if (eqv? #{atom-key\ 2855}# (quote ref))
+                           (#{build-lexical-reference\ 315}#
+                             'value
+                             #f
+                             (car (cdr #{x\ 2851}#))
+                             (car (cdr #{x\ 2851}#)))
+                           (if (eqv? #{atom-key\ 2855}# (quote primitive))
+                             (#{build-primref\ 335}#
+                               #f
+                               (car (cdr #{x\ 2851}#)))
+                             (if (eqv? #{atom-key\ 2855}# (quote quote))
+                               (#{build-data\ 337}# #f (car (cdr #{x\ 2851}#)))
+                               (if (eqv? #{atom-key\ 2855}# (quote lambda))
+                                 (if (list? (car (cdr #{x\ 2851}#)))
+                                   (#{build-simple-lambda\ 329}#
+                                     #f
+                                     (car (cdr #{x\ 2851}#))
+                                     #f
+                                     (car (cdr #{x\ 2851}#))
+                                     '()
+                                     (#{regen\ 2850}#
+                                       (car (cdr (cdr #{x\ 2851}#)))))
+                                   (error "how did we get here" #{x\ 2851}#))
+                                 (#{build-application\ 309}#
                                    #f
-                                   (cadr #{x\ 2832}#)
-                                   '()
-                                   (#{regen\ 2831}# (caddr #{x\ 2832}#)))
-                                 (error "how did we get here" #{x\ 2832}#))
-                               (#{build-application\ 294}#
-                                 #f
-                                 (#{build-primref\ 320}# #f (car #{x\ 2832}#))
-                                 (map #{regen\ 2831}#
-                                      (cdr #{x\ 2832}#))))))))))
-                 (#{gen-vector\ 2829}#
-                   (lambda (#{x\ 2848}#)
-                     (if (eq? (car #{x\ 2848}#) (quote list))
-                       (cons (quote vector) (cdr #{x\ 2848}#))
-                       (if (eq? (car #{x\ 2848}#) (quote quote))
+                                   (#{build-primref\ 335}#
+                                     #f
+                                     (car #{x\ 2851}#))
+                                   (map #{regen\ 2850}#
+                                        (cdr #{x\ 2851}#)))))))))))
+                 (#{gen-vector\ 2848}#
+                   (lambda (#{x\ 2867}#)
+                     (if (eq? (car #{x\ 2867}#) (quote list))
+                       (cons (quote vector) (cdr #{x\ 2867}#))
+                       (if (eq? (car #{x\ 2867}#) (quote quote))
                          (list 'quote
-                               (list->vector (cadr #{x\ 2848}#)))
-                         (list (quote list->vector) #{x\ 2848}#)))))
-                 (#{gen-append\ 2827}#
-                   (lambda (#{x\ 2858}# #{y\ 2859}#)
-                     (if (equal? #{y\ 2859}# (quote (quote ())))
-                       #{x\ 2858}#
-                       (list (quote append) #{x\ 2858}# #{y\ 2859}#))))
-                 (#{gen-cons\ 2825}#
-                   (lambda (#{x\ 2863}# #{y\ 2864}#)
-                     (let ((#{atom-key\ 2869}# (car #{y\ 2864}#)))
-                       (if (memv #{atom-key\ 2869}# (quote (quote)))
-                         (if (eq? (car #{x\ 2863}#) (quote quote))
-                           (list 'quote
-                                 (cons (cadr #{x\ 2863}#) (cadr #{y\ 2864}#)))
-                           (if (eq? (cadr #{y\ 2864}#) (quote ()))
-                             (list (quote list) #{x\ 2863}#)
-                             (list (quote cons) #{x\ 2863}# #{y\ 2864}#)))
-                         (if (memv #{atom-key\ 2869}# (quote (list)))
-                           (cons 'list
-                                 (cons #{x\ 2863}# (cdr #{y\ 2864}#)))
-                           (list (quote cons) #{x\ 2863}# #{y\ 2864}#))))))
-                 (#{gen-map\ 2823}#
-                   (lambda (#{e\ 2878}# #{map-env\ 2879}#)
-                     (let ((#{formals\ 2884}# (map cdr #{map-env\ 2879}#))
-                           (#{actuals\ 2885}#
-                             (map (lambda (#{x\ 2886}#)
-                                    (list (quote ref) (car #{x\ 2886}#)))
-                                  #{map-env\ 2879}#)))
-                       (if (eq? (car #{e\ 2878}#) (quote ref))
-                         (car #{actuals\ 2885}#)
-                         (if (and-map
-                               (lambda (#{x\ 2893}#)
-                                 (if (eq? (car #{x\ 2893}#) (quote ref))
-                                   (memq (cadr #{x\ 2893}#) #{formals\ 2884}#)
-                                   #f))
-                               (cdr #{e\ 2878}#))
-                           (cons 'map
-                                 (cons (list 'primitive
-                                             (car #{e\ 2878}#))
-                                       (map (let ((#{r\ 2899}#
-                                                    (map cons
-                                                         #{formals\ 2884}#
-                                                         #{actuals\ 2885}#)))
-                                              (lambda (#{x\ 2900}#)
-                                                (cdr (assq (cadr #{x\ 2900}#)
-                                                           #{r\ 2899}#))))
-                                            (cdr #{e\ 2878}#))))
-                           (cons 'map
-                                 (cons (list 'lambda
-                                             #{formals\ 2884}#
-                                             #{e\ 2878}#)
-                                       #{actuals\ 2885}#)))))))
-                 (#{gen-mappend\ 2821}#
-                   (lambda (#{e\ 2904}# #{map-env\ 2905}#)
+                               (list->vector (car (cdr #{x\ 2867}#))))
+                         (list (quote list->vector) #{x\ 2867}#)))))
+                 (#{gen-append\ 2846}#
+                   (lambda (#{x\ 2877}# #{y\ 2878}#)
+                     (if (equal? #{y\ 2878}# (quote (quote ())))
+                       #{x\ 2877}#
+                       (list (quote append) #{x\ 2877}# #{y\ 2878}#))))
+                 (#{gen-cons\ 2844}#
+                   (lambda (#{x\ 2882}# #{y\ 2883}#)
+                     (begin
+                       (let ((#{atom-key\ 2888}# (car #{y\ 2883}#)))
+                         (if (eqv? #{atom-key\ 2888}# (quote quote))
+                           (if (eq? (car #{x\ 2882}#) (quote quote))
+                             (list 'quote
+                                   (cons (car (cdr #{x\ 2882}#))
+                                         (car (cdr #{y\ 2883}#))))
+                             (if (eq? (car (cdr #{y\ 2883}#)) (quote ()))
+                               (list (quote list) #{x\ 2882}#)
+                               (list (quote cons) #{x\ 2882}# #{y\ 2883}#)))
+                           (if (eqv? #{atom-key\ 2888}# (quote list))
+                             (cons 'list
+                                   (cons #{x\ 2882}# (cdr #{y\ 2883}#)))
+                             (list (quote cons) #{x\ 2882}# #{y\ 2883}#)))))))
+                 (#{gen-map\ 2842}#
+                   (lambda (#{e\ 2897}# #{map-env\ 2898}#)
+                     (begin
+                       (let ((#{formals\ 2903}# (map cdr #{map-env\ 2898}#))
+                             (#{actuals\ 2904}#
+                               (map (lambda (#{x\ 2905}#)
+                                      (list (quote ref) (car #{x\ 2905}#)))
+                                    #{map-env\ 2898}#)))
+                         (if (eq? (car #{e\ 2897}#) (quote ref))
+                           (car #{actuals\ 2904}#)
+                           (if (and-map
+                                 (lambda (#{x\ 2912}#)
+                                   (if (eq? (car #{x\ 2912}#) (quote ref))
+                                     (memq (car (cdr #{x\ 2912}#))
+                                           #{formals\ 2903}#)
+                                     #f))
+                                 (cdr #{e\ 2897}#))
+                             (cons 'map
+                                   (cons (list 'primitive
+                                               (car #{e\ 2897}#))
+                                         (map (begin
+                                                (let ((#{r\ 2918}#
+                                                        (map cons
+                                                             #{formals\ 2903}#
+                                                             #{actuals\ 
2904}#)))
+                                                  (lambda (#{x\ 2919}#)
+                                                    (cdr (assq (car (cdr #{x\ 
2919}#))
+                                                               #{r\ 2918}#)))))
+                                              (cdr #{e\ 2897}#))))
+                             (cons 'map
+                                   (cons (list 'lambda
+                                               #{formals\ 2903}#
+                                               #{e\ 2897}#)
+                                         #{actuals\ 2904}#))))))))
+                 (#{gen-mappend\ 2840}#
+                   (lambda (#{e\ 2923}# #{map-env\ 2924}#)
                      (list 'apply
                            '(primitive append)
-                           (#{gen-map\ 2823}# #{e\ 2904}# #{map-env\ 2905}#))))
-                 (#{gen-ref\ 2819}#
-                   (lambda (#{src\ 2909}#
-                            #{var\ 2910}#
-                            #{level\ 2911}#
-                            #{maps\ 2912}#)
-                     (if (#{fx=\ 277}# #{level\ 2911}# 0)
-                       (values #{var\ 2910}# #{maps\ 2912}#)
-                       (if (null? #{maps\ 2912}#)
+                           (#{gen-map\ 2842}# #{e\ 2923}# #{map-env\ 2924}#))))
+                 (#{gen-ref\ 2838}#
+                   (lambda (#{src\ 2928}#
+                            #{var\ 2929}#
+                            #{level\ 2930}#
+                            #{maps\ 2931}#)
+                     (if (#{fx=\ 292}# #{level\ 2930}# 0)
+                       (values #{var\ 2929}# #{maps\ 2931}#)
+                       (if (null? #{maps\ 2931}#)
                          (syntax-violation
                            'syntax
                            "missing ellipsis"
-                           #{src\ 2909}#)
+                           #{src\ 2928}#)
                          (call-with-values
                            (lambda ()
-                             (#{gen-ref\ 2819}#
-                               #{src\ 2909}#
-                               #{var\ 2910}#
-                               (#{fx-\ 275}# #{level\ 2911}# 1)
-                               (cdr #{maps\ 2912}#)))
-                           (lambda (#{outer-var\ 2917}# #{outer-maps\ 2918}#)
-                             (let ((#{b\ 2922}#
-                                     (assq #{outer-var\ 2917}#
-                                           (car #{maps\ 2912}#))))
-                               (if #{b\ 2922}#
-                                 (values (cdr #{b\ 2922}#) #{maps\ 2912}#)
-                                 (let ((#{inner-var\ 2924}#
-                                         (#{gen-var\ 485}# (quote tmp))))
+                             (#{gen-ref\ 2838}#
+                               #{src\ 2928}#
+                               #{var\ 2929}#
+                               (#{fx-\ 290}# #{level\ 2930}# 1)
+                               (cdr #{maps\ 2931}#)))
+                           (lambda (#{outer-var\ 2936}# #{outer-maps\ 2937}#)
+                             (begin
+                               (let ((#{b\ 2941}#
+                                       (assq #{outer-var\ 2936}#
+                                             (car #{maps\ 2931}#))))
+                                 (if #{b\ 2941}#
+                                   (values (cdr #{b\ 2941}#) #{maps\ 2931}#)
+                                   (begin
+                                     (let ((#{inner-var\ 2943}#
+                                             (#{gen-var\ 500}# (quote tmp))))
+                                       (values
+                                         #{inner-var\ 2943}#
+                                         (cons (cons (cons #{outer-var\ 2936}#
+                                                           #{inner-var\ 2943}#)
+                                                     (car #{maps\ 2931}#))
+                                               #{outer-maps\ 
2937}#)))))))))))))
+                 (#{gen-syntax\ 2836}#
+                   (lambda (#{src\ 2944}#
+                            #{e\ 2945}#
+                            #{r\ 2946}#
+                            #{maps\ 2947}#
+                            #{ellipsis?\ 2948}#
+                            #{mod\ 2949}#)
+                     (if (#{id?\ 387}# #{e\ 2945}#)
+                       (begin
+                         (let ((#{label\ 2957}#
+                                 (#{id-var-name\ 444}#
+                                   #{e\ 2945}#
+                                   '(()))))
+                           (begin
+                             (let ((#{b\ 2960}#
+                                     (#{lookup\ 381}#
+                                       #{label\ 2957}#
+                                       #{r\ 2946}#
+                                       #{mod\ 2949}#)))
+                               (if (eq? (#{binding-type\ 370}# #{b\ 2960}#)
+                                        'syntax)
+                                 (call-with-values
+                                   (lambda ()
+                                     (begin
+                                       (let ((#{var.lev\ 2962}#
+                                               (#{binding-value\ 372}#
+                                                 #{b\ 2960}#)))
+                                         (#{gen-ref\ 2838}#
+                                           #{src\ 2944}#
+                                           (car #{var.lev\ 2962}#)
+                                           (cdr #{var.lev\ 2962}#)
+                                           #{maps\ 2947}#))))
+                                   (lambda (#{var\ 2963}# #{maps\ 2964}#)
+                                     (values
+                                       (list (quote ref) #{var\ 2963}#)
+                                       #{maps\ 2964}#)))
+                                 (if (#{ellipsis?\ 2948}# #{e\ 2945}#)
+                                   (syntax-violation
+                                     'syntax
+                                     "misplaced ellipsis"
+                                     #{src\ 2944}#)
                                    (values
-                                     #{inner-var\ 2924}#
-                                     (cons (cons (cons #{outer-var\ 2917}#
-                                                       #{inner-var\ 2924}#)
-                                                 (car #{maps\ 2912}#))
-                                           #{outer-maps\ 2918}#)))))))))))
-                 (#{gen-syntax\ 2817}#
-                   (lambda (#{src\ 2925}#
-                            #{e\ 2926}#
-                            #{r\ 2927}#
-                            #{maps\ 2928}#
-                            #{ellipsis?\ 2929}#
-                            #{mod\ 2930}#)
-                     (if (#{id?\ 372}# #{e\ 2926}#)
-                       (let ((#{label\ 2938}#
-                               (#{id-var-name\ 429}#
-                                 #{e\ 2926}#
-                                 '(()))))
-                         (let ((#{b\ 2941}#
-                                 (#{lookup\ 366}#
-                                   #{label\ 2938}#
-                                   #{r\ 2927}#
-                                   #{mod\ 2930}#)))
-                           (if (eq? (#{binding-type\ 355}# #{b\ 2941}#)
-                                    'syntax)
-                             (call-with-values
-                               (lambda ()
-                                 (let ((#{var.lev\ 2943}#
-                                         (#{binding-value\ 357}# #{b\ 2941}#)))
-                                   (#{gen-ref\ 2819}#
-                                     #{src\ 2925}#
-                                     (car #{var.lev\ 2943}#)
-                                     (cdr #{var.lev\ 2943}#)
-                                     #{maps\ 2928}#)))
-                               (lambda (#{var\ 2944}# #{maps\ 2945}#)
-                                 (values
-                                   (list (quote ref) #{var\ 2944}#)
-                                   #{maps\ 2945}#)))
-                             (if (#{ellipsis?\ 2929}# #{e\ 2926}#)
-                               (syntax-violation
-                                 'syntax
-                                 "misplaced ellipsis"
-                                 #{src\ 2925}#)
-                               (values
-                                 (list (quote quote) #{e\ 2926}#)
-                                 #{maps\ 2928}#)))))
-                       ((lambda (#{tmp\ 2950}#)
-                          ((lambda (#{tmp\ 2951}#)
-                             (if (if #{tmp\ 2951}#
-                                   (apply (lambda (#{dots\ 2954}# #{e\ 2955}#)
-                                            (#{ellipsis?\ 2929}#
-                                              #{dots\ 2954}#))
-                                          #{tmp\ 2951}#)
-                                   #f)
-                               (apply (lambda (#{dots\ 2958}# #{e\ 2959}#)
-                                        (#{gen-syntax\ 2817}#
-                                          #{src\ 2925}#
-                                          #{e\ 2959}#
-                                          #{r\ 2927}#
-                                          #{maps\ 2928}#
-                                          (lambda (#{x\ 2960}#) #f)
-                                          #{mod\ 2930}#))
-                                      #{tmp\ 2951}#)
-                               ((lambda (#{tmp\ 2962}#)
-                                  (if (if #{tmp\ 2962}#
-                                        (apply (lambda (#{x\ 2966}#
-                                                        #{dots\ 2967}#
-                                                        #{y\ 2968}#)
-                                                 (#{ellipsis?\ 2929}#
-                                                   #{dots\ 2967}#))
-                                               #{tmp\ 2962}#)
-                                        #f)
-                                    (apply (lambda (#{x\ 2972}#
-                                                    #{dots\ 2973}#
-                                                    #{y\ 2974}#)
-                                             (letrec ((#{f\ 2978}#
-                                                        (lambda (#{y\ 2979}#
-                                                                 #{k\ 2980}#)
-                                                          ((lambda (#{tmp\ 
2987}#)
-                                                             ((lambda (#{tmp\ 
2988}#)
-                                                                (if (if #{tmp\ 
2988}#
-                                                                      (apply 
(lambda (#{dots\ 2991}#
-                                                                               
       #{y\ 2992}#)
-                                                                               
(#{ellipsis?\ 2929}#
-                                                                               
  #{dots\ 2991}#))
-                                                                             
#{tmp\ 2988}#)
-                                                                      #f)
-                                                                  (apply 
(lambda (#{dots\ 2995}#
-                                                                               
   #{y\ 2996}#)
-                                                                           
(#{f\ 2978}#
-                                                                             
#{y\ 2996}#
-                                                                             
(lambda (#{maps\ 2997}#)
-                                                                               
(call-with-values
-                                                                               
  (lambda ()
-                                                                               
    (#{k\ 2980}#
-                                                                               
      (cons '()
-                                                                               
            #{maps\ 2997}#)))
-                                                                               
  (lambda (#{x\ 2999}#
-                                                                               
           #{maps\ 3000}#)
-                                                                               
    (if (null? (car #{maps\ 3000}#))
-                                                                               
      (syntax-violation
-                                                                               
        'syntax
-                                                                               
        "extra ellipsis"
-                                                                               
        #{src\ 2925}#)
-                                                                               
      (values
-                                                                               
        (#{gen-mappend\ 2821}#
-                                                                               
          #{x\ 2999}#
-                                                                               
          (car #{maps\ 3000}#))
-                                                                               
        (cdr #{maps\ 3000}#))))))))
-                                                                         
#{tmp\ 2988}#)
-                                                                  ((lambda 
(#{_\ 3004}#)
-                                                                     
(call-with-values
-                                                                       (lambda 
()
-                                                                         
(#{gen-syntax\ 2817}#
-                                                                           
#{src\ 2925}#
-                                                                           
#{y\ 2979}#
-                                                                           
#{r\ 2927}#
-                                                                           
#{maps\ 2928}#
-                                                                           
#{ellipsis?\ 2929}#
-                                                                           
#{mod\ 2930}#))
-                                                                       (lambda 
(#{y\ 3005}#
-                                                                               
 #{maps\ 3006}#)
-                                                                         
(call-with-values
-                                                                           
(lambda ()
-                                                                             
(#{k\ 2980}#
-                                                                               
#{maps\ 3006}#))
-                                                                           
(lambda (#{x\ 3009}#
-                                                                               
     #{maps\ 3010}#)
-                                                                             
(values
-                                                                               
(#{gen-append\ 2827}#
-                                                                               
  #{x\ 3009}#
-                                                                               
  #{y\ 3005}#)
-                                                                               
#{maps\ 3010}#))))))
-                                                                   #{tmp\ 
2987}#)))
-                                                              ($sc-dispatch
-                                                                #{tmp\ 2987}#
-                                                                '(any . any))))
-                                                           #{y\ 2979}#))))
-                                               (#{f\ 2978}#
-                                                 #{y\ 2974}#
-                                                 (lambda (#{maps\ 2981}#)
-                                                   (call-with-values
-                                                     (lambda ()
-                                                       (#{gen-syntax\ 2817}#
-                                                         #{src\ 2925}#
-                                                         #{x\ 2972}#
-                                                         #{r\ 2927}#
-                                                         (cons '()
-                                                               #{maps\ 2981}#)
-                                                         #{ellipsis?\ 2929}#
-                                                         #{mod\ 2930}#))
-                                                     (lambda (#{x\ 2983}#
-                                                              #{maps\ 2984}#)
-                                                       (if (null? (car #{maps\ 
2984}#))
-                                                         (syntax-violation
-                                                           'syntax
-                                                           "extra ellipsis"
-                                                           #{src\ 2925}#)
-                                                         (values
-                                                           (#{gen-map\ 2823}#
-                                                             #{x\ 2983}#
-                                                             (car #{maps\ 
2984}#))
-                                                           (cdr #{maps\ 
2984}#)))))))))
-                                           #{tmp\ 2962}#)
-                                    ((lambda (#{tmp\ 3013}#)
-                                       (if #{tmp\ 3013}#
-                                         (apply (lambda (#{x\ 3016}#
-                                                         #{y\ 3017}#)
-                                                  (call-with-values
-                                                    (lambda ()
-                                                      (#{gen-syntax\ 2817}#
-                                                        #{src\ 2925}#
-                                                        #{x\ 3016}#
-                                                        #{r\ 2927}#
-                                                        #{maps\ 2928}#
-                                                        #{ellipsis?\ 2929}#
-                                                        #{mod\ 2930}#))
-                                                    (lambda (#{x\ 3018}#
-                                                             #{maps\ 3019}#)
-                                                      (call-with-values
-                                                        (lambda ()
-                                                          (#{gen-syntax\ 2817}#
-                                                            #{src\ 2925}#
-                                                            #{y\ 3017}#
-                                                            #{r\ 2927}#
-                                                            #{maps\ 3019}#
-                                                            #{ellipsis?\ 2929}#
-                                                            #{mod\ 2930}#))
-                                                        (lambda (#{y\ 3022}#
-                                                                 #{maps\ 
3023}#)
-                                                          (values
-                                                            (#{gen-cons\ 2825}#
-                                                              #{x\ 3018}#
-                                                              #{y\ 3022}#)
-                                                            #{maps\ 
3023}#))))))
-                                                #{tmp\ 3013}#)
-                                         ((lambda (#{tmp\ 3026}#)
-                                            (if #{tmp\ 3026}#
-                                              (apply (lambda (#{e1\ 3029}#
-                                                              #{e2\ 3030}#)
-                                                       (call-with-values
-                                                         (lambda ()
-                                                           (#{gen-syntax\ 
2817}#
-                                                             #{src\ 2925}#
-                                                             (cons #{e1\ 3029}#
-                                                                   #{e2\ 
3030}#)
-                                                             #{r\ 2927}#
-                                                             #{maps\ 2928}#
-                                                             #{ellipsis?\ 
2929}#
-                                                             #{mod\ 2930}#))
-                                                         (lambda (#{e\ 3032}#
-                                                                  #{maps\ 
3033}#)
-                                                           (values
-                                                             (#{gen-vector\ 
2829}#
-                                                               #{e\ 3032}#)
-                                                             #{maps\ 3033}#))))
-                                                     #{tmp\ 3026}#)
-                                              ((lambda (#{_\ 3037}#)
-                                                 (values
-                                                   (list 'quote
-                                                         #{e\ 2926}#)
-                                                   #{maps\ 2928}#))
-                                               #{tmp\ 2950}#)))
-                                          ($sc-dispatch
-                                            #{tmp\ 2950}#
-                                            '#(vector (any . each-any))))))
+                                     (list (quote quote) #{e\ 2945}#)
+                                     #{maps\ 2947}#)))))))
+                       (let ((#{tmp\ 2969}# #{e\ 2945}#))
+                         (let ((#{tmp\ 2970}#
+                                 ($sc-dispatch
+                                   #{tmp\ 2969}#
+                                   '(any any))))
+                           (if (if #{tmp\ 2970}#
+                                 (@apply
+                                   (lambda (#{dots\ 2973}# #{e\ 2974}#)
+                                     (#{ellipsis?\ 2948}# #{dots\ 2973}#))
+                                   #{tmp\ 2970}#)
+                                 #f)
+                             (@apply
+                               (lambda (#{dots\ 2977}# #{e\ 2978}#)
+                                 (#{gen-syntax\ 2836}#
+                                   #{src\ 2944}#
+                                   #{e\ 2978}#
+                                   #{r\ 2946}#
+                                   #{maps\ 2947}#
+                                   (lambda (#{x\ 2979}#) #f)
+                                   #{mod\ 2949}#))
+                               #{tmp\ 2970}#)
+                             (let ((#{tmp\ 2981}#
                                      ($sc-dispatch
-                                       #{tmp\ 2950}#
-                                       '(any . any)))))
-                                ($sc-dispatch
-                                  #{tmp\ 2950}#
-                                  '(any any . any)))))
-                           ($sc-dispatch #{tmp\ 2950}# (quote (any any)))))
-                        #{e\ 2926}#)))))
-          (lambda (#{e\ 3039}#
-                   #{r\ 3040}#
-                   #{w\ 3041}#
-                   #{s\ 3042}#
-                   #{mod\ 3043}#)
-            (let ((#{e\ 3050}#
-                    (#{source-wrap\ 443}#
-                      #{e\ 3039}#
-                      #{w\ 3041}#
-                      #{s\ 3042}#
-                      #{mod\ 3043}#)))
-              ((lambda (#{tmp\ 3051}#)
-                 ((lambda (#{tmp\ 3052}#)
-                    (if #{tmp\ 3052}#
-                      (apply (lambda (#{_\ 3055}# #{x\ 3056}#)
-                               (call-with-values
-                                 (lambda ()
-                                   (#{gen-syntax\ 2817}#
-                                     #{e\ 3050}#
-                                     #{x\ 3056}#
-                                     #{r\ 3040}#
-                                     '()
-                                     #{ellipsis?\ 473}#
-                                     #{mod\ 3043}#))
-                                 (lambda (#{e\ 3057}# #{maps\ 3058}#)
-                                   (#{regen\ 2831}# #{e\ 3057}#))))
-                             #{tmp\ 3052}#)
-                      ((lambda (#{_\ 3062}#)
-                         (syntax-violation
-                           'syntax
-                           "bad `syntax' form"
-                           #{e\ 3050}#))
-                       #{tmp\ 3051}#)))
-                  ($sc-dispatch #{tmp\ 3051}# (quote (any any)))))
-               #{e\ 3050}#)))))
-      (#{global-extend\ 368}#
-        'core
-        'lambda
-        (lambda (#{e\ 3063}#
-                 #{r\ 3064}#
-                 #{w\ 3065}#
-                 #{s\ 3066}#
-                 #{mod\ 3067}#)
-          ((lambda (#{tmp\ 3073}#)
-             ((lambda (#{tmp\ 3074}#)
-                (if #{tmp\ 3074}#
-                  (apply (lambda (#{_\ 3079}#
-                                  #{args\ 3080}#
-                                  #{e1\ 3081}#
-                                  #{e2\ 3082}#)
-                           (call-with-values
-                             (lambda ()
-                               (#{lambda-formals\ 475}# #{args\ 3080}#))
-                             (lambda (#{req\ 3083}#
-                                      #{opt\ 3084}#
-                                      #{rest\ 3085}#
-                                      #{kw\ 3086}#)
-                               (letrec ((#{lp\ 3094}#
-                                          (lambda (#{body\ 3095}#
-                                                   #{meta\ 3096}#)
-                                            ((lambda (#{tmp\ 3098}#)
-                                               ((lambda (#{tmp\ 3099}#)
-                                                  (if (if #{tmp\ 3099}#
-                                                        (apply (lambda 
(#{docstring\ 3103}#
-                                                                        #{e1\ 
3104}#
-                                                                        #{e2\ 
3105}#)
-                                                                 (string?
-                                                                   
(syntax->datum
-                                                                     
#{docstring\ 3103}#)))
-                                                               #{tmp\ 3099}#)
-                                                        #f)
-                                                    (apply (lambda 
(#{docstring\ 3109}#
-                                                                    #{e1\ 
3110}#
-                                                                    #{e2\ 
3111}#)
-                                                             (#{lp\ 3094}#
-                                                               (cons #{e1\ 
3110}#
-                                                                     #{e2\ 
3111}#)
-                                                               (append
-                                                                 #{meta\ 3096}#
-                                                                 (list (cons 
'documentation
-                                                                             
(syntax->datum
-                                                                               
#{docstring\ 3109}#))))))
-                                                           #{tmp\ 3099}#)
-                                                    ((lambda (#{tmp\ 3114}#)
-                                                       (if #{tmp\ 3114}#
-                                                         (apply (lambda (#{k\ 
3119}#
-                                                                         #{v\ 
3120}#
-                                                                         #{e1\ 
3121}#
-                                                                         #{e2\ 
3122}#)
-                                                                  (#{lp\ 3094}#
-                                                                    (cons 
#{e1\ 3121}#
-                                                                          
#{e2\ 3122}#)
-                                                                    (append
-                                                                      #{meta\ 
3096}#
-                                                                      
(syntax->datum
-                                                                        (map 
cons
-                                                                             
#{k\ 3119}#
-                                                                             
#{v\ 3120}#)))))
-                                                                #{tmp\ 3114}#)
-                                                         ((lambda (#{_\ 3127}#)
-                                                            
(#{chi-simple-lambda\ 477}#
-                                                              #{e\ 3063}#
-                                                              #{r\ 3064}#
-                                                              #{w\ 3065}#
-                                                              #{s\ 3066}#
-                                                              #{mod\ 3067}#
-                                                              #{req\ 3083}#
-                                                              #{rest\ 3085}#
-                                                              #{meta\ 3096}#
-                                                              #{body\ 3095}#))
-                                                          #{tmp\ 3098}#)))
-                                                     ($sc-dispatch
-                                                       #{tmp\ 3098}#
-                                                       '(#(vector
-                                                           #(each (any . any)))
-                                                         any
-                                                         .
-                                                         each-any)))))
-                                                ($sc-dispatch
-                                                  #{tmp\ 3098}#
-                                                  '(any any . each-any))))
-                                             #{body\ 3095}#))))
-                                 (#{lp\ 3094}#
-                                   (cons #{e1\ 3081}# #{e2\ 3082}#)
-                                   '())))))
-                         #{tmp\ 3074}#)
-                  ((lambda (#{_\ 3129}#)
-                     (syntax-violation
-                       'lambda
-                       "bad lambda"
-                       #{e\ 3063}#))
-                   #{tmp\ 3073}#)))
-              ($sc-dispatch
-                #{tmp\ 3073}#
-                '(any any any . each-any))))
-           #{e\ 3063}#)))
-      (#{global-extend\ 368}#
-        'core
-        'lambda*
-        (lambda (#{e\ 3130}#
-                 #{r\ 3131}#
-                 #{w\ 3132}#
-                 #{s\ 3133}#
-                 #{mod\ 3134}#)
-          ((lambda (#{tmp\ 3140}#)
-             ((lambda (#{tmp\ 3141}#)
-                (if #{tmp\ 3141}#
-                  (apply (lambda (#{_\ 3146}#
-                                  #{args\ 3147}#
-                                  #{e1\ 3148}#
-                                  #{e2\ 3149}#)
-                           (call-with-values
-                             (lambda ()
-                               (#{chi-lambda-case\ 481}#
-                                 #{e\ 3130}#
-                                 #{r\ 3131}#
-                                 #{w\ 3132}#
-                                 #{s\ 3133}#
-                                 #{mod\ 3134}#
-                                 #{lambda*-formals\ 479}#
-                                 (list (cons #{args\ 3147}#
-                                             (cons #{e1\ 3148}#
-                                                   #{e2\ 3149}#)))))
-                             (lambda (#{meta\ 3151}# #{lcase\ 3152}#)
-                               (#{build-case-lambda\ 316}#
-                                 #{s\ 3133}#
-                                 #{meta\ 3151}#
-                                 #{lcase\ 3152}#))))
-                         #{tmp\ 3141}#)
-                  ((lambda (#{_\ 3156}#)
-                     (syntax-violation
-                       'lambda
-                       "bad lambda*"
-                       #{e\ 3130}#))
-                   #{tmp\ 3140}#)))
-              ($sc-dispatch
-                #{tmp\ 3140}#
-                '(any any any . each-any))))
-           #{e\ 3130}#)))
-      (#{global-extend\ 368}#
-        'core
-        'case-lambda
-        (lambda (#{e\ 3157}#
-                 #{r\ 3158}#
-                 #{w\ 3159}#
-                 #{s\ 3160}#
-                 #{mod\ 3161}#)
-          ((lambda (#{tmp\ 3167}#)
-             ((lambda (#{tmp\ 3168}#)
-                (if #{tmp\ 3168}#
-                  (apply (lambda (#{_\ 3176}#
-                                  #{args\ 3177}#
-                                  #{e1\ 3178}#
-                                  #{e2\ 3179}#
-                                  #{args*\ 3180}#
-                                  #{e1*\ 3181}#
-                                  #{e2*\ 3182}#)
-                           (call-with-values
-                             (lambda ()
-                               (#{chi-lambda-case\ 481}#
-                                 #{e\ 3157}#
-                                 #{r\ 3158}#
-                                 #{w\ 3159}#
-                                 #{s\ 3160}#
-                                 #{mod\ 3161}#
-                                 #{lambda-formals\ 475}#
-                                 (cons (cons #{args\ 3177}#
-                                             (cons #{e1\ 3178}# #{e2\ 3179}#))
-                                       (map (lambda (#{tmp\ 3186}#
-                                                     #{tmp\ 3185}#
-                                                     #{tmp\ 3184}#)
-                                              (cons #{tmp\ 3184}#
-                                                    (cons #{tmp\ 3185}#
-                                                          #{tmp\ 3186}#)))
-                                            #{e2*\ 3182}#
-                                            #{e1*\ 3181}#
-                                            #{args*\ 3180}#))))
-                             (lambda (#{meta\ 3188}# #{lcase\ 3189}#)
-                               (#{build-case-lambda\ 316}#
-                                 #{s\ 3160}#
-                                 #{meta\ 3188}#
-                                 #{lcase\ 3189}#))))
-                         #{tmp\ 3168}#)
-                  ((lambda (#{_\ 3193}#)
-                     (syntax-violation
-                       'case-lambda
-                       "bad case-lambda"
-                       #{e\ 3157}#))
-                   #{tmp\ 3167}#)))
-              ($sc-dispatch
-                #{tmp\ 3167}#
-                '(any (any any . each-any)
-                      .
-                      #(each (any any . each-any))))))
-           #{e\ 3157}#)))
-      (#{global-extend\ 368}#
-        'core
-        'case-lambda*
-        (lambda (#{e\ 3194}#
-                 #{r\ 3195}#
-                 #{w\ 3196}#
-                 #{s\ 3197}#
-                 #{mod\ 3198}#)
-          ((lambda (#{tmp\ 3204}#)
-             ((lambda (#{tmp\ 3205}#)
-                (if #{tmp\ 3205}#
-                  (apply (lambda (#{_\ 3213}#
-                                  #{args\ 3214}#
-                                  #{e1\ 3215}#
-                                  #{e2\ 3216}#
-                                  #{args*\ 3217}#
-                                  #{e1*\ 3218}#
-                                  #{e2*\ 3219}#)
-                           (call-with-values
-                             (lambda ()
-                               (#{chi-lambda-case\ 481}#
-                                 #{e\ 3194}#
-                                 #{r\ 3195}#
-                                 #{w\ 3196}#
-                                 #{s\ 3197}#
-                                 #{mod\ 3198}#
-                                 #{lambda*-formals\ 479}#
-                                 (cons (cons #{args\ 3214}#
-                                             (cons #{e1\ 3215}# #{e2\ 3216}#))
-                                       (map (lambda (#{tmp\ 3223}#
-                                                     #{tmp\ 3222}#
-                                                     #{tmp\ 3221}#)
-                                              (cons #{tmp\ 3221}#
-                                                    (cons #{tmp\ 3222}#
-                                                          #{tmp\ 3223}#)))
-                                            #{e2*\ 3219}#
-                                            #{e1*\ 3218}#
-                                            #{args*\ 3217}#))))
-                             (lambda (#{meta\ 3225}# #{lcase\ 3226}#)
-                               (#{build-case-lambda\ 316}#
-                                 #{s\ 3197}#
-                                 #{meta\ 3225}#
-                                 #{lcase\ 3226}#))))
-                         #{tmp\ 3205}#)
-                  ((lambda (#{_\ 3230}#)
-                     (syntax-violation
-                       'case-lambda
-                       "bad case-lambda*"
-                       #{e\ 3194}#))
-                   #{tmp\ 3204}#)))
-              ($sc-dispatch
-                #{tmp\ 3204}#
-                '(any (any any . each-any)
-                      .
-                      #(each (any any . each-any))))))
-           #{e\ 3194}#)))
-      (#{global-extend\ 368}#
-        'core
-        'let
-        (letrec ((#{chi-let\ 3232}#
-                   (lambda (#{e\ 3233}#
-                            #{r\ 3234}#
-                            #{w\ 3235}#
-                            #{s\ 3236}#
-                            #{mod\ 3237}#
-                            #{constructor\ 3238}#
-                            #{ids\ 3239}#
-                            #{vals\ 3240}#
-                            #{exps\ 3241}#)
-                     (if (not (#{valid-bound-ids?\ 435}# #{ids\ 3239}#))
+                                       #{tmp\ 2969}#
+                                       '(any any . any))))
+                               (if (if #{tmp\ 2981}#
+                                     (@apply
+                                       (lambda (#{x\ 2985}#
+                                                #{dots\ 2986}#
+                                                #{y\ 2987}#)
+                                         (#{ellipsis?\ 2948}# #{dots\ 2986}#))
+                                       #{tmp\ 2981}#)
+                                     #f)
+                                 (@apply
+                                   (lambda (#{x\ 2991}#
+                                            #{dots\ 2992}#
+                                            #{y\ 2993}#)
+                                     (letrec*
+                                       ((#{f\ 2997}#
+                                          (lambda (#{y\ 2998}# #{k\ 2999}#)
+                                            (let ((#{tmp\ 3006}# #{y\ 2998}#))
+                                              (let ((#{tmp\ 3007}#
+                                                      ($sc-dispatch
+                                                        #{tmp\ 3006}#
+                                                        '(any . any))))
+                                                (if (if #{tmp\ 3007}#
+                                                      (@apply
+                                                        (lambda (#{dots\ 3010}#
+                                                                 #{y\ 3011}#)
+                                                          (#{ellipsis?\ 2948}#
+                                                            #{dots\ 3010}#))
+                                                        #{tmp\ 3007}#)
+                                                      #f)
+                                                  (@apply
+                                                    (lambda (#{dots\ 3014}#
+                                                             #{y\ 3015}#)
+                                                      (#{f\ 2997}#
+                                                        #{y\ 3015}#
+                                                        (lambda (#{maps\ 
3016}#)
+                                                          (call-with-values
+                                                            (lambda ()
+                                                              (#{k\ 2999}#
+                                                                (cons '()
+                                                                      #{maps\ 
3016}#)))
+                                                            (lambda (#{x\ 
3018}#
+                                                                     #{maps\ 
3019}#)
+                                                              (if (null? (car 
#{maps\ 3019}#))
+                                                                
(syntax-violation
+                                                                  'syntax
+                                                                  "extra 
ellipsis"
+                                                                  #{src\ 
2944}#)
+                                                                (values
+                                                                  
(#{gen-mappend\ 2840}#
+                                                                    #{x\ 3018}#
+                                                                    (car 
#{maps\ 3019}#))
+                                                                  (cdr #{maps\ 
3019}#))))))))
+                                                    #{tmp\ 3007}#)
+                                                  (let ((#{_\ 3023}#
+                                                          #{tmp\ 3006}#))
+                                                    (call-with-values
+                                                      (lambda ()
+                                                        (#{gen-syntax\ 2836}#
+                                                          #{src\ 2944}#
+                                                          #{y\ 2998}#
+                                                          #{r\ 2946}#
+                                                          #{maps\ 2947}#
+                                                          #{ellipsis?\ 2948}#
+                                                          #{mod\ 2949}#))
+                                                      (lambda (#{y\ 3024}#
+                                                               #{maps\ 3025}#)
+                                                        (call-with-values
+                                                          (lambda ()
+                                                            (#{k\ 2999}#
+                                                              #{maps\ 3025}#))
+                                                          (lambda (#{x\ 3028}#
+                                                                   #{maps\ 
3029}#)
+                                                            (values
+                                                              (#{gen-append\ 
2846}#
+                                                                #{x\ 3028}#
+                                                                #{y\ 3024}#)
+                                                              #{maps\ 
3029}#))))))))))))
+                                       (begin
+                                         (#{f\ 2997}#
+                                           #{y\ 2993}#
+                                           (lambda (#{maps\ 3000}#)
+                                             (call-with-values
+                                               (lambda ()
+                                                 (#{gen-syntax\ 2836}#
+                                                   #{src\ 2944}#
+                                                   #{x\ 2991}#
+                                                   #{r\ 2946}#
+                                                   (cons '()
+                                                         #{maps\ 3000}#)
+                                                   #{ellipsis?\ 2948}#
+                                                   #{mod\ 2949}#))
+                                               (lambda (#{x\ 3002}#
+                                                        #{maps\ 3003}#)
+                                                 (if (null? (car #{maps\ 
3003}#))
+                                                   (syntax-violation
+                                                     'syntax
+                                                     "extra ellipsis"
+                                                     #{src\ 2944}#)
+                                                   (values
+                                                     (#{gen-map\ 2842}#
+                                                       #{x\ 3002}#
+                                                       (car #{maps\ 3003}#))
+                                                     (cdr #{maps\ 
3003}#))))))))))
+                                   #{tmp\ 2981}#)
+                                 (let ((#{tmp\ 3032}#
+                                         ($sc-dispatch
+                                           #{tmp\ 2969}#
+                                           '(any . any))))
+                                   (if #{tmp\ 3032}#
+                                     (@apply
+                                       (lambda (#{x\ 3035}# #{y\ 3036}#)
+                                         (call-with-values
+                                           (lambda ()
+                                             (#{gen-syntax\ 2836}#
+                                               #{src\ 2944}#
+                                               #{x\ 3035}#
+                                               #{r\ 2946}#
+                                               #{maps\ 2947}#
+                                               #{ellipsis?\ 2948}#
+                                               #{mod\ 2949}#))
+                                           (lambda (#{x\ 3037}# #{maps\ 3038}#)
+                                             (call-with-values
+                                               (lambda ()
+                                                 (#{gen-syntax\ 2836}#
+                                                   #{src\ 2944}#
+                                                   #{y\ 3036}#
+                                                   #{r\ 2946}#
+                                                   #{maps\ 3038}#
+                                                   #{ellipsis?\ 2948}#
+                                                   #{mod\ 2949}#))
+                                               (lambda (#{y\ 3041}#
+                                                        #{maps\ 3042}#)
+                                                 (values
+                                                   (#{gen-cons\ 2844}#
+                                                     #{x\ 3037}#
+                                                     #{y\ 3041}#)
+                                                   #{maps\ 3042}#))))))
+                                       #{tmp\ 3032}#)
+                                     (let ((#{tmp\ 3045}#
+                                             ($sc-dispatch
+                                               #{tmp\ 2969}#
+                                               '#(vector (any . each-any)))))
+                                       (if #{tmp\ 3045}#
+                                         (@apply
+                                           (lambda (#{e1\ 3048}# #{e2\ 3049}#)
+                                             (call-with-values
+                                               (lambda ()
+                                                 (#{gen-syntax\ 2836}#
+                                                   #{src\ 2944}#
+                                                   (cons #{e1\ 3048}#
+                                                         #{e2\ 3049}#)
+                                                   #{r\ 2946}#
+                                                   #{maps\ 2947}#
+                                                   #{ellipsis?\ 2948}#
+                                                   #{mod\ 2949}#))
+                                               (lambda (#{e\ 3051}#
+                                                        #{maps\ 3052}#)
+                                                 (values
+                                                   (#{gen-vector\ 2848}#
+                                                     #{e\ 3051}#)
+                                                   #{maps\ 3052}#))))
+                                           #{tmp\ 3045}#)
+                                         (let ((#{_\ 3056}# #{tmp\ 2969}#))
+                                           (values
+                                             (list (quote quote) #{e\ 2945}#)
+                                             #{maps\ 2947}#)))))))))))))))
+                (begin
+                  (lambda (#{e\ 3058}#
+                           #{r\ 3059}#
+                           #{w\ 3060}#
+                           #{s\ 3061}#
+                           #{mod\ 3062}#)
+                    (begin
+                      (let ((#{e\ 3069}#
+                              (#{source-wrap\ 458}#
+                                #{e\ 3058}#
+                                #{w\ 3060}#
+                                #{s\ 3061}#
+                                #{mod\ 3062}#)))
+                        (let ((#{tmp\ 3070}# #{e\ 3069}#))
+                          (let ((#{tmp\ 3071}#
+                                  ($sc-dispatch
+                                    #{tmp\ 3070}#
+                                    '(any any))))
+                            (if #{tmp\ 3071}#
+                              (@apply
+                                (lambda (#{_\ 3074}# #{x\ 3075}#)
+                                  (call-with-values
+                                    (lambda ()
+                                      (#{gen-syntax\ 2836}#
+                                        #{e\ 3069}#
+                                        #{x\ 3075}#
+                                        #{r\ 3059}#
+                                        '()
+                                        #{ellipsis?\ 488}#
+                                        #{mod\ 3062}#))
+                                    (lambda (#{e\ 3076}# #{maps\ 3077}#)
+                                      (#{regen\ 2850}# #{e\ 3076}#))))
+                                #{tmp\ 3071}#)
+                              (let ((#{_\ 3081}# #{tmp\ 3070}#))
+                                (syntax-violation
+                                  'syntax
+                                  "bad `syntax' form"
+                                  #{e\ 3069}#)))))))))))
+            (#{global-extend\ 383}#
+              'core
+              'lambda
+              (lambda (#{e\ 3082}#
+                       #{r\ 3083}#
+                       #{w\ 3084}#
+                       #{s\ 3085}#
+                       #{mod\ 3086}#)
+                (let ((#{tmp\ 3092}# #{e\ 3082}#))
+                  (let ((#{tmp\ 3093}#
+                          ($sc-dispatch
+                            #{tmp\ 3092}#
+                            '(any any any . each-any))))
+                    (if #{tmp\ 3093}#
+                      (@apply
+                        (lambda (#{_\ 3098}#
+                                 #{args\ 3099}#
+                                 #{e1\ 3100}#
+                                 #{e2\ 3101}#)
+                          (call-with-values
+                            (lambda ()
+                              (#{lambda-formals\ 490}# #{args\ 3099}#))
+                            (lambda (#{req\ 3102}#
+                                     #{opt\ 3103}#
+                                     #{rest\ 3104}#
+                                     #{kw\ 3105}#)
+                              (letrec*
+                                ((#{lp\ 3113}#
+                                   (lambda (#{body\ 3114}# #{meta\ 3115}#)
+                                     (let ((#{tmp\ 3117}# #{body\ 3114}#))
+                                       (let ((#{tmp\ 3118}#
+                                               ($sc-dispatch
+                                                 #{tmp\ 3117}#
+                                                 '(any any . each-any))))
+                                         (if (if #{tmp\ 3118}#
+                                               (@apply
+                                                 (lambda (#{docstring\ 3122}#
+                                                          #{e1\ 3123}#
+                                                          #{e2\ 3124}#)
+                                                   (string?
+                                                     (syntax->datum
+                                                       #{docstring\ 3122}#)))
+                                                 #{tmp\ 3118}#)
+                                               #f)
+                                           (@apply
+                                             (lambda (#{docstring\ 3128}#
+                                                      #{e1\ 3129}#
+                                                      #{e2\ 3130}#)
+                                               (#{lp\ 3113}#
+                                                 (cons #{e1\ 3129}#
+                                                       #{e2\ 3130}#)
+                                                 (append
+                                                   #{meta\ 3115}#
+                                                   (list (cons 'documentation
+                                                               (syntax->datum
+                                                                 #{docstring\ 
3128}#))))))
+                                             #{tmp\ 3118}#)
+                                           (let ((#{tmp\ 3133}#
+                                                   ($sc-dispatch
+                                                     #{tmp\ 3117}#
+                                                     '(#(vector
+                                                         #(each (any . any)))
+                                                       any
+                                                       .
+                                                       each-any))))
+                                             (if #{tmp\ 3133}#
+                                               (@apply
+                                                 (lambda (#{k\ 3138}#
+                                                          #{v\ 3139}#
+                                                          #{e1\ 3140}#
+                                                          #{e2\ 3141}#)
+                                                   (#{lp\ 3113}#
+                                                     (cons #{e1\ 3140}#
+                                                           #{e2\ 3141}#)
+                                                     (append
+                                                       #{meta\ 3115}#
+                                                       (syntax->datum
+                                                         (map cons
+                                                              #{k\ 3138}#
+                                                              #{v\ 3139}#)))))
+                                                 #{tmp\ 3133}#)
+                                               (let ((#{_\ 3146}#
+                                                       #{tmp\ 3117}#))
+                                                 (#{chi-simple-lambda\ 492}#
+                                                   #{e\ 3082}#
+                                                   #{r\ 3083}#
+                                                   #{w\ 3084}#
+                                                   #{s\ 3085}#
+                                                   #{mod\ 3086}#
+                                                   #{req\ 3102}#
+                                                   #{rest\ 3104}#
+                                                   #{meta\ 3115}#
+                                                   #{body\ 3114}#))))))))))
+                                (begin
+                                  (#{lp\ 3113}#
+                                    (cons #{e1\ 3100}# #{e2\ 3101}#)
+                                    '()))))))
+                        #{tmp\ 3093}#)
+                      (let ((#{_\ 3148}# #{tmp\ 3092}#))
+                        (syntax-violation
+                          'lambda
+                          "bad lambda"
+                          #{e\ 3082}#)))))))
+            (#{global-extend\ 383}#
+              'core
+              'lambda*
+              (lambda (#{e\ 3149}#
+                       #{r\ 3150}#
+                       #{w\ 3151}#
+                       #{s\ 3152}#
+                       #{mod\ 3153}#)
+                (let ((#{tmp\ 3159}# #{e\ 3149}#))
+                  (let ((#{tmp\ 3160}#
+                          ($sc-dispatch
+                            #{tmp\ 3159}#
+                            '(any any any . each-any))))
+                    (if #{tmp\ 3160}#
+                      (@apply
+                        (lambda (#{_\ 3165}#
+                                 #{args\ 3166}#
+                                 #{e1\ 3167}#
+                                 #{e2\ 3168}#)
+                          (call-with-values
+                            (lambda ()
+                              (#{chi-lambda-case\ 496}#
+                                #{e\ 3149}#
+                                #{r\ 3150}#
+                                #{w\ 3151}#
+                                #{s\ 3152}#
+                                #{mod\ 3153}#
+                                #{lambda*-formals\ 494}#
+                                (list (cons #{args\ 3166}#
+                                            (cons #{e1\ 3167}#
+                                                  #{e2\ 3168}#)))))
+                            (lambda (#{meta\ 3170}# #{lcase\ 3171}#)
+                              (#{build-case-lambda\ 331}#
+                                #{s\ 3152}#
+                                #{meta\ 3170}#
+                                #{lcase\ 3171}#))))
+                        #{tmp\ 3160}#)
+                      (let ((#{_\ 3175}# #{tmp\ 3159}#))
+                        (syntax-violation
+                          'lambda
+                          "bad lambda*"
+                          #{e\ 3149}#)))))))
+            (#{global-extend\ 383}#
+              'core
+              'case-lambda
+              (lambda (#{e\ 3176}#
+                       #{r\ 3177}#
+                       #{w\ 3178}#
+                       #{s\ 3179}#
+                       #{mod\ 3180}#)
+                (let ((#{tmp\ 3186}# #{e\ 3176}#))
+                  (let ((#{tmp\ 3187}#
+                          ($sc-dispatch
+                            #{tmp\ 3186}#
+                            '(any (any any . each-any)
+                                  .
+                                  #(each (any any . each-any))))))
+                    (if #{tmp\ 3187}#
+                      (@apply
+                        (lambda (#{_\ 3195}#
+                                 #{args\ 3196}#
+                                 #{e1\ 3197}#
+                                 #{e2\ 3198}#
+                                 #{args*\ 3199}#
+                                 #{e1*\ 3200}#
+                                 #{e2*\ 3201}#)
+                          (call-with-values
+                            (lambda ()
+                              (#{chi-lambda-case\ 496}#
+                                #{e\ 3176}#
+                                #{r\ 3177}#
+                                #{w\ 3178}#
+                                #{s\ 3179}#
+                                #{mod\ 3180}#
+                                #{lambda-formals\ 490}#
+                                (cons (cons #{args\ 3196}#
+                                            (cons #{e1\ 3197}# #{e2\ 3198}#))
+                                      (map (lambda (#{tmp\ 3205}#
+                                                    #{tmp\ 3204}#
+                                                    #{tmp\ 3203}#)
+                                             (cons #{tmp\ 3203}#
+                                                   (cons #{tmp\ 3204}#
+                                                         #{tmp\ 3205}#)))
+                                           #{e2*\ 3201}#
+                                           #{e1*\ 3200}#
+                                           #{args*\ 3199}#))))
+                            (lambda (#{meta\ 3207}# #{lcase\ 3208}#)
+                              (#{build-case-lambda\ 331}#
+                                #{s\ 3179}#
+                                #{meta\ 3207}#
+                                #{lcase\ 3208}#))))
+                        #{tmp\ 3187}#)
+                      (let ((#{_\ 3212}# #{tmp\ 3186}#))
+                        (syntax-violation
+                          'case-lambda
+                          "bad case-lambda"
+                          #{e\ 3176}#)))))))
+            (#{global-extend\ 383}#
+              'core
+              'case-lambda*
+              (lambda (#{e\ 3213}#
+                       #{r\ 3214}#
+                       #{w\ 3215}#
+                       #{s\ 3216}#
+                       #{mod\ 3217}#)
+                (let ((#{tmp\ 3223}# #{e\ 3213}#))
+                  (let ((#{tmp\ 3224}#
+                          ($sc-dispatch
+                            #{tmp\ 3223}#
+                            '(any (any any . each-any)
+                                  .
+                                  #(each (any any . each-any))))))
+                    (if #{tmp\ 3224}#
+                      (@apply
+                        (lambda (#{_\ 3232}#
+                                 #{args\ 3233}#
+                                 #{e1\ 3234}#
+                                 #{e2\ 3235}#
+                                 #{args*\ 3236}#
+                                 #{e1*\ 3237}#
+                                 #{e2*\ 3238}#)
+                          (call-with-values
+                            (lambda ()
+                              (#{chi-lambda-case\ 496}#
+                                #{e\ 3213}#
+                                #{r\ 3214}#
+                                #{w\ 3215}#
+                                #{s\ 3216}#
+                                #{mod\ 3217}#
+                                #{lambda*-formals\ 494}#
+                                (cons (cons #{args\ 3233}#
+                                            (cons #{e1\ 3234}# #{e2\ 3235}#))
+                                      (map (lambda (#{tmp\ 3242}#
+                                                    #{tmp\ 3241}#
+                                                    #{tmp\ 3240}#)
+                                             (cons #{tmp\ 3240}#
+                                                   (cons #{tmp\ 3241}#
+                                                         #{tmp\ 3242}#)))
+                                           #{e2*\ 3238}#
+                                           #{e1*\ 3237}#
+                                           #{args*\ 3236}#))))
+                            (lambda (#{meta\ 3244}# #{lcase\ 3245}#)
+                              (#{build-case-lambda\ 331}#
+                                #{s\ 3216}#
+                                #{meta\ 3244}#
+                                #{lcase\ 3245}#))))
+                        #{tmp\ 3224}#)
+                      (let ((#{_\ 3249}# #{tmp\ 3223}#))
+                        (syntax-violation
+                          'case-lambda
+                          "bad case-lambda*"
+                          #{e\ 3213}#)))))))
+            (#{global-extend\ 383}#
+              'core
+              'let
+              (letrec*
+                ((#{chi-let\ 3251}#
+                   (lambda (#{e\ 3252}#
+                            #{r\ 3253}#
+                            #{w\ 3254}#
+                            #{s\ 3255}#
+                            #{mod\ 3256}#
+                            #{constructor\ 3257}#
+                            #{ids\ 3258}#
+                            #{vals\ 3259}#
+                            #{exps\ 3260}#)
+                     (if (not (#{valid-bound-ids?\ 450}# #{ids\ 3258}#))
                        (syntax-violation
                          'let
                          "duplicate bound variable"
-                         #{e\ 3233}#)
-                       (let ((#{labels\ 3253}#
-                               (#{gen-labels\ 390}# #{ids\ 3239}#))
-                             (#{new-vars\ 3254}#
-                               (map #{gen-var\ 485}# #{ids\ 3239}#)))
-                         (let ((#{nw\ 3257}#
-                                 (#{make-binding-wrap\ 419}#
-                                   #{ids\ 3239}#
-                                   #{labels\ 3253}#
-                                   #{w\ 3235}#))
-                               (#{nr\ 3258}#
-                                 (#{extend-var-env\ 362}#
-                                   #{labels\ 3253}#
-                                   #{new-vars\ 3254}#
-                                   #{r\ 3234}#)))
-                           (#{constructor\ 3238}#
-                             #{s\ 3236}#
-                             (map syntax->datum #{ids\ 3239}#)
-                             #{new-vars\ 3254}#
-                             (map (lambda (#{x\ 3259}#)
-                                    (#{chi\ 457}#
-                                      #{x\ 3259}#
-                                      #{r\ 3234}#
-                                      #{w\ 3235}#
-                                      #{mod\ 3237}#))
-                                  #{vals\ 3240}#)
-                             (#{chi-body\ 465}#
-                               #{exps\ 3241}#
-                               (#{source-wrap\ 443}#
-                                 #{e\ 3233}#
-                                 #{nw\ 3257}#
-                                 #{s\ 3236}#
-                                 #{mod\ 3237}#)
-                               #{nr\ 3258}#
-                               #{nw\ 3257}#
-                               #{mod\ 3237}#))))))))
-          (lambda (#{e\ 3261}#
-                   #{r\ 3262}#
-                   #{w\ 3263}#
-                   #{s\ 3264}#
-                   #{mod\ 3265}#)
-            ((lambda (#{tmp\ 3271}#)
-               ((lambda (#{tmp\ 3272}#)
-                  (if (if #{tmp\ 3272}#
-                        (apply (lambda (#{_\ 3278}#
-                                        #{id\ 3279}#
-                                        #{val\ 3280}#
-                                        #{e1\ 3281}#
-                                        #{e2\ 3282}#)
-                                 (and-map #{id?\ 372}# #{id\ 3279}#))
-                               #{tmp\ 3272}#)
-                        #f)
-                    (apply (lambda (#{_\ 3289}#
-                                    #{id\ 3290}#
-                                    #{val\ 3291}#
-                                    #{e1\ 3292}#
-                                    #{e2\ 3293}#)
-                             (#{chi-let\ 3232}#
-                               #{e\ 3261}#
-                               #{r\ 3262}#
-                               #{w\ 3263}#
-                               #{s\ 3264}#
-                               #{mod\ 3265}#
-                               #{build-let\ 326}#
-                               #{id\ 3290}#
-                               #{val\ 3291}#
-                               (cons #{e1\ 3292}# #{e2\ 3293}#)))
-                           #{tmp\ 3272}#)
-                    ((lambda (#{tmp\ 3297}#)
-                       (if (if #{tmp\ 3297}#
-                             (apply (lambda (#{_\ 3304}#
-                                             #{f\ 3305}#
-                                             #{id\ 3306}#
-                                             #{val\ 3307}#
-                                             #{e1\ 3308}#
-                                             #{e2\ 3309}#)
-                                      (if (#{id?\ 372}# #{f\ 3305}#)
-                                        (and-map #{id?\ 372}# #{id\ 3306}#)
+                         #{e\ 3252}#)
+                       (begin
+                         (let ((#{labels\ 3272}#
+                                 (#{gen-labels\ 405}# #{ids\ 3258}#))
+                               (#{new-vars\ 3273}#
+                                 (map #{gen-var\ 500}# #{ids\ 3258}#)))
+                           (begin
+                             (let ((#{nw\ 3276}#
+                                     (#{make-binding-wrap\ 434}#
+                                       #{ids\ 3258}#
+                                       #{labels\ 3272}#
+                                       #{w\ 3254}#))
+                                   (#{nr\ 3277}#
+                                     (#{extend-var-env\ 377}#
+                                       #{labels\ 3272}#
+                                       #{new-vars\ 3273}#
+                                       #{r\ 3253}#)))
+                               (#{constructor\ 3257}#
+                                 #{s\ 3255}#
+                                 (map syntax->datum #{ids\ 3258}#)
+                                 #{new-vars\ 3273}#
+                                 (map (lambda (#{x\ 3278}#)
+                                        (#{chi\ 472}#
+                                          #{x\ 3278}#
+                                          #{r\ 3253}#
+                                          #{w\ 3254}#
+                                          #{mod\ 3256}#))
+                                      #{vals\ 3259}#)
+                                 (#{chi-body\ 480}#
+                                   #{exps\ 3260}#
+                                   (#{source-wrap\ 458}#
+                                     #{e\ 3252}#
+                                     #{nw\ 3276}#
+                                     #{s\ 3255}#
+                                     #{mod\ 3256}#)
+                                   #{nr\ 3277}#
+                                   #{nw\ 3276}#
+                                   #{mod\ 3256}#))))))))))
+                (begin
+                  (lambda (#{e\ 3280}#
+                           #{r\ 3281}#
+                           #{w\ 3282}#
+                           #{s\ 3283}#
+                           #{mod\ 3284}#)
+                    (let ((#{tmp\ 3290}# #{e\ 3280}#))
+                      (let ((#{tmp\ 3291}#
+                              ($sc-dispatch
+                                #{tmp\ 3290}#
+                                '(any #(each (any any)) any . each-any))))
+                        (if (if #{tmp\ 3291}#
+                              (@apply
+                                (lambda (#{_\ 3297}#
+                                         #{id\ 3298}#
+                                         #{val\ 3299}#
+                                         #{e1\ 3300}#
+                                         #{e2\ 3301}#)
+                                  (and-map #{id?\ 387}# #{id\ 3298}#))
+                                #{tmp\ 3291}#)
+                              #f)
+                          (@apply
+                            (lambda (#{_\ 3308}#
+                                     #{id\ 3309}#
+                                     #{val\ 3310}#
+                                     #{e1\ 3311}#
+                                     #{e2\ 3312}#)
+                              (#{chi-let\ 3251}#
+                                #{e\ 3280}#
+                                #{r\ 3281}#
+                                #{w\ 3282}#
+                                #{s\ 3283}#
+                                #{mod\ 3284}#
+                                #{build-let\ 341}#
+                                #{id\ 3309}#
+                                #{val\ 3310}#
+                                (cons #{e1\ 3311}# #{e2\ 3312}#)))
+                            #{tmp\ 3291}#)
+                          (let ((#{tmp\ 3316}#
+                                  ($sc-dispatch
+                                    #{tmp\ 3290}#
+                                    '(any any
+                                          #(each (any any))
+                                          any
+                                          .
+                                          each-any))))
+                            (if (if #{tmp\ 3316}#
+                                  (@apply
+                                    (lambda (#{_\ 3323}#
+                                             #{f\ 3324}#
+                                             #{id\ 3325}#
+                                             #{val\ 3326}#
+                                             #{e1\ 3327}#
+                                             #{e2\ 3328}#)
+                                      (if (#{id?\ 387}# #{f\ 3324}#)
+                                        (and-map #{id?\ 387}# #{id\ 3325}#)
                                         #f))
-                                    #{tmp\ 3297}#)
-                             #f)
-                         (apply (lambda (#{_\ 3319}#
-                                         #{f\ 3320}#
-                                         #{id\ 3321}#
-                                         #{val\ 3322}#
-                                         #{e1\ 3323}#
-                                         #{e2\ 3324}#)
-                                  (#{chi-let\ 3232}#
-                                    #{e\ 3261}#
-                                    #{r\ 3262}#
-                                    #{w\ 3263}#
-                                    #{s\ 3264}#
-                                    #{mod\ 3265}#
-                                    #{build-named-let\ 328}#
-                                    (cons #{f\ 3320}# #{id\ 3321}#)
-                                    #{val\ 3322}#
-                                    (cons #{e1\ 3323}# #{e2\ 3324}#)))
-                                #{tmp\ 3297}#)
-                         ((lambda (#{_\ 3329}#)
-                            (syntax-violation
-                              'let
-                              "bad let"
-                              (#{source-wrap\ 443}#
-                                #{e\ 3261}#
-                                #{w\ 3263}#
-                                #{s\ 3264}#
-                                #{mod\ 3265}#)))
-                          #{tmp\ 3271}#)))
-                     ($sc-dispatch
-                       #{tmp\ 3271}#
-                       '(any any #(each (any any)) any . each-any)))))
-                ($sc-dispatch
-                  #{tmp\ 3271}#
-                  '(any #(each (any any)) any . each-any))))
-             #{e\ 3261}#))))
-      (#{global-extend\ 368}#
-        'core
-        'letrec
-        (lambda (#{e\ 3330}#
-                 #{r\ 3331}#
-                 #{w\ 3332}#
-                 #{s\ 3333}#
-                 #{mod\ 3334}#)
-          ((lambda (#{tmp\ 3340}#)
-             ((lambda (#{tmp\ 3341}#)
-                (if (if #{tmp\ 3341}#
-                      (apply (lambda (#{_\ 3347}#
-                                      #{id\ 3348}#
-                                      #{val\ 3349}#
-                                      #{e1\ 3350}#
-                                      #{e2\ 3351}#)
-                               (and-map #{id?\ 372}# #{id\ 3348}#))
-                             #{tmp\ 3341}#)
-                      #f)
-                  (apply (lambda (#{_\ 3358}#
-                                  #{id\ 3359}#
-                                  #{val\ 3360}#
-                                  #{e1\ 3361}#
-                                  #{e2\ 3362}#)
-                           (let ((#{ids\ 3364}# #{id\ 3359}#))
-                             (if (not (#{valid-bound-ids?\ 435}#
-                                        #{ids\ 3364}#))
-                               (syntax-violation
-                                 'letrec
-                                 "duplicate bound variable"
-                                 #{e\ 3330}#)
-                               (let ((#{labels\ 3368}#
-                                       (#{gen-labels\ 390}# #{ids\ 3364}#))
-                                     (#{new-vars\ 3369}#
-                                       (map #{gen-var\ 485}# #{ids\ 3364}#)))
-                                 (let ((#{w\ 3372}#
-                                         (#{make-binding-wrap\ 419}#
-                                           #{ids\ 3364}#
-                                           #{labels\ 3368}#
-                                           #{w\ 3332}#))
-                                       (#{r\ 3373}#
-                                         (#{extend-var-env\ 362}#
-                                           #{labels\ 3368}#
-                                           #{new-vars\ 3369}#
-                                           #{r\ 3331}#)))
-                                   (#{build-letrec\ 330}#
-                                     #{s\ 3333}#
-                                     (map syntax->datum #{ids\ 3364}#)
-                                     #{new-vars\ 3369}#
-                                     (map (lambda (#{x\ 3374}#)
-                                            (#{chi\ 457}#
-                                              #{x\ 3374}#
-                                              #{r\ 3373}#
-                                              #{w\ 3372}#
-                                              #{mod\ 3334}#))
-                                          #{val\ 3360}#)
-                                     (#{chi-body\ 465}#
-                                       (cons #{e1\ 3361}# #{e2\ 3362}#)
-                                       (#{source-wrap\ 443}#
-                                         #{e\ 3330}#
-                                         #{w\ 3372}#
-                                         #{s\ 3333}#
-                                         #{mod\ 3334}#)
-                                       #{r\ 3373}#
-                                       #{w\ 3372}#
-                                       #{mod\ 3334}#)))))))
-                         #{tmp\ 3341}#)
-                  ((lambda (#{_\ 3379}#)
-                     (syntax-violation
-                       'letrec
-                       "bad letrec"
-                       (#{source-wrap\ 443}#
-                         #{e\ 3330}#
-                         #{w\ 3332}#
-                         #{s\ 3333}#
-                         #{mod\ 3334}#)))
-                   #{tmp\ 3340}#)))
-              ($sc-dispatch
-                #{tmp\ 3340}#
-                '(any #(each (any any)) any . each-any))))
-           #{e\ 3330}#)))
-      (#{global-extend\ 368}#
-        'core
-        'set!
-        (lambda (#{e\ 3380}#
-                 #{r\ 3381}#
-                 #{w\ 3382}#
-                 #{s\ 3383}#
-                 #{mod\ 3384}#)
-          ((lambda (#{tmp\ 3390}#)
-             ((lambda (#{tmp\ 3391}#)
-                (if (if #{tmp\ 3391}#
-                      (apply (lambda (#{_\ 3395}# #{id\ 3396}# #{val\ 3397}#)
-                               (#{id?\ 372}# #{id\ 3396}#))
-                             #{tmp\ 3391}#)
-                      #f)
-                  (apply (lambda (#{_\ 3401}# #{id\ 3402}# #{val\ 3403}#)
-                           (let ((#{val\ 3406}#
-                                   (#{chi\ 457}#
-                                     #{val\ 3403}#
-                                     #{r\ 3381}#
-                                     #{w\ 3382}#
-                                     #{mod\ 3384}#))
-                                 (#{n\ 3407}#
-                                   (#{id-var-name\ 429}#
-                                     #{id\ 3402}#
-                                     #{w\ 3382}#)))
-                             (let ((#{b\ 3409}#
-                                     (#{lookup\ 366}#
-                                       #{n\ 3407}#
-                                       #{r\ 3381}#
-                                       #{mod\ 3384}#)))
-                               (let ((#{atom-key\ 3412}#
-                                       (#{binding-type\ 355}# #{b\ 3409}#)))
-                                 (if (memv #{atom-key\ 3412}#
-                                           '(lexical))
-                                   (#{build-lexical-assignment\ 302}#
-                                     #{s\ 3383}#
-                                     (syntax->datum #{id\ 3402}#)
-                                     (#{binding-value\ 357}# #{b\ 3409}#)
-                                     #{val\ 3406}#)
-                                   (if (memv #{atom-key\ 3412}#
-                                             '(global))
-                                     (#{build-global-assignment\ 308}#
-                                       #{s\ 3383}#
-                                       #{n\ 3407}#
-                                       #{val\ 3406}#
-                                       #{mod\ 3384}#)
-                                     (if (memv #{atom-key\ 3412}#
-                                               '(displaced-lexical))
-                                       (syntax-violation
-                                         'set!
-                                         "identifier out of context"
-                                         (#{wrap\ 441}#
-                                           #{id\ 3402}#
-                                           #{w\ 3382}#
-                                           #{mod\ 3384}#))
-                                       (syntax-violation
-                                         'set!
-                                         "bad set!"
-                                         (#{source-wrap\ 443}#
-                                           #{e\ 3380}#
-                                           #{w\ 3382}#
-                                           #{s\ 3383}#
-                                           #{mod\ 3384}#)))))))))
-                         #{tmp\ 3391}#)
-                  ((lambda (#{tmp\ 3417}#)
-                     (if #{tmp\ 3417}#
-                       (apply (lambda (#{_\ 3422}#
-                                       #{head\ 3423}#
-                                       #{tail\ 3424}#
-                                       #{val\ 3425}#)
-                                (call-with-values
-                                  (lambda ()
-                                    (#{syntax-type\ 453}#
-                                      #{head\ 3423}#
-                                      #{r\ 3381}#
-                                      '(())
-                                      #f
-                                      #f
-                                      #{mod\ 3384}#
-                                      #t))
-                                  (lambda (#{type\ 3428}#
-                                           #{value\ 3429}#
-                                           #{ee\ 3430}#
-                                           #{ww\ 3431}#
-                                           #{ss\ 3432}#
-                                           #{modmod\ 3433}#)
-                                    (if (memv #{type\ 3428}#
-                                              '(module-ref))
-                                      (let ((#{val\ 3442}#
-                                              (#{chi\ 457}#
-                                                #{val\ 3425}#
-                                                #{r\ 3381}#
-                                                #{w\ 3382}#
-                                                #{mod\ 3384}#)))
+                                    #{tmp\ 3316}#)
+                                  #f)
+                              (@apply
+                                (lambda (#{_\ 3338}#
+                                         #{f\ 3339}#
+                                         #{id\ 3340}#
+                                         #{val\ 3341}#
+                                         #{e1\ 3342}#
+                                         #{e2\ 3343}#)
+                                  (#{chi-let\ 3251}#
+                                    #{e\ 3280}#
+                                    #{r\ 3281}#
+                                    #{w\ 3282}#
+                                    #{s\ 3283}#
+                                    #{mod\ 3284}#
+                                    #{build-named-let\ 343}#
+                                    (cons #{f\ 3339}# #{id\ 3340}#)
+                                    #{val\ 3341}#
+                                    (cons #{e1\ 3342}# #{e2\ 3343}#)))
+                                #{tmp\ 3316}#)
+                              (let ((#{_\ 3348}# #{tmp\ 3290}#))
+                                (syntax-violation
+                                  'let
+                                  "bad let"
+                                  (#{source-wrap\ 458}#
+                                    #{e\ 3280}#
+                                    #{w\ 3282}#
+                                    #{s\ 3283}#
+                                    #{mod\ 3284}#))))))))))))
+            (#{global-extend\ 383}#
+              'core
+              'letrec
+              (lambda (#{e\ 3349}#
+                       #{r\ 3350}#
+                       #{w\ 3351}#
+                       #{s\ 3352}#
+                       #{mod\ 3353}#)
+                (let ((#{tmp\ 3359}# #{e\ 3349}#))
+                  (let ((#{tmp\ 3360}#
+                          ($sc-dispatch
+                            #{tmp\ 3359}#
+                            '(any #(each (any any)) any . each-any))))
+                    (if (if #{tmp\ 3360}#
+                          (@apply
+                            (lambda (#{_\ 3366}#
+                                     #{id\ 3367}#
+                                     #{val\ 3368}#
+                                     #{e1\ 3369}#
+                                     #{e2\ 3370}#)
+                              (and-map #{id?\ 387}# #{id\ 3367}#))
+                            #{tmp\ 3360}#)
+                          #f)
+                      (@apply
+                        (lambda (#{_\ 3377}#
+                                 #{id\ 3378}#
+                                 #{val\ 3379}#
+                                 #{e1\ 3380}#
+                                 #{e2\ 3381}#)
+                          (begin
+                            (let ((#{ids\ 3383}# #{id\ 3378}#))
+                              (if (not (#{valid-bound-ids?\ 450}#
+                                         #{ids\ 3383}#))
+                                (syntax-violation
+                                  'letrec
+                                  "duplicate bound variable"
+                                  #{e\ 3349}#)
+                                (begin
+                                  (let ((#{labels\ 3387}#
+                                          (#{gen-labels\ 405}# #{ids\ 3383}#))
+                                        (#{new-vars\ 3388}#
+                                          (map #{gen-var\ 500}#
+                                               #{ids\ 3383}#)))
+                                    (begin
+                                      (let ((#{w\ 3391}#
+                                              (#{make-binding-wrap\ 434}#
+                                                #{ids\ 3383}#
+                                                #{labels\ 3387}#
+                                                #{w\ 3351}#))
+                                            (#{r\ 3392}#
+                                              (#{extend-var-env\ 377}#
+                                                #{labels\ 3387}#
+                                                #{new-vars\ 3388}#
+                                                #{r\ 3350}#)))
+                                        (#{build-letrec\ 345}#
+                                          #{s\ 3352}#
+                                          #f
+                                          (map syntax->datum #{ids\ 3383}#)
+                                          #{new-vars\ 3388}#
+                                          (map (lambda (#{x\ 3393}#)
+                                                 (#{chi\ 472}#
+                                                   #{x\ 3393}#
+                                                   #{r\ 3392}#
+                                                   #{w\ 3391}#
+                                                   #{mod\ 3353}#))
+                                               #{val\ 3379}#)
+                                          (#{chi-body\ 480}#
+                                            (cons #{e1\ 3380}# #{e2\ 3381}#)
+                                            (#{source-wrap\ 458}#
+                                              #{e\ 3349}#
+                                              #{w\ 3391}#
+                                              #{s\ 3352}#
+                                              #{mod\ 3353}#)
+                                            #{r\ 3392}#
+                                            #{w\ 3391}#
+                                            #{mod\ 3353}#))))))))))
+                        #{tmp\ 3360}#)
+                      (let ((#{_\ 3398}# #{tmp\ 3359}#))
+                        (syntax-violation
+                          'letrec
+                          "bad letrec"
+                          (#{source-wrap\ 458}#
+                            #{e\ 3349}#
+                            #{w\ 3351}#
+                            #{s\ 3352}#
+                            #{mod\ 3353}#))))))))
+            (#{global-extend\ 383}#
+              'core
+              'letrec*
+              (lambda (#{e\ 3399}#
+                       #{r\ 3400}#
+                       #{w\ 3401}#
+                       #{s\ 3402}#
+                       #{mod\ 3403}#)
+                (let ((#{tmp\ 3409}# #{e\ 3399}#))
+                  (let ((#{tmp\ 3410}#
+                          ($sc-dispatch
+                            #{tmp\ 3409}#
+                            '(any #(each (any any)) any . each-any))))
+                    (if (if #{tmp\ 3410}#
+                          (@apply
+                            (lambda (#{_\ 3416}#
+                                     #{id\ 3417}#
+                                     #{val\ 3418}#
+                                     #{e1\ 3419}#
+                                     #{e2\ 3420}#)
+                              (and-map #{id?\ 387}# #{id\ 3417}#))
+                            #{tmp\ 3410}#)
+                          #f)
+                      (@apply
+                        (lambda (#{_\ 3427}#
+                                 #{id\ 3428}#
+                                 #{val\ 3429}#
+                                 #{e1\ 3430}#
+                                 #{e2\ 3431}#)
+                          (begin
+                            (let ((#{ids\ 3433}# #{id\ 3428}#))
+                              (if (not (#{valid-bound-ids?\ 450}#
+                                         #{ids\ 3433}#))
+                                (syntax-violation
+                                  'letrec*
+                                  "duplicate bound variable"
+                                  #{e\ 3399}#)
+                                (begin
+                                  (let ((#{labels\ 3437}#
+                                          (#{gen-labels\ 405}# #{ids\ 3433}#))
+                                        (#{new-vars\ 3438}#
+                                          (map #{gen-var\ 500}#
+                                               #{ids\ 3433}#)))
+                                    (begin
+                                      (let ((#{w\ 3441}#
+                                              (#{make-binding-wrap\ 434}#
+                                                #{ids\ 3433}#
+                                                #{labels\ 3437}#
+                                                #{w\ 3401}#))
+                                            (#{r\ 3442}#
+                                              (#{extend-var-env\ 377}#
+                                                #{labels\ 3437}#
+                                                #{new-vars\ 3438}#
+                                                #{r\ 3400}#)))
+                                        (#{build-letrec\ 345}#
+                                          #{s\ 3402}#
+                                          #t
+                                          (map syntax->datum #{ids\ 3433}#)
+                                          #{new-vars\ 3438}#
+                                          (map (lambda (#{x\ 3443}#)
+                                                 (#{chi\ 472}#
+                                                   #{x\ 3443}#
+                                                   #{r\ 3442}#
+                                                   #{w\ 3441}#
+                                                   #{mod\ 3403}#))
+                                               #{val\ 3429}#)
+                                          (#{chi-body\ 480}#
+                                            (cons #{e1\ 3430}# #{e2\ 3431}#)
+                                            (#{source-wrap\ 458}#
+                                              #{e\ 3399}#
+                                              #{w\ 3441}#
+                                              #{s\ 3402}#
+                                              #{mod\ 3403}#)
+                                            #{r\ 3442}#
+                                            #{w\ 3441}#
+                                            #{mod\ 3403}#))))))))))
+                        #{tmp\ 3410}#)
+                      (let ((#{_\ 3448}# #{tmp\ 3409}#))
+                        (syntax-violation
+                          'letrec*
+                          "bad letrec*"
+                          (#{source-wrap\ 458}#
+                            #{e\ 3399}#
+                            #{w\ 3401}#
+                            #{s\ 3402}#
+                            #{mod\ 3403}#))))))))
+            (#{global-extend\ 383}#
+              'core
+              'set!
+              (lambda (#{e\ 3449}#
+                       #{r\ 3450}#
+                       #{w\ 3451}#
+                       #{s\ 3452}#
+                       #{mod\ 3453}#)
+                (let ((#{tmp\ 3459}# #{e\ 3449}#))
+                  (let ((#{tmp\ 3460}#
+                          ($sc-dispatch
+                            #{tmp\ 3459}#
+                            '(any any any))))
+                    (if (if #{tmp\ 3460}#
+                          (@apply
+                            (lambda (#{_\ 3464}# #{id\ 3465}# #{val\ 3466}#)
+                              (#{id?\ 387}# #{id\ 3465}#))
+                            #{tmp\ 3460}#)
+                          #f)
+                      (@apply
+                        (lambda (#{_\ 3470}# #{id\ 3471}# #{val\ 3472}#)
+                          (begin
+                            (let ((#{val\ 3475}#
+                                    (#{chi\ 472}#
+                                      #{val\ 3472}#
+                                      #{r\ 3450}#
+                                      #{w\ 3451}#
+                                      #{mod\ 3453}#))
+                                  (#{n\ 3476}#
+                                    (#{id-var-name\ 444}#
+                                      #{id\ 3471}#
+                                      #{w\ 3451}#)))
+                              (begin
+                                (let ((#{b\ 3478}#
+                                        (#{lookup\ 381}#
+                                          #{n\ 3476}#
+                                          #{r\ 3450}#
+                                          #{mod\ 3453}#)))
+                                  (begin
+                                    (let ((#{atom-key\ 3481}#
+                                            (#{binding-type\ 370}#
+                                              #{b\ 3478}#)))
+                                      (if (eqv? #{atom-key\ 3481}#
+                                                'lexical)
+                                        (#{build-lexical-assignment\ 317}#
+                                          #{s\ 3452}#
+                                          (syntax->datum #{id\ 3471}#)
+                                          (#{binding-value\ 372}# #{b\ 3478}#)
+                                          #{val\ 3475}#)
+                                        (if (eqv? #{atom-key\ 3481}#
+                                                  'global)
+                                          (#{build-global-assignment\ 323}#
+                                            #{s\ 3452}#
+                                            #{n\ 3476}#
+                                            #{val\ 3475}#
+                                            #{mod\ 3453}#)
+                                          (if (eqv? #{atom-key\ 3481}#
+                                                    'displaced-lexical)
+                                            (syntax-violation
+                                              'set!
+                                              "identifier out of context"
+                                              (#{wrap\ 456}#
+                                                #{id\ 3471}#
+                                                #{w\ 3451}#
+                                                #{mod\ 3453}#))
+                                            (syntax-violation
+                                              'set!
+                                              "bad set!"
+                                              (#{source-wrap\ 458}#
+                                                #{e\ 3449}#
+                                                #{w\ 3451}#
+                                                #{s\ 3452}#
+                                                #{mod\ 3453}#))))))))))))
+                        #{tmp\ 3460}#)
+                      (let ((#{tmp\ 3486}#
+                              ($sc-dispatch
+                                #{tmp\ 3459}#
+                                '(any (any . each-any) any))))
+                        (if #{tmp\ 3486}#
+                          (@apply
+                            (lambda (#{_\ 3491}#
+                                     #{head\ 3492}#
+                                     #{tail\ 3493}#
+                                     #{val\ 3494}#)
+                              (call-with-values
+                                (lambda ()
+                                  (#{syntax-type\ 468}#
+                                    #{head\ 3492}#
+                                    #{r\ 3450}#
+                                    '(())
+                                    #f
+                                    #f
+                                    #{mod\ 3453}#
+                                    #t))
+                                (lambda (#{type\ 3497}#
+                                         #{value\ 3498}#
+                                         #{ee\ 3499}#
+                                         #{ww\ 3500}#
+                                         #{ss\ 3501}#
+                                         #{modmod\ 3502}#)
+                                  (if (eqv? #{type\ 3497}# (quote module-ref))
+                                    (begin
+                                      (let ((#{val\ 3511}#
+                                              (#{chi\ 472}#
+                                                #{val\ 3494}#
+                                                #{r\ 3450}#
+                                                #{w\ 3451}#
+                                                #{mod\ 3453}#)))
                                         (call-with-values
                                           (lambda ()
-                                            (#{value\ 3429}#
-                                              (cons #{head\ 3423}#
-                                                    #{tail\ 3424}#)
-                                              #{r\ 3381}#
-                                              #{w\ 3382}#))
-                                          (lambda (#{e\ 3444}#
-                                                   #{r\ 3445}#
-                                                   #{w\ 3446}#
-                                                   #{s*\ 3447}#
-                                                   #{mod\ 3448}#)
-                                            ((lambda (#{tmp\ 3454}#)
-                                               ((lambda (#{tmp\ 3455}#)
-                                                  (if (if #{tmp\ 3455}#
-                                                        (apply (lambda (#{e\ 
3457}#)
-                                                                 (#{id?\ 372}#
-                                                                   #{e\ 
3457}#))
-                                                               #{tmp\ 3455}#)
-                                                        #f)
-                                                    (apply (lambda (#{e\ 
3459}#)
-                                                             
(#{build-global-assignment\ 308}#
-                                                               #{s\ 3383}#
-                                                               (syntax->datum
-                                                                 #{e\ 3459}#)
-                                                               #{val\ 3442}#
-                                                               #{mod\ 3448}#))
-                                                           #{tmp\ 3455}#)
-                                                    (syntax-violation
-                                                      #f
-                                                      "source expression 
failed to match any pattern"
-                                                      #{tmp\ 3454}#)))
-                                                (list #{tmp\ 3454}#)))
-                                             #{e\ 3444}#))))
-                                      (#{build-application\ 294}#
-                                        #{s\ 3383}#
-                                        (#{chi\ 457}#
-                                          (list '#(syntax-object
-                                                   setter
+                                            (#{value\ 3498}#
+                                              (cons #{head\ 3492}#
+                                                    #{tail\ 3493}#)
+                                              #{r\ 3450}#
+                                              #{w\ 3451}#))
+                                          (lambda (#{e\ 3513}#
+                                                   #{r\ 3514}#
+                                                   #{w\ 3515}#
+                                                   #{s*\ 3516}#
+                                                   #{mod\ 3517}#)
+                                            (let ((#{tmp\ 3523}# #{e\ 3513}#))
+                                              (let ((#{tmp\ 3524}#
+                                                      (list #{tmp\ 3523}#)))
+                                                (if (if #{tmp\ 3524}#
+                                                      (@apply
+                                                        (lambda (#{e\ 3526}#)
+                                                          (#{id?\ 387}#
+                                                            #{e\ 3526}#))
+                                                        #{tmp\ 3524}#)
+                                                      #f)
+                                                  (@apply
+                                                    (lambda (#{e\ 3528}#)
+                                                      
(#{build-global-assignment\ 323}#
+                                                        #{s\ 3452}#
+                                                        (syntax->datum
+                                                          #{e\ 3528}#)
+                                                        #{val\ 3511}#
+                                                        #{mod\ 3517}#))
+                                                    #{tmp\ 3524}#)
+                                                  (syntax-violation
+                                                    #f
+                                                    "source expression failed 
to match any pattern"
+                                                    #{tmp\ 3523}#))))))))
+                                    (#{build-application\ 309}#
+                                      #{s\ 3452}#
+                                      (#{chi\ 472}#
+                                        (list '#(syntax-object
+                                                 setter
+                                                 ((top)
+                                                  #(ribcage () () ())
+                                                  #(ribcage () () ())
+                                                  #(ribcage
+                                                    #(type
+                                                      value
+                                                      ee
+                                                      ww
+                                                      ss
+                                                      modmod)
+                                                    #((top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top))
+                                                    #("i3503"
+                                                      "i3504"
+                                                      "i3505"
+                                                      "i3506"
+                                                      "i3507"
+                                                      "i3508"))
+                                                  #(ribcage
+                                                    #(_ head tail val)
+                                                    #((top) (top) (top) (top))
+                                                    #("i3487"
+                                                      "i3488"
+                                                      "i3489"
+                                                      "i3490"))
+                                                  #(ribcage () () ())
+                                                  #(ribcage
+                                                    #(e r w s mod)
+                                                    #((top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top))
+                                                    #("i3454"
+                                                      "i3455"
+                                                      "i3456"
+                                                      "i3457"
+                                                      "i3458"))
+                                                  #(ribcage
+                                                    (lambda-var-list
+                                                      gen-var
+                                                      strip
+                                                      chi-lambda-case
+                                                      lambda*-formals
+                                                      chi-simple-lambda
+                                                      lambda-formals
+                                                      ellipsis?
+                                                      chi-void
+                                                      eval-local-transformer
+                                                      chi-local-syntax
+                                                      chi-body
+                                                      chi-macro
+                                                      chi-application
+                                                      chi-expr
+                                                      chi
+                                                      chi-top
+                                                      syntax-type
+                                                      chi-when-list
+                                                      chi-install-global
+                                                      chi-top-sequence
+                                                      chi-sequence
+                                                      source-wrap
+                                                      wrap
+                                                      bound-id-member?
+                                                      distinct-bound-ids?
+                                                      valid-bound-ids?
+                                                      bound-id=?
+                                                      free-id=?
+                                                      id-var-name
+                                                      same-marks?
+                                                      join-marks
+                                                      join-wraps
+                                                      smart-append
+                                                      make-binding-wrap
+                                                      extend-ribcage!
+                                                      make-empty-ribcage
+                                                      new-mark
+                                                      anti-mark
+                                                      the-anti-mark
+                                                      top-marked?
+                                                      top-wrap
+                                                      empty-wrap
+                                                      set-ribcage-labels!
+                                                      set-ribcage-marks!
+                                                      set-ribcage-symnames!
+                                                      ribcage-labels
+                                                      ribcage-marks
+                                                      ribcage-symnames
+                                                      ribcage?
+                                                      make-ribcage
+                                                      gen-labels
+                                                      gen-label
+                                                      make-rename
+                                                      rename-marks
+                                                      rename-new
+                                                      rename-old
+                                                      subst-rename?
+                                                      wrap-subst
+                                                      wrap-marks
+                                                      make-wrap
+                                                      id-sym-name&marks
+                                                      id-sym-name
+                                                      id?
+                                                      nonsymbol-id?
+                                                      global-extend
+                                                      lookup
+                                                      macros-only-env
+                                                      extend-var-env
+                                                      extend-env
+                                                      null-env
+                                                      binding-value
+                                                      binding-type
+                                                      make-binding
+                                                      arg-check
+                                                      source-annotation
+                                                      no-source
+                                                      set-syntax-object-module!
+                                                      set-syntax-object-wrap!
+                                                      
set-syntax-object-expression!
+                                                      syntax-object-module
+                                                      syntax-object-wrap
+                                                      syntax-object-expression
+                                                      syntax-object?
+                                                      make-syntax-object
+                                                      build-lexical-var
+                                                      build-letrec
+                                                      build-named-let
+                                                      build-let
+                                                      build-sequence
+                                                      build-data
+                                                      build-primref
+                                                      build-lambda-case
+                                                      build-case-lambda
+                                                      build-simple-lambda
+                                                      build-global-definition
+                                                      maybe-name-value!
+                                                      build-global-assignment
+                                                      build-global-reference
+                                                      analyze-variable
+                                                      build-lexical-assignment
+                                                      build-lexical-reference
+                                                      build-dynlet
+                                                      build-conditional
+                                                      build-application
+                                                      build-void
+                                                      decorate-source
+                                                      
get-global-definition-hook
+                                                      
put-global-definition-hook
+                                                      gensym-hook
+                                                      local-eval-hook
+                                                      top-level-eval-hook
+                                                      fx<
+                                                      fx=
+                                                      fx-
+                                                      fx+
+                                                      set-lambda-meta!
+                                                      lambda-meta
+                                                      lambda?
+                                                      make-dynlet
+                                                      make-letrec
+                                                      make-let
+                                                      make-lambda-case
+                                                      make-lambda
+                                                      make-sequence
+                                                      make-application
+                                                      make-conditional
+                                                      make-toplevel-define
+                                                      make-toplevel-set
+                                                      make-toplevel-ref
+                                                      make-module-set
+                                                      make-module-ref
+                                                      make-lexical-set
+                                                      make-lexical-ref
+                                                      make-primitive-ref
+                                                      make-const
+                                                      make-void)
+                                                    ((top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top)
+                                                     (top))
+                                                    ("i501"
+                                                     "i499"
+                                                     "i497"
+                                                     "i495"
+                                                     "i493"
+                                                     "i491"
+                                                     "i489"
+                                                     "i487"
+                                                     "i485"
+                                                     "i483"
+                                                     "i481"
+                                                     "i479"
+                                                     "i477"
+                                                     "i475"
+                                                     "i473"
+                                                     "i471"
+                                                     "i469"
+                                                     "i467"
+                                                     "i465"
+                                                     "i463"
+                                                     "i461"
+                                                     "i459"
+                                                     "i457"
+                                                     "i455"
+                                                     "i453"
+                                                     "i451"
+                                                     "i449"
+                                                     "i447"
+                                                     "i445"
+                                                     "i443"
+                                                     "i441"
+                                                     "i439"
+                                                     "i437"
+                                                     "i435"
+                                                     "i433"
+                                                     "i431"
+                                                     "i430"
+                                                     "i429"
+                                                     "i427"
+                                                     "i426"
+                                                     "i425"
+                                                     "i424"
+                                                     "i423"
+                                                     "i421"
+                                                     "i419"
+                                                     "i417"
+                                                     "i415"
+                                                     "i413"
+                                                     "i411"
+                                                     "i409"
+                                                     "i407"
+                                                     "i404"
+                                                     "i402"
+                                                     "i401"
+                                                     "i400"
+                                                     "i399"
+                                                     "i398"
+                                                     "i397"
+                                                     "i395"
+                                                     "i393"
+                                                     "i391"
+                                                     "i389"
+                                                     "i388"
+                                                     "i386"
+                                                     "i384"
+                                                     "i382"
+                                                     "i380"
+                                                     "i378"
+                                                     "i376"
+                                                     "i374"
+                                                     "i373"
+                                                     "i371"
+                                                     "i369"
+                                                     "i368"
+                                                     "i367"
+                                                     "i365"
+                                                     "i364"
+                                                     "i362"
+                                                     "i360"
+                                                     "i358"
+                                                     "i356"
+                                                     "i354"
+                                                     "i352"
+                                                     "i350"
+                                                     "i348"
+                                                     "i346"
+                                                     "i344"
+                                                     "i342"
+                                                     "i340"
+                                                     "i338"
+                                                     "i336"
+                                                     "i334"
+                                                     "i332"
+                                                     "i330"
+                                                     "i328"
+                                                     "i326"
+                                                     "i324"
+                                                     "i322"
+                                                     "i320"
+                                                     "i318"
+                                                     "i316"
+                                                     "i314"
+                                                     "i312"
+                                                     "i310"
+                                                     "i308"
+                                                     "i306"
+                                                     "i304"
+                                                     "i302"
+                                                     "i300"
+                                                     "i299"
+                                                     "i297"
+                                                     "i295"
+                                                     "i293"
+                                                     "i291"
+                                                     "i289"
+                                                     "i287"
+                                                     "i285"
+                                                     "i283"
+                                                     "i281"
+                                                     "i278"
+                                                     "i276"
+                                                     "i274"
+                                                     "i272"
+                                                     "i270"
+                                                     "i268"
+                                                     "i266"
+                                                     "i264"
+                                                     "i262"
+                                                     "i260"
+                                                     "i258"
+                                                     "i256"
+                                                     "i254"
+                                                     "i252"
+                                                     "i250"
+                                                     "i248"
+                                                     "i246"
+                                                     "i244"))
+                                                  #(ribcage
+                                                    (define-structure
+                                                      
define-expansion-accessors
+                                                      
define-expansion-constructors
+                                                      and-map*)
+                                                    ((top) (top) (top) (top))
+                                                    ("i38" "i37" "i36" "i34")))
+                                                 (hygiene guile))
+                                              #{head\ 3492}#)
+                                        #{r\ 3450}#
+                                        #{w\ 3451}#
+                                        #{mod\ 3453}#)
+                                      (map (lambda (#{e\ 3530}#)
+                                             (#{chi\ 472}#
+                                               #{e\ 3530}#
+                                               #{r\ 3450}#
+                                               #{w\ 3451}#
+                                               #{mod\ 3453}#))
+                                           (append
+                                             #{tail\ 3493}#
+                                             (list #{val\ 3494}#))))))))
+                            #{tmp\ 3486}#)
+                          (let ((#{_\ 3534}# #{tmp\ 3459}#))
+                            (syntax-violation
+                              'set!
+                              "bad set!"
+                              (#{source-wrap\ 458}#
+                                #{e\ 3449}#
+                                #{w\ 3451}#
+                                #{s\ 3452}#
+                                #{mod\ 3453}#))))))))))
+            (#{global-extend\ 383}#
+              'module-ref
+              '@
+              (lambda (#{e\ 3535}# #{r\ 3536}# #{w\ 3537}#)
+                (let ((#{tmp\ 3541}# #{e\ 3535}#))
+                  (let ((#{tmp\ 3542}#
+                          ($sc-dispatch
+                            #{tmp\ 3541}#
+                            '(any each-any any))))
+                    (if (if #{tmp\ 3542}#
+                          (@apply
+                            (lambda (#{_\ 3546}# #{mod\ 3547}# #{id\ 3548}#)
+                              (if (and-map #{id?\ 387}# #{mod\ 3547}#)
+                                (#{id?\ 387}# #{id\ 3548}#)
+                                #f))
+                            #{tmp\ 3542}#)
+                          #f)
+                      (@apply
+                        (lambda (#{_\ 3555}# #{mod\ 3556}# #{id\ 3557}#)
+                          (values
+                            (syntax->datum #{id\ 3557}#)
+                            #{r\ 3536}#
+                            #{w\ 3537}#
+                            #f
+                            (syntax->datum
+                              (cons '#(syntax-object
+                                       public
+                                       ((top)
+                                        #(ribcage
+                                          #(_ mod id)
+                                          #((top) (top) (top))
+                                          #("i3552" "i3553" "i3554"))
+                                        #(ribcage () () ())
+                                        #(ribcage
+                                          #(e r w)
+                                          #((top) (top) (top))
+                                          #("i3538" "i3539" "i3540"))
+                                        #(ribcage
+                                          (lambda-var-list
+                                            gen-var
+                                            strip
+                                            chi-lambda-case
+                                            lambda*-formals
+                                            chi-simple-lambda
+                                            lambda-formals
+                                            ellipsis?
+                                            chi-void
+                                            eval-local-transformer
+                                            chi-local-syntax
+                                            chi-body
+                                            chi-macro
+                                            chi-application
+                                            chi-expr
+                                            chi
+                                            chi-top
+                                            syntax-type
+                                            chi-when-list
+                                            chi-install-global
+                                            chi-top-sequence
+                                            chi-sequence
+                                            source-wrap
+                                            wrap
+                                            bound-id-member?
+                                            distinct-bound-ids?
+                                            valid-bound-ids?
+                                            bound-id=?
+                                            free-id=?
+                                            id-var-name
+                                            same-marks?
+                                            join-marks
+                                            join-wraps
+                                            smart-append
+                                            make-binding-wrap
+                                            extend-ribcage!
+                                            make-empty-ribcage
+                                            new-mark
+                                            anti-mark
+                                            the-anti-mark
+                                            top-marked?
+                                            top-wrap
+                                            empty-wrap
+                                            set-ribcage-labels!
+                                            set-ribcage-marks!
+                                            set-ribcage-symnames!
+                                            ribcage-labels
+                                            ribcage-marks
+                                            ribcage-symnames
+                                            ribcage?
+                                            make-ribcage
+                                            gen-labels
+                                            gen-label
+                                            make-rename
+                                            rename-marks
+                                            rename-new
+                                            rename-old
+                                            subst-rename?
+                                            wrap-subst
+                                            wrap-marks
+                                            make-wrap
+                                            id-sym-name&marks
+                                            id-sym-name
+                                            id?
+                                            nonsymbol-id?
+                                            global-extend
+                                            lookup
+                                            macros-only-env
+                                            extend-var-env
+                                            extend-env
+                                            null-env
+                                            binding-value
+                                            binding-type
+                                            make-binding
+                                            arg-check
+                                            source-annotation
+                                            no-source
+                                            set-syntax-object-module!
+                                            set-syntax-object-wrap!
+                                            set-syntax-object-expression!
+                                            syntax-object-module
+                                            syntax-object-wrap
+                                            syntax-object-expression
+                                            syntax-object?
+                                            make-syntax-object
+                                            build-lexical-var
+                                            build-letrec
+                                            build-named-let
+                                            build-let
+                                            build-sequence
+                                            build-data
+                                            build-primref
+                                            build-lambda-case
+                                            build-case-lambda
+                                            build-simple-lambda
+                                            build-global-definition
+                                            maybe-name-value!
+                                            build-global-assignment
+                                            build-global-reference
+                                            analyze-variable
+                                            build-lexical-assignment
+                                            build-lexical-reference
+                                            build-dynlet
+                                            build-conditional
+                                            build-application
+                                            build-void
+                                            decorate-source
+                                            get-global-definition-hook
+                                            put-global-definition-hook
+                                            gensym-hook
+                                            local-eval-hook
+                                            top-level-eval-hook
+                                            fx<
+                                            fx=
+                                            fx-
+                                            fx+
+                                            set-lambda-meta!
+                                            lambda-meta
+                                            lambda?
+                                            make-dynlet
+                                            make-letrec
+                                            make-let
+                                            make-lambda-case
+                                            make-lambda
+                                            make-sequence
+                                            make-application
+                                            make-conditional
+                                            make-toplevel-define
+                                            make-toplevel-set
+                                            make-toplevel-ref
+                                            make-module-set
+                                            make-module-ref
+                                            make-lexical-set
+                                            make-lexical-ref
+                                            make-primitive-ref
+                                            make-const
+                                            make-void)
+                                          ((top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top)
+                                           (top))
+                                          ("i501"
+                                           "i499"
+                                           "i497"
+                                           "i495"
+                                           "i493"
+                                           "i491"
+                                           "i489"
+                                           "i487"
+                                           "i485"
+                                           "i483"
+                                           "i481"
+                                           "i479"
+                                           "i477"
+                                           "i475"
+                                           "i473"
+                                           "i471"
+                                           "i469"
+                                           "i467"
+                                           "i465"
+                                           "i463"
+                                           "i461"
+                                           "i459"
+                                           "i457"
+                                           "i455"
+                                           "i453"
+                                           "i451"
+                                           "i449"
+                                           "i447"
+                                           "i445"
+                                           "i443"
+                                           "i441"
+                                           "i439"
+                                           "i437"
+                                           "i435"
+                                           "i433"
+                                           "i431"
+                                           "i430"
+                                           "i429"
+                                           "i427"
+                                           "i426"
+                                           "i425"
+                                           "i424"
+                                           "i423"
+                                           "i421"
+                                           "i419"
+                                           "i417"
+                                           "i415"
+                                           "i413"
+                                           "i411"
+                                           "i409"
+                                           "i407"
+                                           "i404"
+                                           "i402"
+                                           "i401"
+                                           "i400"
+                                           "i399"
+                                           "i398"
+                                           "i397"
+                                           "i395"
+                                           "i393"
+                                           "i391"
+                                           "i389"
+                                           "i388"
+                                           "i386"
+                                           "i384"
+                                           "i382"
+                                           "i380"
+                                           "i378"
+                                           "i376"
+                                           "i374"
+                                           "i373"
+                                           "i371"
+                                           "i369"
+                                           "i368"
+                                           "i367"
+                                           "i365"
+                                           "i364"
+                                           "i362"
+                                           "i360"
+                                           "i358"
+                                           "i356"
+                                           "i354"
+                                           "i352"
+                                           "i350"
+                                           "i348"
+                                           "i346"
+                                           "i344"
+                                           "i342"
+                                           "i340"
+                                           "i338"
+                                           "i336"
+                                           "i334"
+                                           "i332"
+                                           "i330"
+                                           "i328"
+                                           "i326"
+                                           "i324"
+                                           "i322"
+                                           "i320"
+                                           "i318"
+                                           "i316"
+                                           "i314"
+                                           "i312"
+                                           "i310"
+                                           "i308"
+                                           "i306"
+                                           "i304"
+                                           "i302"
+                                           "i300"
+                                           "i299"
+                                           "i297"
+                                           "i295"
+                                           "i293"
+                                           "i291"
+                                           "i289"
+                                           "i287"
+                                           "i285"
+                                           "i283"
+                                           "i281"
+                                           "i278"
+                                           "i276"
+                                           "i274"
+                                           "i272"
+                                           "i270"
+                                           "i268"
+                                           "i266"
+                                           "i264"
+                                           "i262"
+                                           "i260"
+                                           "i258"
+                                           "i256"
+                                           "i254"
+                                           "i252"
+                                           "i250"
+                                           "i248"
+                                           "i246"
+                                           "i244"))
+                                        #(ribcage
+                                          (define-structure
+                                            define-expansion-accessors
+                                            define-expansion-constructors
+                                            and-map*)
+                                          ((top) (top) (top) (top))
+                                          ("i38" "i37" "i36" "i34")))
+                                       (hygiene guile))
+                                    #{mod\ 3556}#))))
+                        #{tmp\ 3542}#)
+                      (syntax-violation
+                        #f
+                        "source expression failed to match any pattern"
+                        #{tmp\ 3541}#))))))
+            (#{global-extend\ 383}#
+              'module-ref
+              '@@
+              (lambda (#{e\ 3559}# #{r\ 3560}# #{w\ 3561}#)
+                (letrec*
+                  ((#{remodulate\ 3566}#
+                     (lambda (#{x\ 3567}# #{mod\ 3568}#)
+                       (if (pair? #{x\ 3567}#)
+                         (cons (#{remodulate\ 3566}#
+                                 (car #{x\ 3567}#)
+                                 #{mod\ 3568}#)
+                               (#{remodulate\ 3566}#
+                                 (cdr #{x\ 3567}#)
+                                 #{mod\ 3568}#))
+                         (if (#{syntax-object?\ 351}# #{x\ 3567}#)
+                           (#{make-syntax-object\ 349}#
+                             (#{remodulate\ 3566}#
+                               (#{syntax-object-expression\ 353}# #{x\ 3567}#)
+                               #{mod\ 3568}#)
+                             (#{syntax-object-wrap\ 355}# #{x\ 3567}#)
+                             #{mod\ 3568}#)
+                           (if (vector? #{x\ 3567}#)
+                             (begin
+                               (let ((#{n\ 3579}# (vector-length #{x\ 3567}#)))
+                                 (begin
+                                   (let ((#{v\ 3581}#
+                                           (make-vector #{n\ 3579}#)))
+                                     (letrec*
+                                       ((#{loop\ 3584}#
+                                          (lambda (#{i\ 3585}#)
+                                            (if (#{fx=\ 292}#
+                                                  #{i\ 3585}#
+                                                  #{n\ 3579}#)
+                                              (begin (if #f #f) #{v\ 3581}#)
+                                              (begin
+                                                (vector-set!
+                                                  #{v\ 3581}#
+                                                  #{i\ 3585}#
+                                                  (#{remodulate\ 3566}#
+                                                    (vector-ref
+                                                      #{x\ 3567}#
+                                                      #{i\ 3585}#)
+                                                    #{mod\ 3568}#))
+                                                (#{loop\ 3584}#
+                                                  (#{fx+\ 288}#
+                                                    #{i\ 3585}#
+                                                    1)))))))
+                                       (begin (#{loop\ 3584}# 0)))))))
+                             #{x\ 3567}#))))))
+                  (begin
+                    (let ((#{tmp\ 3589}# #{e\ 3559}#))
+                      (let ((#{tmp\ 3590}#
+                              ($sc-dispatch
+                                #{tmp\ 3589}#
+                                '(any each-any any))))
+                        (if (if #{tmp\ 3590}#
+                              (@apply
+                                (lambda (#{_\ 3594}#
+                                         #{mod\ 3595}#
+                                         #{exp\ 3596}#)
+                                  (and-map #{id?\ 387}# #{mod\ 3595}#))
+                                #{tmp\ 3590}#)
+                              #f)
+                          (@apply
+                            (lambda (#{_\ 3601}# #{mod\ 3602}# #{exp\ 3603}#)
+                              (begin
+                                (let ((#{mod\ 3605}#
+                                        (syntax->datum
+                                          (cons '#(syntax-object
+                                                   private
                                                    ((top)
-                                                    #(ribcage () () ())
-                                                    #(ribcage () () ())
                                                     #(ribcage
-                                                      #(type
-                                                        value
-                                                        ee
-                                                        ww
-                                                        ss
-                                                        modmod)
-                                                      #((top)
-                                                        (top)
-                                                        (top)
-                                                        (top)
-                                                        (top)
-                                                        (top))
-                                                      #("i3434"
-                                                        "i3435"
-                                                        "i3436"
-                                                        "i3437"
-                                                        "i3438"
-                                                        "i3439"))
+                                                      #(_ mod exp)
+                                                      #((top) (top) (top))
+                                                      #("i3598"
+                                                        "i3599"
+                                                        "i3600"))
                                                     #(ribcage
-                                                      #(_ head tail val)
-                                                      #((top)
-                                                        (top)
-                                                        (top)
-                                                        (top))
-                                                      #("i3418"
-                                                        "i3419"
-                                                        "i3420"
-                                                        "i3421"))
-                                                    #(ribcage () () ())
+                                                      (remodulate)
+                                                      ((top))
+                                                      ("i3565"))
                                                     #(ribcage
-                                                      #(e r w s mod)
-                                                      #((top)
-                                                        (top)
-                                                        (top)
-                                                        (top)
-                                                        (top))
-                                                      #("i3385"
-                                                        "i3386"
-                                                        "i3387"
-                                                        "i3388"
-                                                        "i3389"))
+                                                      #(e r w)
+                                                      #((top) (top) (top))
+                                                      #("i3562"
+                                                        "i3563"
+                                                        "i3564"))
                                                     #(ribcage
                                                       (lambda-var-list
                                                         gen-var
@@ -10388,63 +11570,71 @@
                                                        (top)
                                                        (top)
                                                        (top))
-                                                      ("i486"
-                                                       "i484"
-                                                       "i482"
-                                                       "i480"
-                                                       "i478"
-                                                       "i476"
-                                                       "i474"
-                                                       "i472"
-                                                       "i470"
-                                                       "i468"
-                                                       "i466"
-                                                       "i464"
-                                                       "i462"
-                                                       "i460"
-                                                       "i458"
-                                                       "i456"
-                                                       "i454"
-                                                       "i452"
-                                                       "i450"
-                                                       "i448"
-                                                       "i446"
-                                                       "i444"
-                                                       "i442"
-                                                       "i440"
-                                                       "i438"
-                                                       "i436"
-                                                       "i434"
-                                                       "i432"
+                                                      ("i501"
+                                                       "i499"
+                                                       "i497"
+                                                       "i495"
+                                                       "i493"
+                                                       "i491"
+                                                       "i489"
+                                                       "i487"
+                                                       "i485"
+                                                       "i483"
+                                                       "i481"
+                                                       "i479"
+                                                       "i477"
+                                                       "i475"
+                                                       "i473"
+                                                       "i471"
+                                                       "i469"
+                                                       "i467"
+                                                       "i465"
+                                                       "i463"
+                                                       "i461"
+                                                       "i459"
+                                                       "i457"
+                                                       "i455"
+                                                       "i453"
+                                                       "i451"
+                                                       "i449"
+                                                       "i447"
+                                                       "i445"
+                                                       "i443"
+                                                       "i441"
+                                                       "i439"
+                                                       "i437"
+                                                       "i435"
+                                                       "i433"
+                                                       "i431"
                                                        "i430"
-                                                       "i428"
+                                                       "i429"
+                                                       "i427"
                                                        "i426"
+                                                       "i425"
                                                        "i424"
-                                                       "i422"
-                                                       "i420"
-                                                       "i418"
-                                                       "i416"
+                                                       "i423"
+                                                       "i421"
+                                                       "i419"
+                                                       "i417"
                                                        "i415"
-                                                       "i414"
-                                                       "i412"
+                                                       "i413"
                                                        "i411"
-                                                       "i410"
                                                        "i409"
-                                                       "i408"
-                                                       "i406"
+                                                       "i407"
                                                        "i404"
                                                        "i402"
+                                                       "i401"
                                                        "i400"
+                                                       "i399"
                                                        "i398"
-                                                       "i396"
-                                                       "i394"
-                                                       "i392"
+                                                       "i397"
+                                                       "i395"
+                                                       "i393"
+                                                       "i391"
                                                        "i389"
-                                                       "i387"
+                                                       "i388"
                                                        "i386"
-                                                       "i385"
                                                        "i384"
-                                                       "i383"
                                                        "i382"
                                                        "i380"
                                                        "i378"
@@ -10453,42 +11643,42 @@
                                                        "i373"
                                                        "i371"
                                                        "i369"
+                                                       "i368"
                                                        "i367"
                                                        "i365"
-                                                       "i363"
-                                                       "i361"
-                                                       "i359"
+                                                       "i364"
+                                                       "i362"
+                                                       "i360"
                                                        "i358"
                                                        "i356"
                                                        "i354"
-                                                       "i353"
                                                        "i352"
                                                        "i350"
-                                                       "i349"
-                                                       "i347"
-                                                       "i345"
-                                                       "i343"
-                                                       "i341"
-                                                       "i339"
-                                                       "i337"
-                                                       "i335"
-                                                       "i333"
-                                                       "i331"
-                                                       "i329"
-                                                       "i327"
-                                                       "i325"
-                                                       "i323"
-                                                       "i321"
-                                                       "i319"
-                                                       "i317"
-                                                       "i315"
-                                                       "i313"
-                                                       "i311"
-                                                       "i309"
-                                                       "i307"
-                                                       "i305"
-                                                       "i303"
-                                                       "i301"
+                                                       "i348"
+                                                       "i346"
+                                                       "i344"
+                                                       "i342"
+                                                       "i340"
+                                                       "i338"
+                                                       "i336"
+                                                       "i334"
+                                                       "i332"
+                                                       "i330"
+                                                       "i328"
+                                                       "i326"
+                                                       "i324"
+                                                       "i322"
+                                                       "i320"
+                                                       "i318"
+                                                       "i316"
+                                                       "i314"
+                                                       "i312"
+                                                       "i310"
+                                                       "i308"
+                                                       "i306"
+                                                       "i304"
+                                                       "i302"
+                                                       "i300"
                                                        "i299"
                                                        "i297"
                                                        "i295"
@@ -10497,9 +11687,8 @@
                                                        "i289"
                                                        "i287"
                                                        "i285"
-                                                       "i284"
-                                                       "i282"
-                                                       "i280"
+                                                       "i283"
+                                                       "i281"
                                                        "i278"
                                                        "i276"
                                                        "i274"
@@ -10507,3342 +11696,2207 @@
                                                        "i270"
                                                        "i268"
                                                        "i266"
-                                                       "i263"
-                                                       "i261"
-                                                       "i259"
-                                                       "i257"
-                                                       "i255"
-                                                       "i253"
-                                                       "i251"
-                                                       "i249"
-                                                       "i247"
-                                                       "i245"
-                                                       "i243"
-                                                       "i241"
-                                                       "i239"
-                                                       "i237"
-                                                       "i235"
-                                                       "i233"
-                                                       "i231"
-                                                       "i229"))
+                                                       "i264"
+                                                       "i262"
+                                                       "i260"
+                                                       "i258"
+                                                       "i256"
+                                                       "i254"
+                                                       "i252"
+                                                       "i250"
+                                                       "i248"
+                                                       "i246"
+                                                       "i244"))
                                                     #(ribcage
                                                       (define-structure
                                                         
define-expansion-accessors
                                                         
define-expansion-constructors
                                                         and-map*)
                                                       ((top) (top) (top) (top))
-                                                      ("i23"
-                                                       "i22"
-                                                       "i21"
-                                                       "i19")))
+                                                      ("i38"
+                                                       "i37"
+                                                       "i36"
+                                                       "i34")))
                                                    (hygiene guile))
-                                                #{head\ 3423}#)
-                                          #{r\ 3381}#
-                                          #{w\ 3382}#
-                                          #{mod\ 3384}#)
-                                        (map (lambda (#{e\ 3461}#)
-                                               (#{chi\ 457}#
-                                                 #{e\ 3461}#
-                                                 #{r\ 3381}#
-                                                 #{w\ 3382}#
-                                                 #{mod\ 3384}#))
-                                             (append
-                                               #{tail\ 3424}#
-                                               (list #{val\ 3425}#))))))))
-                              #{tmp\ 3417}#)
-                       ((lambda (#{_\ 3465}#)
+                                                #{mod\ 3602}#))))
+                                  (values
+                                    (#{remodulate\ 3566}#
+                                      #{exp\ 3603}#
+                                      #{mod\ 3605}#)
+                                    #{r\ 3560}#
+                                    #{w\ 3561}#
+                                    (#{source-annotation\ 366}# #{exp\ 3603}#)
+                                    #{mod\ 3605}#))))
+                            #{tmp\ 3590}#)
                           (syntax-violation
-                            'set!
-                            "bad set!"
-                            (#{source-wrap\ 443}#
-                              #{e\ 3380}#
-                              #{w\ 3382}#
-                              #{s\ 3383}#
-                              #{mod\ 3384}#)))
-                        #{tmp\ 3390}#)))
-                   ($sc-dispatch
-                     #{tmp\ 3390}#
-                     '(any (any . each-any) any)))))
-              ($sc-dispatch
-                #{tmp\ 3390}#
-                '(any any any))))
-           #{e\ 3380}#)))
-      (#{global-extend\ 368}#
-        'module-ref
-        '@
-        (lambda (#{e\ 3466}# #{r\ 3467}# #{w\ 3468}#)
-          ((lambda (#{tmp\ 3472}#)
-             ((lambda (#{tmp\ 3473}#)
-                (if (if #{tmp\ 3473}#
-                      (apply (lambda (#{_\ 3477}# #{mod\ 3478}# #{id\ 3479}#)
-                               (if (and-map #{id?\ 372}# #{mod\ 3478}#)
-                                 (#{id?\ 372}# #{id\ 3479}#)
-                                 #f))
-                             #{tmp\ 3473}#)
-                      #f)
-                  (apply (lambda (#{_\ 3486}# #{mod\ 3487}# #{id\ 3488}#)
-                           (values
-                             (syntax->datum #{id\ 3488}#)
-                             #{r\ 3467}#
-                             #{w\ 3468}#
-                             #f
-                             (syntax->datum
-                               (cons '#(syntax-object
-                                        public
-                                        ((top)
-                                         #(ribcage
-                                           #(_ mod id)
-                                           #((top) (top) (top))
-                                           #("i3483" "i3484" "i3485"))
-                                         #(ribcage () () ())
-                                         #(ribcage
-                                           #(e r w)
-                                           #((top) (top) (top))
-                                           #("i3469" "i3470" "i3471"))
-                                         #(ribcage
-                                           (lambda-var-list
-                                             gen-var
-                                             strip
-                                             chi-lambda-case
-                                             lambda*-formals
-                                             chi-simple-lambda
-                                             lambda-formals
-                                             ellipsis?
-                                             chi-void
-                                             eval-local-transformer
-                                             chi-local-syntax
-                                             chi-body
-                                             chi-macro
-                                             chi-application
-                                             chi-expr
-                                             chi
-                                             chi-top
-                                             syntax-type
-                                             chi-when-list
-                                             chi-install-global
-                                             chi-top-sequence
-                                             chi-sequence
-                                             source-wrap
-                                             wrap
-                                             bound-id-member?
-                                             distinct-bound-ids?
-                                             valid-bound-ids?
-                                             bound-id=?
-                                             free-id=?
-                                             id-var-name
-                                             same-marks?
-                                             join-marks
-                                             join-wraps
-                                             smart-append
-                                             make-binding-wrap
-                                             extend-ribcage!
-                                             make-empty-ribcage
-                                             new-mark
-                                             anti-mark
-                                             the-anti-mark
-                                             top-marked?
-                                             top-wrap
-                                             empty-wrap
-                                             set-ribcage-labels!
-                                             set-ribcage-marks!
-                                             set-ribcage-symnames!
-                                             ribcage-labels
-                                             ribcage-marks
-                                             ribcage-symnames
-                                             ribcage?
-                                             make-ribcage
-                                             gen-labels
-                                             gen-label
-                                             make-rename
-                                             rename-marks
-                                             rename-new
-                                             rename-old
-                                             subst-rename?
-                                             wrap-subst
-                                             wrap-marks
-                                             make-wrap
-                                             id-sym-name&marks
-                                             id-sym-name
-                                             id?
-                                             nonsymbol-id?
-                                             global-extend
-                                             lookup
-                                             macros-only-env
-                                             extend-var-env
-                                             extend-env
-                                             null-env
-                                             binding-value
-                                             binding-type
-                                             make-binding
-                                             arg-check
-                                             source-annotation
-                                             no-source
-                                             set-syntax-object-module!
-                                             set-syntax-object-wrap!
-                                             set-syntax-object-expression!
-                                             syntax-object-module
-                                             syntax-object-wrap
-                                             syntax-object-expression
-                                             syntax-object?
-                                             make-syntax-object
-                                             build-lexical-var
-                                             build-letrec
-                                             build-named-let
-                                             build-let
-                                             build-sequence
-                                             build-data
-                                             build-primref
-                                             build-lambda-case
-                                             build-case-lambda
-                                             build-simple-lambda
-                                             build-global-definition
-                                             maybe-name-value!
-                                             build-global-assignment
-                                             build-global-reference
-                                             analyze-variable
-                                             build-lexical-assignment
-                                             build-lexical-reference
-                                             build-dynlet
-                                             build-conditional
-                                             build-application
-                                             build-void
-                                             decorate-source
-                                             get-global-definition-hook
-                                             put-global-definition-hook
-                                             gensym-hook
-                                             local-eval-hook
-                                             top-level-eval-hook
-                                             fx<
-                                             fx=
-                                             fx-
-                                             fx+
-                                             set-lambda-meta!
-                                             lambda-meta
-                                             lambda?
-                                             make-dynlet
-                                             make-letrec
-                                             make-let
-                                             make-lambda-case
-                                             make-lambda
-                                             make-sequence
-                                             make-application
-                                             make-conditional
-                                             make-toplevel-define
-                                             make-toplevel-set
-                                             make-toplevel-ref
-                                             make-module-set
-                                             make-module-ref
-                                             make-lexical-set
-                                             make-lexical-ref
-                                             make-primitive-ref
-                                             make-const
-                                             make-void)
-                                           ((top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top)
-                                            (top))
-                                           ("i486"
-                                            "i484"
-                                            "i482"
-                                            "i480"
-                                            "i478"
-                                            "i476"
-                                            "i474"
-                                            "i472"
-                                            "i470"
-                                            "i468"
-                                            "i466"
-                                            "i464"
-                                            "i462"
-                                            "i460"
-                                            "i458"
-                                            "i456"
-                                            "i454"
-                                            "i452"
-                                            "i450"
-                                            "i448"
-                                            "i446"
-                                            "i444"
-                                            "i442"
-                                            "i440"
-                                            "i438"
-                                            "i436"
-                                            "i434"
-                                            "i432"
-                                            "i430"
-                                            "i428"
-                                            "i426"
-                                            "i424"
-                                            "i422"
-                                            "i420"
-                                            "i418"
-                                            "i416"
-                                            "i415"
-                                            "i414"
-                                            "i412"
-                                            "i411"
-                                            "i410"
-                                            "i409"
-                                            "i408"
-                                            "i406"
-                                            "i404"
-                                            "i402"
-                                            "i400"
-                                            "i398"
-                                            "i396"
-                                            "i394"
-                                            "i392"
-                                            "i389"
-                                            "i387"
-                                            "i386"
-                                            "i385"
-                                            "i384"
-                                            "i383"
-                                            "i382"
-                                            "i380"
-                                            "i378"
-                                            "i376"
-                                            "i374"
-                                            "i373"
-                                            "i371"
-                                            "i369"
-                                            "i367"
-                                            "i365"
-                                            "i363"
-                                            "i361"
-                                            "i359"
-                                            "i358"
-                                            "i356"
-                                            "i354"
-                                            "i353"
-                                            "i352"
-                                            "i350"
-                                            "i349"
-                                            "i347"
-                                            "i345"
-                                            "i343"
-                                            "i341"
-                                            "i339"
-                                            "i337"
-                                            "i335"
-                                            "i333"
-                                            "i331"
-                                            "i329"
-                                            "i327"
-                                            "i325"
-                                            "i323"
-                                            "i321"
-                                            "i319"
-                                            "i317"
-                                            "i315"
-                                            "i313"
-                                            "i311"
-                                            "i309"
-                                            "i307"
-                                            "i305"
-                                            "i303"
-                                            "i301"
-                                            "i299"
-                                            "i297"
-                                            "i295"
-                                            "i293"
-                                            "i291"
-                                            "i289"
-                                            "i287"
-                                            "i285"
-                                            "i284"
-                                            "i282"
-                                            "i280"
-                                            "i278"
-                                            "i276"
-                                            "i274"
-                                            "i272"
-                                            "i270"
-                                            "i268"
-                                            "i266"
-                                            "i263"
-                                            "i261"
-                                            "i259"
-                                            "i257"
-                                            "i255"
-                                            "i253"
-                                            "i251"
-                                            "i249"
-                                            "i247"
-                                            "i245"
-                                            "i243"
-                                            "i241"
-                                            "i239"
-                                            "i237"
-                                            "i235"
-                                            "i233"
-                                            "i231"
-                                            "i229"))
-                                         #(ribcage
-                                           (define-structure
-                                             define-expansion-accessors
-                                             define-expansion-constructors
-                                             and-map*)
-                                           ((top) (top) (top) (top))
-                                           ("i23" "i22" "i21" "i19")))
-                                        (hygiene guile))
-                                     #{mod\ 3487}#))))
-                         #{tmp\ 3473}#)
-                  (syntax-violation
-                    #f
-                    "source expression failed to match any pattern"
-                    #{tmp\ 3472}#)))
-              ($sc-dispatch
-                #{tmp\ 3472}#
-                '(any each-any any))))
-           #{e\ 3466}#)))
-      (#{global-extend\ 368}#
-        'module-ref
-        '@@
-        (lambda (#{e\ 3490}# #{r\ 3491}# #{w\ 3492}#)
-          (letrec ((#{remodulate\ 3497}#
-                     (lambda (#{x\ 3498}# #{mod\ 3499}#)
-                       (if (pair? #{x\ 3498}#)
-                         (cons (#{remodulate\ 3497}#
-                                 (car #{x\ 3498}#)
-                                 #{mod\ 3499}#)
-                               (#{remodulate\ 3497}#
-                                 (cdr #{x\ 3498}#)
-                                 #{mod\ 3499}#))
-                         (if (#{syntax-object?\ 336}# #{x\ 3498}#)
-                           (#{make-syntax-object\ 334}#
-                             (#{remodulate\ 3497}#
-                               (#{syntax-object-expression\ 338}# #{x\ 3498}#)
-                               #{mod\ 3499}#)
-                             (#{syntax-object-wrap\ 340}# #{x\ 3498}#)
-                             #{mod\ 3499}#)
-                           (if (vector? #{x\ 3498}#)
-                             (let ((#{n\ 3510}# (vector-length #{x\ 3498}#)))
-                               (let ((#{v\ 3512}# (make-vector #{n\ 3510}#)))
-                                 (letrec ((#{loop\ 3515}#
-                                            (lambda (#{i\ 3516}#)
-                                              (if (#{fx=\ 277}#
-                                                    #{i\ 3516}#
-                                                    #{n\ 3510}#)
-                                                (begin (if #f #f) #{v\ 3512}#)
-                                                (begin
-                                                  (vector-set!
-                                                    #{v\ 3512}#
-                                                    #{i\ 3516}#
-                                                    (#{remodulate\ 3497}#
-                                                      (vector-ref
-                                                        #{x\ 3498}#
-                                                        #{i\ 3516}#)
-                                                      #{mod\ 3499}#))
-                                                  (#{loop\ 3515}#
-                                                    (#{fx+\ 273}#
-                                                      #{i\ 3516}#
-                                                      1)))))))
-                                   (#{loop\ 3515}# 0))))
-                             #{x\ 3498}#))))))
-            ((lambda (#{tmp\ 3520}#)
-               ((lambda (#{tmp\ 3521}#)
-                  (if (if #{tmp\ 3521}#
-                        (apply (lambda (#{_\ 3525}#
-                                        #{mod\ 3526}#
-                                        #{exp\ 3527}#)
-                                 (and-map #{id?\ 372}# #{mod\ 3526}#))
-                               #{tmp\ 3521}#)
-                        #f)
-                    (apply (lambda (#{_\ 3532}# #{mod\ 3533}# #{exp\ 3534}#)
-                             (let ((#{mod\ 3536}#
-                                     (syntax->datum
-                                       (cons '#(syntax-object
-                                                private
-                                                ((top)
-                                                 #(ribcage
-                                                   #(_ mod exp)
-                                                   #((top) (top) (top))
-                                                   #("i3529" "i3530" "i3531"))
-                                                 #(ribcage
-                                                   (remodulate)
-                                                   ((top))
-                                                   ("i3496"))
-                                                 #(ribcage
-                                                   #(e r w)
-                                                   #((top) (top) (top))
-                                                   #("i3493" "i3494" "i3495"))
-                                                 #(ribcage
-                                                   (lambda-var-list
-                                                     gen-var
-                                                     strip
-                                                     chi-lambda-case
-                                                     lambda*-formals
-                                                     chi-simple-lambda
-                                                     lambda-formals
-                                                     ellipsis?
-                                                     chi-void
-                                                     eval-local-transformer
-                                                     chi-local-syntax
-                                                     chi-body
-                                                     chi-macro
-                                                     chi-application
-                                                     chi-expr
-                                                     chi
-                                                     chi-top
-                                                     syntax-type
-                                                     chi-when-list
-                                                     chi-install-global
-                                                     chi-top-sequence
-                                                     chi-sequence
-                                                     source-wrap
-                                                     wrap
-                                                     bound-id-member?
-                                                     distinct-bound-ids?
-                                                     valid-bound-ids?
-                                                     bound-id=?
-                                                     free-id=?
-                                                     id-var-name
-                                                     same-marks?
-                                                     join-marks
-                                                     join-wraps
-                                                     smart-append
-                                                     make-binding-wrap
-                                                     extend-ribcage!
-                                                     make-empty-ribcage
-                                                     new-mark
-                                                     anti-mark
-                                                     the-anti-mark
-                                                     top-marked?
-                                                     top-wrap
-                                                     empty-wrap
-                                                     set-ribcage-labels!
-                                                     set-ribcage-marks!
-                                                     set-ribcage-symnames!
-                                                     ribcage-labels
-                                                     ribcage-marks
-                                                     ribcage-symnames
-                                                     ribcage?
-                                                     make-ribcage
-                                                     gen-labels
-                                                     gen-label
-                                                     make-rename
-                                                     rename-marks
-                                                     rename-new
-                                                     rename-old
-                                                     subst-rename?
-                                                     wrap-subst
-                                                     wrap-marks
-                                                     make-wrap
-                                                     id-sym-name&marks
-                                                     id-sym-name
-                                                     id?
-                                                     nonsymbol-id?
-                                                     global-extend
-                                                     lookup
-                                                     macros-only-env
-                                                     extend-var-env
-                                                     extend-env
-                                                     null-env
-                                                     binding-value
-                                                     binding-type
-                                                     make-binding
-                                                     arg-check
-                                                     source-annotation
-                                                     no-source
-                                                     set-syntax-object-module!
-                                                     set-syntax-object-wrap!
-                                                     
set-syntax-object-expression!
-                                                     syntax-object-module
-                                                     syntax-object-wrap
-                                                     syntax-object-expression
-                                                     syntax-object?
-                                                     make-syntax-object
-                                                     build-lexical-var
-                                                     build-letrec
-                                                     build-named-let
-                                                     build-let
-                                                     build-sequence
-                                                     build-data
-                                                     build-primref
-                                                     build-lambda-case
-                                                     build-case-lambda
-                                                     build-simple-lambda
-                                                     build-global-definition
-                                                     maybe-name-value!
-                                                     build-global-assignment
-                                                     build-global-reference
-                                                     analyze-variable
-                                                     build-lexical-assignment
-                                                     build-lexical-reference
-                                                     build-dynlet
-                                                     build-conditional
-                                                     build-application
-                                                     build-void
-                                                     decorate-source
-                                                     get-global-definition-hook
-                                                     put-global-definition-hook
-                                                     gensym-hook
-                                                     local-eval-hook
-                                                     top-level-eval-hook
-                                                     fx<
-                                                     fx=
-                                                     fx-
-                                                     fx+
-                                                     set-lambda-meta!
-                                                     lambda-meta
-                                                     lambda?
-                                                     make-dynlet
-                                                     make-letrec
-                                                     make-let
-                                                     make-lambda-case
-                                                     make-lambda
-                                                     make-sequence
-                                                     make-application
-                                                     make-conditional
-                                                     make-toplevel-define
-                                                     make-toplevel-set
-                                                     make-toplevel-ref
-                                                     make-module-set
-                                                     make-module-ref
-                                                     make-lexical-set
-                                                     make-lexical-ref
-                                                     make-primitive-ref
-                                                     make-const
-                                                     make-void)
-                                                   ((top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top))
-                                                   ("i486"
-                                                    "i484"
-                                                    "i482"
-                                                    "i480"
-                                                    "i478"
-                                                    "i476"
-                                                    "i474"
-                                                    "i472"
-                                                    "i470"
-                                                    "i468"
-                                                    "i466"
-                                                    "i464"
-                                                    "i462"
-                                                    "i460"
-                                                    "i458"
-                                                    "i456"
-                                                    "i454"
-                                                    "i452"
-                                                    "i450"
-                                                    "i448"
-                                                    "i446"
-                                                    "i444"
-                                                    "i442"
-                                                    "i440"
-                                                    "i438"
-                                                    "i436"
-                                                    "i434"
-                                                    "i432"
-                                                    "i430"
-                                                    "i428"
-                                                    "i426"
-                                                    "i424"
-                                                    "i422"
-                                                    "i420"
-                                                    "i418"
-                                                    "i416"
-                                                    "i415"
-                                                    "i414"
-                                                    "i412"
-                                                    "i411"
-                                                    "i410"
-                                                    "i409"
-                                                    "i408"
-                                                    "i406"
-                                                    "i404"
-                                                    "i402"
-                                                    "i400"
-                                                    "i398"
-                                                    "i396"
-                                                    "i394"
-                                                    "i392"
-                                                    "i389"
-                                                    "i387"
-                                                    "i386"
-                                                    "i385"
-                                                    "i384"
-                                                    "i383"
-                                                    "i382"
-                                                    "i380"
-                                                    "i378"
-                                                    "i376"
-                                                    "i374"
-                                                    "i373"
-                                                    "i371"
-                                                    "i369"
-                                                    "i367"
-                                                    "i365"
-                                                    "i363"
-                                                    "i361"
-                                                    "i359"
-                                                    "i358"
-                                                    "i356"
-                                                    "i354"
-                                                    "i353"
-                                                    "i352"
-                                                    "i350"
-                                                    "i349"
-                                                    "i347"
-                                                    "i345"
-                                                    "i343"
-                                                    "i341"
-                                                    "i339"
-                                                    "i337"
-                                                    "i335"
-                                                    "i333"
-                                                    "i331"
-                                                    "i329"
-                                                    "i327"
-                                                    "i325"
-                                                    "i323"
-                                                    "i321"
-                                                    "i319"
-                                                    "i317"
-                                                    "i315"
-                                                    "i313"
-                                                    "i311"
-                                                    "i309"
-                                                    "i307"
-                                                    "i305"
-                                                    "i303"
-                                                    "i301"
-                                                    "i299"
-                                                    "i297"
-                                                    "i295"
-                                                    "i293"
-                                                    "i291"
-                                                    "i289"
-                                                    "i287"
-                                                    "i285"
-                                                    "i284"
-                                                    "i282"
-                                                    "i280"
-                                                    "i278"
-                                                    "i276"
-                                                    "i274"
-                                                    "i272"
-                                                    "i270"
-                                                    "i268"
-                                                    "i266"
-                                                    "i263"
-                                                    "i261"
-                                                    "i259"
-                                                    "i257"
-                                                    "i255"
-                                                    "i253"
-                                                    "i251"
-                                                    "i249"
-                                                    "i247"
-                                                    "i245"
-                                                    "i243"
-                                                    "i241"
-                                                    "i239"
-                                                    "i237"
-                                                    "i235"
-                                                    "i233"
-                                                    "i231"
-                                                    "i229"))
-                                                 #(ribcage
-                                                   (define-structure
-                                                     define-expansion-accessors
-                                                     
define-expansion-constructors
-                                                     and-map*)
-                                                   ((top) (top) (top) (top))
-                                                   ("i23" "i22" "i21" "i19")))
-                                                (hygiene guile))
-                                             #{mod\ 3533}#))))
-                               (values
-                                 (#{remodulate\ 3497}#
-                                   #{exp\ 3534}#
-                                   #{mod\ 3536}#)
-                                 #{r\ 3491}#
-                                 #{w\ 3492}#
-                                 (#{source-annotation\ 351}# #{exp\ 3534}#)
-                                 #{mod\ 3536}#)))
-                           #{tmp\ 3521}#)
-                    (syntax-violation
-                      #f
-                      "source expression failed to match any pattern"
-                      #{tmp\ 3520}#)))
-                ($sc-dispatch
-                  #{tmp\ 3520}#
-                  '(any each-any any))))
-             #{e\ 3490}#))))
-      (#{global-extend\ 368}#
-        'core
-        'if
-        (lambda (#{e\ 3538}#
-                 #{r\ 3539}#
-                 #{w\ 3540}#
-                 #{s\ 3541}#
-                 #{mod\ 3542}#)
-          ((lambda (#{tmp\ 3548}#)
-             ((lambda (#{tmp\ 3549}#)
-                (if #{tmp\ 3549}#
-                  (apply (lambda (#{_\ 3553}# #{test\ 3554}# #{then\ 3555}#)
-                           (#{build-conditional\ 296}#
-                             #{s\ 3541}#
-                             (#{chi\ 457}#
-                               #{test\ 3554}#
-                               #{r\ 3539}#
-                               #{w\ 3540}#
-                               #{mod\ 3542}#)
-                             (#{chi\ 457}#
-                               #{then\ 3555}#
-                               #{r\ 3539}#
-                               #{w\ 3540}#
-                               #{mod\ 3542}#)
-                             (#{build-void\ 292}# #f)))
-                         #{tmp\ 3549}#)
-                  ((lambda (#{tmp\ 3557}#)
-                     (if #{tmp\ 3557}#
-                       (apply (lambda (#{_\ 3562}#
-                                       #{test\ 3563}#
-                                       #{then\ 3564}#
-                                       #{else\ 3565}#)
-                                (#{build-conditional\ 296}#
-                                  #{s\ 3541}#
-                                  (#{chi\ 457}#
-                                    #{test\ 3563}#
-                                    #{r\ 3539}#
-                                    #{w\ 3540}#
-                                    #{mod\ 3542}#)
-                                  (#{chi\ 457}#
-                                    #{then\ 3564}#
-                                    #{r\ 3539}#
-                                    #{w\ 3540}#
-                                    #{mod\ 3542}#)
-                                  (#{chi\ 457}#
-                                    #{else\ 3565}#
-                                    #{r\ 3539}#
-                                    #{w\ 3540}#
-                                    #{mod\ 3542}#)))
-                              #{tmp\ 3557}#)
-                       (syntax-violation
-                         #f
-                         "source expression failed to match any pattern"
-                         #{tmp\ 3548}#)))
-                   ($sc-dispatch
-                     #{tmp\ 3548}#
-                     '(any any any any)))))
-              ($sc-dispatch
-                #{tmp\ 3548}#
-                '(any any any))))
-           #{e\ 3538}#)))
-      (#{global-extend\ 368}#
-        'core
-        'with-fluids
-        (lambda (#{e\ 3566}#
-                 #{r\ 3567}#
-                 #{w\ 3568}#
-                 #{s\ 3569}#
-                 #{mod\ 3570}#)
-          ((lambda (#{tmp\ 3576}#)
-             ((lambda (#{tmp\ 3577}#)
-                (if #{tmp\ 3577}#
-                  (apply (lambda (#{_\ 3583}#
-                                  #{fluid\ 3584}#
-                                  #{val\ 3585}#
-                                  #{b\ 3586}#
-                                  #{b*\ 3587}#)
-                           (#{build-dynlet\ 298}#
-                             #{s\ 3569}#
-                             (map (lambda (#{x\ 3588}#)
-                                    (#{chi\ 457}#
-                                      #{x\ 3588}#
-                                      #{r\ 3567}#
-                                      #{w\ 3568}#
-                                      #{mod\ 3570}#))
-                                  #{fluid\ 3584}#)
-                             (map (lambda (#{x\ 3591}#)
-                                    (#{chi\ 457}#
-                                      #{x\ 3591}#
-                                      #{r\ 3567}#
-                                      #{w\ 3568}#
-                                      #{mod\ 3570}#))
-                                  #{val\ 3585}#)
-                             (#{chi-body\ 465}#
-                               (cons #{b\ 3586}# #{b*\ 3587}#)
-                               (#{source-wrap\ 443}#
-                                 #{e\ 3566}#
-                                 #{w\ 3568}#
-                                 #{s\ 3569}#
-                                 #{mod\ 3570}#)
-                               #{r\ 3567}#
-                               #{w\ 3568}#
-                               #{mod\ 3570}#)))
-                         #{tmp\ 3577}#)
-                  (syntax-violation
-                    #f
-                    "source expression failed to match any pattern"
-                    #{tmp\ 3576}#)))
-              ($sc-dispatch
-                #{tmp\ 3576}#
-                '(any #(each (any any)) any . each-any))))
-           #{e\ 3566}#)))
-      (#{global-extend\ 368}#
-        'begin
-        'begin
-        '())
-      (#{global-extend\ 368}#
-        'define
-        'define
-        '())
-      (#{global-extend\ 368}#
-        'define-syntax
-        'define-syntax
-        '())
-      (#{global-extend\ 368}#
-        'eval-when
-        'eval-when
-        '())
-      (#{global-extend\ 368}#
-        'core
-        'syntax-case
-        (letrec ((#{gen-syntax-case\ 3602}#
-                   (lambda (#{x\ 3603}#
-                            #{keys\ 3604}#
-                            #{clauses\ 3605}#
-                            #{r\ 3606}#
-                            #{mod\ 3607}#)
-                     (if (null? #{clauses\ 3605}#)
-                       (#{build-application\ 294}#
+                            #f
+                            "source expression failed to match any pattern"
+                            #{tmp\ 3589}#))))))))
+            (#{global-extend\ 383}#
+              'core
+              'if
+              (lambda (#{e\ 3607}#
+                       #{r\ 3608}#
+                       #{w\ 3609}#
+                       #{s\ 3610}#
+                       #{mod\ 3611}#)
+                (let ((#{tmp\ 3617}# #{e\ 3607}#))
+                  (let ((#{tmp\ 3618}#
+                          ($sc-dispatch
+                            #{tmp\ 3617}#
+                            '(any any any))))
+                    (if #{tmp\ 3618}#
+                      (@apply
+                        (lambda (#{_\ 3622}# #{test\ 3623}# #{then\ 3624}#)
+                          (#{build-conditional\ 311}#
+                            #{s\ 3610}#
+                            (#{chi\ 472}#
+                              #{test\ 3623}#
+                              #{r\ 3608}#
+                              #{w\ 3609}#
+                              #{mod\ 3611}#)
+                            (#{chi\ 472}#
+                              #{then\ 3624}#
+                              #{r\ 3608}#
+                              #{w\ 3609}#
+                              #{mod\ 3611}#)
+                            (#{build-void\ 307}# #f)))
+                        #{tmp\ 3618}#)
+                      (let ((#{tmp\ 3626}#
+                              ($sc-dispatch
+                                #{tmp\ 3617}#
+                                '(any any any any))))
+                        (if #{tmp\ 3626}#
+                          (@apply
+                            (lambda (#{_\ 3631}#
+                                     #{test\ 3632}#
+                                     #{then\ 3633}#
+                                     #{else\ 3634}#)
+                              (#{build-conditional\ 311}#
+                                #{s\ 3610}#
+                                (#{chi\ 472}#
+                                  #{test\ 3632}#
+                                  #{r\ 3608}#
+                                  #{w\ 3609}#
+                                  #{mod\ 3611}#)
+                                (#{chi\ 472}#
+                                  #{then\ 3633}#
+                                  #{r\ 3608}#
+                                  #{w\ 3609}#
+                                  #{mod\ 3611}#)
+                                (#{chi\ 472}#
+                                  #{else\ 3634}#
+                                  #{r\ 3608}#
+                                  #{w\ 3609}#
+                                  #{mod\ 3611}#)))
+                            #{tmp\ 3626}#)
+                          (syntax-violation
+                            #f
+                            "source expression failed to match any pattern"
+                            #{tmp\ 3617}#))))))))
+            (#{global-extend\ 383}#
+              'core
+              'with-fluids
+              (lambda (#{e\ 3635}#
+                       #{r\ 3636}#
+                       #{w\ 3637}#
+                       #{s\ 3638}#
+                       #{mod\ 3639}#)
+                (let ((#{tmp\ 3645}# #{e\ 3635}#))
+                  (let ((#{tmp\ 3646}#
+                          ($sc-dispatch
+                            #{tmp\ 3645}#
+                            '(any #(each (any any)) any . each-any))))
+                    (if #{tmp\ 3646}#
+                      (@apply
+                        (lambda (#{_\ 3652}#
+                                 #{fluid\ 3653}#
+                                 #{val\ 3654}#
+                                 #{b\ 3655}#
+                                 #{b*\ 3656}#)
+                          (#{build-dynlet\ 313}#
+                            #{s\ 3638}#
+                            (map (lambda (#{x\ 3657}#)
+                                   (#{chi\ 472}#
+                                     #{x\ 3657}#
+                                     #{r\ 3636}#
+                                     #{w\ 3637}#
+                                     #{mod\ 3639}#))
+                                 #{fluid\ 3653}#)
+                            (map (lambda (#{x\ 3660}#)
+                                   (#{chi\ 472}#
+                                     #{x\ 3660}#
+                                     #{r\ 3636}#
+                                     #{w\ 3637}#
+                                     #{mod\ 3639}#))
+                                 #{val\ 3654}#)
+                            (#{chi-body\ 480}#
+                              (cons #{b\ 3655}# #{b*\ 3656}#)
+                              (#{source-wrap\ 458}#
+                                #{e\ 3635}#
+                                #{w\ 3637}#
+                                #{s\ 3638}#
+                                #{mod\ 3639}#)
+                              #{r\ 3636}#
+                              #{w\ 3637}#
+                              #{mod\ 3639}#)))
+                        #{tmp\ 3646}#)
+                      (syntax-violation
+                        #f
+                        "source expression failed to match any pattern"
+                        #{tmp\ 3645}#))))))
+            (#{global-extend\ 383}#
+              'begin
+              'begin
+              '())
+            (#{global-extend\ 383}#
+              'define
+              'define
+              '())
+            (#{global-extend\ 383}#
+              'define-syntax
+              'define-syntax
+              '())
+            (#{global-extend\ 383}#
+              'eval-when
+              'eval-when
+              '())
+            (#{global-extend\ 383}#
+              'core
+              'syntax-case
+              (letrec*
+                ((#{gen-syntax-case\ 3671}#
+                   (lambda (#{x\ 3672}#
+                            #{keys\ 3673}#
+                            #{clauses\ 3674}#
+                            #{r\ 3675}#
+                            #{mod\ 3676}#)
+                     (if (null? #{clauses\ 3674}#)
+                       (#{build-application\ 309}#
                          #f
-                         (#{build-primref\ 320}#
+                         (#{build-primref\ 335}#
                            #f
                            'syntax-violation)
-                         (list (#{build-data\ 322}# #f #f)
-                               (#{build-data\ 322}#
+                         (list (#{build-data\ 337}# #f #f)
+                               (#{build-data\ 337}#
                                  #f
                                  "source expression failed to match any 
pattern")
-                               #{x\ 3603}#))
-                       ((lambda (#{tmp\ 3617}#)
-                          ((lambda (#{tmp\ 3618}#)
-                             (if #{tmp\ 3618}#
-                               (apply (lambda (#{pat\ 3621}# #{exp\ 3622}#)
-                                        (if (if (#{id?\ 372}# #{pat\ 3621}#)
-                                              (and-map
-                                                (lambda (#{x\ 3625}#)
-                                                  (not (#{free-id=?\ 431}#
-                                                         #{pat\ 3621}#
-                                                         #{x\ 3625}#)))
-                                                (cons '#(syntax-object
-                                                         ...
-                                                         ((top)
-                                                          #(ribcage
-                                                            #(pat exp)
-                                                            #((top) (top))
-                                                            #("i3619" "i3620"))
-                                                          #(ribcage () () ())
-                                                          #(ribcage
-                                                            #(x
-                                                              keys
-                                                              clauses
-                                                              r
-                                                              mod)
-                                                            #((top)
-                                                              (top)
-                                                              (top)
-                                                              (top)
-                                                              (top))
-                                                            #("i3608"
-                                                              "i3609"
-                                                              "i3610"
-                                                              "i3611"
-                                                              "i3612"))
-                                                          #(ribcage
-                                                            (gen-syntax-case
-                                                              gen-clause
-                                                              
build-dispatch-call
-                                                              convert-pattern)
-                                                            ((top)
-                                                             (top)
-                                                             (top)
-                                                             (top))
-                                                            ("i3601"
-                                                             "i3599"
-                                                             "i3597"
-                                                             "i3595"))
-                                                          #(ribcage
-                                                            (lambda-var-list
-                                                              gen-var
-                                                              strip
-                                                              chi-lambda-case
-                                                              lambda*-formals
-                                                              chi-simple-lambda
-                                                              lambda-formals
-                                                              ellipsis?
-                                                              chi-void
-                                                              
eval-local-transformer
-                                                              chi-local-syntax
-                                                              chi-body
-                                                              chi-macro
-                                                              chi-application
-                                                              chi-expr
-                                                              chi
-                                                              chi-top
-                                                              syntax-type
-                                                              chi-when-list
-                                                              
chi-install-global
-                                                              chi-top-sequence
-                                                              chi-sequence
-                                                              source-wrap
-                                                              wrap
-                                                              bound-id-member?
-                                                              
distinct-bound-ids?
-                                                              valid-bound-ids?
-                                                              bound-id=?
-                                                              free-id=?
-                                                              id-var-name
-                                                              same-marks?
-                                                              join-marks
-                                                              join-wraps
-                                                              smart-append
-                                                              make-binding-wrap
-                                                              extend-ribcage!
-                                                              
make-empty-ribcage
-                                                              new-mark
-                                                              anti-mark
-                                                              the-anti-mark
-                                                              top-marked?
-                                                              top-wrap
-                                                              empty-wrap
-                                                              
set-ribcage-labels!
-                                                              
set-ribcage-marks!
-                                                              
set-ribcage-symnames!
-                                                              ribcage-labels
-                                                              ribcage-marks
-                                                              ribcage-symnames
-                                                              ribcage?
-                                                              make-ribcage
-                                                              gen-labels
-                                                              gen-label
-                                                              make-rename
-                                                              rename-marks
-                                                              rename-new
-                                                              rename-old
-                                                              subst-rename?
-                                                              wrap-subst
-                                                              wrap-marks
-                                                              make-wrap
-                                                              id-sym-name&marks
-                                                              id-sym-name
-                                                              id?
-                                                              nonsymbol-id?
-                                                              global-extend
-                                                              lookup
-                                                              macros-only-env
-                                                              extend-var-env
-                                                              extend-env
-                                                              null-env
-                                                              binding-value
-                                                              binding-type
-                                                              make-binding
-                                                              arg-check
-                                                              source-annotation
-                                                              no-source
-                                                              
set-syntax-object-module!
-                                                              
set-syntax-object-wrap!
-                                                              
set-syntax-object-expression!
-                                                              
syntax-object-module
-                                                              
syntax-object-wrap
-                                                              
syntax-object-expression
-                                                              syntax-object?
-                                                              
make-syntax-object
-                                                              build-lexical-var
-                                                              build-letrec
-                                                              build-named-let
-                                                              build-let
-                                                              build-sequence
-                                                              build-data
-                                                              build-primref
-                                                              build-lambda-case
-                                                              build-case-lambda
-                                                              
build-simple-lambda
-                                                              
build-global-definition
-                                                              maybe-name-value!
-                                                              
build-global-assignment
-                                                              
build-global-reference
-                                                              analyze-variable
-                                                              
build-lexical-assignment
-                                                              
build-lexical-reference
-                                                              build-dynlet
-                                                              build-conditional
-                                                              build-application
-                                                              build-void
-                                                              decorate-source
-                                                              
get-global-definition-hook
-                                                              
put-global-definition-hook
-                                                              gensym-hook
-                                                              local-eval-hook
-                                                              
top-level-eval-hook
-                                                              fx<
-                                                              fx=
-                                                              fx-
-                                                              fx+
-                                                              set-lambda-meta!
-                                                              lambda-meta
-                                                              lambda?
-                                                              make-dynlet
-                                                              make-letrec
-                                                              make-let
-                                                              make-lambda-case
-                                                              make-lambda
-                                                              make-sequence
-                                                              make-application
-                                                              make-conditional
-                                                              
make-toplevel-define
-                                                              make-toplevel-set
-                                                              make-toplevel-ref
-                                                              make-module-set
-                                                              make-module-ref
-                                                              make-lexical-set
-                                                              make-lexical-ref
-                                                              
make-primitive-ref
-                                                              make-const
-                                                              make-void)
-                                                            ((top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top)
-                                                             (top))
-                                                            ("i486"
-                                                             "i484"
-                                                             "i482"
-                                                             "i480"
-                                                             "i478"
-                                                             "i476"
-                                                             "i474"
-                                                             "i472"
-                                                             "i470"
-                                                             "i468"
-                                                             "i466"
-                                                             "i464"
-                                                             "i462"
-                                                             "i460"
-                                                             "i458"
-                                                             "i456"
-                                                             "i454"
-                                                             "i452"
-                                                             "i450"
-                                                             "i448"
-                                                             "i446"
-                                                             "i444"
-                                                             "i442"
-                                                             "i440"
-                                                             "i438"
-                                                             "i436"
-                                                             "i434"
-                                                             "i432"
-                                                             "i430"
-                                                             "i428"
-                                                             "i426"
-                                                             "i424"
-                                                             "i422"
-                                                             "i420"
-                                                             "i418"
-                                                             "i416"
-                                                             "i415"
-                                                             "i414"
-                                                             "i412"
-                                                             "i411"
-                                                             "i410"
-                                                             "i409"
-                                                             "i408"
-                                                             "i406"
-                                                             "i404"
-                                                             "i402"
-                                                             "i400"
-                                                             "i398"
-                                                             "i396"
-                                                             "i394"
-                                                             "i392"
-                                                             "i389"
-                                                             "i387"
-                                                             "i386"
-                                                             "i385"
-                                                             "i384"
-                                                             "i383"
-                                                             "i382"
-                                                             "i380"
-                                                             "i378"
-                                                             "i376"
-                                                             "i374"
-                                                             "i373"
-                                                             "i371"
-                                                             "i369"
-                                                             "i367"
-                                                             "i365"
-                                                             "i363"
-                                                             "i361"
-                                                             "i359"
-                                                             "i358"
-                                                             "i356"
-                                                             "i354"
-                                                             "i353"
-                                                             "i352"
-                                                             "i350"
-                                                             "i349"
-                                                             "i347"
-                                                             "i345"
-                                                             "i343"
-                                                             "i341"
-                                                             "i339"
-                                                             "i337"
-                                                             "i335"
-                                                             "i333"
-                                                             "i331"
-                                                             "i329"
-                                                             "i327"
-                                                             "i325"
-                                                             "i323"
-                                                             "i321"
-                                                             "i319"
-                                                             "i317"
-                                                             "i315"
-                                                             "i313"
-                                                             "i311"
-                                                             "i309"
-                                                             "i307"
-                                                             "i305"
-                                                             "i303"
-                                                             "i301"
-                                                             "i299"
-                                                             "i297"
-                                                             "i295"
-                                                             "i293"
-                                                             "i291"
-                                                             "i289"
-                                                             "i287"
-                                                             "i285"
-                                                             "i284"
-                                                             "i282"
-                                                             "i280"
-                                                             "i278"
-                                                             "i276"
-                                                             "i274"
-                                                             "i272"
-                                                             "i270"
-                                                             "i268"
-                                                             "i266"
-                                                             "i263"
-                                                             "i261"
-                                                             "i259"
-                                                             "i257"
-                                                             "i255"
-                                                             "i253"
-                                                             "i251"
-                                                             "i249"
-                                                             "i247"
-                                                             "i245"
-                                                             "i243"
-                                                             "i241"
-                                                             "i239"
-                                                             "i237"
-                                                             "i235"
-                                                             "i233"
-                                                             "i231"
-                                                             "i229"))
-                                                          #(ribcage
-                                                            (define-structure
-                                                              
define-expansion-accessors
-                                                              
define-expansion-constructors
-                                                              and-map*)
-                                                            ((top)
-                                                             (top)
-                                                             (top)
-                                                             (top))
-                                                            ("i23"
-                                                             "i22"
-                                                             "i21"
-                                                             "i19")))
-                                                         (hygiene guile))
-                                                      #{keys\ 3604}#))
-                                              #f)
-                                          (let ((#{labels\ 3629}#
-                                                  (list (#{gen-label\ 388}#)))
-                                                (#{var\ 3630}#
-                                                  (#{gen-var\ 485}#
-                                                    #{pat\ 3621}#)))
-                                            (#{build-application\ 294}#
-                                              #f
-                                              (#{build-simple-lambda\ 314}#
-                                                #f
-                                                (list (syntax->datum
-                                                        #{pat\ 3621}#))
-                                                #f
-                                                (list #{var\ 3630}#)
-                                                '()
-                                                (#{chi\ 457}#
-                                                  #{exp\ 3622}#
-                                                  (#{extend-env\ 360}#
-                                                    #{labels\ 3629}#
-                                                    (list (cons 'syntax
-                                                                (cons #{var\ 
3630}#
-                                                                      0)))
-                                                    #{r\ 3606}#)
-                                                  (#{make-binding-wrap\ 419}#
-                                                    (list #{pat\ 3621}#)
-                                                    #{labels\ 3629}#
-                                                    '(()))
-                                                  #{mod\ 3607}#))
-                                              (list #{x\ 3603}#)))
-                                          (#{gen-clause\ 3600}#
-                                            #{x\ 3603}#
-                                            #{keys\ 3604}#
-                                            (cdr #{clauses\ 3605}#)
-                                            #{r\ 3606}#
-                                            #{pat\ 3621}#
-                                            #t
-                                            #{exp\ 3622}#
-                                            #{mod\ 3607}#)))
-                                      #{tmp\ 3618}#)
-                               ((lambda (#{tmp\ 3636}#)
-                                  (if #{tmp\ 3636}#
-                                    (apply (lambda (#{pat\ 3640}#
-                                                    #{fender\ 3641}#
-                                                    #{exp\ 3642}#)
-                                             (#{gen-clause\ 3600}#
-                                               #{x\ 3603}#
-                                               #{keys\ 3604}#
-                                               (cdr #{clauses\ 3605}#)
-                                               #{r\ 3606}#
-                                               #{pat\ 3640}#
-                                               #{fender\ 3641}#
-                                               #{exp\ 3642}#
-                                               #{mod\ 3607}#))
-                                           #{tmp\ 3636}#)
-                                    ((lambda (#{_\ 3644}#)
-                                       (syntax-violation
-                                         'syntax-case
-                                         "invalid clause"
-                                         (car #{clauses\ 3605}#)))
-                                     #{tmp\ 3617}#)))
-                                ($sc-dispatch
-                                  #{tmp\ 3617}#
-                                  '(any any any)))))
-                           ($sc-dispatch #{tmp\ 3617}# (quote (any any)))))
-                        (car #{clauses\ 3605}#)))))
-                 (#{gen-clause\ 3600}#
-                   (lambda (#{x\ 3645}#
-                            #{keys\ 3646}#
-                            #{clauses\ 3647}#
-                            #{r\ 3648}#
-                            #{pat\ 3649}#
-                            #{fender\ 3650}#
-                            #{exp\ 3651}#
-                            #{mod\ 3652}#)
+                               #{x\ 3672}#))
+                       (let ((#{tmp\ 3686}# (car #{clauses\ 3674}#)))
+                         (let ((#{tmp\ 3687}#
+                                 ($sc-dispatch
+                                   #{tmp\ 3686}#
+                                   '(any any))))
+                           (if #{tmp\ 3687}#
+                             (@apply
+                               (lambda (#{pat\ 3690}# #{exp\ 3691}#)
+                                 (if (if (#{id?\ 387}# #{pat\ 3690}#)
+                                       (and-map
+                                         (lambda (#{x\ 3694}#)
+                                           (not (#{free-id=?\ 446}#
+                                                  #{pat\ 3690}#
+                                                  #{x\ 3694}#)))
+                                         (cons '#(syntax-object
+                                                  ...
+                                                  ((top)
+                                                   #(ribcage
+                                                     #(pat exp)
+                                                     #((top) (top))
+                                                     #("i3688" "i3689"))
+                                                   #(ribcage () () ())
+                                                   #(ribcage
+                                                     #(x keys clauses r mod)
+                                                     #((top)
+                                                       (top)
+                                                       (top)
+                                                       (top)
+                                                       (top))
+                                                     #("i3677"
+                                                       "i3678"
+                                                       "i3679"
+                                                       "i3680"
+                                                       "i3681"))
+                                                   #(ribcage
+                                                     (gen-syntax-case
+                                                       gen-clause
+                                                       build-dispatch-call
+                                                       convert-pattern)
+                                                     ((top) (top) (top) (top))
+                                                     ("i3670"
+                                                      "i3668"
+                                                      "i3666"
+                                                      "i3664"))
+                                                   #(ribcage
+                                                     (lambda-var-list
+                                                       gen-var
+                                                       strip
+                                                       chi-lambda-case
+                                                       lambda*-formals
+                                                       chi-simple-lambda
+                                                       lambda-formals
+                                                       ellipsis?
+                                                       chi-void
+                                                       eval-local-transformer
+                                                       chi-local-syntax
+                                                       chi-body
+                                                       chi-macro
+                                                       chi-application
+                                                       chi-expr
+                                                       chi
+                                                       chi-top
+                                                       syntax-type
+                                                       chi-when-list
+                                                       chi-install-global
+                                                       chi-top-sequence
+                                                       chi-sequence
+                                                       source-wrap
+                                                       wrap
+                                                       bound-id-member?
+                                                       distinct-bound-ids?
+                                                       valid-bound-ids?
+                                                       bound-id=?
+                                                       free-id=?
+                                                       id-var-name
+                                                       same-marks?
+                                                       join-marks
+                                                       join-wraps
+                                                       smart-append
+                                                       make-binding-wrap
+                                                       extend-ribcage!
+                                                       make-empty-ribcage
+                                                       new-mark
+                                                       anti-mark
+                                                       the-anti-mark
+                                                       top-marked?
+                                                       top-wrap
+                                                       empty-wrap
+                                                       set-ribcage-labels!
+                                                       set-ribcage-marks!
+                                                       set-ribcage-symnames!
+                                                       ribcage-labels
+                                                       ribcage-marks
+                                                       ribcage-symnames
+                                                       ribcage?
+                                                       make-ribcage
+                                                       gen-labels
+                                                       gen-label
+                                                       make-rename
+                                                       rename-marks
+                                                       rename-new
+                                                       rename-old
+                                                       subst-rename?
+                                                       wrap-subst
+                                                       wrap-marks
+                                                       make-wrap
+                                                       id-sym-name&marks
+                                                       id-sym-name
+                                                       id?
+                                                       nonsymbol-id?
+                                                       global-extend
+                                                       lookup
+                                                       macros-only-env
+                                                       extend-var-env
+                                                       extend-env
+                                                       null-env
+                                                       binding-value
+                                                       binding-type
+                                                       make-binding
+                                                       arg-check
+                                                       source-annotation
+                                                       no-source
+                                                       
set-syntax-object-module!
+                                                       set-syntax-object-wrap!
+                                                       
set-syntax-object-expression!
+                                                       syntax-object-module
+                                                       syntax-object-wrap
+                                                       syntax-object-expression
+                                                       syntax-object?
+                                                       make-syntax-object
+                                                       build-lexical-var
+                                                       build-letrec
+                                                       build-named-let
+                                                       build-let
+                                                       build-sequence
+                                                       build-data
+                                                       build-primref
+                                                       build-lambda-case
+                                                       build-case-lambda
+                                                       build-simple-lambda
+                                                       build-global-definition
+                                                       maybe-name-value!
+                                                       build-global-assignment
+                                                       build-global-reference
+                                                       analyze-variable
+                                                       build-lexical-assignment
+                                                       build-lexical-reference
+                                                       build-dynlet
+                                                       build-conditional
+                                                       build-application
+                                                       build-void
+                                                       decorate-source
+                                                       
get-global-definition-hook
+                                                       
put-global-definition-hook
+                                                       gensym-hook
+                                                       local-eval-hook
+                                                       top-level-eval-hook
+                                                       fx<
+                                                       fx=
+                                                       fx-
+                                                       fx+
+                                                       set-lambda-meta!
+                                                       lambda-meta
+                                                       lambda?
+                                                       make-dynlet
+                                                       make-letrec
+                                                       make-let
+                                                       make-lambda-case
+                                                       make-lambda
+                                                       make-sequence
+                                                       make-application
+                                                       make-conditional
+                                                       make-toplevel-define
+                                                       make-toplevel-set
+                                                       make-toplevel-ref
+                                                       make-module-set
+                                                       make-module-ref
+                                                       make-lexical-set
+                                                       make-lexical-ref
+                                                       make-primitive-ref
+                                                       make-const
+                                                       make-void)
+                                                     ((top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top))
+                                                     ("i501"
+                                                      "i499"
+                                                      "i497"
+                                                      "i495"
+                                                      "i493"
+                                                      "i491"
+                                                      "i489"
+                                                      "i487"
+                                                      "i485"
+                                                      "i483"
+                                                      "i481"
+                                                      "i479"
+                                                      "i477"
+                                                      "i475"
+                                                      "i473"
+                                                      "i471"
+                                                      "i469"
+                                                      "i467"
+                                                      "i465"
+                                                      "i463"
+                                                      "i461"
+                                                      "i459"
+                                                      "i457"
+                                                      "i455"
+                                                      "i453"
+                                                      "i451"
+                                                      "i449"
+                                                      "i447"
+                                                      "i445"
+                                                      "i443"
+                                                      "i441"
+                                                      "i439"
+                                                      "i437"
+                                                      "i435"
+                                                      "i433"
+                                                      "i431"
+                                                      "i430"
+                                                      "i429"
+                                                      "i427"
+                                                      "i426"
+                                                      "i425"
+                                                      "i424"
+                                                      "i423"
+                                                      "i421"
+                                                      "i419"
+                                                      "i417"
+                                                      "i415"
+                                                      "i413"
+                                                      "i411"
+                                                      "i409"
+                                                      "i407"
+                                                      "i404"
+                                                      "i402"
+                                                      "i401"
+                                                      "i400"
+                                                      "i399"
+                                                      "i398"
+                                                      "i397"
+                                                      "i395"
+                                                      "i393"
+                                                      "i391"
+                                                      "i389"
+                                                      "i388"
+                                                      "i386"
+                                                      "i384"
+                                                      "i382"
+                                                      "i380"
+                                                      "i378"
+                                                      "i376"
+                                                      "i374"
+                                                      "i373"
+                                                      "i371"
+                                                      "i369"
+                                                      "i368"
+                                                      "i367"
+                                                      "i365"
+                                                      "i364"
+                                                      "i362"
+                                                      "i360"
+                                                      "i358"
+                                                      "i356"
+                                                      "i354"
+                                                      "i352"
+                                                      "i350"
+                                                      "i348"
+                                                      "i346"
+                                                      "i344"
+                                                      "i342"
+                                                      "i340"
+                                                      "i338"
+                                                      "i336"
+                                                      "i334"
+                                                      "i332"
+                                                      "i330"
+                                                      "i328"
+                                                      "i326"
+                                                      "i324"
+                                                      "i322"
+                                                      "i320"
+                                                      "i318"
+                                                      "i316"
+                                                      "i314"
+                                                      "i312"
+                                                      "i310"
+                                                      "i308"
+                                                      "i306"
+                                                      "i304"
+                                                      "i302"
+                                                      "i300"
+                                                      "i299"
+                                                      "i297"
+                                                      "i295"
+                                                      "i293"
+                                                      "i291"
+                                                      "i289"
+                                                      "i287"
+                                                      "i285"
+                                                      "i283"
+                                                      "i281"
+                                                      "i278"
+                                                      "i276"
+                                                      "i274"
+                                                      "i272"
+                                                      "i270"
+                                                      "i268"
+                                                      "i266"
+                                                      "i264"
+                                                      "i262"
+                                                      "i260"
+                                                      "i258"
+                                                      "i256"
+                                                      "i254"
+                                                      "i252"
+                                                      "i250"
+                                                      "i248"
+                                                      "i246"
+                                                      "i244"))
+                                                   #(ribcage
+                                                     (define-structure
+                                                       
define-expansion-accessors
+                                                       
define-expansion-constructors
+                                                       and-map*)
+                                                     ((top) (top) (top) (top))
+                                                     ("i38"
+                                                      "i37"
+                                                      "i36"
+                                                      "i34")))
+                                                  (hygiene guile))
+                                               #{keys\ 3673}#))
+                                       #f)
+                                   (begin
+                                     (let ((#{labels\ 3698}#
+                                             (list (#{gen-label\ 403}#)))
+                                           (#{var\ 3699}#
+                                             (#{gen-var\ 500}# #{pat\ 3690}#)))
+                                       (#{build-application\ 309}#
+                                         #f
+                                         (#{build-simple-lambda\ 329}#
+                                           #f
+                                           (list (syntax->datum #{pat\ 3690}#))
+                                           #f
+                                           (list #{var\ 3699}#)
+                                           '()
+                                           (#{chi\ 472}#
+                                             #{exp\ 3691}#
+                                             (#{extend-env\ 375}#
+                                               #{labels\ 3698}#
+                                               (list (cons 'syntax
+                                                           (cons #{var\ 3699}#
+                                                                 0)))
+                                               #{r\ 3675}#)
+                                             (#{make-binding-wrap\ 434}#
+                                               (list #{pat\ 3690}#)
+                                               #{labels\ 3698}#
+                                               '(()))
+                                             #{mod\ 3676}#))
+                                         (list #{x\ 3672}#))))
+                                   (#{gen-clause\ 3669}#
+                                     #{x\ 3672}#
+                                     #{keys\ 3673}#
+                                     (cdr #{clauses\ 3674}#)
+                                     #{r\ 3675}#
+                                     #{pat\ 3690}#
+                                     #t
+                                     #{exp\ 3691}#
+                                     #{mod\ 3676}#)))
+                               #{tmp\ 3687}#)
+                             (let ((#{tmp\ 3705}#
+                                     ($sc-dispatch
+                                       #{tmp\ 3686}#
+                                       '(any any any))))
+                               (if #{tmp\ 3705}#
+                                 (@apply
+                                   (lambda (#{pat\ 3709}#
+                                            #{fender\ 3710}#
+                                            #{exp\ 3711}#)
+                                     (#{gen-clause\ 3669}#
+                                       #{x\ 3672}#
+                                       #{keys\ 3673}#
+                                       (cdr #{clauses\ 3674}#)
+                                       #{r\ 3675}#
+                                       #{pat\ 3709}#
+                                       #{fender\ 3710}#
+                                       #{exp\ 3711}#
+                                       #{mod\ 3676}#))
+                                   #{tmp\ 3705}#)
+                                 (let ((#{_\ 3713}# #{tmp\ 3686}#))
+                                   (syntax-violation
+                                     'syntax-case
+                                     "invalid clause"
+                                     (car #{clauses\ 3674}#)))))))))))
+                 (#{gen-clause\ 3669}#
+                   (lambda (#{x\ 3714}#
+                            #{keys\ 3715}#
+                            #{clauses\ 3716}#
+                            #{r\ 3717}#
+                            #{pat\ 3718}#
+                            #{fender\ 3719}#
+                            #{exp\ 3720}#
+                            #{mod\ 3721}#)
                      (call-with-values
                        (lambda ()
-                         (#{convert-pattern\ 3596}#
-                           #{pat\ 3649}#
-                           #{keys\ 3646}#))
-                       (lambda (#{p\ 3661}# #{pvars\ 3662}#)
-                         (if (not (#{distinct-bound-ids?\ 437}#
-                                    (map car #{pvars\ 3662}#)))
+                         (#{convert-pattern\ 3665}#
+                           #{pat\ 3718}#
+                           #{keys\ 3715}#))
+                       (lambda (#{p\ 3730}# #{pvars\ 3731}#)
+                         (if (not (#{distinct-bound-ids?\ 452}#
+                                    (map car #{pvars\ 3731}#)))
                            (syntax-violation
                              'syntax-case
                              "duplicate pattern variable"
-                             #{pat\ 3649}#)
+                             #{pat\ 3718}#)
                            (if (not (and-map
-                                      (lambda (#{x\ 3669}#)
-                                        (not (#{ellipsis?\ 473}#
-                                               (car #{x\ 3669}#))))
-                                      #{pvars\ 3662}#))
+                                      (lambda (#{x\ 3738}#)
+                                        (not (#{ellipsis?\ 488}#
+                                               (car #{x\ 3738}#))))
+                                      #{pvars\ 3731}#))
                              (syntax-violation
                                'syntax-case
                                "misplaced ellipsis"
-                               #{pat\ 3649}#)
-                             (let ((#{y\ 3673}#
-                                     (#{gen-var\ 485}# (quote tmp))))
-                               (#{build-application\ 294}#
-                                 #f
-                                 (#{build-simple-lambda\ 314}#
-                                   #f
-                                   (list (quote tmp))
+                               #{pat\ 3718}#)
+                             (begin
+                               (let ((#{y\ 3742}#
+                                       (#{gen-var\ 500}# (quote tmp))))
+                                 (#{build-application\ 309}#
                                    #f
-                                   (list #{y\ 3673}#)
-                                   '()
-                                   (let ((#{y\ 3677}#
-                                           (#{build-lexical-reference\ 300}#
-                                             'value
-                                             #f
-                                             'tmp
-                                             #{y\ 3673}#)))
-                                     (#{build-conditional\ 296}#
-                                       #f
-                                       ((lambda (#{tmp\ 3680}#)
-                                          ((lambda (#{tmp\ 3681}#)
-                                             (if #{tmp\ 3681}#
-                                               (apply (lambda () #{y\ 3677}#)
-                                                      #{tmp\ 3681}#)
-                                               ((lambda (#{_\ 3683}#)
-                                                  (#{build-conditional\ 296}#
-                                                    #f
-                                                    #{y\ 3677}#
-                                                    (#{build-dispatch-call\ 
3598}#
-                                                      #{pvars\ 3662}#
-                                                      #{fender\ 3650}#
-                                                      #{y\ 3677}#
-                                                      #{r\ 3648}#
-                                                      #{mod\ 3652}#)
-                                                    (#{build-data\ 322}#
-                                                      #f
-                                                      #f)))
-                                                #{tmp\ 3680}#)))
-                                           ($sc-dispatch
-                                             #{tmp\ 3680}#
-                                             '#(atom #t))))
-                                        #{fender\ 3650}#)
-                                       (#{build-dispatch-call\ 3598}#
-                                         #{pvars\ 3662}#
-                                         #{exp\ 3651}#
-                                         #{y\ 3677}#
-                                         #{r\ 3648}#
-                                         #{mod\ 3652}#)
-                                       (#{gen-syntax-case\ 3602}#
-                                         #{x\ 3645}#
-                                         #{keys\ 3646}#
-                                         #{clauses\ 3647}#
-                                         #{r\ 3648}#
-                                         #{mod\ 3652}#))))
-                                 (list (if (eq? #{p\ 3661}# (quote any))
-                                         (#{build-application\ 294}#
+                                   (#{build-simple-lambda\ 329}#
+                                     #f
+                                     (list (quote tmp))
+                                     #f
+                                     (list #{y\ 3742}#)
+                                     '()
+                                     (begin
+                                       (let ((#{y\ 3746}#
+                                               (#{build-lexical-reference\ 
315}#
+                                                 'value
+                                                 #f
+                                                 'tmp
+                                                 #{y\ 3742}#)))
+                                         (#{build-conditional\ 311}#
                                            #f
-                                           (#{build-primref\ 320}#
+                                           (let ((#{tmp\ 3749}#
+                                                   #{fender\ 3719}#))
+                                             (let ((#{tmp\ 3750}#
+                                                     ($sc-dispatch
+                                                       #{tmp\ 3749}#
+                                                       '#(atom #t))))
+                                               (if #{tmp\ 3750}#
+                                                 (@apply
+                                                   (lambda () #{y\ 3746}#)
+                                                   #{tmp\ 3750}#)
+                                                 (let ((#{_\ 3752}#
+                                                         #{tmp\ 3749}#))
+                                                   (#{build-conditional\ 311}#
+                                                     #f
+                                                     #{y\ 3746}#
+                                                     (#{build-dispatch-call\ 
3667}#
+                                                       #{pvars\ 3731}#
+                                                       #{fender\ 3719}#
+                                                       #{y\ 3746}#
+                                                       #{r\ 3717}#
+                                                       #{mod\ 3721}#)
+                                                     (#{build-data\ 337}#
+                                                       #f
+                                                       #f))))))
+                                           (#{build-dispatch-call\ 3667}#
+                                             #{pvars\ 3731}#
+                                             #{exp\ 3720}#
+                                             #{y\ 3746}#
+                                             #{r\ 3717}#
+                                             #{mod\ 3721}#)
+                                           (#{gen-syntax-case\ 3671}#
+                                             #{x\ 3714}#
+                                             #{keys\ 3715}#
+                                             #{clauses\ 3716}#
+                                             #{r\ 3717}#
+                                             #{mod\ 3721}#)))))
+                                   (list (if (eq? #{p\ 3730}# (quote any))
+                                           (#{build-application\ 309}#
                                              #f
-                                             'list)
-                                           (list #{x\ 3645}#))
-                                         (#{build-application\ 294}#
-                                           #f
-                                           (#{build-primref\ 320}#
+                                             (#{build-primref\ 335}#
+                                               #f
+                                               'list)
+                                             (list #{x\ 3714}#))
+                                           (#{build-application\ 309}#
                                              #f
-                                             '$sc-dispatch)
-                                           (list #{x\ 3645}#
-                                                 (#{build-data\ 322}#
-                                                   #f
-                                                   #{p\ 3661}#)))))))))))))
-                 (#{build-dispatch-call\ 3598}#
-                   (lambda (#{pvars\ 3691}#
-                            #{exp\ 3692}#
-                            #{y\ 3693}#
-                            #{r\ 3694}#
-                            #{mod\ 3695}#)
-                     (let ((#{ids\ 3703}# (map car #{pvars\ 3691}#))
-                           (#{levels\ 3704}# (map cdr #{pvars\ 3691}#)))
-                       (let ((#{labels\ 3707}#
-                               (#{gen-labels\ 390}# #{ids\ 3703}#))
-                             (#{new-vars\ 3708}#
-                               (map #{gen-var\ 485}# #{ids\ 3703}#)))
-                         (#{build-application\ 294}#
-                           #f
-                           (#{build-primref\ 320}# #f (quote apply))
-                           (list (#{build-simple-lambda\ 314}#
-                                   #f
-                                   (map syntax->datum #{ids\ 3703}#)
-                                   #f
-                                   #{new-vars\ 3708}#
-                                   '()
-                                   (#{chi\ 457}#
-                                     #{exp\ 3692}#
-                                     (#{extend-env\ 360}#
-                                       #{labels\ 3707}#
-                                       (map (lambda (#{var\ 3712}#
-                                                     #{level\ 3713}#)
-                                              (cons 'syntax
-                                                    (cons #{var\ 3712}#
-                                                          #{level\ 3713}#)))
-                                            #{new-vars\ 3708}#
-                                            (map cdr #{pvars\ 3691}#))
-                                       #{r\ 3694}#)
-                                     (#{make-binding-wrap\ 419}#
-                                       #{ids\ 3703}#
-                                       #{labels\ 3707}#
-                                       '(()))
-                                     #{mod\ 3695}#))
-                                 #{y\ 3693}#))))))
-                 (#{convert-pattern\ 3596}#
-                   (lambda (#{pattern\ 3719}# #{keys\ 3720}#)
-                     (letrec ((#{cvt\ 3726}#
-                                (lambda (#{p\ 3727}# #{n\ 3728}# #{ids\ 3729}#)
-                                  (if (#{id?\ 372}# #{p\ 3727}#)
-                                    (if (#{bound-id-member?\ 439}#
-                                          #{p\ 3727}#
-                                          #{keys\ 3720}#)
-                                      (values
-                                        (vector (quote free-id) #{p\ 3727}#)
-                                        #{ids\ 3729}#)
-                                      (values
-                                        'any
-                                        (cons (cons #{p\ 3727}# #{n\ 3728}#)
-                                              #{ids\ 3729}#)))
-                                    ((lambda (#{tmp\ 3733}#)
-                                       ((lambda (#{tmp\ 3734}#)
-                                          (if (if #{tmp\ 3734}#
-                                                (apply (lambda (#{x\ 3737}#
-                                                                #{dots\ 3738}#)
-                                                         (#{ellipsis?\ 473}#
-                                                           #{dots\ 3738}#))
-                                                       #{tmp\ 3734}#)
-                                                #f)
-                                            (apply (lambda (#{x\ 3741}#
-                                                            #{dots\ 3742}#)
-                                                     (call-with-values
-                                                       (lambda ()
-                                                         (#{cvt\ 3726}#
-                                                           #{x\ 3741}#
-                                                           (#{fx+\ 273}#
-                                                             #{n\ 3728}#
-                                                             1)
-                                                           #{ids\ 3729}#))
-                                                       (lambda (#{p\ 3743}#
-                                                                #{ids\ 3744}#)
-                                                         (values
-                                                           (if (eq? #{p\ 3743}#
-                                                                    'any)
-                                                             'each-any
-                                                             (vector
-                                                               'each
-                                                               #{p\ 3743}#))
-                                                           #{ids\ 3744}#))))
-                                                   #{tmp\ 3734}#)
-                                            ((lambda (#{tmp\ 3747}#)
-                                               (if (if #{tmp\ 3747}#
-                                                     (apply (lambda (#{x\ 
3751}#
-                                                                     #{dots\ 
3752}#
-                                                                     #{ys\ 
3753}#)
-                                                              (#{ellipsis?\ 
473}#
-                                                                #{dots\ 
3752}#))
-                                                            #{tmp\ 3747}#)
-                                                     #f)
-                                                 (apply (lambda (#{x\ 3757}#
-                                                                 #{dots\ 3758}#
-                                                                 #{ys\ 3759}#)
-                                                          (call-with-values
-                                                            (lambda ()
-                                                              (#{cvt*\ 3724}#
-                                                                #{ys\ 3759}#
-                                                                #{n\ 3728}#
-                                                                #{ids\ 3729}#))
-                                                            (lambda (#{ys\ 
3761}#
-                                                                     #{ids\ 
3762}#)
-                                                              (call-with-values
-                                                                (lambda ()
-                                                                  (#{cvt\ 
3726}#
-                                                                    #{x\ 3757}#
-                                                                    (+ #{n\ 
3728}#
-                                                                       1)
-                                                                    #{ids\ 
3762}#))
-                                                                (lambda (#{x\ 
3765}#
-                                                                         
#{ids\ 3766}#)
-                                                                  (values
-                                                                    
(list->vector
-                                                                      (cons 
'each+
-                                                                            
(cons #{x\ 3765}#
-                                                                               
   (cons (reverse
-                                                                               
           #{ys\ 3761}#)
-                                                                               
         '(())))))
-                                                                    #{ids\ 
3766}#))))))
-                                                        #{tmp\ 3747}#)
-                                                 ((lambda (#{tmp\ 3770}#)
-                                                    (if #{tmp\ 3770}#
-                                                      (apply (lambda (#{x\ 
3773}#
-                                                                      #{y\ 
3774}#)
-                                                               
(call-with-values
-                                                                 (lambda ()
-                                                                   (#{cvt\ 
3726}#
-                                                                     #{y\ 
3774}#
-                                                                     #{n\ 
3728}#
-                                                                     #{ids\ 
3729}#))
-                                                                 (lambda (#{y\ 
3775}#
-                                                                          
#{ids\ 3776}#)
-                                                                   
(call-with-values
-                                                                     (lambda ()
-                                                                       (#{cvt\ 
3726}#
-                                                                         #{x\ 
3773}#
-                                                                         #{n\ 
3728}#
-                                                                         
#{ids\ 3776}#))
-                                                                     (lambda 
(#{x\ 3779}#
-                                                                              
#{ids\ 3780}#)
-                                                                       (values
-                                                                         (cons 
#{x\ 3779}#
-                                                                               
#{y\ 3775}#)
-                                                                         
#{ids\ 3780}#))))))
-                                                             #{tmp\ 3770}#)
-                                                      ((lambda (#{tmp\ 3783}#)
-                                                         (if #{tmp\ 3783}#
-                                                           (apply (lambda ()
-                                                                    (values
-                                                                      '()
-                                                                      #{ids\ 
3729}#))
-                                                                  #{tmp\ 
3783}#)
-                                                           ((lambda (#{tmp\ 
3784}#)
-                                                              (if #{tmp\ 3784}#
-                                                                (apply (lambda 
(#{x\ 3786}#)
-                                                                         
(call-with-values
-                                                                           
(lambda ()
-                                                                             
(#{cvt\ 3726}#
-                                                                               
#{x\ 3786}#
-                                                                               
#{n\ 3728}#
-                                                                               
#{ids\ 3729}#))
-                                                                           
(lambda (#{p\ 3788}#
-                                                                               
     #{ids\ 3789}#)
-                                                                             
(values
-                                                                               
(vector
-                                                                               
  'vector
-                                                                               
  #{p\ 3788}#)
-                                                                               
#{ids\ 3789}#))))
-                                                                       #{tmp\ 
3784}#)
-                                                                ((lambda (#{x\ 
3793}#)
-                                                                   (values
-                                                                     (vector
-                                                                       'atom
-                                                                       
(#{strip\ 483}#
-                                                                         #{p\ 
3727}#
-                                                                         
'(())))
-                                                                     #{ids\ 
3729}#))
-                                                                 #{tmp\ 
3733}#)))
-                                                            ($sc-dispatch
-                                                              #{tmp\ 3733}#
-                                                              '#(vector
-                                                                 each-any)))))
-                                                       ($sc-dispatch
-                                                         #{tmp\ 3733}#
-                                                         '()))))
-                                                  ($sc-dispatch
-                                                    #{tmp\ 3733}#
-                                                    '(any . any)))))
-                                             ($sc-dispatch
-                                               #{tmp\ 3733}#
-                                               '(any any . each-any)))))
+                                             (#{build-primref\ 335}#
+                                               #f
+                                               '$sc-dispatch)
+                                             (list #{x\ 3714}#
+                                                   (#{build-data\ 337}#
+                                                     #f
+                                                     #{p\ 3730}#))))))))))))))
+                 (#{build-dispatch-call\ 3667}#
+                   (lambda (#{pvars\ 3760}#
+                            #{exp\ 3761}#
+                            #{y\ 3762}#
+                            #{r\ 3763}#
+                            #{mod\ 3764}#)
+                     (begin
+                       (map cdr #{pvars\ 3760}#)
+                       (let ((#{ids\ 3772}# (map car #{pvars\ 3760}#)))
+                         (begin
+                           (let ((#{labels\ 3776}#
+                                   (#{gen-labels\ 405}# #{ids\ 3772}#))
+                                 (#{new-vars\ 3777}#
+                                   (map #{gen-var\ 500}# #{ids\ 3772}#)))
+                             (#{build-application\ 309}#
+                               #f
+                               (#{build-primref\ 335}# #f (quote apply))
+                               (list (#{build-simple-lambda\ 329}#
+                                       #f
+                                       (map syntax->datum #{ids\ 3772}#)
+                                       #f
+                                       #{new-vars\ 3777}#
+                                       '()
+                                       (#{chi\ 472}#
+                                         #{exp\ 3761}#
+                                         (#{extend-env\ 375}#
+                                           #{labels\ 3776}#
+                                           (map (lambda (#{var\ 3781}#
+                                                         #{level\ 3782}#)
+                                                  (cons 'syntax
+                                                        (cons #{var\ 3781}#
+                                                              #{level\ 
3782}#)))
+                                                #{new-vars\ 3777}#
+                                                (map cdr #{pvars\ 3760}#))
+                                           #{r\ 3763}#)
+                                         (#{make-binding-wrap\ 434}#
+                                           #{ids\ 3772}#
+                                           #{labels\ 3776}#
+                                           '(()))
+                                         #{mod\ 3764}#))
+                                     #{y\ 3762}#))))))))
+                 (#{convert-pattern\ 3665}#
+                   (lambda (#{pattern\ 3788}# #{keys\ 3789}#)
+                     (letrec*
+                       ((#{cvt\ 3795}#
+                          (lambda (#{p\ 3796}# #{n\ 3797}# #{ids\ 3798}#)
+                            (if (#{id?\ 387}# #{p\ 3796}#)
+                              (if (#{bound-id-member?\ 454}#
+                                    #{p\ 3796}#
+                                    #{keys\ 3789}#)
+                                (values
+                                  (vector (quote free-id) #{p\ 3796}#)
+                                  #{ids\ 3798}#)
+                                (values
+                                  'any
+                                  (cons (cons #{p\ 3796}# #{n\ 3797}#)
+                                        #{ids\ 3798}#)))
+                              (let ((#{tmp\ 3802}# #{p\ 3796}#))
+                                (let ((#{tmp\ 3803}#
                                         ($sc-dispatch
-                                          #{tmp\ 3733}#
+                                          #{tmp\ 3802}#
                                           '(any any))))
-                                     #{p\ 3727}#))))
-                              (#{cvt*\ 3724}#
-                                (lambda (#{p*\ 3795}#
-                                         #{n\ 3796}#
-                                         #{ids\ 3797}#)
-                                  (if (null? #{p*\ 3795}#)
-                                    (values (quote ()) #{ids\ 3797}#)
-                                    (call-with-values
-                                      (lambda ()
-                                        (#{cvt*\ 3724}#
-                                          (cdr #{p*\ 3795}#)
-                                          #{n\ 3796}#
-                                          #{ids\ 3797}#))
-                                      (lambda (#{y\ 3801}# #{ids\ 3802}#)
+                                  (if (if #{tmp\ 3803}#
+                                        (@apply
+                                          (lambda (#{x\ 3806}# #{dots\ 3807}#)
+                                            (#{ellipsis?\ 488}#
+                                              #{dots\ 3807}#))
+                                          #{tmp\ 3803}#)
+                                        #f)
+                                    (@apply
+                                      (lambda (#{x\ 3810}# #{dots\ 3811}#)
                                         (call-with-values
                                           (lambda ()
-                                            (#{cvt\ 3726}#
-                                              (car #{p*\ 3795}#)
-                                              #{n\ 3796}#
-                                              #{ids\ 3802}#))
-                                          (lambda (#{x\ 3805}# #{ids\ 3806}#)
+                                            (#{cvt\ 3795}#
+                                              #{x\ 3810}#
+                                              (#{fx+\ 288}# #{n\ 3797}# 1)
+                                              #{ids\ 3798}#))
+                                          (lambda (#{p\ 3812}# #{ids\ 3813}#)
                                             (values
-                                              (cons #{x\ 3805}# #{y\ 3801}#)
-                                              #{ids\ 3806}#)))))))))
-                       (#{cvt\ 3726}# #{pattern\ 3719}# 0 (quote ()))))))
-          (lambda (#{e\ 3809}#
-                   #{r\ 3810}#
-                   #{w\ 3811}#
-                   #{s\ 3812}#
-                   #{mod\ 3813}#)
-            (let ((#{e\ 3820}#
-                    (#{source-wrap\ 443}#
-                      #{e\ 3809}#
-                      #{w\ 3811}#
-                      #{s\ 3812}#
-                      #{mod\ 3813}#)))
-              ((lambda (#{tmp\ 3821}#)
-                 ((lambda (#{tmp\ 3822}#)
-                    (if #{tmp\ 3822}#
-                      (apply (lambda (#{_\ 3827}#
-                                      #{val\ 3828}#
-                                      #{key\ 3829}#
-                                      #{m\ 3830}#)
-                               (if (and-map
-                                     (lambda (#{x\ 3831}#)
-                                       (if (#{id?\ 372}# #{x\ 3831}#)
-                                         (not (#{ellipsis?\ 473}# #{x\ 3831}#))
-                                         #f))
-                                     #{key\ 3829}#)
-                                 (let ((#{x\ 3837}#
-                                         (#{gen-var\ 485}# (quote tmp))))
-                                   (#{build-application\ 294}#
-                                     #{s\ 3812}#
-                                     (#{build-simple-lambda\ 314}#
-                                       #f
-                                       (list (quote tmp))
-                                       #f
-                                       (list #{x\ 3837}#)
-                                       '()
-                                       (#{gen-syntax-case\ 3602}#
-                                         (#{build-lexical-reference\ 300}#
-                                           'value
-                                           #f
-                                           'tmp
-                                           #{x\ 3837}#)
-                                         #{key\ 3829}#
-                                         #{m\ 3830}#
-                                         #{r\ 3810}#
-                                         #{mod\ 3813}#))
-                                     (list (#{chi\ 457}#
-                                             #{val\ 3828}#
-                                             #{r\ 3810}#
-                                             '(())
-                                             #{mod\ 3813}#))))
-                                 (syntax-violation
-                                   'syntax-case
-                                   "invalid literals list"
-                                   #{e\ 3820}#)))
-                             #{tmp\ 3822}#)
-                      (syntax-violation
-                        #f
-                        "source expression failed to match any pattern"
-                        #{tmp\ 3821}#)))
-                  ($sc-dispatch
-                    #{tmp\ 3821}#
-                    '(any any each-any . each-any))))
-               #{e\ 3820}#)))))
-      (set! macroexpand
-        (lambda*
-          (#{x\ 3843}#
-            #:optional
-            (#{m\ 3845}# (quote e))
-            (#{esew\ 3847}# (quote (eval))))
-          (#{chi-top\ 455}#
-            #{x\ 3843}#
-            '()
-            '((top))
-            #{m\ 3845}#
-            #{esew\ 3847}#
-            (cons 'hygiene
-                  (module-name (current-module))))))
-      (set! identifier?
-        (lambda (#{x\ 3851}#)
-          (#{nonsymbol-id?\ 370}# #{x\ 3851}#)))
-      (set! datum->syntax
-        (lambda (#{id\ 3853}# #{datum\ 3854}#)
-          (#{make-syntax-object\ 334}#
-            #{datum\ 3854}#
-            (#{syntax-object-wrap\ 340}# #{id\ 3853}#)
-            (#{syntax-object-module\ 342}# #{id\ 3853}#))))
-      (set! syntax->datum
-        (lambda (#{x\ 3857}#)
-          (#{strip\ 483}# #{x\ 3857}# (quote (())))))
-      (set! syntax-source
-        (lambda (#{x\ 3860}#)
-          (#{source-annotation\ 351}# #{x\ 3860}#)))
-      (set! generate-temporaries
-        (lambda (#{ls\ 3862}#)
-          (begin
-            (let ((#{x\ 3866}# #{ls\ 3862}#))
-              (if (not (list? #{x\ 3866}#))
-                (syntax-violation
-                  'generate-temporaries
-                  "invalid argument"
-                  #{x\ 3866}#)))
-            (map (lambda (#{x\ 3867}#)
-                   (#{wrap\ 441}# (gensym) (quote ((top))) #f))
-                 #{ls\ 3862}#))))
-      (set! free-identifier=?
-        (lambda (#{x\ 3871}# #{y\ 3872}#)
-          (begin
-            (let ((#{x\ 3877}# #{x\ 3871}#))
-              (if (not (#{nonsymbol-id?\ 370}# #{x\ 3877}#))
-                (syntax-violation
-                  'free-identifier=?
-                  "invalid argument"
-                  #{x\ 3877}#)))
-            (let ((#{x\ 3880}# #{y\ 3872}#))
-              (if (not (#{nonsymbol-id?\ 370}# #{x\ 3880}#))
-                (syntax-violation
-                  'free-identifier=?
-                  "invalid argument"
-                  #{x\ 3880}#)))
-            (#{free-id=?\ 431}# #{x\ 3871}# #{y\ 3872}#))))
-      (set! bound-identifier=?
-        (lambda (#{x\ 3881}# #{y\ 3882}#)
-          (begin
-            (let ((#{x\ 3887}# #{x\ 3881}#))
-              (if (not (#{nonsymbol-id?\ 370}# #{x\ 3887}#))
-                (syntax-violation
-                  'bound-identifier=?
-                  "invalid argument"
-                  #{x\ 3887}#)))
-            (let ((#{x\ 3890}# #{y\ 3882}#))
-              (if (not (#{nonsymbol-id?\ 370}# #{x\ 3890}#))
-                (syntax-violation
-                  'bound-identifier=?
-                  "invalid argument"
-                  #{x\ 3890}#)))
-            (#{bound-id=?\ 433}# #{x\ 3881}# #{y\ 3882}#))))
-      (set! syntax-violation
-        (lambda (#{who\ 3891}#
-                 #{message\ 3892}#
-                 #{form\ 3893}#
-                 .
-                 #{subform\ 3894}#)
-          (begin
-            (let ((#{x\ 3901}# #{who\ 3891}#))
-              (if (not ((lambda (#{x\ 3902}#)
-                          (let ((#{t\ 3906}# (not #{x\ 3902}#)))
-                            (if #{t\ 3906}#
-                              #{t\ 3906}#
-                              (let ((#{t\ 3909}# (string? #{x\ 3902}#)))
-                                (if #{t\ 3909}#
-                                  #{t\ 3909}#
-                                  (symbol? #{x\ 3902}#))))))
-                        #{x\ 3901}#))
-                (syntax-violation
-                  'syntax-violation
-                  "invalid argument"
-                  #{x\ 3901}#)))
-            (let ((#{x\ 3913}# #{message\ 3892}#))
-              (if (not (string? #{x\ 3913}#))
-                (syntax-violation
-                  'syntax-violation
-                  "invalid argument"
-                  #{x\ 3913}#)))
-            (scm-error
-              'syntax-error
-              'macroexpand
-              (string-append
-                (if #{who\ 3891}# "~a: " "")
-                "~a "
-                (if (null? #{subform\ 3894}#)
-                  "in ~a"
-                  "in subform `~s' of `~s'"))
-              (let ((#{tail\ 3915}#
-                      (cons #{message\ 3892}#
-                            (map (lambda (#{x\ 3916}#)
-                                   (#{strip\ 483}# #{x\ 3916}# (quote (()))))
-                                 (append
-                                   #{subform\ 3894}#
-                                   (list #{form\ 3893}#))))))
-                (if #{who\ 3891}#
-                  (cons #{who\ 3891}# #{tail\ 3915}#)
-                  #{tail\ 3915}#))
-              #f))))
-      (letrec ((#{match\ 3932}#
-                 (lambda (#{e\ 3933}#
-                          #{p\ 3934}#
-                          #{w\ 3935}#
-                          #{r\ 3936}#
-                          #{mod\ 3937}#)
-                   (if (not #{r\ 3936}#)
+                                              (if (eq? #{p\ 3812}# (quote any))
+                                                'each-any
+                                                (vector
+                                                  'each
+                                                  #{p\ 3812}#))
+                                              #{ids\ 3813}#))))
+                                      #{tmp\ 3803}#)
+                                    (let ((#{tmp\ 3816}#
+                                            ($sc-dispatch
+                                              #{tmp\ 3802}#
+                                              '(any any . each-any))))
+                                      (if (if #{tmp\ 3816}#
+                                            (@apply
+                                              (lambda (#{x\ 3820}#
+                                                       #{dots\ 3821}#
+                                                       #{ys\ 3822}#)
+                                                (#{ellipsis?\ 488}#
+                                                  #{dots\ 3821}#))
+                                              #{tmp\ 3816}#)
+                                            #f)
+                                        (@apply
+                                          (lambda (#{x\ 3826}#
+                                                   #{dots\ 3827}#
+                                                   #{ys\ 3828}#)
+                                            (call-with-values
+                                              (lambda ()
+                                                (#{cvt*\ 3793}#
+                                                  #{ys\ 3828}#
+                                                  #{n\ 3797}#
+                                                  #{ids\ 3798}#))
+                                              (lambda (#{ys\ 3830}#
+                                                       #{ids\ 3831}#)
+                                                (call-with-values
+                                                  (lambda ()
+                                                    (#{cvt\ 3795}#
+                                                      #{x\ 3826}#
+                                                      (1+ #{n\ 3797}#)
+                                                      #{ids\ 3831}#))
+                                                  (lambda (#{x\ 3834}#
+                                                           #{ids\ 3835}#)
+                                                    (values
+                                                      (list->vector
+                                                        (cons 'each+
+                                                              (cons #{x\ 3834}#
+                                                                    (cons 
(reverse
+                                                                            
#{ys\ 3830}#)
+                                                                          
'(())))))
+                                                      #{ids\ 3835}#))))))
+                                          #{tmp\ 3816}#)
+                                        (let ((#{tmp\ 3839}#
+                                                ($sc-dispatch
+                                                  #{tmp\ 3802}#
+                                                  '(any . any))))
+                                          (if #{tmp\ 3839}#
+                                            (@apply
+                                              (lambda (#{x\ 3842}# #{y\ 3843}#)
+                                                (call-with-values
+                                                  (lambda ()
+                                                    (#{cvt\ 3795}#
+                                                      #{y\ 3843}#
+                                                      #{n\ 3797}#
+                                                      #{ids\ 3798}#))
+                                                  (lambda (#{y\ 3844}#
+                                                           #{ids\ 3845}#)
+                                                    (call-with-values
+                                                      (lambda ()
+                                                        (#{cvt\ 3795}#
+                                                          #{x\ 3842}#
+                                                          #{n\ 3797}#
+                                                          #{ids\ 3845}#))
+                                                      (lambda (#{x\ 3848}#
+                                                               #{ids\ 3849}#)
+                                                        (values
+                                                          (cons #{x\ 3848}#
+                                                                #{y\ 3844}#)
+                                                          #{ids\ 3849}#))))))
+                                              #{tmp\ 3839}#)
+                                            (let ((#{tmp\ 3852}#
+                                                    ($sc-dispatch
+                                                      #{tmp\ 3802}#
+                                                      '())))
+                                              (if #{tmp\ 3852}#
+                                                (@apply
+                                                  (lambda ()
+                                                    (values
+                                                      '()
+                                                      #{ids\ 3798}#))
+                                                  #{tmp\ 3852}#)
+                                                (let ((#{tmp\ 3853}#
+                                                        ($sc-dispatch
+                                                          #{tmp\ 3802}#
+                                                          '#(vector
+                                                             each-any))))
+                                                  (if #{tmp\ 3853}#
+                                                    (@apply
+                                                      (lambda (#{x\ 3855}#)
+                                                        (call-with-values
+                                                          (lambda ()
+                                                            (#{cvt\ 3795}#
+                                                              #{x\ 3855}#
+                                                              #{n\ 3797}#
+                                                              #{ids\ 3798}#))
+                                                          (lambda (#{p\ 3857}#
+                                                                   #{ids\ 
3858}#)
+                                                            (values
+                                                              (vector
+                                                                'vector
+                                                                #{p\ 3857}#)
+                                                              #{ids\ 3858}#))))
+                                                      #{tmp\ 3853}#)
+                                                    (let ((#{x\ 3862}#
+                                                            #{tmp\ 3802}#))
+                                                      (values
+                                                        (vector
+                                                          'atom
+                                                          (#{strip\ 498}#
+                                                            #{p\ 3796}#
+                                                            '(())))
+                                                        #{ids\ 
3798}#))))))))))))))))
+                        (#{cvt*\ 3793}#
+                          (lambda (#{p*\ 3864}# #{n\ 3865}# #{ids\ 3866}#)
+                            (if (null? #{p*\ 3864}#)
+                              (values (quote ()) #{ids\ 3866}#)
+                              (call-with-values
+                                (lambda ()
+                                  (#{cvt*\ 3793}#
+                                    (cdr #{p*\ 3864}#)
+                                    #{n\ 3865}#
+                                    #{ids\ 3866}#))
+                                (lambda (#{y\ 3870}# #{ids\ 3871}#)
+                                  (call-with-values
+                                    (lambda ()
+                                      (#{cvt\ 3795}#
+                                        (car #{p*\ 3864}#)
+                                        #{n\ 3865}#
+                                        #{ids\ 3871}#))
+                                    (lambda (#{x\ 3874}# #{ids\ 3875}#)
+                                      (values
+                                        (cons #{x\ 3874}# #{y\ 3870}#)
+                                        #{ids\ 3875}#)))))))))
+                       (begin
+                         (#{cvt\ 3795}# #{pattern\ 3788}# 0 (quote ())))))))
+                (begin
+                  (lambda (#{e\ 3878}#
+                           #{r\ 3879}#
+                           #{w\ 3880}#
+                           #{s\ 3881}#
+                           #{mod\ 3882}#)
+                    (begin
+                      (let ((#{e\ 3889}#
+                              (#{source-wrap\ 458}#
+                                #{e\ 3878}#
+                                #{w\ 3880}#
+                                #{s\ 3881}#
+                                #{mod\ 3882}#)))
+                        (let ((#{tmp\ 3890}# #{e\ 3889}#))
+                          (let ((#{tmp\ 3891}#
+                                  ($sc-dispatch
+                                    #{tmp\ 3890}#
+                                    '(any any each-any . each-any))))
+                            (if #{tmp\ 3891}#
+                              (@apply
+                                (lambda (#{_\ 3896}#
+                                         #{val\ 3897}#
+                                         #{key\ 3898}#
+                                         #{m\ 3899}#)
+                                  (if (and-map
+                                        (lambda (#{x\ 3900}#)
+                                          (if (#{id?\ 387}# #{x\ 3900}#)
+                                            (not (#{ellipsis?\ 488}#
+                                                   #{x\ 3900}#))
+                                            #f))
+                                        #{key\ 3898}#)
+                                    (begin
+                                      (let ((#{x\ 3906}#
+                                              (#{gen-var\ 500}# (quote tmp))))
+                                        (#{build-application\ 309}#
+                                          #{s\ 3881}#
+                                          (#{build-simple-lambda\ 329}#
+                                            #f
+                                            (list (quote tmp))
+                                            #f
+                                            (list #{x\ 3906}#)
+                                            '()
+                                            (#{gen-syntax-case\ 3671}#
+                                              (#{build-lexical-reference\ 315}#
+                                                'value
+                                                #f
+                                                'tmp
+                                                #{x\ 3906}#)
+                                              #{key\ 3898}#
+                                              #{m\ 3899}#
+                                              #{r\ 3879}#
+                                              #{mod\ 3882}#))
+                                          (list (#{chi\ 472}#
+                                                  #{val\ 3897}#
+                                                  #{r\ 3879}#
+                                                  '(())
+                                                  #{mod\ 3882}#)))))
+                                    (syntax-violation
+                                      'syntax-case
+                                      "invalid literals list"
+                                      #{e\ 3889}#)))
+                                #{tmp\ 3891}#)
+                              (syntax-violation
+                                #f
+                                "source expression failed to match any pattern"
+                                #{tmp\ 3890}#))))))))))
+            (set! macroexpand
+              (lambda*
+                (#{x\ 3912}#
+                  #:optional
+                  (#{m\ 3914}# (quote e))
+                  (#{esew\ 3916}# (quote (eval))))
+                (#{chi-top\ 470}#
+                  #{x\ 3912}#
+                  '()
+                  '((top))
+                  #{m\ 3914}#
+                  #{esew\ 3916}#
+                  (cons 'hygiene
+                        (module-name (current-module))))))
+            (set! identifier?
+              (lambda (#{x\ 3920}#)
+                (#{nonsymbol-id?\ 385}# #{x\ 3920}#)))
+            (set! datum->syntax
+              (lambda (#{id\ 3922}# #{datum\ 3923}#)
+                (#{make-syntax-object\ 349}#
+                  #{datum\ 3923}#
+                  (#{syntax-object-wrap\ 355}# #{id\ 3922}#)
+                  (#{syntax-object-module\ 357}# #{id\ 3922}#))))
+            (set! syntax->datum
+              (lambda (#{x\ 3926}#)
+                (#{strip\ 498}# #{x\ 3926}# (quote (())))))
+            (set! syntax-source
+              (lambda (#{x\ 3929}#)
+                (#{source-annotation\ 366}# #{x\ 3929}#)))
+            (set! generate-temporaries
+              (lambda (#{ls\ 3931}#)
+                (begin
+                  (begin
+                    (let ((#{x\ 3935}# #{ls\ 3931}#))
+                      (if (not (list? #{x\ 3935}#))
+                        (syntax-violation
+                          'generate-temporaries
+                          "invalid argument"
+                          #{x\ 3935}#))))
+                  (map (lambda (#{x\ 3936}#)
+                         (#{wrap\ 456}# (gensym) (quote ((top))) #f))
+                       #{ls\ 3931}#))))
+            (set! free-identifier=?
+              (lambda (#{x\ 3940}# #{y\ 3941}#)
+                (begin
+                  (begin
+                    (let ((#{x\ 3946}# #{x\ 3940}#))
+                      (if (not (#{nonsymbol-id?\ 385}# #{x\ 3946}#))
+                        (syntax-violation
+                          'free-identifier=?
+                          "invalid argument"
+                          #{x\ 3946}#))))
+                  (begin
+                    (let ((#{x\ 3949}# #{y\ 3941}#))
+                      (if (not (#{nonsymbol-id?\ 385}# #{x\ 3949}#))
+                        (syntax-violation
+                          'free-identifier=?
+                          "invalid argument"
+                          #{x\ 3949}#))))
+                  (#{free-id=?\ 446}# #{x\ 3940}# #{y\ 3941}#))))
+            (set! bound-identifier=?
+              (lambda (#{x\ 3950}# #{y\ 3951}#)
+                (begin
+                  (begin
+                    (let ((#{x\ 3956}# #{x\ 3950}#))
+                      (if (not (#{nonsymbol-id?\ 385}# #{x\ 3956}#))
+                        (syntax-violation
+                          'bound-identifier=?
+                          "invalid argument"
+                          #{x\ 3956}#))))
+                  (begin
+                    (let ((#{x\ 3959}# #{y\ 3951}#))
+                      (if (not (#{nonsymbol-id?\ 385}# #{x\ 3959}#))
+                        (syntax-violation
+                          'bound-identifier=?
+                          "invalid argument"
+                          #{x\ 3959}#))))
+                  (#{bound-id=?\ 448}# #{x\ 3950}# #{y\ 3951}#))))
+            (set! syntax-violation
+              (lambda (#{who\ 3960}#
+                       #{message\ 3961}#
+                       #{form\ 3962}#
+                       .
+                       #{subform\ 3963}#)
+                (begin
+                  (begin
+                    (let ((#{x\ 3970}# #{who\ 3960}#))
+                      (if (not (let ((#{x\ 3971}# #{x\ 3970}#))
+                                 (begin
+                                   (let ((#{t\ 3975}# (not #{x\ 3971}#)))
+                                     (if #{t\ 3975}#
+                                       #{t\ 3975}#
+                                       (begin
+                                         (let ((#{t\ 3978}#
+                                                 (string? #{x\ 3971}#)))
+                                           (if #{t\ 3978}#
+                                             #{t\ 3978}#
+                                             (symbol? #{x\ 3971}#)))))))))
+                        (syntax-violation
+                          'syntax-violation
+                          "invalid argument"
+                          #{x\ 3970}#))))
+                  (begin
+                    (let ((#{x\ 3982}# #{message\ 3961}#))
+                      (if (not (string? #{x\ 3982}#))
+                        (syntax-violation
+                          'syntax-violation
+                          "invalid argument"
+                          #{x\ 3982}#))))
+                  (scm-error
+                    'syntax-error
+                    'macroexpand
+                    (string-append
+                      (if #{who\ 3960}# "~a: " "")
+                      "~a "
+                      (if (null? #{subform\ 3963}#)
+                        "in ~a"
+                        "in subform `~s' of `~s'"))
+                    (begin
+                      (let ((#{tail\ 3984}#
+                              (cons #{message\ 3961}#
+                                    (map (lambda (#{x\ 3985}#)
+                                           (#{strip\ 498}#
+                                             #{x\ 3985}#
+                                             '(())))
+                                         (append
+                                           #{subform\ 3963}#
+                                           (list #{form\ 3962}#))))))
+                        (if #{who\ 3960}#
+                          (cons #{who\ 3960}# #{tail\ 3984}#)
+                          #{tail\ 3984}#)))
+                    #f))))
+            (letrec*
+              ((#{match\ 4001}#
+                 (lambda (#{e\ 4002}#
+                          #{p\ 4003}#
+                          #{w\ 4004}#
+                          #{r\ 4005}#
+                          #{mod\ 4006}#)
+                   (if (not #{r\ 4005}#)
                      #f
-                     (if (eq? #{p\ 3934}# (quote any))
-                       (cons (#{wrap\ 441}#
-                               #{e\ 3933}#
-                               #{w\ 3935}#
-                               #{mod\ 3937}#)
-                             #{r\ 3936}#)
-                       (if (#{syntax-object?\ 336}# #{e\ 3933}#)
-                         (#{match*\ 3930}#
-                           (#{syntax-object-expression\ 338}# #{e\ 3933}#)
-                           #{p\ 3934}#
-                           (#{join-wraps\ 423}#
-                             #{w\ 3935}#
-                             (#{syntax-object-wrap\ 340}# #{e\ 3933}#))
-                           #{r\ 3936}#
-                           (#{syntax-object-module\ 342}# #{e\ 3933}#))
-                         (#{match*\ 3930}#
-                           #{e\ 3933}#
-                           #{p\ 3934}#
-                           #{w\ 3935}#
-                           #{r\ 3936}#
-                           #{mod\ 3937}#))))))
-               (#{match*\ 3930}#
-                 (lambda (#{e\ 3950}#
-                          #{p\ 3951}#
-                          #{w\ 3952}#
-                          #{r\ 3953}#
-                          #{mod\ 3954}#)
-                   (if (null? #{p\ 3951}#)
-                     (if (null? #{e\ 3950}#) #{r\ 3953}# #f)
-                     (if (pair? #{p\ 3951}#)
-                       (if (pair? #{e\ 3950}#)
-                         (#{match\ 3932}#
-                           (car #{e\ 3950}#)
-                           (car #{p\ 3951}#)
-                           #{w\ 3952}#
-                           (#{match\ 3932}#
-                             (cdr #{e\ 3950}#)
-                             (cdr #{p\ 3951}#)
-                             #{w\ 3952}#
-                             #{r\ 3953}#
-                             #{mod\ 3954}#)
-                           #{mod\ 3954}#)
+                     (if (eq? #{p\ 4003}# (quote any))
+                       (cons (#{wrap\ 456}#
+                               #{e\ 4002}#
+                               #{w\ 4004}#
+                               #{mod\ 4006}#)
+                             #{r\ 4005}#)
+                       (if (#{syntax-object?\ 351}# #{e\ 4002}#)
+                         (#{match*\ 3999}#
+                           (#{syntax-object-expression\ 353}# #{e\ 4002}#)
+                           #{p\ 4003}#
+                           (#{join-wraps\ 438}#
+                             #{w\ 4004}#
+                             (#{syntax-object-wrap\ 355}# #{e\ 4002}#))
+                           #{r\ 4005}#
+                           (#{syntax-object-module\ 357}# #{e\ 4002}#))
+                         (#{match*\ 3999}#
+                           #{e\ 4002}#
+                           #{p\ 4003}#
+                           #{w\ 4004}#
+                           #{r\ 4005}#
+                           #{mod\ 4006}#))))))
+               (#{match*\ 3999}#
+                 (lambda (#{e\ 4019}#
+                          #{p\ 4020}#
+                          #{w\ 4021}#
+                          #{r\ 4022}#
+                          #{mod\ 4023}#)
+                   (if (null? #{p\ 4020}#)
+                     (if (null? #{e\ 4019}#) #{r\ 4022}# #f)
+                     (if (pair? #{p\ 4020}#)
+                       (if (pair? #{e\ 4019}#)
+                         (#{match\ 4001}#
+                           (car #{e\ 4019}#)
+                           (car #{p\ 4020}#)
+                           #{w\ 4021}#
+                           (#{match\ 4001}#
+                             (cdr #{e\ 4019}#)
+                             (cdr #{p\ 4020}#)
+                             #{w\ 4021}#
+                             #{r\ 4022}#
+                             #{mod\ 4023}#)
+                           #{mod\ 4023}#)
                          #f)
-                       (if (eq? #{p\ 3951}# (quote each-any))
-                         (let ((#{l\ 3971}#
-                                 (#{match-each-any\ 3924}#
-                                   #{e\ 3950}#
-                                   #{w\ 3952}#
-                                   #{mod\ 3954}#)))
-                           (if #{l\ 3971}#
-                             (cons #{l\ 3971}# #{r\ 3953}#)
-                             #f))
-                         (let ((#{atom-key\ 3977}# (vector-ref #{p\ 3951}# 0)))
-                           (if (memv #{atom-key\ 3977}# (quote (each)))
-                             (if (null? #{e\ 3950}#)
-                               (#{match-empty\ 3926}#
-                                 (vector-ref #{p\ 3951}# 1)
-                                 #{r\ 3953}#)
-                               (let ((#{l\ 3980}#
-                                       (#{match-each\ 3920}#
-                                         #{e\ 3950}#
-                                         (vector-ref #{p\ 3951}# 1)
-                                         #{w\ 3952}#
-                                         #{mod\ 3954}#)))
-                                 (if #{l\ 3980}#
-                                   (letrec ((#{collect\ 3985}#
-                                              (lambda (#{l\ 3986}#)
-                                                (if (null? (car #{l\ 3986}#))
-                                                  #{r\ 3953}#
-                                                  (cons (map car #{l\ 3986}#)
-                                                        (#{collect\ 3985}#
-                                                          (map cdr
-                                                               #{l\ 
3986}#)))))))
-                                     (#{collect\ 3985}# #{l\ 3980}#))
-                                   #f)))
-                             (if (memv #{atom-key\ 3977}# (quote (each+)))
-                               (call-with-values
-                                 (lambda ()
-                                   (#{match-each+\ 3922}#
-                                     #{e\ 3950}#
-                                     (vector-ref #{p\ 3951}# 1)
-                                     (vector-ref #{p\ 3951}# 2)
-                                     (vector-ref #{p\ 3951}# 3)
-                                     #{w\ 3952}#
-                                     #{r\ 3953}#
-                                     #{mod\ 3954}#))
-                                 (lambda (#{xr*\ 3988}#
-                                          #{y-pat\ 3989}#
-                                          #{r\ 3990}#)
-                                   (if #{r\ 3990}#
-                                     (if (null? #{y-pat\ 3989}#)
-                                       (if (null? #{xr*\ 3988}#)
-                                         (#{match-empty\ 3926}#
-                                           (vector-ref #{p\ 3951}# 1)
-                                           #{r\ 3990}#)
-                                         (#{combine\ 3928}#
-                                           #{xr*\ 3988}#
-                                           #{r\ 3990}#))
+                       (if (eq? #{p\ 4020}# (quote each-any))
+                         (begin
+                           (let ((#{l\ 4040}#
+                                   (#{match-each-any\ 3993}#
+                                     #{e\ 4019}#
+                                     #{w\ 4021}#
+                                     #{mod\ 4023}#)))
+                             (if #{l\ 4040}#
+                               (cons #{l\ 4040}# #{r\ 4022}#)
+                               #f)))
+                         (begin
+                           (let ((#{atom-key\ 4046}#
+                                   (vector-ref #{p\ 4020}# 0)))
+                             (if (eqv? #{atom-key\ 4046}# (quote each))
+                               (if (null? #{e\ 4019}#)
+                                 (#{match-empty\ 3995}#
+                                   (vector-ref #{p\ 4020}# 1)
+                                   #{r\ 4022}#)
+                                 (begin
+                                   (let ((#{l\ 4049}#
+                                           (#{match-each\ 3989}#
+                                             #{e\ 4019}#
+                                             (vector-ref #{p\ 4020}# 1)
+                                             #{w\ 4021}#
+                                             #{mod\ 4023}#)))
+                                     (if #{l\ 4049}#
+                                       (letrec*
+                                         ((#{collect\ 4054}#
+                                            (lambda (#{l\ 4055}#)
+                                              (if (null? (car #{l\ 4055}#))
+                                                #{r\ 4022}#
+                                                (cons (map car #{l\ 4055}#)
+                                                      (#{collect\ 4054}#
+                                                        (map cdr
+                                                             #{l\ 4055}#)))))))
+                                         (begin
+                                           (#{collect\ 4054}# #{l\ 4049}#)))
+                                       #f))))
+                               (if (eqv? #{atom-key\ 4046}# (quote each+))
+                                 (call-with-values
+                                   (lambda ()
+                                     (#{match-each+\ 3991}#
+                                       #{e\ 4019}#
+                                       (vector-ref #{p\ 4020}# 1)
+                                       (vector-ref #{p\ 4020}# 2)
+                                       (vector-ref #{p\ 4020}# 3)
+                                       #{w\ 4021}#
+                                       #{r\ 4022}#
+                                       #{mod\ 4023}#))
+                                   (lambda (#{xr*\ 4057}#
+                                            #{y-pat\ 4058}#
+                                            #{r\ 4059}#)
+                                     (if #{r\ 4059}#
+                                       (if (null? #{y-pat\ 4058}#)
+                                         (if (null? #{xr*\ 4057}#)
+                                           (#{match-empty\ 3995}#
+                                             (vector-ref #{p\ 4020}# 1)
+                                             #{r\ 4059}#)
+                                           (#{combine\ 3997}#
+                                             #{xr*\ 4057}#
+                                             #{r\ 4059}#))
+                                         #f)
+                                       #f)))
+                                 (if (eqv? #{atom-key\ 4046}# (quote free-id))
+                                   (if (#{id?\ 387}# #{e\ 4019}#)
+                                     (if (#{free-id=?\ 446}#
+                                           (#{wrap\ 456}#
+                                             #{e\ 4019}#
+                                             #{w\ 4021}#
+                                             #{mod\ 4023}#)
+                                           (vector-ref #{p\ 4020}# 1))
+                                       #{r\ 4022}#
                                        #f)
-                                     #f)))
-                               (if (memv #{atom-key\ 3977}# (quote (free-id)))
-                                 (if (#{id?\ 372}# #{e\ 3950}#)
-                                   (if (#{free-id=?\ 431}#
-                                         (#{wrap\ 441}#
-                                           #{e\ 3950}#
-                                           #{w\ 3952}#
-                                           #{mod\ 3954}#)
-                                         (vector-ref #{p\ 3951}# 1))
-                                     #{r\ 3953}#
-                                     #f)
-                                   #f)
-                                 (if (memv #{atom-key\ 3977}# (quote (atom)))
-                                   (if (equal?
-                                         (vector-ref #{p\ 3951}# 1)
-                                         (#{strip\ 483}#
-                                           #{e\ 3950}#
-                                           #{w\ 3952}#))
-                                     #{r\ 3953}#
                                      #f)
-                                   (if (memv #{atom-key\ 3977}#
-                                             '(vector))
-                                     (if (vector? #{e\ 3950}#)
-                                       (#{match\ 3932}#
-                                         (vector->list #{e\ 3950}#)
-                                         (vector-ref #{p\ 3951}# 1)
-                                         #{w\ 3952}#
-                                         #{r\ 3953}#
-                                         #{mod\ 3954}#)
-                                       #f))))))))))))
-               (#{combine\ 3928}#
-                 (lambda (#{r*\ 4007}# #{r\ 4008}#)
-                   (if (null? (car #{r*\ 4007}#))
-                     #{r\ 4008}#
-                     (cons (map car #{r*\ 4007}#)
-                           (#{combine\ 3928}#
-                             (map cdr #{r*\ 4007}#)
-                             #{r\ 4008}#)))))
-               (#{match-empty\ 3926}#
-                 (lambda (#{p\ 4011}# #{r\ 4012}#)
-                   (if (null? #{p\ 4011}#)
-                     #{r\ 4012}#
-                     (if (eq? #{p\ 4011}# (quote any))
-                       (cons (quote ()) #{r\ 4012}#)
-                       (if (pair? #{p\ 4011}#)
-                         (#{match-empty\ 3926}#
-                           (car #{p\ 4011}#)
-                           (#{match-empty\ 3926}#
-                             (cdr #{p\ 4011}#)
-                             #{r\ 4012}#))
-                         (if (eq? #{p\ 4011}# (quote each-any))
-                           (cons (quote ()) #{r\ 4012}#)
-                           (let ((#{atom-key\ 4026}#
-                                   (vector-ref #{p\ 4011}# 0)))
-                             (if (memv #{atom-key\ 4026}# (quote (each)))
-                               (#{match-empty\ 3926}#
-                                 (vector-ref #{p\ 4011}# 1)
-                                 #{r\ 4012}#)
-                               (if (memv #{atom-key\ 4026}# (quote (each+)))
-                                 (#{match-empty\ 3926}#
-                                   (vector-ref #{p\ 4011}# 1)
-                                   (#{match-empty\ 3926}#
-                                     (reverse (vector-ref #{p\ 4011}# 2))
-                                     (#{match-empty\ 3926}#
-                                       (vector-ref #{p\ 4011}# 3)
-                                       #{r\ 4012}#)))
-                                 (if (memv #{atom-key\ 4026}#
-                                           '(free-id atom))
-                                   #{r\ 4012}#
-                                   (if (memv #{atom-key\ 4026}#
-                                             '(vector))
-                                     (#{match-empty\ 3926}#
-                                       (vector-ref #{p\ 4011}# 1)
-                                       #{r\ 4012}#))))))))))))
-               (#{match-each-any\ 3924}#
-                 (lambda (#{e\ 4031}# #{w\ 4032}# #{mod\ 4033}#)
-                   (if (pair? #{e\ 4031}#)
-                     (let ((#{l\ 4040}#
-                             (#{match-each-any\ 3924}#
-                               (cdr #{e\ 4031}#)
-                               #{w\ 4032}#
-                               #{mod\ 4033}#)))
-                       (if #{l\ 4040}#
-                         (cons (#{wrap\ 441}#
-                                 (car #{e\ 4031}#)
-                                 #{w\ 4032}#
-                                 #{mod\ 4033}#)
-                               #{l\ 4040}#)
-                         #f))
-                     (if (null? #{e\ 4031}#)
+                                   (if (eqv? #{atom-key\ 4046}# (quote atom))
+                                     (if (equal?
+                                           (vector-ref #{p\ 4020}# 1)
+                                           (#{strip\ 498}#
+                                             #{e\ 4019}#
+                                             #{w\ 4021}#))
+                                       #{r\ 4022}#
+                                       #f)
+                                     (if (eqv? #{atom-key\ 4046}#
+                                               'vector)
+                                       (if (vector? #{e\ 4019}#)
+                                         (#{match\ 4001}#
+                                           (vector->list #{e\ 4019}#)
+                                           (vector-ref #{p\ 4020}# 1)
+                                           #{w\ 4021}#
+                                           #{r\ 4022}#
+                                           #{mod\ 4023}#)
+                                         #f)))))))))))))
+               (#{combine\ 3997}#
+                 (lambda (#{r*\ 4076}# #{r\ 4077}#)
+                   (if (null? (car #{r*\ 4076}#))
+                     #{r\ 4077}#
+                     (cons (map car #{r*\ 4076}#)
+                           (#{combine\ 3997}#
+                             (map cdr #{r*\ 4076}#)
+                             #{r\ 4077}#)))))
+               (#{match-empty\ 3995}#
+                 (lambda (#{p\ 4080}# #{r\ 4081}#)
+                   (if (null? #{p\ 4080}#)
+                     #{r\ 4081}#
+                     (if (eq? #{p\ 4080}# (quote any))
+                       (cons (quote ()) #{r\ 4081}#)
+                       (if (pair? #{p\ 4080}#)
+                         (#{match-empty\ 3995}#
+                           (car #{p\ 4080}#)
+                           (#{match-empty\ 3995}#
+                             (cdr #{p\ 4080}#)
+                             #{r\ 4081}#))
+                         (if (eq? #{p\ 4080}# (quote each-any))
+                           (cons (quote ()) #{r\ 4081}#)
+                           (begin
+                             (let ((#{atom-key\ 4095}#
+                                     (vector-ref #{p\ 4080}# 0)))
+                               (if (eqv? #{atom-key\ 4095}# (quote each))
+                                 (#{match-empty\ 3995}#
+                                   (vector-ref #{p\ 4080}# 1)
+                                   #{r\ 4081}#)
+                                 (if (eqv? #{atom-key\ 4095}# (quote each+))
+                                   (#{match-empty\ 3995}#
+                                     (vector-ref #{p\ 4080}# 1)
+                                     (#{match-empty\ 3995}#
+                                       (reverse (vector-ref #{p\ 4080}# 2))
+                                       (#{match-empty\ 3995}#
+                                         (vector-ref #{p\ 4080}# 3)
+                                         #{r\ 4081}#)))
+                                   (if (if (eqv? #{atom-key\ 4095}#
+                                                 'free-id)
+                                         #t
+                                         (eqv? #{atom-key\ 4095}#
+                                               'atom))
+                                     #{r\ 4081}#
+                                     (if (eqv? #{atom-key\ 4095}#
+                                               'vector)
+                                       (#{match-empty\ 3995}#
+                                         (vector-ref #{p\ 4080}# 1)
+                                         #{r\ 4081}#)))))))))))))
+               (#{match-each-any\ 3993}#
+                 (lambda (#{e\ 4100}# #{w\ 4101}# #{mod\ 4102}#)
+                   (if (pair? #{e\ 4100}#)
+                     (begin
+                       (let ((#{l\ 4109}#
+                               (#{match-each-any\ 3993}#
+                                 (cdr #{e\ 4100}#)
+                                 #{w\ 4101}#
+                                 #{mod\ 4102}#)))
+                         (if #{l\ 4109}#
+                           (cons (#{wrap\ 456}#
+                                   (car #{e\ 4100}#)
+                                   #{w\ 4101}#
+                                   #{mod\ 4102}#)
+                                 #{l\ 4109}#)
+                           #f)))
+                     (if (null? #{e\ 4100}#)
                        '()
-                       (if (#{syntax-object?\ 336}# #{e\ 4031}#)
-                         (#{match-each-any\ 3924}#
-                           (#{syntax-object-expression\ 338}# #{e\ 4031}#)
-                           (#{join-wraps\ 423}#
-                             #{w\ 4032}#
-                             (#{syntax-object-wrap\ 340}# #{e\ 4031}#))
-                           #{mod\ 4033}#)
+                       (if (#{syntax-object?\ 351}# #{e\ 4100}#)
+                         (#{match-each-any\ 3993}#
+                           (#{syntax-object-expression\ 353}# #{e\ 4100}#)
+                           (#{join-wraps\ 438}#
+                             #{w\ 4101}#
+                             (#{syntax-object-wrap\ 355}# #{e\ 4100}#))
+                           #{mod\ 4102}#)
                          #f)))))
-               (#{match-each+\ 3922}#
-                 (lambda (#{e\ 4048}#
-                          #{x-pat\ 4049}#
-                          #{y-pat\ 4050}#
-                          #{z-pat\ 4051}#
-                          #{w\ 4052}#
-                          #{r\ 4053}#
-                          #{mod\ 4054}#)
-                   (letrec ((#{f\ 4065}#
-                              (lambda (#{e\ 4066}# #{w\ 4067}#)
-                                (if (pair? #{e\ 4066}#)
-                                  (call-with-values
-                                    (lambda ()
-                                      (#{f\ 4065}#
-                                        (cdr #{e\ 4066}#)
-                                        #{w\ 4067}#))
-                                    (lambda (#{xr*\ 4070}#
-                                             #{y-pat\ 4071}#
-                                             #{r\ 4072}#)
-                                      (if #{r\ 4072}#
-                                        (if (null? #{y-pat\ 4071}#)
-                                          (let ((#{xr\ 4077}#
-                                                  (#{match\ 3932}#
-                                                    (car #{e\ 4066}#)
-                                                    #{x-pat\ 4049}#
-                                                    #{w\ 4067}#
-                                                    '()
-                                                    #{mod\ 4054}#)))
-                                            (if #{xr\ 4077}#
-                                              (values
-                                                (cons #{xr\ 4077}#
-                                                      #{xr*\ 4070}#)
-                                                #{y-pat\ 4071}#
-                                                #{r\ 4072}#)
-                                              (values #f #f #f)))
+               (#{match-each+\ 3991}#
+                 (lambda (#{e\ 4117}#
+                          #{x-pat\ 4118}#
+                          #{y-pat\ 4119}#
+                          #{z-pat\ 4120}#
+                          #{w\ 4121}#
+                          #{r\ 4122}#
+                          #{mod\ 4123}#)
+                   (letrec*
+                     ((#{f\ 4134}#
+                        (lambda (#{e\ 4135}# #{w\ 4136}#)
+                          (if (pair? #{e\ 4135}#)
+                            (call-with-values
+                              (lambda ()
+                                (#{f\ 4134}# (cdr #{e\ 4135}#) #{w\ 4136}#))
+                              (lambda (#{xr*\ 4139}#
+                                       #{y-pat\ 4140}#
+                                       #{r\ 4141}#)
+                                (if #{r\ 4141}#
+                                  (if (null? #{y-pat\ 4140}#)
+                                    (begin
+                                      (let ((#{xr\ 4146}#
+                                              (#{match\ 4001}#
+                                                (car #{e\ 4135}#)
+                                                #{x-pat\ 4118}#
+                                                #{w\ 4136}#
+                                                '()
+                                                #{mod\ 4123}#)))
+                                        (if #{xr\ 4146}#
                                           (values
-                                            '()
-                                            (cdr #{y-pat\ 4071}#)
-                                            (#{match\ 3932}#
-                                              (car #{e\ 4066}#)
-                                              (car #{y-pat\ 4071}#)
-                                              #{w\ 4067}#
-                                              #{r\ 4072}#
-                                              #{mod\ 4054}#)))
-                                        (values #f #f #f))))
-                                  (if (#{syntax-object?\ 336}# #{e\ 4066}#)
-                                    (#{f\ 4065}#
-                                      (#{syntax-object-expression\ 338}#
-                                        #{e\ 4066}#)
-                                      (#{join-wraps\ 423}#
-                                        #{w\ 4067}#
-                                        #{e\ 4066}#))
+                                            (cons #{xr\ 4146}# #{xr*\ 4139}#)
+                                            #{y-pat\ 4140}#
+                                            #{r\ 4141}#)
+                                          (values #f #f #f))))
                                     (values
                                       '()
-                                      #{y-pat\ 4050}#
-                                      (#{match\ 3932}#
-                                        #{e\ 4066}#
-                                        #{z-pat\ 4051}#
-                                        #{w\ 4067}#
-                                        #{r\ 4053}#
-                                        #{mod\ 4054}#)))))))
-                     (#{f\ 4065}# #{e\ 4048}# #{w\ 4052}#))))
-               (#{match-each\ 3920}#
-                 (lambda (#{e\ 4081}#
-                          #{p\ 4082}#
-                          #{w\ 4083}#
-                          #{mod\ 4084}#)
-                   (if (pair? #{e\ 4081}#)
-                     (let ((#{first\ 4092}#
-                             (#{match\ 3932}#
-                               (car #{e\ 4081}#)
-                               #{p\ 4082}#
-                               #{w\ 4083}#
-                               '()
-                               #{mod\ 4084}#)))
-                       (if #{first\ 4092}#
-                         (let ((#{rest\ 4096}#
-                                 (#{match-each\ 3920}#
-                                   (cdr #{e\ 4081}#)
-                                   #{p\ 4082}#
-                                   #{w\ 4083}#
-                                   #{mod\ 4084}#)))
-                           (if #{rest\ 4096}#
-                             (cons #{first\ 4092}# #{rest\ 4096}#)
-                             #f))
-                         #f))
-                     (if (null? #{e\ 4081}#)
+                                      (cdr #{y-pat\ 4140}#)
+                                      (#{match\ 4001}#
+                                        (car #{e\ 4135}#)
+                                        (car #{y-pat\ 4140}#)
+                                        #{w\ 4136}#
+                                        #{r\ 4141}#
+                                        #{mod\ 4123}#)))
+                                  (values #f #f #f))))
+                            (if (#{syntax-object?\ 351}# #{e\ 4135}#)
+                              (#{f\ 4134}#
+                                (#{syntax-object-expression\ 353}# #{e\ 4135}#)
+                                (#{join-wraps\ 438}# #{w\ 4136}# #{e\ 4135}#))
+                              (values
+                                '()
+                                #{y-pat\ 4119}#
+                                (#{match\ 4001}#
+                                  #{e\ 4135}#
+                                  #{z-pat\ 4120}#
+                                  #{w\ 4136}#
+                                  #{r\ 4122}#
+                                  #{mod\ 4123}#)))))))
+                     (begin (#{f\ 4134}# #{e\ 4117}# #{w\ 4121}#)))))
+               (#{match-each\ 3989}#
+                 (lambda (#{e\ 4150}#
+                          #{p\ 4151}#
+                          #{w\ 4152}#
+                          #{mod\ 4153}#)
+                   (if (pair? #{e\ 4150}#)
+                     (begin
+                       (let ((#{first\ 4161}#
+                               (#{match\ 4001}#
+                                 (car #{e\ 4150}#)
+                                 #{p\ 4151}#
+                                 #{w\ 4152}#
+                                 '()
+                                 #{mod\ 4153}#)))
+                         (if #{first\ 4161}#
+                           (begin
+                             (let ((#{rest\ 4165}#
+                                     (#{match-each\ 3989}#
+                                       (cdr #{e\ 4150}#)
+                                       #{p\ 4151}#
+                                       #{w\ 4152}#
+                                       #{mod\ 4153}#)))
+                               (if #{rest\ 4165}#
+                                 (cons #{first\ 4161}# #{rest\ 4165}#)
+                                 #f)))
+                           #f)))
+                     (if (null? #{e\ 4150}#)
                        '()
-                       (if (#{syntax-object?\ 336}# #{e\ 4081}#)
-                         (#{match-each\ 3920}#
-                           (#{syntax-object-expression\ 338}# #{e\ 4081}#)
-                           #{p\ 4082}#
-                           (#{join-wraps\ 423}#
-                             #{w\ 4083}#
-                             (#{syntax-object-wrap\ 340}# #{e\ 4081}#))
-                           (#{syntax-object-module\ 342}# #{e\ 4081}#))
+                       (if (#{syntax-object?\ 351}# #{e\ 4150}#)
+                         (#{match-each\ 3989}#
+                           (#{syntax-object-expression\ 353}# #{e\ 4150}#)
+                           #{p\ 4151}#
+                           (#{join-wraps\ 438}#
+                             #{w\ 4152}#
+                             (#{syntax-object-wrap\ 355}# #{e\ 4150}#))
+                           (#{syntax-object-module\ 357}# #{e\ 4150}#))
                          #f))))))
-        (set! $sc-dispatch
-          (lambda (#{e\ 4104}# #{p\ 4105}#)
-            (if (eq? #{p\ 4105}# (quote any))
-              (list #{e\ 4104}#)
-              (if (#{syntax-object?\ 336}# #{e\ 4104}#)
-                (#{match*\ 3930}#
-                  (#{syntax-object-expression\ 338}# #{e\ 4104}#)
-                  #{p\ 4105}#
-                  (#{syntax-object-wrap\ 340}# #{e\ 4104}#)
-                  '()
-                  (#{syntax-object-module\ 342}# #{e\ 4104}#))
-                (#{match*\ 3930}#
-                  #{e\ 4104}#
-                  #{p\ 4105}#
-                  '(())
-                  '()
-                  #f)))))))))
+              (begin
+                (set! $sc-dispatch
+                  (lambda (#{e\ 4173}# #{p\ 4174}#)
+                    (if (eq? #{p\ 4174}# (quote any))
+                      (list #{e\ 4173}#)
+                      (if (#{syntax-object?\ 351}# #{e\ 4173}#)
+                        (#{match*\ 3999}#
+                          (#{syntax-object-expression\ 353}# #{e\ 4173}#)
+                          #{p\ 4174}#
+                          (#{syntax-object-wrap\ 355}# #{e\ 4173}#)
+                          '()
+                          (#{syntax-object-module\ 357}# #{e\ 4173}#))
+                        (#{match*\ 3999}#
+                          #{e\ 4173}#
+                          #{p\ 4174}#
+                          '(())
+                          '()
+                          #f)))))))))))))
 
 (define with-syntax
   (make-syntax-transformer
     'with-syntax
     'macro
-    (lambda (#{x\ 4114}#)
-      ((lambda (#{tmp\ 4116}#)
-         ((lambda (#{tmp\ 4117}#)
-            (if #{tmp\ 4117}#
-              (apply (lambda (#{_\ 4121}# #{e1\ 4122}# #{e2\ 4123}#)
-                       (cons '#(syntax-object
-                                begin
-                                ((top)
-                                 #(ribcage
-                                   #(_ e1 e2)
-                                   #((top) (top) (top))
-                                   #("i4118" "i4119" "i4120"))
-                                 #(ribcage () () ())
-                                 #(ribcage #(x) #((top)) #("i4115")))
-                                (hygiene guile))
-                             (cons #{e1\ 4122}# #{e2\ 4123}#)))
-                     #{tmp\ 4117}#)
-              ((lambda (#{tmp\ 4125}#)
-                 (if #{tmp\ 4125}#
-                   (apply (lambda (#{_\ 4131}#
-                                   #{out\ 4132}#
-                                   #{in\ 4133}#
-                                   #{e1\ 4134}#
-                                   #{e2\ 4135}#)
-                            (list '#(syntax-object
-                                     syntax-case
-                                     ((top)
-                                      #(ribcage
-                                        #(_ out in e1 e2)
-                                        #((top) (top) (top) (top) (top))
-                                        #("i4126"
-                                          "i4127"
-                                          "i4128"
-                                          "i4129"
-                                          "i4130"))
-                                      #(ribcage () () ())
-                                      #(ribcage #(x) #((top)) #("i4115")))
-                                     (hygiene guile))
-                                  #{in\ 4133}#
-                                  '()
-                                  (list #{out\ 4132}#
-                                        (cons '#(syntax-object
-                                                 begin
-                                                 ((top)
-                                                  #(ribcage
-                                                    #(_ out in e1 e2)
-                                                    #((top)
-                                                      (top)
-                                                      (top)
-                                                      (top)
-                                                      (top))
-                                                    #("i4126"
-                                                      "i4127"
-                                                      "i4128"
-                                                      "i4129"
-                                                      "i4130"))
-                                                  #(ribcage () () ())
-                                                  #(ribcage
-                                                    #(x)
-                                                    #((top))
-                                                    #("i4115")))
-                                                 (hygiene guile))
-                                              (cons #{e1\ 4134}#
-                                                    #{e2\ 4135}#)))))
-                          #{tmp\ 4125}#)
-                   ((lambda (#{tmp\ 4137}#)
-                      (if #{tmp\ 4137}#
-                        (apply (lambda (#{_\ 4143}#
-                                        #{out\ 4144}#
-                                        #{in\ 4145}#
-                                        #{e1\ 4146}#
-                                        #{e2\ 4147}#)
-                                 (list '#(syntax-object
-                                          syntax-case
-                                          ((top)
-                                           #(ribcage
-                                             #(_ out in e1 e2)
-                                             #((top) (top) (top) (top) (top))
-                                             #("i4138"
-                                               "i4139"
-                                               "i4140"
-                                               "i4141"
-                                               "i4142"))
-                                           #(ribcage () () ())
-                                           #(ribcage #(x) #((top)) #("i4115")))
-                                          (hygiene guile))
-                                       (cons '#(syntax-object
-                                                list
-                                                ((top)
-                                                 #(ribcage
-                                                   #(_ out in e1 e2)
-                                                   #((top)
-                                                     (top)
-                                                     (top)
-                                                     (top)
-                                                     (top))
-                                                   #("i4138"
-                                                     "i4139"
-                                                     "i4140"
-                                                     "i4141"
-                                                     "i4142"))
-                                                 #(ribcage () () ())
-                                                 #(ribcage
-                                                   #(x)
-                                                   #((top))
-                                                   #("i4115")))
-                                                (hygiene guile))
-                                             #{in\ 4145}#)
-                                       '()
-                                       (list #{out\ 4144}#
-                                             (cons '#(syntax-object
-                                                      begin
-                                                      ((top)
-                                                       #(ribcage
-                                                         #(_ out in e1 e2)
-                                                         #((top)
-                                                           (top)
-                                                           (top)
-                                                           (top)
-                                                           (top))
-                                                         #("i4138"
-                                                           "i4139"
-                                                           "i4140"
-                                                           "i4141"
-                                                           "i4142"))
-                                                       #(ribcage () () ())
-                                                       #(ribcage
-                                                         #(x)
-                                                         #((top))
-                                                         #("i4115")))
-                                                      (hygiene guile))
-                                                   (cons #{e1\ 4146}#
-                                                         #{e2\ 4147}#)))))
-                               #{tmp\ 4137}#)
-                        (syntax-violation
-                          #f
-                          "source expression failed to match any pattern"
-                          #{tmp\ 4116}#)))
+    (lambda (#{x\ 4183}#)
+      (let ((#{tmp\ 4185}# #{x\ 4183}#))
+        (let ((#{tmp\ 4186}#
+                ($sc-dispatch
+                  #{tmp\ 4185}#
+                  '(any () any . each-any))))
+          (if #{tmp\ 4186}#
+            (@apply
+              (lambda (#{_\ 4190}# #{e1\ 4191}# #{e2\ 4192}#)
+                (cons '#(syntax-object
+                         begin
+                         ((top)
+                          #(ribcage
+                            #(_ e1 e2)
+                            #((top) (top) (top))
+                            #("i4187" "i4188" "i4189"))
+                          #(ribcage () () ())
+                          #(ribcage #(x) #((top)) #("i4184")))
+                         (hygiene guile))
+                      (cons #{e1\ 4191}# #{e2\ 4192}#)))
+              #{tmp\ 4186}#)
+            (let ((#{tmp\ 4194}#
                     ($sc-dispatch
-                      #{tmp\ 4116}#
-                      '(any #(each (any any)) any . each-any)))))
-               ($sc-dispatch
-                 #{tmp\ 4116}#
-                 '(any ((any any)) any . each-any)))))
-          ($sc-dispatch
-            #{tmp\ 4116}#
-            '(any () any . each-any))))
-       #{x\ 4114}#))))
+                      #{tmp\ 4185}#
+                      '(any ((any any)) any . each-any))))
+              (if #{tmp\ 4194}#
+                (@apply
+                  (lambda (#{_\ 4200}#
+                           #{out\ 4201}#
+                           #{in\ 4202}#
+                           #{e1\ 4203}#
+                           #{e2\ 4204}#)
+                    (list '#(syntax-object
+                             syntax-case
+                             ((top)
+                              #(ribcage
+                                #(_ out in e1 e2)
+                                #((top) (top) (top) (top) (top))
+                                #("i4195" "i4196" "i4197" "i4198" "i4199"))
+                              #(ribcage () () ())
+                              #(ribcage #(x) #((top)) #("i4184")))
+                             (hygiene guile))
+                          #{in\ 4202}#
+                          '()
+                          (list #{out\ 4201}#
+                                (cons '#(syntax-object
+                                         begin
+                                         ((top)
+                                          #(ribcage
+                                            #(_ out in e1 e2)
+                                            #((top) (top) (top) (top) (top))
+                                            #("i4195"
+                                              "i4196"
+                                              "i4197"
+                                              "i4198"
+                                              "i4199"))
+                                          #(ribcage () () ())
+                                          #(ribcage #(x) #((top)) #("i4184")))
+                                         (hygiene guile))
+                                      (cons #{e1\ 4203}# #{e2\ 4204}#)))))
+                  #{tmp\ 4194}#)
+                (let ((#{tmp\ 4206}#
+                        ($sc-dispatch
+                          #{tmp\ 4185}#
+                          '(any #(each (any any)) any . each-any))))
+                  (if #{tmp\ 4206}#
+                    (@apply
+                      (lambda (#{_\ 4212}#
+                               #{out\ 4213}#
+                               #{in\ 4214}#
+                               #{e1\ 4215}#
+                               #{e2\ 4216}#)
+                        (list '#(syntax-object
+                                 syntax-case
+                                 ((top)
+                                  #(ribcage
+                                    #(_ out in e1 e2)
+                                    #((top) (top) (top) (top) (top))
+                                    #("i4207" "i4208" "i4209" "i4210" "i4211"))
+                                  #(ribcage () () ())
+                                  #(ribcage #(x) #((top)) #("i4184")))
+                                 (hygiene guile))
+                              (cons '#(syntax-object
+                                       list
+                                       ((top)
+                                        #(ribcage
+                                          #(_ out in e1 e2)
+                                          #((top) (top) (top) (top) (top))
+                                          #("i4207"
+                                            "i4208"
+                                            "i4209"
+                                            "i4210"
+                                            "i4211"))
+                                        #(ribcage () () ())
+                                        #(ribcage #(x) #((top)) #("i4184")))
+                                       (hygiene guile))
+                                    #{in\ 4214}#)
+                              '()
+                              (list #{out\ 4213}#
+                                    (cons '#(syntax-object
+                                             begin
+                                             ((top)
+                                              #(ribcage
+                                                #(_ out in e1 e2)
+                                                #((top)
+                                                  (top)
+                                                  (top)
+                                                  (top)
+                                                  (top))
+                                                #("i4207"
+                                                  "i4208"
+                                                  "i4209"
+                                                  "i4210"
+                                                  "i4211"))
+                                              #(ribcage () () ())
+                                              #(ribcage
+                                                #(x)
+                                                #((top))
+                                                #("i4184")))
+                                             (hygiene guile))
+                                          (cons #{e1\ 4215}# #{e2\ 4216}#)))))
+                      #{tmp\ 4206}#)
+                    (syntax-violation
+                      #f
+                      "source expression failed to match any pattern"
+                      #{tmp\ 4185}#)))))))))))
 
 (define syntax-rules
   (make-syntax-transformer
     'syntax-rules
     'macro
-    (lambda (#{x\ 4151}#)
-      ((lambda (#{tmp\ 4153}#)
-         ((lambda (#{tmp\ 4154}#)
-            (if #{tmp\ 4154}#
-              (apply (lambda (#{_\ 4160}#
-                              #{k\ 4161}#
-                              #{keyword\ 4162}#
-                              #{pattern\ 4163}#
-                              #{template\ 4164}#)
-                       (list '#(syntax-object
-                                lambda
-                                ((top)
-                                 #(ribcage
-                                   #(_ k keyword pattern template)
-                                   #((top) (top) (top) (top) (top))
-                                   #("i4155" "i4156" "i4157" "i4158" "i4159"))
-                                 #(ribcage () () ())
-                                 #(ribcage #(x) #((top)) #("i4152")))
-                                (hygiene guile))
-                             '(#(syntax-object
-                                 x
+    (lambda (#{x\ 4220}#)
+      (let ((#{tmp\ 4222}# #{x\ 4220}#))
+        (let ((#{tmp\ 4223}#
+                ($sc-dispatch
+                  #{tmp\ 4222}#
+                  '(any each-any . #(each ((any . any) any))))))
+          (if #{tmp\ 4223}#
+            (@apply
+              (lambda (#{_\ 4229}#
+                       #{k\ 4230}#
+                       #{keyword\ 4231}#
+                       #{pattern\ 4232}#
+                       #{template\ 4233}#)
+                (list '#(syntax-object
+                         lambda
+                         ((top)
+                          #(ribcage
+                            #(_ k keyword pattern template)
+                            #((top) (top) (top) (top) (top))
+                            #("i4224" "i4225" "i4226" "i4227" "i4228"))
+                          #(ribcage () () ())
+                          #(ribcage #(x) #((top)) #("i4221")))
+                         (hygiene guile))
+                      '(#(syntax-object
+                          x
+                          ((top)
+                           #(ribcage
+                             #(_ k keyword pattern template)
+                             #((top) (top) (top) (top) (top))
+                             #("i4224" "i4225" "i4226" "i4227" "i4228"))
+                           #(ribcage () () ())
+                           #(ribcage #(x) #((top)) #("i4221")))
+                          (hygiene guile)))
+                      (vector
+                        '(#(syntax-object
+                            macro-type
+                            ((top)
+                             #(ribcage
+                               #(_ k keyword pattern template)
+                               #((top) (top) (top) (top) (top))
+                               #("i4224" "i4225" "i4226" "i4227" "i4228"))
+                             #(ribcage () () ())
+                             #(ribcage #(x) #((top)) #("i4221")))
+                            (hygiene guile))
+                          .
+                          #(syntax-object
+                            syntax-rules
+                            ((top)
+                             #(ribcage
+                               #(_ k keyword pattern template)
+                               #((top) (top) (top) (top) (top))
+                               #("i4224" "i4225" "i4226" "i4227" "i4228"))
+                             #(ribcage () () ())
+                             #(ribcage #(x) #((top)) #("i4221")))
+                            (hygiene guile)))
+                        (cons '#(syntax-object
+                                 patterns
                                  ((top)
                                   #(ribcage
                                     #(_ k keyword pattern template)
                                     #((top) (top) (top) (top) (top))
-                                    #("i4155" "i4156" "i4157" "i4158" "i4159"))
+                                    #("i4224" "i4225" "i4226" "i4227" "i4228"))
                                   #(ribcage () () ())
-                                  #(ribcage #(x) #((top)) #("i4152")))
-                                 (hygiene guile)))
-                             (vector
-                               '(#(syntax-object
-                                   macro-type
-                                   ((top)
-                                    #(ribcage
-                                      #(_ k keyword pattern template)
-                                      #((top) (top) (top) (top) (top))
-                                      #("i4155"
-                                        "i4156"
-                                        "i4157"
-                                        "i4158"
-                                        "i4159"))
-                                    #(ribcage () () ())
-                                    #(ribcage #(x) #((top)) #("i4152")))
-                                   (hygiene guile))
-                                 .
-                                 #(syntax-object
-                                   syntax-rules
-                                   ((top)
-                                    #(ribcage
-                                      #(_ k keyword pattern template)
-                                      #((top) (top) (top) (top) (top))
-                                      #("i4155"
-                                        "i4156"
-                                        "i4157"
-                                        "i4158"
-                                        "i4159"))
-                                    #(ribcage () () ())
-                                    #(ribcage #(x) #((top)) #("i4152")))
-                                   (hygiene guile)))
-                               (cons '#(syntax-object
-                                        patterns
-                                        ((top)
-                                         #(ribcage
-                                           #(_ k keyword pattern template)
-                                           #((top) (top) (top) (top) (top))
-                                           #("i4155"
-                                             "i4156"
-                                             "i4157"
-                                             "i4158"
-                                             "i4159"))
-                                         #(ribcage () () ())
-                                         #(ribcage #(x) #((top)) #("i4152")))
-                                        (hygiene guile))
-                                     #{pattern\ 4163}#))
-                             (cons '#(syntax-object
-                                      syntax-case
-                                      ((top)
-                                       #(ribcage
-                                         #(_ k keyword pattern template)
-                                         #((top) (top) (top) (top) (top))
-                                         #("i4155"
-                                           "i4156"
-                                           "i4157"
-                                           "i4158"
-                                           "i4159"))
-                                       #(ribcage () () ())
-                                       #(ribcage #(x) #((top)) #("i4152")))
-                                      (hygiene guile))
-                                   (cons '#(syntax-object
-                                            x
+                                  #(ribcage #(x) #((top)) #("i4221")))
+                                 (hygiene guile))
+                              #{pattern\ 4232}#))
+                      (cons '#(syntax-object
+                               syntax-case
+                               ((top)
+                                #(ribcage
+                                  #(_ k keyword pattern template)
+                                  #((top) (top) (top) (top) (top))
+                                  #("i4224" "i4225" "i4226" "i4227" "i4228"))
+                                #(ribcage () () ())
+                                #(ribcage #(x) #((top)) #("i4221")))
+                               (hygiene guile))
+                            (cons '#(syntax-object
+                                     x
+                                     ((top)
+                                      #(ribcage
+                                        #(_ k keyword pattern template)
+                                        #((top) (top) (top) (top) (top))
+                                        #("i4224"
+                                          "i4225"
+                                          "i4226"
+                                          "i4227"
+                                          "i4228"))
+                                      #(ribcage () () ())
+                                      #(ribcage #(x) #((top)) #("i4221")))
+                                     (hygiene guile))
+                                  (cons #{k\ 4230}#
+                                        (map (lambda (#{tmp\ 4237}#
+                                                      #{tmp\ 4236}#)
+                                               (list (cons '#(syntax-object
+                                                              dummy
+                                                              ((top)
+                                                               #(ribcage
+                                                                 #(_
+                                                                   k
+                                                                   keyword
+                                                                   pattern
+                                                                   template)
+                                                                 #((top)
+                                                                   (top)
+                                                                   (top)
+                                                                   (top)
+                                                                   (top))
+                                                                 #("i4224"
+                                                                   "i4225"
+                                                                   "i4226"
+                                                                   "i4227"
+                                                                   "i4228"))
+                                                               #(ribcage
+                                                                 ()
+                                                                 ()
+                                                                 ())
+                                                               #(ribcage
+                                                                 #(x)
+                                                                 #((top))
+                                                                 #("i4221")))
+                                                              (hygiene guile))
+                                                           #{tmp\ 4236}#)
+                                                     (list '#(syntax-object
+                                                              syntax
+                                                              ((top)
+                                                               #(ribcage
+                                                                 #(_
+                                                                   k
+                                                                   keyword
+                                                                   pattern
+                                                                   template)
+                                                                 #((top)
+                                                                   (top)
+                                                                   (top)
+                                                                   (top)
+                                                                   (top))
+                                                                 #("i4224"
+                                                                   "i4225"
+                                                                   "i4226"
+                                                                   "i4227"
+                                                                   "i4228"))
+                                                               #(ribcage
+                                                                 ()
+                                                                 ()
+                                                                 ())
+                                                               #(ribcage
+                                                                 #(x)
+                                                                 #((top))
+                                                                 #("i4221")))
+                                                              (hygiene guile))
+                                                           #{tmp\ 4237}#)))
+                                             #{template\ 4233}#
+                                             #{pattern\ 4232}#))))))
+              #{tmp\ 4223}#)
+            (syntax-violation
+              #f
+              "source expression failed to match any pattern"
+              #{tmp\ 4222}#)))))))
+
+(define let*
+  (make-syntax-transformer
+    'let*
+    'macro
+    (lambda (#{x\ 4238}#)
+      (let ((#{tmp\ 4240}# #{x\ 4238}#))
+        (let ((#{tmp\ 4241}#
+                ($sc-dispatch
+                  #{tmp\ 4240}#
+                  '(any #(each (any any)) any . each-any))))
+          (if (if #{tmp\ 4241}#
+                (@apply
+                  (lambda (#{let*\ 4247}#
+                           #{x\ 4248}#
+                           #{v\ 4249}#
+                           #{e1\ 4250}#
+                           #{e2\ 4251}#)
+                    (and-map identifier? #{x\ 4248}#))
+                  #{tmp\ 4241}#)
+                #f)
+            (@apply
+              (lambda (#{let*\ 4258}#
+                       #{x\ 4259}#
+                       #{v\ 4260}#
+                       #{e1\ 4261}#
+                       #{e2\ 4262}#)
+                (letrec*
+                  ((#{f\ 4265}#
+                     (lambda (#{bindings\ 4266}#)
+                       (if (null? #{bindings\ 4266}#)
+                         (cons '#(syntax-object
+                                  let
+                                  ((top)
+                                   #(ribcage () () ())
+                                   #(ribcage
+                                     #(f bindings)
+                                     #((top) (top))
+                                     #("i4263" "i4264"))
+                                   #(ribcage
+                                     #(let* x v e1 e2)
+                                     #((top) (top) (top) (top) (top))
+                                     #("i4253"
+                                       "i4254"
+                                       "i4255"
+                                       "i4256"
+                                       "i4257"))
+                                   #(ribcage () () ())
+                                   #(ribcage #(x) #((top)) #("i4239")))
+                                  (hygiene guile))
+                               (cons '()
+                                     (cons #{e1\ 4261}# #{e2\ 4262}#)))
+                         (let ((#{tmp\ 4271}#
+                                 (list (#{f\ 4265}# (cdr #{bindings\ 4266}#))
+                                       (car #{bindings\ 4266}#))))
+                           (let ((#{tmp\ 4272}#
+                                   ($sc-dispatch
+                                     #{tmp\ 4271}#
+                                     '(any any))))
+                             (if #{tmp\ 4272}#
+                               (@apply
+                                 (lambda (#{body\ 4275}# #{binding\ 4276}#)
+                                   (list '#(syntax-object
+                                            let
                                             ((top)
                                              #(ribcage
-                                               #(_ k keyword pattern template)
+                                               #(body binding)
+                                               #((top) (top))
+                                               #("i4273" "i4274"))
+                                             #(ribcage () () ())
+                                             #(ribcage
+                                               #(f bindings)
+                                               #((top) (top))
+                                               #("i4263" "i4264"))
+                                             #(ribcage
+                                               #(let* x v e1 e2)
                                                #((top) (top) (top) (top) (top))
-                                               #("i4155"
-                                                 "i4156"
-                                                 "i4157"
-                                                 "i4158"
-                                                 "i4159"))
+                                               #("i4253"
+                                                 "i4254"
+                                                 "i4255"
+                                                 "i4256"
+                                                 "i4257"))
                                              #(ribcage () () ())
                                              #(ribcage
                                                #(x)
                                                #((top))
-                                               #("i4152")))
+                                               #("i4239")))
                                             (hygiene guile))
-                                         (cons #{k\ 4161}#
-                                               (map (lambda (#{tmp\ 4168}#
-                                                             #{tmp\ 4167}#)
-                                                      (list (cons 
'#(syntax-object
-                                                                     dummy
-                                                                     ((top)
-                                                                      #(ribcage
-                                                                        #(_
-                                                                          k
-                                                                          
keyword
-                                                                          
pattern
-                                                                          
template)
-                                                                        #((top)
-                                                                          (top)
-                                                                          (top)
-                                                                          (top)
-                                                                          
(top))
-                                                                        
#("i4155"
-                                                                          
"i4156"
-                                                                          
"i4157"
-                                                                          
"i4158"
-                                                                          
"i4159"))
-                                                                      #(ribcage
-                                                                        ()
-                                                                        ()
-                                                                        ())
-                                                                      #(ribcage
-                                                                        #(x)
-                                                                        
#((top))
-                                                                        
#("i4152")))
-                                                                     (hygiene
-                                                                       guile))
-                                                                  #{tmp\ 
4167}#)
-                                                            (list 
'#(syntax-object
-                                                                     syntax
-                                                                     ((top)
-                                                                      #(ribcage
-                                                                        #(_
-                                                                          k
-                                                                          
keyword
-                                                                          
pattern
-                                                                          
template)
-                                                                        #((top)
-                                                                          (top)
-                                                                          (top)
-                                                                          (top)
-                                                                          
(top))
-                                                                        
#("i4155"
-                                                                          
"i4156"
-                                                                          
"i4157"
-                                                                          
"i4158"
-                                                                          
"i4159"))
-                                                                      #(ribcage
-                                                                        ()
-                                                                        ()
-                                                                        ())
-                                                                      #(ribcage
-                                                                        #(x)
-                                                                        
#((top))
-                                                                        
#("i4152")))
-                                                                     (hygiene
-                                                                       guile))
-                                                                  #{tmp\ 
4168}#)))
-                                                    #{template\ 4164}#
-                                                    #{pattern\ 4163}#))))))
-                     #{tmp\ 4154}#)
-              (syntax-violation
-                #f
-                "source expression failed to match any pattern"
-                #{tmp\ 4153}#)))
-          ($sc-dispatch
-            #{tmp\ 4153}#
-            '(any each-any . #(each ((any . any) any))))))
-       #{x\ 4151}#))))
-
-(define let*
-  (make-syntax-transformer
-    'let*
-    'macro
-    (lambda (#{x\ 4169}#)
-      ((lambda (#{tmp\ 4171}#)
-         ((lambda (#{tmp\ 4172}#)
-            (if (if #{tmp\ 4172}#
-                  (apply (lambda (#{let*\ 4178}#
-                                  #{x\ 4179}#
-                                  #{v\ 4180}#
-                                  #{e1\ 4181}#
-                                  #{e2\ 4182}#)
-                           (and-map identifier? #{x\ 4179}#))
-                         #{tmp\ 4172}#)
-                  #f)
-              (apply (lambda (#{let*\ 4189}#
-                              #{x\ 4190}#
-                              #{v\ 4191}#
-                              #{e1\ 4192}#
-                              #{e2\ 4193}#)
-                       (letrec ((#{f\ 4196}#
-                                  (lambda (#{bindings\ 4197}#)
-                                    (if (null? #{bindings\ 4197}#)
-                                      (cons '#(syntax-object
-                                               let
-                                               ((top)
-                                                #(ribcage () () ())
-                                                #(ribcage
-                                                  #(f bindings)
-                                                  #((top) (top))
-                                                  #("i4194" "i4195"))
-                                                #(ribcage
-                                                  #(let* x v e1 e2)
-                                                  #((top)
-                                                    (top)
-                                                    (top)
-                                                    (top)
-                                                    (top))
-                                                  #("i4184"
-                                                    "i4185"
-                                                    "i4186"
-                                                    "i4187"
-                                                    "i4188"))
-                                                #(ribcage () () ())
-                                                #(ribcage
-                                                  #(x)
-                                                  #((top))
-                                                  #("i4170")))
-                                               (hygiene guile))
-                                            (cons '()
-                                                  (cons #{e1\ 4192}#
-                                                        #{e2\ 4193}#)))
-                                      ((lambda (#{tmp\ 4202}#)
-                                         ((lambda (#{tmp\ 4203}#)
-                                            (if #{tmp\ 4203}#
-                                              (apply (lambda (#{body\ 4206}#
-                                                              #{binding\ 
4207}#)
-                                                       (list '#(syntax-object
-                                                                let
-                                                                ((top)
-                                                                 #(ribcage
-                                                                   #(body
-                                                                     binding)
-                                                                   #((top)
-                                                                     (top))
-                                                                   #("i4204"
-                                                                     "i4205"))
-                                                                 #(ribcage
-                                                                   ()
-                                                                   ()
-                                                                   ())
-                                                                 #(ribcage
-                                                                   #(f
-                                                                     bindings)
-                                                                   #((top)
-                                                                     (top))
-                                                                   #("i4194"
-                                                                     "i4195"))
-                                                                 #(ribcage
-                                                                   #(let*
-                                                                     x
-                                                                     v
-                                                                     e1
-                                                                     e2)
-                                                                   #((top)
-                                                                     (top)
-                                                                     (top)
-                                                                     (top)
-                                                                     (top))
-                                                                   #("i4184"
-                                                                     "i4185"
-                                                                     "i4186"
-                                                                     "i4187"
-                                                                     "i4188"))
-                                                                 #(ribcage
-                                                                   ()
-                                                                   ()
-                                                                   ())
-                                                                 #(ribcage
-                                                                   #(x)
-                                                                   #((top))
-                                                                   #("i4170")))
-                                                                (hygiene
-                                                                  guile))
-                                                             (list #{binding\ 
4207}#)
-                                                             #{body\ 4206}#))
-                                                     #{tmp\ 4203}#)
-                                              (syntax-violation
-                                                #f
-                                                "source expression failed to 
match any pattern"
-                                                #{tmp\ 4202}#)))
-                                          ($sc-dispatch
-                                            #{tmp\ 4202}#
-                                            '(any any))))
-                                       (list (#{f\ 4196}#
-                                               (cdr #{bindings\ 4197}#))
-                                             (car #{bindings\ 4197}#)))))))
-                         (#{f\ 4196}# (map list #{x\ 4190}# #{v\ 4191}#))))
-                     #{tmp\ 4172}#)
-              (syntax-violation
-                #f
-                "source expression failed to match any pattern"
-                #{tmp\ 4171}#)))
-          ($sc-dispatch
-            #{tmp\ 4171}#
-            '(any #(each (any any)) any . each-any))))
-       #{x\ 4169}#))))
+                                         (list #{binding\ 4276}#)
+                                         #{body\ 4275}#))
+                                 #{tmp\ 4272}#)
+                               (syntax-violation
+                                 #f
+                                 "source expression failed to match any 
pattern"
+                                 #{tmp\ 4271}#))))))))
+                  (begin
+                    (#{f\ 4265}# (map list #{x\ 4259}# #{v\ 4260}#)))))
+              #{tmp\ 4241}#)
+            (syntax-violation
+              #f
+              "source expression failed to match any pattern"
+              #{tmp\ 4240}#)))))))
 
 (define do
   (make-syntax-transformer
     'do
     'macro
-    (lambda (#{orig-x\ 4208}#)
-      ((lambda (#{tmp\ 4210}#)
-         ((lambda (#{tmp\ 4211}#)
-            (if #{tmp\ 4211}#
-              (apply (lambda (#{_\ 4219}#
-                              #{var\ 4220}#
-                              #{init\ 4221}#
-                              #{step\ 4222}#
-                              #{e0\ 4223}#
-                              #{e1\ 4224}#
-                              #{c\ 4225}#)
-                       ((lambda (#{tmp\ 4227}#)
-                          ((lambda (#{tmp\ 4228}#)
-                             (if #{tmp\ 4228}#
-                               (apply (lambda (#{step\ 4230}#)
-                                        ((lambda (#{tmp\ 4231}#)
-                                           ((lambda (#{tmp\ 4232}#)
-                                              (if #{tmp\ 4232}#
-                                                (apply (lambda ()
-                                                         (list '#(syntax-object
-                                                                  let
-                                                                  ((top)
-                                                                   #(ribcage
-                                                                     #(step)
-                                                                     #((top))
-                                                                     
#("i4229"))
-                                                                   #(ribcage
-                                                                     #(_
-                                                                       var
-                                                                       init
-                                                                       step
-                                                                       e0
-                                                                       e1
-                                                                       c)
-                                                                     #((top)
-                                                                       (top)
-                                                                       (top)
-                                                                       (top)
-                                                                       (top)
-                                                                       (top)
-                                                                       (top))
-                                                                     #("i4212"
-                                                                       "i4213"
-                                                                       "i4214"
-                                                                       "i4215"
-                                                                       "i4216"
-                                                                       "i4217"
-                                                                       
"i4218"))
-                                                                   #(ribcage
-                                                                     ()
-                                                                     ()
-                                                                     ())
-                                                                   #(ribcage
-                                                                     #(orig-x)
-                                                                     #((top))
-                                                                     
#("i4209")))
-                                                                  (hygiene
-                                                                    guile))
-                                                               '#(syntax-object
-                                                                  doloop
-                                                                  ((top)
-                                                                   #(ribcage
-                                                                     #(step)
-                                                                     #((top))
-                                                                     
#("i4229"))
-                                                                   #(ribcage
-                                                                     #(_
-                                                                       var
-                                                                       init
-                                                                       step
-                                                                       e0
-                                                                       e1
-                                                                       c)
-                                                                     #((top)
-                                                                       (top)
-                                                                       (top)
-                                                                       (top)
-                                                                       (top)
-                                                                       (top)
-                                                                       (top))
-                                                                     #("i4212"
-                                                                       "i4213"
-                                                                       "i4214"
-                                                                       "i4215"
-                                                                       "i4216"
-                                                                       "i4217"
-                                                                       
"i4218"))
-                                                                   #(ribcage
-                                                                     ()
-                                                                     ()
-                                                                     ())
-                                                                   #(ribcage
-                                                                     #(orig-x)
-                                                                     #((top))
-                                                                     
#("i4209")))
-                                                                  (hygiene
-                                                                    guile))
-                                                               (map list
-                                                                    #{var\ 
4220}#
-                                                                    #{init\ 
4221}#)
-                                                               (list 
'#(syntax-object
-                                                                        if
-                                                                        ((top)
-                                                                         
#(ribcage
-                                                                           
#(step)
-                                                                           
#((top))
-                                                                           
#("i4229"))
-                                                                         
#(ribcage
-                                                                           #(_
-                                                                             
var
-                                                                             
init
-                                                                             
step
-                                                                             e0
-                                                                             e1
-                                                                             c)
-                                                                           
#((top)
-                                                                             
(top)
-                                                                             
(top)
-                                                                             
(top)
-                                                                             
(top)
-                                                                             
(top)
-                                                                             
(top))
-                                                                           
#("i4212"
-                                                                             
"i4213"
-                                                                             
"i4214"
-                                                                             
"i4215"
-                                                                             
"i4216"
-                                                                             
"i4217"
-                                                                             
"i4218"))
-                                                                         
#(ribcage
-                                                                           ()
-                                                                           ()
-                                                                           ())
-                                                                         
#(ribcage
-                                                                           
#(orig-x)
-                                                                           
#((top))
-                                                                           
#("i4209")))
-                                                                        
(hygiene
-                                                                          
guile))
-                                                                     (list 
'#(syntax-object
-                                                                              
not
-                                                                              
((top)
-                                                                               
#(ribcage
-                                                                               
  #(step)
-                                                                               
  #((top))
-                                                                               
  #("i4229"))
-                                                                               
#(ribcage
-                                                                               
  #(_
-                                                                               
    var
-                                                                               
    init
-                                                                               
    step
-                                                                               
    e0
-                                                                               
    e1
-                                                                               
    c)
-                                                                               
  #((top)
-                                                                               
    (top)
-                                                                               
    (top)
-                                                                               
    (top)
-                                                                               
    (top)
-                                                                               
    (top)
-                                                                               
    (top))
-                                                                               
  #("i4212"
-                                                                               
    "i4213"
-                                                                               
    "i4214"
-                                                                               
    "i4215"
-                                                                               
    "i4216"
-                                                                               
    "i4217"
-                                                                               
    "i4218"))
-                                                                               
#(ribcage
-                                                                               
  ()
-                                                                               
  ()
-                                                                               
  ())
-                                                                               
#(ribcage
-                                                                               
  #(orig-x)
-                                                                               
  #((top))
-                                                                               
  #("i4209")))
-                                                                              
(hygiene
-                                                                               
 guile))
-                                                                           
#{e0\ 4223}#)
-                                                                     (cons 
'#(syntax-object
-                                                                              
begin
-                                                                              
((top)
-                                                                               
#(ribcage
-                                                                               
  #(step)
-                                                                               
  #((top))
-                                                                               
  #("i4229"))
-                                                                               
#(ribcage
-                                                                               
  #(_
-                                                                               
    var
-                                                                               
    init
-                                                                               
    step
-                                                                               
    e0
-                                                                               
    e1
-                                                                               
    c)
-                                                                               
  #((top)
-                                                                               
    (top)
-                                                                               
    (top)
-                                                                               
    (top)
-                                                                               
    (top)
-                                                                               
    (top)
-                                                                               
    (top))
-                                                                               
  #("i4212"
-                                                                               
    "i4213"
-                                                                               
    "i4214"
-                                                                               
    "i4215"
-                                                                               
    "i4216"
-                                                                               
    "i4217"
-                                                                               
    "i4218"))
-                                                                               
#(ribcage
-                                                                               
  ()
-                                                                               
  ()
-                                                                               
  ())
-                                                                               
#(ribcage
-                                                                               
  #(orig-x)
-                                                                               
  #((top))
-                                                                               
  #("i4209")))
-                                                                              
(hygiene
-                                                                               
 guile))
-                                                                           
(append
-                                                                             
#{c\ 4225}#
-                                                                             
(list (cons '#(syntax-object
-                                                                               
             doloop
-                                                                               
             ((top)
-                                                                               
              #(ribcage
-                                                                               
                #(step)
-                                                                               
                #((top))
-                                                                               
                #("i4229"))
-                                                                               
              #(ribcage
-                                                                               
                #(_
-                                                                               
                  var
-                                                                               
                  init
-                                                                               
                  step
-                                                                               
                  e0
-                                                                               
                  e1
-                                                                               
                  c)
-                                                                               
                #((top)
-                                                                               
                  (top)
-                                                                               
                  (top)
-                                                                               
                  (top)
-                                                                               
                  (top)
-                                                                               
                  (top)
-                                                                               
                  (top))
-                                                                               
                #("i4212"
-                                                                               
                  "i4213"
-                                                                               
                  "i4214"
-                                                                               
                  "i4215"
-                                                                               
                  "i4216"
-                                                                               
                  "i4217"
-                                                                               
                  "i4218"))
-                                                                               
              #(ribcage
-                                                                               
                ()
-                                                                               
                ()
-                                                                               
                ())
-                                                                               
              #(ribcage
-                                                                               
                #(orig-x)
-                                                                               
                #((top))
-                                                                               
                #("i4209")))
-                                                                               
             (hygiene
-                                                                               
               guile))
-                                                                               
          #{step\ 4230}#)))))))
-                                                       #{tmp\ 4232}#)
-                                                ((lambda (#{tmp\ 4237}#)
-                                                   (if #{tmp\ 4237}#
-                                                     (apply (lambda (#{e1\ 
4240}#
-                                                                     #{e2\ 
4241}#)
-                                                              (list 
'#(syntax-object
-                                                                       let
-                                                                       ((top)
-                                                                        
#(ribcage
-                                                                          #(e1
-                                                                            e2)
-                                                                          
#((top)
-                                                                            
(top))
-                                                                          
#("i4238"
-                                                                            
"i4239"))
-                                                                        
#(ribcage
-                                                                          
#(step)
-                                                                          
#((top))
-                                                                          
#("i4229"))
-                                                                        
#(ribcage
-                                                                          #(_
-                                                                            var
-                                                                            
init
-                                                                            
step
-                                                                            e0
-                                                                            e1
-                                                                            c)
-                                                                          
#((top)
-                                                                            
(top)
-                                                                            
(top)
-                                                                            
(top)
-                                                                            
(top)
-                                                                            
(top)
-                                                                            
(top))
-                                                                          
#("i4212"
-                                                                            
"i4213"
-                                                                            
"i4214"
-                                                                            
"i4215"
-                                                                            
"i4216"
-                                                                            
"i4217"
-                                                                            
"i4218"))
-                                                                        
#(ribcage
-                                                                          ()
-                                                                          ()
-                                                                          ())
-                                                                        
#(ribcage
-                                                                          
#(orig-x)
-                                                                          
#((top))
-                                                                          
#("i4209")))
-                                                                       (hygiene
-                                                                         
guile))
-                                                                    
'#(syntax-object
+    (lambda (#{orig-x\ 4277}#)
+      (let ((#{tmp\ 4279}# #{orig-x\ 4277}#))
+        (let ((#{tmp\ 4280}#
+                ($sc-dispatch
+                  #{tmp\ 4279}#
+                  '(any #(each (any any . any))
+                        (any . each-any)
+                        .
+                        each-any))))
+          (if #{tmp\ 4280}#
+            (@apply
+              (lambda (#{_\ 4288}#
+                       #{var\ 4289}#
+                       #{init\ 4290}#
+                       #{step\ 4291}#
+                       #{e0\ 4292}#
+                       #{e1\ 4293}#
+                       #{c\ 4294}#)
+                (let ((#{tmp\ 4296}#
+                        (map (lambda (#{v\ 4317}# #{s\ 4318}#)
+                               (let ((#{tmp\ 4321}# #{s\ 4318}#))
+                                 (let ((#{tmp\ 4322}#
+                                         ($sc-dispatch
+                                           #{tmp\ 4321}#
+                                           '())))
+                                   (if #{tmp\ 4322}#
+                                     (@apply
+                                       (lambda () #{v\ 4317}#)
+                                       #{tmp\ 4322}#)
+                                     (let ((#{tmp\ 4323}#
+                                             ($sc-dispatch
+                                               #{tmp\ 4321}#
+                                               '(any))))
+                                       (if #{tmp\ 4323}#
+                                         (@apply
+                                           (lambda (#{e\ 4325}#) #{e\ 4325}#)
+                                           #{tmp\ 4323}#)
+                                         (let ((#{_\ 4327}# #{tmp\ 4321}#))
+                                           (syntax-violation
+                                             'do
+                                             "bad step expression"
+                                             #{orig-x\ 4277}#
+                                             #{s\ 4318}#))))))))
+                             #{var\ 4289}#
+                             #{step\ 4291}#)))
+                  (let ((#{tmp\ 4297}#
+                          ($sc-dispatch #{tmp\ 4296}# (quote each-any))))
+                    (if #{tmp\ 4297}#
+                      (@apply
+                        (lambda (#{step\ 4299}#)
+                          (let ((#{tmp\ 4300}# #{e1\ 4293}#))
+                            (let ((#{tmp\ 4301}#
+                                    ($sc-dispatch #{tmp\ 4300}# (quote ()))))
+                              (if #{tmp\ 4301}#
+                                (@apply
+                                  (lambda ()
+                                    (list '#(syntax-object
+                                             let
+                                             ((top)
+                                              #(ribcage
+                                                #(step)
+                                                #((top))
+                                                #("i4298"))
+                                              #(ribcage
+                                                #(_ var init step e0 e1 c)
+                                                #((top)
+                                                  (top)
+                                                  (top)
+                                                  (top)
+                                                  (top)
+                                                  (top)
+                                                  (top))
+                                                #("i4281"
+                                                  "i4282"
+                                                  "i4283"
+                                                  "i4284"
+                                                  "i4285"
+                                                  "i4286"
+                                                  "i4287"))
+                                              #(ribcage () () ())
+                                              #(ribcage
+                                                #(orig-x)
+                                                #((top))
+                                                #("i4278")))
+                                             (hygiene guile))
+                                          '#(syntax-object
+                                             doloop
+                                             ((top)
+                                              #(ribcage
+                                                #(step)
+                                                #((top))
+                                                #("i4298"))
+                                              #(ribcage
+                                                #(_ var init step e0 e1 c)
+                                                #((top)
+                                                  (top)
+                                                  (top)
+                                                  (top)
+                                                  (top)
+                                                  (top)
+                                                  (top))
+                                                #("i4281"
+                                                  "i4282"
+                                                  "i4283"
+                                                  "i4284"
+                                                  "i4285"
+                                                  "i4286"
+                                                  "i4287"))
+                                              #(ribcage () () ())
+                                              #(ribcage
+                                                #(orig-x)
+                                                #((top))
+                                                #("i4278")))
+                                             (hygiene guile))
+                                          (map list
+                                               #{var\ 4289}#
+                                               #{init\ 4290}#)
+                                          (list '#(syntax-object
+                                                   if
+                                                   ((top)
+                                                    #(ribcage
+                                                      #(step)
+                                                      #((top))
+                                                      #("i4298"))
+                                                    #(ribcage
+                                                      #(_
+                                                        var
+                                                        init
+                                                        step
+                                                        e0
+                                                        e1
+                                                        c)
+                                                      #((top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top)
+                                                        (top))
+                                                      #("i4281"
+                                                        "i4282"
+                                                        "i4283"
+                                                        "i4284"
+                                                        "i4285"
+                                                        "i4286"
+                                                        "i4287"))
+                                                    #(ribcage () () ())
+                                                    #(ribcage
+                                                      #(orig-x)
+                                                      #((top))
+                                                      #("i4278")))
+                                                   (hygiene guile))
+                                                (list '#(syntax-object
+                                                         not
+                                                         ((top)
+                                                          #(ribcage
+                                                            #(step)
+                                                            #((top))
+                                                            #("i4298"))
+                                                          #(ribcage
+                                                            #(_
+                                                              var
+                                                              init
+                                                              step
+                                                              e0
+                                                              e1
+                                                              c)
+                                                            #((top)
+                                                              (top)
+                                                              (top)
+                                                              (top)
+                                                              (top)
+                                                              (top)
+                                                              (top))
+                                                            #("i4281"
+                                                              "i4282"
+                                                              "i4283"
+                                                              "i4284"
+                                                              "i4285"
+                                                              "i4286"
+                                                              "i4287"))
+                                                          #(ribcage () () ())
+                                                          #(ribcage
+                                                            #(orig-x)
+                                                            #((top))
+                                                            #("i4278")))
+                                                         (hygiene guile))
+                                                      #{e0\ 4292}#)
+                                                (cons '#(syntax-object
+                                                         begin
+                                                         ((top)
+                                                          #(ribcage
+                                                            #(step)
+                                                            #((top))
+                                                            #("i4298"))
+                                                          #(ribcage
+                                                            #(_
+                                                              var
+                                                              init
+                                                              step
+                                                              e0
+                                                              e1
+                                                              c)
+                                                            #((top)
+                                                              (top)
+                                                              (top)
+                                                              (top)
+                                                              (top)
+                                                              (top)
+                                                              (top))
+                                                            #("i4281"
+                                                              "i4282"
+                                                              "i4283"
+                                                              "i4284"
+                                                              "i4285"
+                                                              "i4286"
+                                                              "i4287"))
+                                                          #(ribcage () () ())
+                                                          #(ribcage
+                                                            #(orig-x)
+                                                            #((top))
+                                                            #("i4278")))
+                                                         (hygiene guile))
+                                                      (append
+                                                        #{c\ 4294}#
+                                                        (list (cons 
'#(syntax-object
                                                                        doloop
                                                                        ((top)
                                                                         
#(ribcage
-                                                                          #(e1
-                                                                            e2)
-                                                                          
#((top)
-                                                                            
(top))
-                                                                          
#("i4238"
-                                                                            
"i4239"))
-                                                                        
#(ribcage
                                                                           
#(step)
                                                                           
#((top))
-                                                                          
#("i4229"))
+                                                                          
#("i4298"))
                                                                         
#(ribcage
                                                                           #(_
                                                                             var
@@ -13858,13 +13912,13 @@
                                                                             
(top)
                                                                             
(top)
                                                                             
(top))
-                                                                          
#("i4212"
-                                                                            
"i4213"
-                                                                            
"i4214"
-                                                                            
"i4215"
-                                                                            
"i4216"
-                                                                            
"i4217"
-                                                                            
"i4218"))
+                                                                          
#("i4281"
+                                                                            
"i4282"
+                                                                            
"i4283"
+                                                                            
"i4284"
+                                                                            
"i4285"
+                                                                            
"i4286"
+                                                                            
"i4287"))
                                                                         
#(ribcage
                                                                           ()
                                                                           ()
@@ -13872,1858 +13926,1318 @@
                                                                         
#(ribcage
                                                                           
#(orig-x)
                                                                           
#((top))
-                                                                          
#("i4209")))
+                                                                          
#("i4278")))
                                                                        (hygiene
                                                                          
guile))
-                                                                    (map list
-                                                                         
#{var\ 4220}#
-                                                                         
#{init\ 4221}#)
-                                                                    (list 
'#(syntax-object
-                                                                             if
-                                                                             
((top)
-                                                                              
#(ribcage
-                                                                               
 #(e1
-                                                                               
   e2)
-                                                                               
 #((top)
-                                                                               
   (top))
-                                                                               
 #("i4238"
-                                                                               
   "i4239"))
-                                                                              
#(ribcage
-                                                                               
 #(step)
-                                                                               
 #((top))
-                                                                               
 #("i4229"))
-                                                                              
#(ribcage
-                                                                               
 #(_
-                                                                               
   var
-                                                                               
   init
-                                                                               
   step
-                                                                               
   e0
-                                                                               
   e1
-                                                                               
   c)
-                                                                               
 #((top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top))
-                                                                               
 #("i4212"
-                                                                               
   "i4213"
-                                                                               
   "i4214"
-                                                                               
   "i4215"
-                                                                               
   "i4216"
-                                                                               
   "i4217"
-                                                                               
   "i4218"))
-                                                                              
#(ribcage
-                                                                               
 ()
-                                                                               
 ()
-                                                                               
 ())
-                                                                              
#(ribcage
-                                                                               
 #(orig-x)
-                                                                               
 #((top))
-                                                                               
 #("i4209")))
-                                                                             
(hygiene
-                                                                               
guile))
-                                                                          
#{e0\ 4223}#
-                                                                          
(cons '#(syntax-object
-                                                                               
    begin
-                                                                               
    ((top)
-                                                                               
     #(ribcage
-                                                                               
       #(e1
-                                                                               
         e2)
-                                                                               
       #((top)
-                                                                               
         (top))
-                                                                               
       #("i4238"
-                                                                               
         "i4239"))
-                                                                               
     #(ribcage
-                                                                               
       #(step)
-                                                                               
       #((top))
-                                                                               
       #("i4229"))
-                                                                               
     #(ribcage
-                                                                               
       #(_
-                                                                               
         var
-                                                                               
         init
-                                                                               
         step
-                                                                               
         e0
-                                                                               
         e1
-                                                                               
         c)
-                                                                               
       #((top)
-                                                                               
         (top)
-                                                                               
         (top)
-                                                                               
         (top)
-                                                                               
         (top)
-                                                                               
         (top)
-                                                                               
         (top))
-                                                                               
       #("i4212"
-                                                                               
         "i4213"
-                                                                               
         "i4214"
-                                                                               
         "i4215"
-                                                                               
         "i4216"
-                                                                               
         "i4217"
-                                                                               
         "i4218"))
-                                                                               
     #(ribcage
-                                                                               
       ()
-                                                                               
       ()
-                                                                               
       ())
-                                                                               
     #(ribcage
-                                                                               
       #(orig-x)
-                                                                               
       #((top))
-                                                                               
       #("i4209")))
-                                                                               
    (hygiene
-                                                                               
      guile))
-                                                                               
 (cons #{e1\ 4240}#
-                                                                               
       #{e2\ 4241}#))
-                                                                          
(cons '#(syntax-object
-                                                                               
    begin
-                                                                               
    ((top)
-                                                                               
     #(ribcage
-                                                                               
       #(e1
-                                                                               
         e2)
-                                                                               
       #((top)
-                                                                               
         (top))
-                                                                               
       #("i4238"
-                                                                               
         "i4239"))
-                                                                               
     #(ribcage
-                                                                               
       #(step)
-                                                                               
       #((top))
-                                                                               
       #("i4229"))
-                                                                               
     #(ribcage
-                                                                               
       #(_
-                                                                               
         var
-                                                                               
         init
-                                                                               
         step
-                                                                               
         e0
-                                                                               
         e1
-                                                                               
         c)
-                                                                               
       #((top)
-                                                                               
         (top)
-                                                                               
         (top)
-                                                                               
         (top)
-                                                                               
         (top)
-                                                                               
         (top)
-                                                                               
         (top))
-                                                                               
       #("i4212"
-                                                                               
         "i4213"
-                                                                               
         "i4214"
-                                                                               
         "i4215"
-                                                                               
         "i4216"
-                                                                               
         "i4217"
-                                                                               
         "i4218"))
-                                                                               
     #(ribcage
-                                                                               
       ()
-                                                                               
       ()
-                                                                               
       ())
-                                                                               
     #(ribcage
-                                                                               
       #(orig-x)
-                                                                               
       #((top))
-                                                                               
       #("i4209")))
-                                                                               
    (hygiene
-                                                                               
      guile))
-                                                                               
 (append
-                                                                               
   #{c\ 4225}#
-                                                                               
   (list (cons '#(syntax-object
-                                                                               
                  doloop
-                                                                               
                  ((top)
-                                                                               
                   #(ribcage
-                                                                               
                     #(e1
-                                                                               
                       e2)
-                                                                               
                     #((top)
-                                                                               
                       (top))
-                                                                               
                     #("i4238"
-                                                                               
                       "i4239"))
-                                                                               
                   #(ribcage
-                                                                               
                     #(step)
-                                                                               
                     #((top))
-                                                                               
                     #("i4229"))
-                                                                               
                   #(ribcage
-                                                                               
                     #(_
-                                                                               
                       var
-                                                                               
                       init
-                                                                               
                       step
-                                                                               
                       e0
-                                                                               
                       e1
-                                                                               
                       c)
-                                                                               
                     #((top)
-                                                                               
                       (top)
-                                                                               
                       (top)
-                                                                               
                       (top)
-                                                                               
                       (top)
-                                                                               
                       (top)
-                                                                               
                       (top))
-                                                                               
                     #("i4212"
-                                                                               
                       "i4213"
-                                                                               
                       "i4214"
-                                                                               
                       "i4215"
-                                                                               
                       "i4216"
-                                                                               
                       "i4217"
-                                                                               
                       "i4218"))
-                                                                               
                   #(ribcage
-                                                                               
                     ()
-                                                                               
                     ()
-                                                                               
                     ())
-                                                                               
                   #(ribcage
-                                                                               
                     #(orig-x)
-                                                                               
                     #((top))
-                                                                               
                     #("i4209")))
-                                                                               
                  (hygiene
-                                                                               
                    guile))
-                                                                               
               #{step\ 4230}#)))))))
-                                                            #{tmp\ 4237}#)
-                                                     (syntax-violation
-                                                       #f
-                                                       "source expression 
failed to match any pattern"
-                                                       #{tmp\ 4231}#)))
-                                                 ($sc-dispatch
-                                                   #{tmp\ 4231}#
-                                                   '(any . each-any)))))
-                                            ($sc-dispatch
-                                              #{tmp\ 4231}#
-                                              '())))
-                                         #{e1\ 4224}#))
-                                      #{tmp\ 4228}#)
-                               (syntax-violation
-                                 #f
-                                 "source expression failed to match any 
pattern"
-                                 #{tmp\ 4227}#)))
-                           ($sc-dispatch #{tmp\ 4227}# (quote each-any))))
-                        (map (lambda (#{v\ 4248}# #{s\ 4249}#)
-                               ((lambda (#{tmp\ 4252}#)
-                                  ((lambda (#{tmp\ 4253}#)
-                                     (if #{tmp\ 4253}#
-                                       (apply (lambda () #{v\ 4248}#)
-                                              #{tmp\ 4253}#)
-                                       ((lambda (#{tmp\ 4254}#)
-                                          (if #{tmp\ 4254}#
-                                            (apply (lambda (#{e\ 4256}#)
-                                                     #{e\ 4256}#)
-                                                   #{tmp\ 4254}#)
-                                            ((lambda (#{_\ 4258}#)
-                                               (syntax-violation
-                                                 'do
-                                                 "bad step expression"
-                                                 #{orig-x\ 4208}#
-                                                 #{s\ 4249}#))
-                                             #{tmp\ 4252}#)))
+                                                                    #{step\ 
4299}#)))))))
+                                  #{tmp\ 4301}#)
+                                (let ((#{tmp\ 4306}#
                                         ($sc-dispatch
-                                          #{tmp\ 4252}#
-                                          '(any)))))
-                                   ($sc-dispatch #{tmp\ 4252}# (quote ()))))
-                                #{s\ 4249}#))
-                             #{var\ 4220}#
-                             #{step\ 4222}#)))
-                     #{tmp\ 4211}#)
-              (syntax-violation
-                #f
-                "source expression failed to match any pattern"
-                #{tmp\ 4210}#)))
-          ($sc-dispatch
-            #{tmp\ 4210}#
-            '(any #(each (any any . any))
-                  (any . each-any)
-                  .
-                  each-any))))
-       #{orig-x\ 4208}#))))
+                                          #{tmp\ 4300}#
+                                          '(any . each-any))))
+                                  (if #{tmp\ 4306}#
+                                    (@apply
+                                      (lambda (#{e1\ 4309}# #{e2\ 4310}#)
+                                        (list '#(syntax-object
+                                                 let
+                                                 ((top)
+                                                  #(ribcage
+                                                    #(e1 e2)
+                                                    #((top) (top))
+                                                    #("i4307" "i4308"))
+                                                  #(ribcage
+                                                    #(step)
+                                                    #((top))
+                                                    #("i4298"))
+                                                  #(ribcage
+                                                    #(_ var init step e0 e1 c)
+                                                    #((top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top))
+                                                    #("i4281"
+                                                      "i4282"
+                                                      "i4283"
+                                                      "i4284"
+                                                      "i4285"
+                                                      "i4286"
+                                                      "i4287"))
+                                                  #(ribcage () () ())
+                                                  #(ribcage
+                                                    #(orig-x)
+                                                    #((top))
+                                                    #("i4278")))
+                                                 (hygiene guile))
+                                              '#(syntax-object
+                                                 doloop
+                                                 ((top)
+                                                  #(ribcage
+                                                    #(e1 e2)
+                                                    #((top) (top))
+                                                    #("i4307" "i4308"))
+                                                  #(ribcage
+                                                    #(step)
+                                                    #((top))
+                                                    #("i4298"))
+                                                  #(ribcage
+                                                    #(_ var init step e0 e1 c)
+                                                    #((top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top)
+                                                      (top))
+                                                    #("i4281"
+                                                      "i4282"
+                                                      "i4283"
+                                                      "i4284"
+                                                      "i4285"
+                                                      "i4286"
+                                                      "i4287"))
+                                                  #(ribcage () () ())
+                                                  #(ribcage
+                                                    #(orig-x)
+                                                    #((top))
+                                                    #("i4278")))
+                                                 (hygiene guile))
+                                              (map list
+                                                   #{var\ 4289}#
+                                                   #{init\ 4290}#)
+                                              (list '#(syntax-object
+                                                       if
+                                                       ((top)
+                                                        #(ribcage
+                                                          #(e1 e2)
+                                                          #((top) (top))
+                                                          #("i4307" "i4308"))
+                                                        #(ribcage
+                                                          #(step)
+                                                          #((top))
+                                                          #("i4298"))
+                                                        #(ribcage
+                                                          #(_
+                                                            var
+                                                            init
+                                                            step
+                                                            e0
+                                                            e1
+                                                            c)
+                                                          #((top)
+                                                            (top)
+                                                            (top)
+                                                            (top)
+                                                            (top)
+                                                            (top)
+                                                            (top))
+                                                          #("i4281"
+                                                            "i4282"
+                                                            "i4283"
+                                                            "i4284"
+                                                            "i4285"
+                                                            "i4286"
+                                                            "i4287"))
+                                                        #(ribcage () () ())
+                                                        #(ribcage
+                                                          #(orig-x)
+                                                          #((top))
+                                                          #("i4278")))
+                                                       (hygiene guile))
+                                                    #{e0\ 4292}#
+                                                    (cons '#(syntax-object
+                                                             begin
+                                                             ((top)
+                                                              #(ribcage
+                                                                #(e1 e2)
+                                                                #((top) (top))
+                                                                #("i4307"
+                                                                  "i4308"))
+                                                              #(ribcage
+                                                                #(step)
+                                                                #((top))
+                                                                #("i4298"))
+                                                              #(ribcage
+                                                                #(_
+                                                                  var
+                                                                  init
+                                                                  step
+                                                                  e0
+                                                                  e1
+                                                                  c)
+                                                                #((top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top))
+                                                                #("i4281"
+                                                                  "i4282"
+                                                                  "i4283"
+                                                                  "i4284"
+                                                                  "i4285"
+                                                                  "i4286"
+                                                                  "i4287"))
+                                                              #(ribcage
+                                                                ()
+                                                                ()
+                                                                ())
+                                                              #(ribcage
+                                                                #(orig-x)
+                                                                #((top))
+                                                                #("i4278")))
+                                                             (hygiene guile))
+                                                          (cons #{e1\ 4309}#
+                                                                #{e2\ 4310}#))
+                                                    (cons '#(syntax-object
+                                                             begin
+                                                             ((top)
+                                                              #(ribcage
+                                                                #(e1 e2)
+                                                                #((top) (top))
+                                                                #("i4307"
+                                                                  "i4308"))
+                                                              #(ribcage
+                                                                #(step)
+                                                                #((top))
+                                                                #("i4298"))
+                                                              #(ribcage
+                                                                #(_
+                                                                  var
+                                                                  init
+                                                                  step
+                                                                  e0
+                                                                  e1
+                                                                  c)
+                                                                #((top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top)
+                                                                  (top))
+                                                                #("i4281"
+                                                                  "i4282"
+                                                                  "i4283"
+                                                                  "i4284"
+                                                                  "i4285"
+                                                                  "i4286"
+                                                                  "i4287"))
+                                                              #(ribcage
+                                                                ()
+                                                                ()
+                                                                ())
+                                                              #(ribcage
+                                                                #(orig-x)
+                                                                #((top))
+                                                                #("i4278")))
+                                                             (hygiene guile))
+                                                          (append
+                                                            #{c\ 4294}#
+                                                            (list (cons 
'#(syntax-object
+                                                                           
doloop
+                                                                           
((top)
+                                                                            
#(ribcage
+                                                                              
#(e1
+                                                                               
 e2)
+                                                                              
#((top)
+                                                                               
 (top))
+                                                                              
#("i4307"
+                                                                               
 "i4308"))
+                                                                            
#(ribcage
+                                                                              
#(step)
+                                                                              
#((top))
+                                                                              
#("i4298"))
+                                                                            
#(ribcage
+                                                                              
#(_
+                                                                               
 var
+                                                                               
 init
+                                                                               
 step
+                                                                               
 e0
+                                                                               
 e1
+                                                                               
 c)
+                                                                              
#((top)
+                                                                               
 (top)
+                                                                               
 (top)
+                                                                               
 (top)
+                                                                               
 (top)
+                                                                               
 (top)
+                                                                               
 (top))
+                                                                              
#("i4281"
+                                                                               
 "i4282"
+                                                                               
 "i4283"
+                                                                               
 "i4284"
+                                                                               
 "i4285"
+                                                                               
 "i4286"
+                                                                               
 "i4287"))
+                                                                            
#(ribcage
+                                                                              
()
+                                                                              
()
+                                                                              
())
+                                                                            
#(ribcage
+                                                                              
#(orig-x)
+                                                                              
#((top))
+                                                                              
#("i4278")))
+                                                                           
(hygiene
+                                                                             
guile))
+                                                                        
#{step\ 4299}#)))))))
+                                      #{tmp\ 4306}#)
+                                    (syntax-violation
+                                      #f
+                                      "source expression failed to match any 
pattern"
+                                      #{tmp\ 4300}#)))))))
+                        #{tmp\ 4297}#)
+                      (syntax-violation
+                        #f
+                        "source expression failed to match any pattern"
+                        #{tmp\ 4296}#)))))
+              #{tmp\ 4280}#)
+            (syntax-violation
+              #f
+              "source expression failed to match any pattern"
+              #{tmp\ 4279}#)))))))
 
 (define quasiquote
   (make-syntax-transformer
     'quasiquote
     'macro
-    (letrec ((#{quasicons\ 4265}#
-               (lambda (#{x\ 4269}# #{y\ 4270}#)
-                 ((lambda (#{tmp\ 4274}#)
-                    ((lambda (#{tmp\ 4275}#)
-                       (if #{tmp\ 4275}#
-                         (apply (lambda (#{x\ 4278}# #{y\ 4279}#)
-                                  ((lambda (#{tmp\ 4280}#)
-                                     ((lambda (#{tmp\ 4281}#)
-                                        (if #{tmp\ 4281}#
-                                          (apply (lambda (#{dy\ 4283}#)
-                                                   ((lambda (#{tmp\ 4284}#)
-                                                      ((lambda (#{tmp\ 4285}#)
-                                                         (if #{tmp\ 4285}#
-                                                           (apply (lambda 
(#{dx\ 4287}#)
-                                                                    (list 
'#(syntax-object
-                                                                             
quote
-                                                                             
((top)
-                                                                              
#(ribcage
-                                                                               
 #(dx)
-                                                                               
 #((top))
-                                                                               
 #("i4286"))
-                                                                              
#(ribcage
-                                                                               
 #(dy)
-                                                                               
 #((top))
-                                                                               
 #("i4282"))
-                                                                              
#(ribcage
-                                                                               
 #(x
-                                                                               
   y)
-                                                                               
 #((top)
-                                                                               
   (top))
-                                                                               
 #("i4276"
-                                                                               
   "i4277"))
-                                                                              
#(ribcage
-                                                                               
 ()
-                                                                               
 ()
-                                                                               
 ())
-                                                                              
#(ribcage
-                                                                               
 ()
-                                                                               
 ()
-                                                                               
 ())
-                                                                              
#(ribcage
-                                                                               
 #(x
-                                                                               
   y)
-                                                                               
 #((top)
-                                                                               
   (top))
-                                                                               
 #("i4271"
-                                                                               
   "i4272"))
-                                                                              
#(ribcage
-                                                                               
 #(quasicons
-                                                                               
   quasiappend
-                                                                               
   quasivector
-                                                                               
   quasi)
-                                                                               
 #((top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top))
-                                                                               
 #("i4261"
-                                                                               
   "i4262"
-                                                                               
   "i4263"
-                                                                               
   "i4264")))
-                                                                             
(hygiene
-                                                                               
guile))
-                                                                          
(cons #{dx\ 4287}#
-                                                                               
 #{dy\ 4283}#)))
-                                                                  #{tmp\ 
4285}#)
-                                                           ((lambda (#{_\ 
4289}#)
-                                                              (if (null? #{dy\ 
4283}#)
-                                                                (list 
'#(syntax-object
-                                                                         list
-                                                                         ((top)
-                                                                          
#(ribcage
-                                                                            
#(_)
-                                                                            
#((top))
-                                                                            
#("i4288"))
-                                                                          
#(ribcage
-                                                                            
#(dy)
-                                                                            
#((top))
-                                                                            
#("i4282"))
-                                                                          
#(ribcage
-                                                                            #(x
-                                                                              
y)
-                                                                            
#((top)
-                                                                              
(top))
-                                                                            
#("i4276"
-                                                                              
"i4277"))
-                                                                          
#(ribcage
-                                                                            ()
-                                                                            ()
-                                                                            ())
-                                                                          
#(ribcage
-                                                                            ()
-                                                                            ()
-                                                                            ())
-                                                                          
#(ribcage
-                                                                            #(x
-                                                                              
y)
-                                                                            
#((top)
-                                                                              
(top))
-                                                                            
#("i4271"
-                                                                              
"i4272"))
-                                                                          
#(ribcage
-                                                                            
#(quasicons
-                                                                              
quasiappend
-                                                                              
quasivector
-                                                                              
quasi)
-                                                                            
#((top)
-                                                                              
(top)
-                                                                              
(top)
-                                                                              
(top))
-                                                                            
#("i4261"
-                                                                              
"i4262"
-                                                                              
"i4263"
-                                                                              
"i4264")))
-                                                                         
(hygiene
-                                                                           
guile))
-                                                                      #{x\ 
4278}#)
-                                                                (list 
'#(syntax-object
-                                                                         cons
-                                                                         ((top)
-                                                                          
#(ribcage
-                                                                            
#(_)
-                                                                            
#((top))
-                                                                            
#("i4288"))
-                                                                          
#(ribcage
-                                                                            
#(dy)
-                                                                            
#((top))
-                                                                            
#("i4282"))
-                                                                          
#(ribcage
-                                                                            #(x
-                                                                              
y)
-                                                                            
#((top)
-                                                                              
(top))
-                                                                            
#("i4276"
-                                                                              
"i4277"))
-                                                                          
#(ribcage
-                                                                            ()
-                                                                            ()
-                                                                            ())
-                                                                          
#(ribcage
-                                                                            ()
-                                                                            ()
-                                                                            ())
-                                                                          
#(ribcage
-                                                                            #(x
-                                                                              
y)
-                                                                            
#((top)
-                                                                              
(top))
-                                                                            
#("i4271"
-                                                                              
"i4272"))
-                                                                          
#(ribcage
-                                                                            
#(quasicons
-                                                                              
quasiappend
-                                                                              
quasivector
-                                                                              
quasi)
-                                                                            
#((top)
-                                                                              
(top)
-                                                                              
(top)
-                                                                              
(top))
-                                                                            
#("i4261"
-                                                                              
"i4262"
-                                                                              
"i4263"
-                                                                              
"i4264")))
-                                                                         
(hygiene
-                                                                           
guile))
-                                                                      #{x\ 
4278}#
-                                                                      #{y\ 
4279}#)))
-                                                            #{tmp\ 4284}#)))
-                                                       ($sc-dispatch
-                                                         #{tmp\ 4284}#
-                                                         '(#(free-id
-                                                             #(syntax-object
-                                                               quote
-                                                               ((top)
-                                                                #(ribcage
-                                                                  #(dy)
-                                                                  #((top))
-                                                                  #("i4282"))
-                                                                #(ribcage
-                                                                  #(x y)
-                                                                  #((top)
-                                                                    (top))
-                                                                  #("i4276"
-                                                                    "i4277"))
-                                                                #(ribcage
-                                                                  ()
-                                                                  ()
-                                                                  ())
-                                                                #(ribcage
-                                                                  ()
-                                                                  ()
-                                                                  ())
-                                                                #(ribcage
-                                                                  #(x y)
-                                                                  #((top)
-                                                                    (top))
-                                                                  #("i4271"
-                                                                    "i4272"))
-                                                                #(ribcage
-                                                                  #(quasicons
-                                                                    quasiappend
-                                                                    quasivector
-                                                                    quasi)
-                                                                  #((top)
-                                                                    (top)
-                                                                    (top)
-                                                                    (top))
-                                                                  #("i4261"
-                                                                    "i4262"
-                                                                    "i4263"
-                                                                    "i4264")))
-                                                               (hygiene
-                                                                 guile)))
-                                                           any))))
-                                                    #{x\ 4278}#))
-                                                 #{tmp\ 4281}#)
-                                          ((lambda (#{tmp\ 4290}#)
-                                             (if #{tmp\ 4290}#
-                                               (apply (lambda (#{stuff\ 4292}#)
-                                                        (cons '#(syntax-object
-                                                                 list
-                                                                 ((top)
-                                                                  #(ribcage
-                                                                    #(stuff)
-                                                                    #((top))
-                                                                    #("i4291"))
-                                                                  #(ribcage
-                                                                    #(x y)
-                                                                    #((top)
-                                                                      (top))
-                                                                    #("i4276"
-                                                                      "i4277"))
-                                                                  #(ribcage
-                                                                    ()
-                                                                    ()
-                                                                    ())
-                                                                  #(ribcage
-                                                                    ()
-                                                                    ()
-                                                                    ())
-                                                                  #(ribcage
-                                                                    #(x y)
-                                                                    #((top)
-                                                                      (top))
-                                                                    #("i4271"
-                                                                      "i4272"))
-                                                                  #(ribcage
-                                                                    #(quasicons
-                                                                      
quasiappend
-                                                                      
quasivector
-                                                                      quasi)
-                                                                    #((top)
-                                                                      (top)
-                                                                      (top)
-                                                                      (top))
-                                                                    #("i4261"
-                                                                      "i4262"
-                                                                      "i4263"
-                                                                      
"i4264")))
-                                                                 (hygiene
-                                                                   guile))
-                                                              (cons #{x\ 4278}#
-                                                                    #{stuff\ 
4292}#)))
-                                                      #{tmp\ 4290}#)
-                                               ((lambda (#{else\ 4294}#)
-                                                  (list '#(syntax-object
-                                                           cons
-                                                           ((top)
-                                                            #(ribcage
-                                                              #(else)
-                                                              #((top))
-                                                              #("i4293"))
-                                                            #(ribcage
-                                                              #(x y)
-                                                              #((top) (top))
-                                                              #("i4276"
-                                                                "i4277"))
-                                                            #(ribcage () () ())
-                                                            #(ribcage () () ())
-                                                            #(ribcage
-                                                              #(x y)
-                                                              #((top) (top))
-                                                              #("i4271"
-                                                                "i4272"))
-                                                            #(ribcage
-                                                              #(quasicons
-                                                                quasiappend
-                                                                quasivector
-                                                                quasi)
-                                                              #((top)
-                                                                (top)
-                                                                (top)
-                                                                (top))
-                                                              #("i4261"
-                                                                "i4262"
-                                                                "i4263"
-                                                                "i4264")))
-                                                           (hygiene guile))
-                                                        #{x\ 4278}#
-                                                        #{y\ 4279}#))
-                                                #{tmp\ 4280}#)))
-                                           ($sc-dispatch
-                                             #{tmp\ 4280}#
-                                             '(#(free-id
-                                                 #(syntax-object
-                                                   list
-                                                   ((top)
-                                                    #(ribcage
-                                                      #(x y)
-                                                      #((top) (top))
-                                                      #("i4276" "i4277"))
-                                                    #(ribcage () () ())
-                                                    #(ribcage () () ())
-                                                    #(ribcage
-                                                      #(x y)
-                                                      #((top) (top))
-                                                      #("i4271" "i4272"))
-                                                    #(ribcage
-                                                      #(quasicons
-                                                        quasiappend
-                                                        quasivector
-                                                        quasi)
-                                                      #((top)
-                                                        (top)
-                                                        (top)
-                                                        (top))
-                                                      #("i4261"
-                                                        "i4262"
-                                                        "i4263"
-                                                        "i4264")))
-                                                   (hygiene guile)))
-                                               .
-                                               any)))))
-                                      ($sc-dispatch
-                                        #{tmp\ 4280}#
-                                        '(#(free-id
-                                            #(syntax-object
-                                              quote
-                                              ((top)
-                                               #(ribcage
-                                                 #(x y)
-                                                 #((top) (top))
-                                                 #("i4276" "i4277"))
-                                               #(ribcage () () ())
-                                               #(ribcage () () ())
-                                               #(ribcage
-                                                 #(x y)
-                                                 #((top) (top))
-                                                 #("i4271" "i4272"))
-                                               #(ribcage
-                                                 #(quasicons
-                                                   quasiappend
-                                                   quasivector
-                                                   quasi)
-                                                 #((top) (top) (top) (top))
-                                                 #("i4261"
-                                                   "i4262"
-                                                   "i4263"
-                                                   "i4264")))
-                                              (hygiene guile)))
-                                          any))))
-                                   #{y\ 4279}#))
-                                #{tmp\ 4275}#)
-                         (syntax-violation
-                           #f
-                           "source expression failed to match any pattern"
-                           #{tmp\ 4274}#)))
-                     ($sc-dispatch #{tmp\ 4274}# (quote (any any)))))
-                  (list #{x\ 4269}# #{y\ 4270}#))))
-             (#{quasiappend\ 4266}#
-               (lambda (#{x\ 4295}# #{y\ 4296}#)
-                 ((lambda (#{tmp\ 4300}#)
-                    ((lambda (#{tmp\ 4301}#)
-                       (if #{tmp\ 4301}#
-                         (apply (lambda (#{x\ 4304}# #{y\ 4305}#)
-                                  ((lambda (#{tmp\ 4306}#)
-                                     ((lambda (#{tmp\ 4307}#)
-                                        (if #{tmp\ 4307}#
-                                          (apply (lambda () #{x\ 4304}#)
-                                                 #{tmp\ 4307}#)
-                                          ((lambda (#{_\ 4309}#)
-                                             (list '#(syntax-object
-                                                      append
-                                                      ((top)
-                                                       #(ribcage
-                                                         #(_)
-                                                         #((top))
-                                                         #("i4308"))
-                                                       #(ribcage
-                                                         #(x y)
-                                                         #((top) (top))
-                                                         #("i4302" "i4303"))
-                                                       #(ribcage () () ())
-                                                       #(ribcage () () ())
-                                                       #(ribcage
-                                                         #(x y)
-                                                         #((top) (top))
-                                                         #("i4297" "i4298"))
-                                                       #(ribcage
-                                                         #(quasicons
-                                                           quasiappend
-                                                           quasivector
-                                                           quasi)
-                                                         #((top)
-                                                           (top)
-                                                           (top)
-                                                           (top))
-                                                         #("i4261"
-                                                           "i4262"
-                                                           "i4263"
-                                                           "i4264")))
-                                                      (hygiene guile))
-                                                   #{x\ 4304}#
-                                                   #{y\ 4305}#))
-                                           #{tmp\ 4306}#)))
-                                      ($sc-dispatch
-                                        #{tmp\ 4306}#
-                                        '(#(free-id
-                                            #(syntax-object
-                                              quote
-                                              ((top)
-                                               #(ribcage
-                                                 #(x y)
-                                                 #((top) (top))
-                                                 #("i4302" "i4303"))
-                                               #(ribcage () () ())
-                                               #(ribcage () () ())
-                                               #(ribcage
-                                                 #(x y)
-                                                 #((top) (top))
-                                                 #("i4297" "i4298"))
-                                               #(ribcage
-                                                 #(quasicons
-                                                   quasiappend
-                                                   quasivector
-                                                   quasi)
-                                                 #((top) (top) (top) (top))
-                                                 #("i4261"
-                                                   "i4262"
-                                                   "i4263"
-                                                   "i4264")))
-                                              (hygiene guile)))
-                                          ()))))
-                                   #{y\ 4305}#))
-                                #{tmp\ 4301}#)
-                         (syntax-violation
-                           #f
-                           "source expression failed to match any pattern"
-                           #{tmp\ 4300}#)))
-                     ($sc-dispatch #{tmp\ 4300}# (quote (any any)))))
-                  (list #{x\ 4295}# #{y\ 4296}#))))
-             (#{quasivector\ 4267}#
-               (lambda (#{x\ 4310}#)
-                 ((lambda (#{tmp\ 4313}#)
-                    ((lambda (#{x\ 4315}#)
-                       ((lambda (#{tmp\ 4316}#)
-                          ((lambda (#{tmp\ 4317}#)
-                             (if #{tmp\ 4317}#
-                               (apply (lambda (#{x\ 4319}#)
-                                        (list '#(syntax-object
+    (letrec*
+      ((#{quasicons\ 4334}#
+         (lambda (#{x\ 4338}# #{y\ 4339}#)
+           (let ((#{tmp\ 4343}# (list #{x\ 4338}# #{y\ 4339}#)))
+             (let ((#{tmp\ 4344}#
+                     ($sc-dispatch #{tmp\ 4343}# (quote (any any)))))
+               (if #{tmp\ 4344}#
+                 (@apply
+                   (lambda (#{x\ 4347}# #{y\ 4348}#)
+                     (let ((#{tmp\ 4349}# #{y\ 4348}#))
+                       (let ((#{tmp\ 4350}#
+                               ($sc-dispatch
+                                 #{tmp\ 4349}#
+                                 '(#(free-id
+                                     #(syntax-object
+                                       quote
+                                       ((top)
+                                        #(ribcage
+                                          #(x y)
+                                          #((top) (top))
+                                          #("i4345" "i4346"))
+                                        #(ribcage () () ())
+                                        #(ribcage () () ())
+                                        #(ribcage
+                                          #(x y)
+                                          #((top) (top))
+                                          #("i4340" "i4341"))
+                                        #(ribcage
+                                          #(quasicons
+                                            quasiappend
+                                            quasivector
+                                            quasi)
+                                          #((top) (top) (top) (top))
+                                          #("i4330" "i4331" "i4332" "i4333")))
+                                       (hygiene guile)))
+                                   any))))
+                         (if #{tmp\ 4350}#
+                           (@apply
+                             (lambda (#{dy\ 4352}#)
+                               (let ((#{tmp\ 4353}# #{x\ 4347}#))
+                                 (let ((#{tmp\ 4354}#
+                                         ($sc-dispatch
+                                           #{tmp\ 4353}#
+                                           '(#(free-id
+                                               #(syntax-object
                                                  quote
                                                  ((top)
                                                   #(ribcage
-                                                    #(x)
+                                                    #(dy)
                                                     #((top))
-                                                    #("i4318"))
+                                                    #("i4351"))
                                                   #(ribcage
-                                                    #(x)
-                                                    #((top))
-                                                    #("i4314"))
+                                                    #(x y)
+                                                    #((top) (top))
+                                                    #("i4345" "i4346"))
                                                   #(ribcage () () ())
                                                   #(ribcage () () ())
                                                   #(ribcage
-                                                    #(x)
-                                                    #((top))
-                                                    #("i4311"))
+                                                    #(x y)
+                                                    #((top) (top))
+                                                    #("i4340" "i4341"))
                                                   #(ribcage
                                                     #(quasicons
                                                       quasiappend
                                                       quasivector
                                                       quasi)
                                                     #((top) (top) (top) (top))
-                                                    #("i4261"
-                                                      "i4262"
-                                                      "i4263"
-                                                      "i4264")))
-                                                 (hygiene guile))
-                                              (list->vector #{x\ 4319}#)))
-                                      #{tmp\ 4317}#)
-                               ((lambda (#{tmp\ 4321}#)
-                                  (if #{tmp\ 4321}#
-                                    (apply (lambda (#{x\ 4323}#)
-                                             (cons '#(syntax-object
-                                                      vector
-                                                      ((top)
-                                                       #(ribcage
-                                                         #(x)
-                                                         #((top))
-                                                         #("i4322"))
-                                                       #(ribcage
-                                                         #(x)
-                                                         #((top))
-                                                         #("i4314"))
-                                                       #(ribcage () () ())
-                                                       #(ribcage () () ())
-                                                       #(ribcage
-                                                         #(x)
-                                                         #((top))
-                                                         #("i4311"))
-                                                       #(ribcage
-                                                         #(quasicons
-                                                           quasiappend
-                                                           quasivector
-                                                           quasi)
-                                                         #((top)
-                                                           (top)
-                                                           (top)
-                                                           (top))
-                                                         #("i4261"
-                                                           "i4262"
-                                                           "i4263"
-                                                           "i4264")))
-                                                      (hygiene guile))
-                                                   #{x\ 4323}#))
-                                           #{tmp\ 4321}#)
-                                    ((lambda (#{_\ 4326}#)
-                                       (list '#(syntax-object
-                                                list->vector
-                                                ((top)
-                                                 #(ribcage
-                                                   #(_)
-                                                   #((top))
-                                                   #("i4325"))
-                                                 #(ribcage
-                                                   #(x)
-                                                   #((top))
-                                                   #("i4314"))
-                                                 #(ribcage () () ())
-                                                 #(ribcage () () ())
-                                                 #(ribcage
-                                                   #(x)
-                                                   #((top))
-                                                   #("i4311"))
-                                                 #(ribcage
-                                                   #(quasicons
-                                                     quasiappend
-                                                     quasivector
-                                                     quasi)
-                                                   #((top) (top) (top) (top))
-                                                   #("i4261"
-                                                     "i4262"
-                                                     "i4263"
-                                                     "i4264")))
-                                                (hygiene guile))
-                                             #{x\ 4315}#))
-                                     #{tmp\ 4316}#)))
-                                ($sc-dispatch
-                                  #{tmp\ 4316}#
-                                  '(#(free-id
-                                      #(syntax-object
-                                        list
-                                        ((top)
-                                         #(ribcage #(x) #((top)) #("i4314"))
-                                         #(ribcage () () ())
-                                         #(ribcage () () ())
-                                         #(ribcage #(x) #((top)) #("i4311"))
-                                         #(ribcage
-                                           #(quasicons
-                                             quasiappend
-                                             quasivector
-                                             quasi)
-                                           #((top) (top) (top) (top))
-                                           #("i4261" "i4262" "i4263" "i4264")))
-                                        (hygiene guile)))
-                                    .
-                                    each-any)))))
-                           ($sc-dispatch
-                             #{tmp\ 4316}#
-                             '(#(free-id
-                                 #(syntax-object
-                                   quote
-                                   ((top)
-                                    #(ribcage #(x) #((top)) #("i4314"))
-                                    #(ribcage () () ())
-                                    #(ribcage () () ())
-                                    #(ribcage #(x) #((top)) #("i4311"))
-                                    #(ribcage
-                                      #(quasicons
-                                        quasiappend
-                                        quasivector
-                                        quasi)
-                                      #((top) (top) (top) (top))
-                                      #("i4261" "i4262" "i4263" "i4264")))
-                                   (hygiene guile)))
-                               each-any))))
-                        #{x\ 4315}#))
-                     #{tmp\ 4313}#))
-                  #{x\ 4310}#)))
-             (#{quasi\ 4268}#
-               (lambda (#{p\ 4327}# #{lev\ 4328}#)
-                 ((lambda (#{tmp\ 4331}#)
-                    ((lambda (#{tmp\ 4332}#)
-                       (if #{tmp\ 4332}#
-                         (apply (lambda (#{p\ 4334}#)
-                                  (if (= #{lev\ 4328}# 0)
-                                    #{p\ 4334}#
-                                    (#{quasicons\ 4265}#
-                                      '(#(syntax-object
-                                          quote
+                                                    #("i4330"
+                                                      "i4331"
+                                                      "i4332"
+                                                      "i4333")))
+                                                 (hygiene guile)))
+                                             any))))
+                                   (if #{tmp\ 4354}#
+                                     (@apply
+                                       (lambda (#{dx\ 4356}#)
+                                         (list '#(syntax-object
+                                                  quote
+                                                  ((top)
+                                                   #(ribcage
+                                                     #(dx)
+                                                     #((top))
+                                                     #("i4355"))
+                                                   #(ribcage
+                                                     #(dy)
+                                                     #((top))
+                                                     #("i4351"))
+                                                   #(ribcage
+                                                     #(x y)
+                                                     #((top) (top))
+                                                     #("i4345" "i4346"))
+                                                   #(ribcage () () ())
+                                                   #(ribcage () () ())
+                                                   #(ribcage
+                                                     #(x y)
+                                                     #((top) (top))
+                                                     #("i4340" "i4341"))
+                                                   #(ribcage
+                                                     #(quasicons
+                                                       quasiappend
+                                                       quasivector
+                                                       quasi)
+                                                     #((top) (top) (top) (top))
+                                                     #("i4330"
+                                                       "i4331"
+                                                       "i4332"
+                                                       "i4333")))
+                                                  (hygiene guile))
+                                               (cons #{dx\ 4356}#
+                                                     #{dy\ 4352}#)))
+                                       #{tmp\ 4354}#)
+                                     (let ((#{_\ 4358}# #{tmp\ 4353}#))
+                                       (if (null? #{dy\ 4352}#)
+                                         (list '#(syntax-object
+                                                  list
+                                                  ((top)
+                                                   #(ribcage
+                                                     #(_)
+                                                     #((top))
+                                                     #("i4357"))
+                                                   #(ribcage
+                                                     #(dy)
+                                                     #((top))
+                                                     #("i4351"))
+                                                   #(ribcage
+                                                     #(x y)
+                                                     #((top) (top))
+                                                     #("i4345" "i4346"))
+                                                   #(ribcage () () ())
+                                                   #(ribcage () () ())
+                                                   #(ribcage
+                                                     #(x y)
+                                                     #((top) (top))
+                                                     #("i4340" "i4341"))
+                                                   #(ribcage
+                                                     #(quasicons
+                                                       quasiappend
+                                                       quasivector
+                                                       quasi)
+                                                     #((top) (top) (top) (top))
+                                                     #("i4330"
+                                                       "i4331"
+                                                       "i4332"
+                                                       "i4333")))
+                                                  (hygiene guile))
+                                               #{x\ 4347}#)
+                                         (list '#(syntax-object
+                                                  cons
+                                                  ((top)
+                                                   #(ribcage
+                                                     #(_)
+                                                     #((top))
+                                                     #("i4357"))
+                                                   #(ribcage
+                                                     #(dy)
+                                                     #((top))
+                                                     #("i4351"))
+                                                   #(ribcage
+                                                     #(x y)
+                                                     #((top) (top))
+                                                     #("i4345" "i4346"))
+                                                   #(ribcage () () ())
+                                                   #(ribcage () () ())
+                                                   #(ribcage
+                                                     #(x y)
+                                                     #((top) (top))
+                                                     #("i4340" "i4341"))
+                                                   #(ribcage
+                                                     #(quasicons
+                                                       quasiappend
+                                                       quasivector
+                                                       quasi)
+                                                     #((top) (top) (top) (top))
+                                                     #("i4330"
+                                                       "i4331"
+                                                       "i4332"
+                                                       "i4333")))
+                                                  (hygiene guile))
+                                               #{x\ 4347}#
+                                               #{y\ 4348}#)))))))
+                             #{tmp\ 4350}#)
+                           (let ((#{tmp\ 4359}#
+                                   ($sc-dispatch
+                                     #{tmp\ 4349}#
+                                     '(#(free-id
+                                         #(syntax-object
+                                           list
+                                           ((top)
+                                            #(ribcage
+                                              #(x y)
+                                              #((top) (top))
+                                              #("i4345" "i4346"))
+                                            #(ribcage () () ())
+                                            #(ribcage () () ())
+                                            #(ribcage
+                                              #(x y)
+                                              #((top) (top))
+                                              #("i4340" "i4341"))
+                                            #(ribcage
+                                              #(quasicons
+                                                quasiappend
+                                                quasivector
+                                                quasi)
+                                              #((top) (top) (top) (top))
+                                              #("i4330"
+                                                "i4331"
+                                                "i4332"
+                                                "i4333")))
+                                           (hygiene guile)))
+                                       .
+                                       any))))
+                             (if #{tmp\ 4359}#
+                               (@apply
+                                 (lambda (#{stuff\ 4361}#)
+                                   (cons '#(syntax-object
+                                            list
+                                            ((top)
+                                             #(ribcage
+                                               #(stuff)
+                                               #((top))
+                                               #("i4360"))
+                                             #(ribcage
+                                               #(x y)
+                                               #((top) (top))
+                                               #("i4345" "i4346"))
+                                             #(ribcage () () ())
+                                             #(ribcage () () ())
+                                             #(ribcage
+                                               #(x y)
+                                               #((top) (top))
+                                               #("i4340" "i4341"))
+                                             #(ribcage
+                                               #(quasicons
+                                                 quasiappend
+                                                 quasivector
+                                                 quasi)
+                                               #((top) (top) (top) (top))
+                                               #("i4330"
+                                                 "i4331"
+                                                 "i4332"
+                                                 "i4333")))
+                                            (hygiene guile))
+                                         (cons #{x\ 4347}# #{stuff\ 4361}#)))
+                                 #{tmp\ 4359}#)
+                               (let ((#{else\ 4363}# #{tmp\ 4349}#))
+                                 (list '#(syntax-object
+                                          cons
                                           ((top)
-                                           #(ribcage #(p) #((top)) #("i4333"))
+                                           #(ribcage
+                                             #(else)
+                                             #((top))
+                                             #("i4362"))
+                                           #(ribcage
+                                             #(x y)
+                                             #((top) (top))
+                                             #("i4345" "i4346"))
+                                           #(ribcage () () ())
                                            #(ribcage () () ())
                                            #(ribcage
-                                             #(p lev)
+                                             #(x y)
                                              #((top) (top))
-                                             #("i4329" "i4330"))
+                                             #("i4340" "i4341"))
                                            #(ribcage
                                              #(quasicons
                                                quasiappend
                                                quasivector
                                                quasi)
                                              #((top) (top) (top) (top))
-                                             #("i4261"
-                                               "i4262"
-                                               "i4263"
-                                               "i4264")))
+                                             #("i4330"
+                                               "i4331"
+                                               "i4332"
+                                               "i4333")))
                                           (hygiene guile))
+                                       #{x\ 4347}#
+                                       #{y\ 4348}#))))))))
+                   #{tmp\ 4344}#)
+                 (syntax-violation
+                   #f
+                   "source expression failed to match any pattern"
+                   #{tmp\ 4343}#))))))
+       (#{quasiappend\ 4335}#
+         (lambda (#{x\ 4364}# #{y\ 4365}#)
+           (let ((#{tmp\ 4369}# (list #{x\ 4364}# #{y\ 4365}#)))
+             (let ((#{tmp\ 4370}#
+                     ($sc-dispatch #{tmp\ 4369}# (quote (any any)))))
+               (if #{tmp\ 4370}#
+                 (@apply
+                   (lambda (#{x\ 4373}# #{y\ 4374}#)
+                     (let ((#{tmp\ 4375}# #{y\ 4374}#))
+                       (let ((#{tmp\ 4376}#
+                               ($sc-dispatch
+                                 #{tmp\ 4375}#
+                                 '(#(free-id
+                                     #(syntax-object
+                                       quote
+                                       ((top)
+                                        #(ribcage
+                                          #(x y)
+                                          #((top) (top))
+                                          #("i4371" "i4372"))
+                                        #(ribcage () () ())
+                                        #(ribcage () () ())
+                                        #(ribcage
+                                          #(x y)
+                                          #((top) (top))
+                                          #("i4366" "i4367"))
+                                        #(ribcage
+                                          #(quasicons
+                                            quasiappend
+                                            quasivector
+                                            quasi)
+                                          #((top) (top) (top) (top))
+                                          #("i4330" "i4331" "i4332" "i4333")))
+                                       (hygiene guile)))
+                                   ()))))
+                         (if #{tmp\ 4376}#
+                           (@apply (lambda () #{x\ 4373}#) #{tmp\ 4376}#)
+                           (let ((#{_\ 4378}# #{tmp\ 4375}#))
+                             (list '#(syntax-object
+                                      append
+                                      ((top)
+                                       #(ribcage #(_) #((top)) #("i4377"))
+                                       #(ribcage
+                                         #(x y)
+                                         #((top) (top))
+                                         #("i4371" "i4372"))
+                                       #(ribcage () () ())
+                                       #(ribcage () () ())
+                                       #(ribcage
+                                         #(x y)
+                                         #((top) (top))
+                                         #("i4366" "i4367"))
+                                       #(ribcage
+                                         #(quasicons
+                                           quasiappend
+                                           quasivector
+                                           quasi)
+                                         #((top) (top) (top) (top))
+                                         #("i4330" "i4331" "i4332" "i4333")))
+                                      (hygiene guile))
+                                   #{x\ 4373}#
+                                   #{y\ 4374}#))))))
+                   #{tmp\ 4370}#)
+                 (syntax-violation
+                   #f
+                   "source expression failed to match any pattern"
+                   #{tmp\ 4369}#))))))
+       (#{quasivector\ 4336}#
+         (lambda (#{x\ 4379}#)
+           (let ((#{tmp\ 4382}# #{x\ 4379}#))
+             (let ((#{x\ 4384}# #{tmp\ 4382}#))
+               (let ((#{tmp\ 4385}# #{x\ 4384}#))
+                 (let ((#{tmp\ 4386}#
+                         ($sc-dispatch
+                           #{tmp\ 4385}#
+                           '(#(free-id
+                               #(syntax-object
+                                 quote
+                                 ((top)
+                                  #(ribcage #(x) #((top)) #("i4383"))
+                                  #(ribcage () () ())
+                                  #(ribcage () () ())
+                                  #(ribcage #(x) #((top)) #("i4380"))
+                                  #(ribcage
+                                    #(quasicons quasiappend quasivector quasi)
+                                    #((top) (top) (top) (top))
+                                    #("i4330" "i4331" "i4332" "i4333")))
+                                 (hygiene guile)))
+                             each-any))))
+                   (if #{tmp\ 4386}#
+                     (@apply
+                       (lambda (#{x\ 4388}#)
+                         (list '#(syntax-object
+                                  quote
+                                  ((top)
+                                   #(ribcage #(x) #((top)) #("i4387"))
+                                   #(ribcage #(x) #((top)) #("i4383"))
+                                   #(ribcage () () ())
+                                   #(ribcage () () ())
+                                   #(ribcage #(x) #((top)) #("i4380"))
+                                   #(ribcage
+                                     #(quasicons quasiappend quasivector quasi)
+                                     #((top) (top) (top) (top))
+                                     #("i4330" "i4331" "i4332" "i4333")))
+                                  (hygiene guile))
+                               (list->vector #{x\ 4388}#)))
+                       #{tmp\ 4386}#)
+                     (let ((#{tmp\ 4390}#
+                             ($sc-dispatch
+                               #{tmp\ 4385}#
+                               '(#(free-id
+                                   #(syntax-object
+                                     list
+                                     ((top)
+                                      #(ribcage #(x) #((top)) #("i4383"))
+                                      #(ribcage () () ())
+                                      #(ribcage () () ())
+                                      #(ribcage #(x) #((top)) #("i4380"))
+                                      #(ribcage
+                                        #(quasicons
+                                          quasiappend
+                                          quasivector
+                                          quasi)
+                                        #((top) (top) (top) (top))
+                                        #("i4330" "i4331" "i4332" "i4333")))
+                                     (hygiene guile)))
+                                 .
+                                 each-any))))
+                       (if #{tmp\ 4390}#
+                         (@apply
+                           (lambda (#{x\ 4392}#)
+                             (cons '#(syntax-object
+                                      vector
+                                      ((top)
+                                       #(ribcage #(x) #((top)) #("i4391"))
+                                       #(ribcage #(x) #((top)) #("i4383"))
+                                       #(ribcage () () ())
+                                       #(ribcage () () ())
+                                       #(ribcage #(x) #((top)) #("i4380"))
+                                       #(ribcage
+                                         #(quasicons
+                                           quasiappend
+                                           quasivector
+                                           quasi)
+                                         #((top) (top) (top) (top))
+                                         #("i4330" "i4331" "i4332" "i4333")))
+                                      (hygiene guile))
+                                   #{x\ 4392}#))
+                           #{tmp\ 4390}#)
+                         (let ((#{_\ 4395}# #{tmp\ 4385}#))
+                           (list '#(syntax-object
+                                    list->vector
+                                    ((top)
+                                     #(ribcage #(_) #((top)) #("i4394"))
+                                     #(ribcage #(x) #((top)) #("i4383"))
+                                     #(ribcage () () ())
+                                     #(ribcage () () ())
+                                     #(ribcage #(x) #((top)) #("i4380"))
+                                     #(ribcage
+                                       #(quasicons
+                                         quasiappend
+                                         quasivector
+                                         quasi)
+                                       #((top) (top) (top) (top))
+                                       #("i4330" "i4331" "i4332" "i4333")))
+                                    (hygiene guile))
+                                 #{x\ 4384}#)))))))))))
+       (#{quasi\ 4337}#
+         (lambda (#{p\ 4396}# #{lev\ 4397}#)
+           (let ((#{tmp\ 4400}# #{p\ 4396}#))
+             (let ((#{tmp\ 4401}#
+                     ($sc-dispatch
+                       #{tmp\ 4400}#
+                       '(#(free-id
+                           #(syntax-object
+                             unquote
+                             ((top)
+                              #(ribcage () () ())
+                              #(ribcage
+                                #(p lev)
+                                #((top) (top))
+                                #("i4398" "i4399"))
+                              #(ribcage
+                                #(quasicons quasiappend quasivector quasi)
+                                #((top) (top) (top) (top))
+                                #("i4330" "i4331" "i4332" "i4333")))
+                             (hygiene guile)))
+                         any))))
+               (if #{tmp\ 4401}#
+                 (@apply
+                   (lambda (#{p\ 4403}#)
+                     (if (= #{lev\ 4397}# 0)
+                       #{p\ 4403}#
+                       (#{quasicons\ 4334}#
+                         '(#(syntax-object
+                             quote
+                             ((top)
+                              #(ribcage #(p) #((top)) #("i4402"))
+                              #(ribcage () () ())
+                              #(ribcage
+                                #(p lev)
+                                #((top) (top))
+                                #("i4398" "i4399"))
+                              #(ribcage
+                                #(quasicons quasiappend quasivector quasi)
+                                #((top) (top) (top) (top))
+                                #("i4330" "i4331" "i4332" "i4333")))
+                             (hygiene guile))
+                           #(syntax-object
+                             unquote
+                             ((top)
+                              #(ribcage #(p) #((top)) #("i4402"))
+                              #(ribcage () () ())
+                              #(ribcage
+                                #(p lev)
+                                #((top) (top))
+                                #("i4398" "i4399"))
+                              #(ribcage
+                                #(quasicons quasiappend quasivector quasi)
+                                #((top) (top) (top) (top))
+                                #("i4330" "i4331" "i4332" "i4333")))
+                             (hygiene guile)))
+                         (#{quasi\ 4337}#
+                           (list #{p\ 4403}#)
+                           (1- #{lev\ 4397}#)))))
+                   #{tmp\ 4401}#)
+                 (let ((#{tmp\ 4404}#
+                         ($sc-dispatch
+                           #{tmp\ 4400}#
+                           '(#(free-id
+                               #(syntax-object
+                                 unquote
+                                 ((top)
+                                  #(ribcage () () ())
+                                  #(ribcage
+                                    #(p lev)
+                                    #((top) (top))
+                                    #("i4398" "i4399"))
+                                  #(ribcage
+                                    #(quasicons quasiappend quasivector quasi)
+                                    #((top) (top) (top) (top))
+                                    #("i4330" "i4331" "i4332" "i4333")))
+                                 (hygiene guile)))
+                             .
+                             any))))
+                   (if (if #{tmp\ 4404}#
+                         (@apply
+                           (lambda (#{args\ 4406}#) (= #{lev\ 4397}# 0))
+                           #{tmp\ 4404}#)
+                         #f)
+                     (@apply
+                       (lambda (#{args\ 4408}#)
+                         (syntax-violation
+                           'unquote
+                           "unquote takes exactly one argument"
+                           #{p\ 4396}#
+                           (cons '#(syntax-object
+                                    unquote
+                                    ((top)
+                                     #(ribcage #(args) #((top)) #("i4407"))
+                                     #(ribcage () () ())
+                                     #(ribcage
+                                       #(p lev)
+                                       #((top) (top))
+                                       #("i4398" "i4399"))
+                                     #(ribcage
+                                       #(quasicons
+                                         quasiappend
+                                         quasivector
+                                         quasi)
+                                       #((top) (top) (top) (top))
+                                       #("i4330" "i4331" "i4332" "i4333")))
+                                    (hygiene guile))
+                                 #{args\ 4408}#)))
+                       #{tmp\ 4404}#)
+                     (let ((#{tmp\ 4409}#
+                             ($sc-dispatch
+                               #{tmp\ 4400}#
+                               '((#(free-id
+                                    #(syntax-object
+                                      unquote-splicing
+                                      ((top)
+                                       #(ribcage () () ())
+                                       #(ribcage
+                                         #(p lev)
+                                         #((top) (top))
+                                         #("i4398" "i4399"))
+                                       #(ribcage
+                                         #(quasicons
+                                           quasiappend
+                                           quasivector
+                                           quasi)
+                                         #((top) (top) (top) (top))
+                                         #("i4330" "i4331" "i4332" "i4333")))
+                                      (hygiene guile)))
+                                  any)
+                                 .
+                                 any))))
+                       (if #{tmp\ 4409}#
+                         (@apply
+                           (lambda (#{p\ 4412}# #{q\ 4413}#)
+                             (if (= #{lev\ 4397}# 0)
+                               (#{quasiappend\ 4335}#
+                                 #{p\ 4412}#
+                                 (#{quasi\ 4337}# #{q\ 4413}# #{lev\ 4397}#))
+                               (#{quasicons\ 4334}#
+                                 (#{quasicons\ 4334}#
+                                   '(#(syntax-object
+                                       quote
+                                       ((top)
+                                        #(ribcage
+                                          #(p q)
+                                          #((top) (top))
+                                          #("i4410" "i4411"))
+                                        #(ribcage () () ())
+                                        #(ribcage
+                                          #(p lev)
+                                          #((top) (top))
+                                          #("i4398" "i4399"))
+                                        #(ribcage
+                                          #(quasicons
+                                            quasiappend
+                                            quasivector
+                                            quasi)
+                                          #((top) (top) (top) (top))
+                                          #("i4330" "i4331" "i4332" "i4333")))
+                                       (hygiene guile))
+                                     #(syntax-object
+                                       unquote-splicing
+                                       ((top)
+                                        #(ribcage
+                                          #(p q)
+                                          #((top) (top))
+                                          #("i4410" "i4411"))
+                                        #(ribcage () () ())
+                                        #(ribcage
+                                          #(p lev)
+                                          #((top) (top))
+                                          #("i4398" "i4399"))
+                                        #(ribcage
+                                          #(quasicons
+                                            quasiappend
+                                            quasivector
+                                            quasi)
+                                          #((top) (top) (top) (top))
+                                          #("i4330" "i4331" "i4332" "i4333")))
+                                       (hygiene guile)))
+                                   (#{quasi\ 4337}#
+                                     (list #{p\ 4412}#)
+                                     (1- #{lev\ 4397}#)))
+                                 (#{quasi\ 4337}# #{q\ 4413}# #{lev\ 4397}#))))
+                           #{tmp\ 4409}#)
+                         (let ((#{tmp\ 4414}#
+                                 ($sc-dispatch
+                                   #{tmp\ 4400}#
+                                   '((#(free-id
                                         #(syntax-object
-                                          unquote
+                                          unquote-splicing
                                           ((top)
-                                           #(ribcage #(p) #((top)) #("i4333"))
                                            #(ribcage () () ())
                                            #(ribcage
                                              #(p lev)
                                              #((top) (top))
-                                             #("i4329" "i4330"))
+                                             #("i4398" "i4399"))
                                            #(ribcage
                                              #(quasicons
                                                quasiappend
                                                quasivector
                                                quasi)
                                              #((top) (top) (top) (top))
-                                             #("i4261"
-                                               "i4262"
-                                               "i4263"
-                                               "i4264")))
+                                             #("i4330"
+                                               "i4331"
+                                               "i4332"
+                                               "i4333")))
                                           (hygiene guile)))
-                                      (#{quasi\ 4268}#
-                                        (list #{p\ 4334}#)
-                                        (- #{lev\ 4328}# 1)))))
-                                #{tmp\ 4332}#)
-                         ((lambda (#{tmp\ 4335}#)
-                            (if (if #{tmp\ 4335}#
-                                  (apply (lambda (#{args\ 4337}#)
-                                           (= #{lev\ 4328}# 0))
-                                         #{tmp\ 4335}#)
-                                  #f)
-                              (apply (lambda (#{args\ 4339}#)
-                                       (syntax-violation
-                                         'unquote
-                                         "unquote takes exactly one argument"
-                                         #{p\ 4327}#
-                                         (cons '#(syntax-object
-                                                  unquote
-                                                  ((top)
-                                                   #(ribcage
-                                                     #(args)
-                                                     #((top))
-                                                     #("i4338"))
-                                                   #(ribcage () () ())
-                                                   #(ribcage
-                                                     #(p lev)
-                                                     #((top) (top))
-                                                     #("i4329" "i4330"))
-                                                   #(ribcage
-                                                     #(quasicons
-                                                       quasiappend
-                                                       quasivector
-                                                       quasi)
-                                                     #((top) (top) (top) (top))
-                                                     #("i4261"
-                                                       "i4262"
-                                                       "i4263"
-                                                       "i4264")))
-                                                  (hygiene guile))
-                                               #{args\ 4339}#)))
-                                     #{tmp\ 4335}#)
-                              ((lambda (#{tmp\ 4340}#)
-                                 (if #{tmp\ 4340}#
-                                   (apply (lambda (#{p\ 4343}# #{q\ 4344}#)
-                                            (if (= #{lev\ 4328}# 0)
-                                              (#{quasiappend\ 4266}#
-                                                #{p\ 4343}#
-                                                (#{quasi\ 4268}#
-                                                  #{q\ 4344}#
-                                                  #{lev\ 4328}#))
-                                              (#{quasicons\ 4265}#
-                                                (#{quasicons\ 4265}#
-                                                  '(#(syntax-object
-                                                      quote
-                                                      ((top)
-                                                       #(ribcage
-                                                         #(p q)
-                                                         #((top) (top))
-                                                         #("i4341" "i4342"))
-                                                       #(ribcage () () ())
-                                                       #(ribcage
-                                                         #(p lev)
-                                                         #((top) (top))
-                                                         #("i4329" "i4330"))
-                                                       #(ribcage
-                                                         #(quasicons
-                                                           quasiappend
-                                                           quasivector
-                                                           quasi)
-                                                         #((top)
-                                                           (top)
-                                                           (top)
-                                                           (top))
-                                                         #("i4261"
-                                                           "i4262"
-                                                           "i4263"
-                                                           "i4264")))
-                                                      (hygiene guile))
-                                                    #(syntax-object
-                                                      unquote-splicing
-                                                      ((top)
-                                                       #(ribcage
-                                                         #(p q)
-                                                         #((top) (top))
-                                                         #("i4341" "i4342"))
-                                                       #(ribcage () () ())
-                                                       #(ribcage
-                                                         #(p lev)
-                                                         #((top) (top))
-                                                         #("i4329" "i4330"))
-                                                       #(ribcage
-                                                         #(quasicons
-                                                           quasiappend
-                                                           quasivector
-                                                           quasi)
-                                                         #((top)
-                                                           (top)
-                                                           (top)
-                                                           (top))
-                                                         #("i4261"
-                                                           "i4262"
-                                                           "i4263"
-                                                           "i4264")))
-                                                      (hygiene guile)))
-                                                  (#{quasi\ 4268}#
-                                                    (list #{p\ 4343}#)
-                                                    (- #{lev\ 4328}# 1)))
-                                                (#{quasi\ 4268}#
-                                                  #{q\ 4344}#
-                                                  #{lev\ 4328}#))))
-                                          #{tmp\ 4340}#)
-                                   ((lambda (#{tmp\ 4345}#)
-                                      (if (if #{tmp\ 4345}#
-                                            (apply (lambda (#{args\ 4348}#
-                                                            #{q\ 4349}#)
-                                                     (= #{lev\ 4328}# 0))
-                                                   #{tmp\ 4345}#)
-                                            #f)
-                                        (apply (lambda (#{args\ 4352}#
-                                                        #{q\ 4353}#)
-                                                 (syntax-violation
-                                                   'unquote-splicing
-                                                   "unquote-splicing takes 
exactly one argument"
-                                                   #{p\ 4327}#
-                                                   (cons '#(syntax-object
-                                                            unquote-splicing
-                                                            ((top)
-                                                             #(ribcage
-                                                               #(args q)
-                                                               #((top) (top))
-                                                               #("i4350"
-                                                                 "i4351"))
-                                                             #(ribcage
-                                                               ()
-                                                               ()
-                                                               ())
-                                                             #(ribcage
-                                                               #(p lev)
-                                                               #((top) (top))
-                                                               #("i4329"
-                                                                 "i4330"))
-                                                             #(ribcage
-                                                               #(quasicons
-                                                                 quasiappend
-                                                                 quasivector
-                                                                 quasi)
-                                                               #((top)
-                                                                 (top)
-                                                                 (top)
-                                                                 (top))
-                                                               #("i4261"
-                                                                 "i4262"
-                                                                 "i4263"
-                                                                 "i4264")))
-                                                            (hygiene guile))
-                                                         #{args\ 4352}#)))
-                                               #{tmp\ 4345}#)
-                                        ((lambda (#{tmp\ 4354}#)
-                                           (if #{tmp\ 4354}#
-                                             (apply (lambda (#{p\ 4356}#)
-                                                      (#{quasicons\ 4265}#
-                                                        '(#(syntax-object
-                                                            quote
-                                                            ((top)
-                                                             #(ribcage
-                                                               #(p)
-                                                               #((top))
-                                                               #("i4355"))
-                                                             #(ribcage
-                                                               ()
-                                                               ()
-                                                               ())
-                                                             #(ribcage
-                                                               #(p lev)
-                                                               #((top) (top))
-                                                               #("i4329"
-                                                                 "i4330"))
-                                                             #(ribcage
-                                                               #(quasicons
-                                                                 quasiappend
-                                                                 quasivector
-                                                                 quasi)
-                                                               #((top)
-                                                                 (top)
-                                                                 (top)
-                                                                 (top))
-                                                               #("i4261"
-                                                                 "i4262"
-                                                                 "i4263"
-                                                                 "i4264")))
-                                                            (hygiene guile))
-                                                          #(syntax-object
-                                                            quasiquote
-                                                            ((top)
-                                                             #(ribcage
-                                                               #(p)
-                                                               #((top))
-                                                               #("i4355"))
-                                                             #(ribcage
-                                                               ()
-                                                               ()
-                                                               ())
-                                                             #(ribcage
-                                                               #(p lev)
-                                                               #((top) (top))
-                                                               #("i4329"
-                                                                 "i4330"))
-                                                             #(ribcage
-                                                               #(quasicons
-                                                                 quasiappend
-                                                                 quasivector
-                                                                 quasi)
-                                                               #((top)
-                                                                 (top)
-                                                                 (top)
-                                                                 (top))
-                                                               #("i4261"
-                                                                 "i4262"
-                                                                 "i4263"
-                                                                 "i4264")))
-                                                            (hygiene guile)))
-                                                        (#{quasi\ 4268}#
-                                                          (list #{p\ 4356}#)
-                                                          (+ #{lev\ 4328}#
-                                                             1))))
-                                                    #{tmp\ 4354}#)
-                                             ((lambda (#{tmp\ 4357}#)
-                                                (if #{tmp\ 4357}#
-                                                  (apply (lambda (#{p\ 4360}#
-                                                                  #{q\ 4361}#)
-                                                           (#{quasicons\ 4265}#
-                                                             (#{quasi\ 4268}#
-                                                               #{p\ 4360}#
-                                                               #{lev\ 4328}#)
-                                                             (#{quasi\ 4268}#
-                                                               #{q\ 4361}#
-                                                               #{lev\ 4328}#)))
-                                                         #{tmp\ 4357}#)
-                                                  ((lambda (#{tmp\ 4362}#)
-                                                     (if #{tmp\ 4362}#
-                                                       (apply (lambda (#{x\ 
4364}#)
-                                                                
(#{quasivector\ 4267}#
-                                                                  (#{quasi\ 
4268}#
-                                                                    #{x\ 4364}#
-                                                                    #{lev\ 
4328}#)))
-                                                              #{tmp\ 4362}#)
-                                                       ((lambda (#{p\ 4367}#)
-                                                          (list 
'#(syntax-object
-                                                                   quote
-                                                                   ((top)
-                                                                    #(ribcage
-                                                                      #(p)
-                                                                      #((top))
-                                                                      
#("i4366"))
-                                                                    #(ribcage
-                                                                      ()
-                                                                      ()
-                                                                      ())
-                                                                    #(ribcage
-                                                                      #(p lev)
-                                                                      #((top)
-                                                                        (top))
-                                                                      #("i4329"
-                                                                        
"i4330"))
-                                                                    #(ribcage
-                                                                      
#(quasicons
-                                                                        
quasiappend
-                                                                        
quasivector
-                                                                        quasi)
-                                                                      #((top)
-                                                                        (top)
-                                                                        (top)
-                                                                        (top))
-                                                                      #("i4261"
-                                                                        "i4262"
-                                                                        "i4263"
-                                                                        
"i4264")))
-                                                                   (hygiene
-                                                                     guile))
-                                                                #{p\ 4367}#))
-                                                        #{tmp\ 4331}#)))
-                                                   ($sc-dispatch
-                                                     #{tmp\ 4331}#
-                                                     '#(vector each-any)))))
-                                              ($sc-dispatch
-                                                #{tmp\ 4331}#
-                                                '(any . any)))))
-                                         ($sc-dispatch
-                                           #{tmp\ 4331}#
-                                           '(#(free-id
-                                               #(syntax-object
-                                                 quasiquote
-                                                 ((top)
-                                                  #(ribcage () () ())
-                                                  #(ribcage
-                                                    #(p lev)
-                                                    #((top) (top))
-                                                    #("i4329" "i4330"))
-                                                  #(ribcage
-                                                    #(quasicons
-                                                      quasiappend
-                                                      quasivector
-                                                      quasi)
-                                                    #((top) (top) (top) (top))
-                                                    #("i4261"
-                                                      "i4262"
-                                                      "i4263"
-                                                      "i4264")))
-                                                 (hygiene guile)))
-                                             any)))))
-                                    ($sc-dispatch
-                                      #{tmp\ 4331}#
-                                      '((#(free-id
+                                      .
+                                      any)
+                                     .
+                                     any))))
+                           (if (if #{tmp\ 4414}#
+                                 (@apply
+                                   (lambda (#{args\ 4417}# #{q\ 4418}#)
+                                     (= #{lev\ 4397}# 0))
+                                   #{tmp\ 4414}#)
+                                 #f)
+                             (@apply
+                               (lambda (#{args\ 4421}# #{q\ 4422}#)
+                                 (syntax-violation
+                                   'unquote-splicing
+                                   "unquote-splicing takes exactly one 
argument"
+                                   #{p\ 4396}#
+                                   (cons '#(syntax-object
+                                            unquote-splicing
+                                            ((top)
+                                             #(ribcage
+                                               #(args q)
+                                               #((top) (top))
+                                               #("i4419" "i4420"))
+                                             #(ribcage () () ())
+                                             #(ribcage
+                                               #(p lev)
+                                               #((top) (top))
+                                               #("i4398" "i4399"))
+                                             #(ribcage
+                                               #(quasicons
+                                                 quasiappend
+                                                 quasivector
+                                                 quasi)
+                                               #((top) (top) (top) (top))
+                                               #("i4330"
+                                                 "i4331"
+                                                 "i4332"
+                                                 "i4333")))
+                                            (hygiene guile))
+                                         #{args\ 4421}#)))
+                               #{tmp\ 4414}#)
+                             (let ((#{tmp\ 4423}#
+                                     ($sc-dispatch
+                                       #{tmp\ 4400}#
+                                       '(#(free-id
                                            #(syntax-object
-                                             unquote-splicing
+                                             quasiquote
                                              ((top)
                                               #(ribcage () () ())
                                               #(ribcage
                                                 #(p lev)
                                                 #((top) (top))
-                                                #("i4329" "i4330"))
+                                                #("i4398" "i4399"))
                                               #(ribcage
                                                 #(quasicons
                                                   quasiappend
                                                   quasivector
                                                   quasi)
                                                 #((top) (top) (top) (top))
-                                                #("i4261"
-                                                  "i4262"
-                                                  "i4263"
-                                                  "i4264")))
+                                                #("i4330"
+                                                  "i4331"
+                                                  "i4332"
+                                                  "i4333")))
                                              (hygiene guile)))
-                                         .
-                                         any)
-                                        .
-                                        any)))))
-                               ($sc-dispatch
-                                 #{tmp\ 4331}#
-                                 '((#(free-id
-                                      #(syntax-object
-                                        unquote-splicing
-                                        ((top)
-                                         #(ribcage () () ())
-                                         #(ribcage
-                                           #(p lev)
-                                           #((top) (top))
-                                           #("i4329" "i4330"))
-                                         #(ribcage
-                                           #(quasicons
-                                             quasiappend
-                                             quasivector
-                                             quasi)
-                                           #((top) (top) (top) (top))
-                                           #("i4261" "i4262" "i4263" "i4264")))
-                                        (hygiene guile)))
-                                    any)
-                                   .
-                                   any)))))
-                          ($sc-dispatch
-                            #{tmp\ 4331}#
-                            '(#(free-id
-                                #(syntax-object
-                                  unquote
-                                  ((top)
-                                   #(ribcage () () ())
-                                   #(ribcage
-                                     #(p lev)
-                                     #((top) (top))
-                                     #("i4329" "i4330"))
-                                   #(ribcage
-                                     #(quasicons quasiappend quasivector quasi)
-                                     #((top) (top) (top) (top))
-                                     #("i4261" "i4262" "i4263" "i4264")))
-                                  (hygiene guile)))
-                              .
-                              any)))))
-                     ($sc-dispatch
-                       #{tmp\ 4331}#
-                       '(#(free-id
-                           #(syntax-object
-                             unquote
-                             ((top)
-                              #(ribcage () () ())
-                              #(ribcage
-                                #(p lev)
-                                #((top) (top))
-                                #("i4329" "i4330"))
-                              #(ribcage
-                                #(quasicons quasiappend quasivector quasi)
-                                #((top) (top) (top) (top))
-                                #("i4261" "i4262" "i4263" "i4264")))
-                             (hygiene guile)))
-                         any))))
-                  #{p\ 4327}#))))
-      (lambda (#{x\ 4368}#)
-        ((lambda (#{tmp\ 4370}#)
-           ((lambda (#{tmp\ 4371}#)
-              (if #{tmp\ 4371}#
-                (apply (lambda (#{_\ 4374}# #{e\ 4375}#)
-                         (#{quasi\ 4268}# #{e\ 4375}# 0))
-                       #{tmp\ 4371}#)
+                                         any))))
+                               (if #{tmp\ 4423}#
+                                 (@apply
+                                   (lambda (#{p\ 4425}#)
+                                     (#{quasicons\ 4334}#
+                                       '(#(syntax-object
+                                           quote
+                                           ((top)
+                                            #(ribcage #(p) #((top)) #("i4424"))
+                                            #(ribcage () () ())
+                                            #(ribcage
+                                              #(p lev)
+                                              #((top) (top))
+                                              #("i4398" "i4399"))
+                                            #(ribcage
+                                              #(quasicons
+                                                quasiappend
+                                                quasivector
+                                                quasi)
+                                              #((top) (top) (top) (top))
+                                              #("i4330"
+                                                "i4331"
+                                                "i4332"
+                                                "i4333")))
+                                           (hygiene guile))
+                                         #(syntax-object
+                                           quasiquote
+                                           ((top)
+                                            #(ribcage #(p) #((top)) #("i4424"))
+                                            #(ribcage () () ())
+                                            #(ribcage
+                                              #(p lev)
+                                              #((top) (top))
+                                              #("i4398" "i4399"))
+                                            #(ribcage
+                                              #(quasicons
+                                                quasiappend
+                                                quasivector
+                                                quasi)
+                                              #((top) (top) (top) (top))
+                                              #("i4330"
+                                                "i4331"
+                                                "i4332"
+                                                "i4333")))
+                                           (hygiene guile)))
+                                       (#{quasi\ 4337}#
+                                         (list #{p\ 4425}#)
+                                         (1+ #{lev\ 4397}#))))
+                                   #{tmp\ 4423}#)
+                                 (let ((#{tmp\ 4426}#
+                                         ($sc-dispatch
+                                           #{tmp\ 4400}#
+                                           '(any . any))))
+                                   (if #{tmp\ 4426}#
+                                     (@apply
+                                       (lambda (#{p\ 4429}# #{q\ 4430}#)
+                                         (#{quasicons\ 4334}#
+                                           (#{quasi\ 4337}#
+                                             #{p\ 4429}#
+                                             #{lev\ 4397}#)
+                                           (#{quasi\ 4337}#
+                                             #{q\ 4430}#
+                                             #{lev\ 4397}#)))
+                                       #{tmp\ 4426}#)
+                                     (let ((#{tmp\ 4431}#
+                                             ($sc-dispatch
+                                               #{tmp\ 4400}#
+                                               '#(vector each-any))))
+                                       (if #{tmp\ 4431}#
+                                         (@apply
+                                           (lambda (#{x\ 4433}#)
+                                             (#{quasivector\ 4336}#
+                                               (#{quasi\ 4337}#
+                                                 #{x\ 4433}#
+                                                 #{lev\ 4397}#)))
+                                           #{tmp\ 4431}#)
+                                         (let ((#{p\ 4436}# #{tmp\ 4400}#))
+                                           (list '#(syntax-object
+                                                    quote
+                                                    ((top)
+                                                     #(ribcage
+                                                       #(p)
+                                                       #((top))
+                                                       #("i4435"))
+                                                     #(ribcage () () ())
+                                                     #(ribcage
+                                                       #(p lev)
+                                                       #((top) (top))
+                                                       #("i4398" "i4399"))
+                                                     #(ribcage
+                                                       #(quasicons
+                                                         quasiappend
+                                                         quasivector
+                                                         quasi)
+                                                       #((top)
+                                                         (top)
+                                                         (top)
+                                                         (top))
+                                                       #("i4330"
+                                                         "i4331"
+                                                         "i4332"
+                                                         "i4333")))
+                                                    (hygiene guile))
+                                                 #{p\ 
4436}#))))))))))))))))))))
+      (begin
+        (lambda (#{x\ 4437}#)
+          (let ((#{tmp\ 4439}# #{x\ 4437}#))
+            (let ((#{tmp\ 4440}#
+                    ($sc-dispatch #{tmp\ 4439}# (quote (any any)))))
+              (if #{tmp\ 4440}#
+                (@apply
+                  (lambda (#{_\ 4443}# #{e\ 4444}#)
+                    (#{quasi\ 4337}# #{e\ 4444}# 0))
+                  #{tmp\ 4440}#)
                 (syntax-violation
                   #f
                   "source expression failed to match any pattern"
-                  #{tmp\ 4370}#)))
-            ($sc-dispatch #{tmp\ 4370}# (quote (any any)))))
-         #{x\ 4368}#)))))
+                  #{tmp\ 4439}#)))))))))
 
 (define include
   (make-syntax-transformer
     'include
     'macro
-    (lambda (#{x\ 4376}#)
-      (letrec ((#{read-file\ 4379}#
-                 (lambda (#{fn\ 4380}# #{k\ 4381}#)
-                   (let ((#{p\ 4385}# (open-input-file #{fn\ 4380}#)))
-                     (letrec ((#{f\ 4389}#
-                                (lambda (#{x\ 4390}# #{result\ 4391}#)
-                                  (if (eof-object? #{x\ 4390}#)
-                                    (begin
-                                      (close-input-port #{p\ 4385}#)
-                                      (reverse #{result\ 4391}#))
-                                    (#{f\ 4389}#
-                                      (read #{p\ 4385}#)
-                                      (cons (datum->syntax
-                                              #{k\ 4381}#
-                                              #{x\ 4390}#)
-                                            #{result\ 4391}#))))))
-                       (#{f\ 4389}# (read #{p\ 4385}#) (quote ())))))))
-        ((lambda (#{tmp\ 4392}#)
-           ((lambda (#{tmp\ 4393}#)
-              (if #{tmp\ 4393}#
-                (apply (lambda (#{k\ 4396}# #{filename\ 4397}#)
-                         (let ((#{fn\ 4399}#
-                                 (syntax->datum #{filename\ 4397}#)))
-                           ((lambda (#{tmp\ 4401}#)
-                              ((lambda (#{tmp\ 4402}#)
-                                 (if #{tmp\ 4402}#
-                                   (apply (lambda (#{exp\ 4404}#)
-                                            (cons '#(syntax-object
-                                                     begin
-                                                     ((top)
-                                                      #(ribcage
-                                                        #(exp)
-                                                        #((top))
-                                                        #("i4403"))
-                                                      #(ribcage () () ())
-                                                      #(ribcage () () ())
-                                                      #(ribcage
-                                                        #(fn)
-                                                        #((top))
-                                                        #("i4398"))
-                                                      #(ribcage
-                                                        #(k filename)
-                                                        #((top) (top))
-                                                        #("i4394" "i4395"))
-                                                      #(ribcage
-                                                        (read-file)
-                                                        ((top))
-                                                        ("i4378"))
-                                                      #(ribcage
-                                                        #(x)
-                                                        #((top))
-                                                        #("i4377")))
-                                                     (hygiene guile))
-                                                  #{exp\ 4404}#))
-                                          #{tmp\ 4402}#)
-                                   (syntax-violation
-                                     #f
-                                     "source expression failed to match any 
pattern"
-                                     #{tmp\ 4401}#)))
-                               ($sc-dispatch #{tmp\ 4401}# (quote each-any))))
-                            (#{read-file\ 4379}#
-                              #{fn\ 4399}#
-                              #{filename\ 4397}#))))
-                       #{tmp\ 4393}#)
+    (lambda (#{x\ 4445}#)
+      (letrec*
+        ((#{read-file\ 4448}#
+           (lambda (#{fn\ 4449}# #{k\ 4450}#)
+             (begin
+               (let ((#{p\ 4454}# (open-input-file #{fn\ 4449}#)))
+                 (letrec*
+                   ((#{f\ 4458}#
+                      (lambda (#{x\ 4459}# #{result\ 4460}#)
+                        (if (eof-object? #{x\ 4459}#)
+                          (begin
+                            (close-input-port #{p\ 4454}#)
+                            (reverse #{result\ 4460}#))
+                          (#{f\ 4458}#
+                            (read #{p\ 4454}#)
+                            (cons (datum->syntax #{k\ 4450}# #{x\ 4459}#)
+                                  #{result\ 4460}#))))))
+                   (begin
+                     (#{f\ 4458}# (read #{p\ 4454}#) (quote ())))))))))
+        (begin
+          (let ((#{tmp\ 4461}# #{x\ 4445}#))
+            (let ((#{tmp\ 4462}#
+                    ($sc-dispatch #{tmp\ 4461}# (quote (any any)))))
+              (if #{tmp\ 4462}#
+                (@apply
+                  (lambda (#{k\ 4465}# #{filename\ 4466}#)
+                    (begin
+                      (let ((#{fn\ 4468}# (syntax->datum #{filename\ 4466}#)))
+                        (let ((#{tmp\ 4470}#
+                                (#{read-file\ 4448}#
+                                  #{fn\ 4468}#
+                                  #{filename\ 4466}#)))
+                          (let ((#{tmp\ 4471}#
+                                  ($sc-dispatch
+                                    #{tmp\ 4470}#
+                                    'each-any)))
+                            (if #{tmp\ 4471}#
+                              (@apply
+                                (lambda (#{exp\ 4473}#)
+                                  (cons '#(syntax-object
+                                           begin
+                                           ((top)
+                                            #(ribcage
+                                              #(exp)
+                                              #((top))
+                                              #("i4472"))
+                                            #(ribcage () () ())
+                                            #(ribcage () () ())
+                                            #(ribcage
+                                              #(fn)
+                                              #((top))
+                                              #("i4467"))
+                                            #(ribcage
+                                              #(k filename)
+                                              #((top) (top))
+                                              #("i4463" "i4464"))
+                                            #(ribcage
+                                              (read-file)
+                                              ((top))
+                                              ("i4447"))
+                                            #(ribcage
+                                              #(x)
+                                              #((top))
+                                              #("i4446")))
+                                           (hygiene guile))
+                                        #{exp\ 4473}#))
+                                #{tmp\ 4471}#)
+                              (syntax-violation
+                                #f
+                                "source expression failed to match any pattern"
+                                #{tmp\ 4470}#)))))))
+                  #{tmp\ 4462}#)
                 (syntax-violation
                   #f
                   "source expression failed to match any pattern"
-                  #{tmp\ 4392}#)))
-            ($sc-dispatch #{tmp\ 4392}# (quote (any any)))))
-         #{x\ 4376}#)))))
+                  #{tmp\ 4461}#)))))))))
 
 (define include-from-path
   (make-syntax-transformer
     'include-from-path
     'macro
-    (lambda (#{x\ 4406}#)
-      ((lambda (#{tmp\ 4408}#)
-         ((lambda (#{tmp\ 4409}#)
-            (if #{tmp\ 4409}#
-              (apply (lambda (#{k\ 4412}# #{filename\ 4413}#)
-                       (let ((#{fn\ 4415}# (syntax->datum #{filename\ 4413}#)))
-                         ((lambda (#{tmp\ 4417}#)
-                            ((lambda (#{fn\ 4419}#)
-                               (list '#(syntax-object
-                                        include
-                                        ((top)
-                                         #(ribcage #(fn) #((top)) #("i4418"))
-                                         #(ribcage () () ())
-                                         #(ribcage () () ())
-                                         #(ribcage #(fn) #((top)) #("i4414"))
-                                         #(ribcage
-                                           #(k filename)
-                                           #((top) (top))
-                                           #("i4410" "i4411"))
-                                         #(ribcage () () ())
-                                         #(ribcage #(x) #((top)) #("i4407")))
-                                        (hygiene guile))
-                                     #{fn\ 4419}#))
-                             #{tmp\ 4417}#))
-                          (datum->syntax
-                            #{filename\ 4413}#
-                            (let ((#{t\ 4422}#
-                                    (%search-load-path #{fn\ 4415}#)))
-                              (if #{t\ 4422}#
-                                #{t\ 4422}#
-                                (syntax-violation
-                                  'include-from-path
-                                  "file not found in path"
-                                  #{x\ 4406}#
-                                  #{filename\ 4413}#)))))))
-                     #{tmp\ 4409}#)
-              (syntax-violation
-                #f
-                "source expression failed to match any pattern"
-                #{tmp\ 4408}#)))
-          ($sc-dispatch #{tmp\ 4408}# (quote (any any)))))
-       #{x\ 4406}#))))
+    (lambda (#{x\ 4475}#)
+      (let ((#{tmp\ 4477}# #{x\ 4475}#))
+        (let ((#{tmp\ 4478}#
+                ($sc-dispatch #{tmp\ 4477}# (quote (any any)))))
+          (if #{tmp\ 4478}#
+            (@apply
+              (lambda (#{k\ 4481}# #{filename\ 4482}#)
+                (begin
+                  (let ((#{fn\ 4484}# (syntax->datum #{filename\ 4482}#)))
+                    (let ((#{tmp\ 4486}#
+                            (datum->syntax
+                              #{filename\ 4482}#
+                              (begin
+                                (let ((#{t\ 4491}#
+                                        (%search-load-path #{fn\ 4484}#)))
+                                  (if #{t\ 4491}#
+                                    #{t\ 4491}#
+                                    (syntax-violation
+                                      'include-from-path
+                                      "file not found in path"
+                                      #{x\ 4475}#
+                                      #{filename\ 4482}#)))))))
+                      (let ((#{fn\ 4488}# #{tmp\ 4486}#))
+                        (list '#(syntax-object
+                                 include
+                                 ((top)
+                                  #(ribcage #(fn) #((top)) #("i4487"))
+                                  #(ribcage () () ())
+                                  #(ribcage () () ())
+                                  #(ribcage #(fn) #((top)) #("i4483"))
+                                  #(ribcage
+                                    #(k filename)
+                                    #((top) (top))
+                                    #("i4479" "i4480"))
+                                  #(ribcage () () ())
+                                  #(ribcage #(x) #((top)) #("i4476")))
+                                 (hygiene guile))
+                              #{fn\ 4488}#))))))
+              #{tmp\ 4478}#)
+            (syntax-violation
+              #f
+              "source expression failed to match any pattern"
+              #{tmp\ 4477}#)))))))
 
 (define unquote
   (make-syntax-transformer
     'unquote
     'macro
-    (lambda (#{x\ 4424}#)
-      ((lambda (#{tmp\ 4426}#)
-         ((lambda (#{tmp\ 4427}#)
-            (if #{tmp\ 4427}#
-              (apply (lambda (#{_\ 4430}# #{e\ 4431}#)
-                       (syntax-violation
-                         'unquote
-                         "expression not valid outside of quasiquote"
-                         #{x\ 4424}#))
-                     #{tmp\ 4427}#)
-              (syntax-violation
-                #f
-                "source expression failed to match any pattern"
-                #{tmp\ 4426}#)))
-          ($sc-dispatch #{tmp\ 4426}# (quote (any any)))))
-       #{x\ 4424}#))))
+    (lambda (#{x\ 4493}#)
+      (let ((#{tmp\ 4495}# #{x\ 4493}#))
+        (let ((#{tmp\ 4496}#
+                ($sc-dispatch #{tmp\ 4495}# (quote (any any)))))
+          (if #{tmp\ 4496}#
+            (@apply
+              (lambda (#{_\ 4499}# #{e\ 4500}#)
+                (syntax-violation
+                  'unquote
+                  "expression not valid outside of quasiquote"
+                  #{x\ 4493}#))
+              #{tmp\ 4496}#)
+            (syntax-violation
+              #f
+              "source expression failed to match any pattern"
+              #{tmp\ 4495}#)))))))
 
 (define unquote-splicing
   (make-syntax-transformer
     'unquote-splicing
     'macro
-    (lambda (#{x\ 4432}#)
-      ((lambda (#{tmp\ 4434}#)
-         ((lambda (#{tmp\ 4435}#)
-            (if #{tmp\ 4435}#
-              (apply (lambda (#{_\ 4438}# #{e\ 4439}#)
-                       (syntax-violation
-                         'unquote-splicing
-                         "expression not valid outside of quasiquote"
-                         #{x\ 4432}#))
-                     #{tmp\ 4435}#)
-              (syntax-violation
-                #f
-                "source expression failed to match any pattern"
-                #{tmp\ 4434}#)))
-          ($sc-dispatch #{tmp\ 4434}# (quote (any any)))))
-       #{x\ 4432}#))))
+    (lambda (#{x\ 4501}#)
+      (let ((#{tmp\ 4503}# #{x\ 4501}#))
+        (let ((#{tmp\ 4504}#
+                ($sc-dispatch #{tmp\ 4503}# (quote (any any)))))
+          (if #{tmp\ 4504}#
+            (@apply
+              (lambda (#{_\ 4507}# #{e\ 4508}#)
+                (syntax-violation
+                  'unquote-splicing
+                  "expression not valid outside of quasiquote"
+                  #{x\ 4501}#))
+              #{tmp\ 4504}#)
+            (syntax-violation
+              #f
+              "source expression failed to match any pattern"
+              #{tmp\ 4503}#)))))))
 
 (define case
   (make-syntax-transformer
     'case
     'macro
-    (lambda (#{x\ 4440}#)
-      ((lambda (#{tmp\ 4442}#)
-         ((lambda (#{tmp\ 4443}#)
-            (if #{tmp\ 4443}#
-              (apply (lambda (#{_\ 4448}#
-                              #{e\ 4449}#
-                              #{m1\ 4450}#
-                              #{m2\ 4451}#)
-                       ((lambda (#{tmp\ 4453}#)
-                          ((lambda (#{body\ 4455}#)
-                             (list '#(syntax-object
-                                      let
-                                      ((top)
-                                       #(ribcage #(body) #((top)) #("i4454"))
-                                       #(ribcage
-                                         #(_ e m1 m2)
-                                         #((top) (top) (top) (top))
-                                         #("i4444" "i4445" "i4446" "i4447"))
-                                       #(ribcage () () ())
-                                       #(ribcage #(x) #((top)) #("i4441")))
-                                      (hygiene guile))
-                                   (list (list '#(syntax-object
-                                                  t
-                                                  ((top)
-                                                   #(ribcage
-                                                     #(body)
-                                                     #((top))
-                                                     #("i4454"))
-                                                   #(ribcage
-                                                     #(_ e m1 m2)
-                                                     #((top) (top) (top) (top))
-                                                     #("i4444"
-                                                       "i4445"
-                                                       "i4446"
-                                                       "i4447"))
-                                                   #(ribcage () () ())
-                                                   #(ribcage
-                                                     #(x)
-                                                     #((top))
-                                                     #("i4441")))
-                                                  (hygiene guile))
-                                               #{e\ 4449}#))
-                                   #{body\ 4455}#))
-                           #{tmp\ 4453}#))
-                        (letrec ((#{f\ 4459}#
-                                   (lambda (#{clause\ 4460}# #{clauses\ 4461}#)
-                                     (if (null? #{clauses\ 4461}#)
-                                       ((lambda (#{tmp\ 4463}#)
-                                          ((lambda (#{tmp\ 4464}#)
-                                             (if #{tmp\ 4464}#
-                                               (apply (lambda (#{e1\ 4467}#
-                                                               #{e2\ 4468}#)
-                                                        (cons '#(syntax-object
-                                                                 begin
-                                                                 ((top)
-                                                                  #(ribcage
-                                                                    #(e1 e2)
-                                                                    #((top)
-                                                                      (top))
-                                                                    #("i4465"
-                                                                      "i4466"))
-                                                                  #(ribcage
-                                                                    ()
-                                                                    ()
-                                                                    ())
-                                                                  #(ribcage
-                                                                    #(f
-                                                                      clause
-                                                                      clauses)
-                                                                    #((top)
-                                                                      (top)
-                                                                      (top))
-                                                                    #("i4456"
-                                                                      "i4457"
-                                                                      "i4458"))
-                                                                  #(ribcage
-                                                                    #(_
-                                                                      e
-                                                                      m1
-                                                                      m2)
-                                                                    #((top)
-                                                                      (top)
-                                                                      (top)
-                                                                      (top))
-                                                                    #("i4444"
-                                                                      "i4445"
-                                                                      "i4446"
-                                                                      "i4447"))
-                                                                  #(ribcage
-                                                                    ()
-                                                                    ()
-                                                                    ())
-                                                                  #(ribcage
-                                                                    #(x)
-                                                                    #((top))
-                                                                    
#("i4441")))
-                                                                 (hygiene
-                                                                   guile))
-                                                              (cons #{e1\ 
4467}#
-                                                                    #{e2\ 
4468}#)))
-                                                      #{tmp\ 4464}#)
-                                               ((lambda (#{tmp\ 4470}#)
-                                                  (if #{tmp\ 4470}#
-                                                    (apply (lambda (#{k\ 4474}#
-                                                                    #{e1\ 
4475}#
-                                                                    #{e2\ 
4476}#)
-                                                             (list 
'#(syntax-object
-                                                                      if
-                                                                      ((top)
-                                                                       
#(ribcage
-                                                                         #(k
-                                                                           e1
-                                                                           e2)
-                                                                         
#((top)
-                                                                           
(top)
-                                                                           
(top))
-                                                                         
#("i4471"
-                                                                           
"i4472"
-                                                                           
"i4473"))
-                                                                       
#(ribcage
-                                                                         ()
-                                                                         ()
-                                                                         ())
-                                                                       
#(ribcage
-                                                                         #(f
-                                                                           
clause
-                                                                           
clauses)
-                                                                         
#((top)
-                                                                           
(top)
-                                                                           
(top))
-                                                                         
#("i4456"
-                                                                           
"i4457"
-                                                                           
"i4458"))
-                                                                       
#(ribcage
-                                                                         #(_
-                                                                           e
-                                                                           m1
-                                                                           m2)
-                                                                         
#((top)
-                                                                           
(top)
-                                                                           
(top)
-                                                                           
(top))
-                                                                         
#("i4444"
-                                                                           
"i4445"
-                                                                           
"i4446"
-                                                                           
"i4447"))
-                                                                       
#(ribcage
-                                                                         ()
-                                                                         ()
-                                                                         ())
-                                                                       
#(ribcage
-                                                                         #(x)
-                                                                         
#((top))
-                                                                         
#("i4441")))
-                                                                      (hygiene
-                                                                        guile))
-                                                                   (list 
'#(syntax-object
-                                                                            
memv
-                                                                            
((top)
-                                                                             
#(ribcage
-                                                                               
#(k
-                                                                               
  e1
-                                                                               
  e2)
-                                                                               
#((top)
-                                                                               
  (top)
-                                                                               
  (top))
-                                                                               
#("i4471"
-                                                                               
  "i4472"
-                                                                               
  "i4473"))
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
#(f
-                                                                               
  clause
-                                                                               
  clauses)
-                                                                               
#((top)
-                                                                               
  (top)
-                                                                               
  (top))
-                                                                               
#("i4456"
-                                                                               
  "i4457"
-                                                                               
  "i4458"))
-                                                                             
#(ribcage
-                                                                               
#(_
-                                                                               
  e
-                                                                               
  m1
-                                                                               
  m2)
-                                                                               
#((top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top))
-                                                                               
#("i4444"
-                                                                               
  "i4445"
-                                                                               
  "i4446"
-                                                                               
  "i4447"))
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
#(x)
-                                                                               
#((top))
-                                                                               
#("i4441")))
-                                                                            
(hygiene
-                                                                              
guile))
-                                                                         
'#(syntax-object
-                                                                            t
-                                                                            
((top)
-                                                                             
#(ribcage
-                                                                               
#(k
-                                                                               
  e1
-                                                                               
  e2)
-                                                                               
#((top)
-                                                                               
  (top)
-                                                                               
  (top))
-                                                                               
#("i4471"
-                                                                               
  "i4472"
-                                                                               
  "i4473"))
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
#(f
-                                                                               
  clause
-                                                                               
  clauses)
-                                                                               
#((top)
-                                                                               
  (top)
-                                                                               
  (top))
-                                                                               
#("i4456"
-                                                                               
  "i4457"
-                                                                               
  "i4458"))
-                                                                             
#(ribcage
-                                                                               
#(_
-                                                                               
  e
-                                                                               
  m1
-                                                                               
  m2)
-                                                                               
#((top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top))
-                                                                               
#("i4444"
-                                                                               
  "i4445"
-                                                                               
  "i4446"
-                                                                               
  "i4447"))
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
#(x)
-                                                                               
#((top))
-                                                                               
#("i4441")))
-                                                                            
(hygiene
-                                                                              
guile))
-                                                                         (list 
'#(syntax-object
-                                                                               
   quote
-                                                                               
   ((top)
-                                                                               
    #(ribcage
-                                                                               
      #(k
-                                                                               
        e1
-                                                                               
        e2)
-                                                                               
      #((top)
-                                                                               
        (top)
-                                                                               
        (top))
-                                                                               
      #("i4471"
-                                                                               
        "i4472"
-                                                                               
        "i4473"))
-                                                                               
    #(ribcage
-                                                                               
      ()
-                                                                               
      ()
-                                                                               
      ())
-                                                                               
    #(ribcage
-                                                                               
      #(f
-                                                                               
        clause
-                                                                               
        clauses)
-                                                                               
      #((top)
-                                                                               
        (top)
-                                                                               
        (top))
-                                                                               
      #("i4456"
-                                                                               
        "i4457"
-                                                                               
        "i4458"))
-                                                                               
    #(ribcage
-                                                                               
      #(_
-                                                                               
        e
-                                                                               
        m1
-                                                                               
        m2)
-                                                                               
      #((top)
-                                                                               
        (top)
-                                                                               
        (top)
-                                                                               
        (top))
-                                                                               
      #("i4444"
-                                                                               
        "i4445"
-                                                                               
        "i4446"
-                                                                               
        "i4447"))
-                                                                               
    #(ribcage
-                                                                               
      ()
-                                                                               
      ()
-                                                                               
      ())
-                                                                               
    #(ribcage
-                                                                               
      #(x)
-                                                                               
      #((top))
-                                                                               
      #("i4441")))
-                                                                               
   (hygiene
-                                                                               
     guile))
-                                                                               
#{k\ 4474}#))
-                                                                   (cons 
'#(syntax-object
-                                                                            
begin
-                                                                            
((top)
-                                                                             
#(ribcage
-                                                                               
#(k
-                                                                               
  e1
-                                                                               
  e2)
-                                                                               
#((top)
-                                                                               
  (top)
-                                                                               
  (top))
-                                                                               
#("i4471"
-                                                                               
  "i4472"
-                                                                               
  "i4473"))
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
#(f
-                                                                               
  clause
-                                                                               
  clauses)
-                                                                               
#((top)
-                                                                               
  (top)
-                                                                               
  (top))
-                                                                               
#("i4456"
-                                                                               
  "i4457"
-                                                                               
  "i4458"))
-                                                                             
#(ribcage
-                                                                               
#(_
-                                                                               
  e
-                                                                               
  m1
-                                                                               
  m2)
-                                                                               
#((top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top))
-                                                                               
#("i4444"
-                                                                               
  "i4445"
-                                                                               
  "i4446"
-                                                                               
  "i4447"))
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
#(x)
-                                                                               
#((top))
-                                                                               
#("i4441")))
-                                                                            
(hygiene
-                                                                              
guile))
-                                                                         (cons 
#{e1\ 4475}#
-                                                                               
#{e2\ 4476}#))))
-                                                           #{tmp\ 4470}#)
-                                                    ((lambda (#{_\ 4480}#)
-                                                       (syntax-violation
-                                                         'case
-                                                         "bad clause"
-                                                         #{x\ 4440}#
-                                                         #{clause\ 4460}#))
-                                                     #{tmp\ 4463}#)))
-                                                ($sc-dispatch
-                                                  #{tmp\ 4463}#
-                                                  '(each-any
-                                                     any
-                                                     .
-                                                     each-any)))))
+    (lambda (#{x\ 4509}#)
+      (let ((#{tmp\ 4511}# #{x\ 4509}#))
+        (let ((#{tmp\ 4512}#
+                ($sc-dispatch
+                  #{tmp\ 4511}#
+                  '(any any any . each-any))))
+          (if #{tmp\ 4512}#
+            (@apply
+              (lambda (#{_\ 4517}#
+                       #{e\ 4518}#
+                       #{m1\ 4519}#
+                       #{m2\ 4520}#)
+                (let ((#{tmp\ 4522}#
+                        (letrec*
+                          ((#{f\ 4528}#
+                             (lambda (#{clause\ 4529}# #{clauses\ 4530}#)
+                               (if (null? #{clauses\ 4530}#)
+                                 (let ((#{tmp\ 4532}# #{clause\ 4529}#))
+                                   (let ((#{tmp\ 4533}#
                                            ($sc-dispatch
-                                             #{tmp\ 4463}#
+                                             #{tmp\ 4532}#
                                              '(#(free-id
                                                  #(syntax-object
                                                    else
@@ -15732,634 +15246,870 @@
                                                     #(ribcage
                                                       #(f clause clauses)
                                                       #((top) (top) (top))
-                                                      #("i4456"
-                                                        "i4457"
-                                                        "i4458"))
+                                                      #("i4525"
+                                                        "i4526"
+                                                        "i4527"))
                                                     #(ribcage
                                                       #(_ e m1 m2)
                                                       #((top)
                                                         (top)
                                                         (top)
                                                         (top))
-                                                      #("i4444"
-                                                        "i4445"
-                                                        "i4446"
-                                                        "i4447"))
+                                                      #("i4513"
+                                                        "i4514"
+                                                        "i4515"
+                                                        "i4516"))
                                                     #(ribcage () () ())
                                                     #(ribcage
                                                       #(x)
                                                       #((top))
-                                                      #("i4441")))
+                                                      #("i4510")))
                                                    (hygiene guile)))
                                                any
                                                .
                                                each-any))))
-                                        #{clause\ 4460}#)
-                                       ((lambda (#{tmp\ 4482}#)
-                                          ((lambda (#{rest\ 4484}#)
-                                             ((lambda (#{tmp\ 4485}#)
-                                                ((lambda (#{tmp\ 4486}#)
-                                                   (if #{tmp\ 4486}#
-                                                     (apply (lambda (#{k\ 
4490}#
-                                                                     #{e1\ 
4491}#
-                                                                     #{e2\ 
4492}#)
-                                                              (list 
'#(syntax-object
-                                                                       if
-                                                                       ((top)
-                                                                        
#(ribcage
-                                                                          #(k
-                                                                            e1
-                                                                            e2)
-                                                                          
#((top)
-                                                                            
(top)
-                                                                            
(top))
-                                                                          
#("i4487"
-                                                                            
"i4488"
-                                                                            
"i4489"))
-                                                                        
#(ribcage
-                                                                          
#(rest)
-                                                                          
#((top))
-                                                                          
#("i4483"))
-                                                                        
#(ribcage
-                                                                          ()
-                                                                          ()
-                                                                          ())
-                                                                        
#(ribcage
-                                                                          #(f
-                                                                            
clause
-                                                                            
clauses)
-                                                                          
#((top)
-                                                                            
(top)
-                                                                            
(top))
-                                                                          
#("i4456"
-                                                                            
"i4457"
-                                                                            
"i4458"))
-                                                                        
#(ribcage
-                                                                          #(_
-                                                                            e
-                                                                            m1
-                                                                            m2)
-                                                                          
#((top)
-                                                                            
(top)
-                                                                            
(top)
-                                                                            
(top))
-                                                                          
#("i4444"
-                                                                            
"i4445"
-                                                                            
"i4446"
-                                                                            
"i4447"))
-                                                                        
#(ribcage
-                                                                          ()
-                                                                          ()
-                                                                          ())
-                                                                        
#(ribcage
-                                                                          #(x)
-                                                                          
#((top))
-                                                                          
#("i4441")))
-                                                                       (hygiene
-                                                                         
guile))
-                                                                    (list 
'#(syntax-object
-                                                                             
memv
-                                                                             
((top)
-                                                                              
#(ribcage
-                                                                               
 #(k
-                                                                               
   e1
-                                                                               
   e2)
-                                                                               
 #((top)
-                                                                               
   (top)
-                                                                               
   (top))
-                                                                               
 #("i4487"
-                                                                               
   "i4488"
-                                                                               
   "i4489"))
-                                                                              
#(ribcage
-                                                                               
 #(rest)
-                                                                               
 #((top))
-                                                                               
 #("i4483"))
-                                                                              
#(ribcage
-                                                                               
 ()
-                                                                               
 ()
-                                                                               
 ())
-                                                                              
#(ribcage
-                                                                               
 #(f
-                                                                               
   clause
-                                                                               
   clauses)
-                                                                               
 #((top)
-                                                                               
   (top)
-                                                                               
   (top))
-                                                                               
 #("i4456"
-                                                                               
   "i4457"
-                                                                               
   "i4458"))
-                                                                              
#(ribcage
-                                                                               
 #(_
-                                                                               
   e
-                                                                               
   m1
-                                                                               
   m2)
-                                                                               
 #((top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top))
-                                                                               
 #("i4444"
-                                                                               
   "i4445"
-                                                                               
   "i4446"
-                                                                               
   "i4447"))
-                                                                              
#(ribcage
-                                                                               
 ()
-                                                                               
 ()
-                                                                               
 ())
-                                                                              
#(ribcage
-                                                                               
 #(x)
-                                                                               
 #((top))
-                                                                               
 #("i4441")))
-                                                                             
(hygiene
-                                                                               
guile))
-                                                                          
'#(syntax-object
-                                                                             t
-                                                                             
((top)
-                                                                              
#(ribcage
-                                                                               
 #(k
-                                                                               
   e1
-                                                                               
   e2)
-                                                                               
 #((top)
-                                                                               
   (top)
-                                                                               
   (top))
-                                                                               
 #("i4487"
-                                                                               
   "i4488"
-                                                                               
   "i4489"))
-                                                                              
#(ribcage
-                                                                               
 #(rest)
-                                                                               
 #((top))
-                                                                               
 #("i4483"))
-                                                                              
#(ribcage
-                                                                               
 ()
-                                                                               
 ()
-                                                                               
 ())
-                                                                              
#(ribcage
-                                                                               
 #(f
-                                                                               
   clause
-                                                                               
   clauses)
-                                                                               
 #((top)
-                                                                               
   (top)
-                                                                               
   (top))
-                                                                               
 #("i4456"
-                                                                               
   "i4457"
-                                                                               
   "i4458"))
-                                                                              
#(ribcage
-                                                                               
 #(_
-                                                                               
   e
-                                                                               
   m1
-                                                                               
   m2)
-                                                                               
 #((top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top))
-                                                                               
 #("i4444"
-                                                                               
   "i4445"
-                                                                               
   "i4446"
-                                                                               
   "i4447"))
-                                                                              
#(ribcage
-                                                                               
 ()
-                                                                               
 ()
-                                                                               
 ())
-                                                                              
#(ribcage
-                                                                               
 #(x)
-                                                                               
 #((top))
-                                                                               
 #("i4441")))
-                                                                             
(hygiene
-                                                                               
guile))
-                                                                          
(list '#(syntax-object
-                                                                               
    quote
-                                                                               
    ((top)
-                                                                               
     #(ribcage
-                                                                               
       #(k
-                                                                               
         e1
-                                                                               
         e2)
-                                                                               
       #((top)
-                                                                               
         (top)
-                                                                               
         (top))
-                                                                               
       #("i4487"
-                                                                               
         "i4488"
-                                                                               
         "i4489"))
-                                                                               
     #(ribcage
-                                                                               
       #(rest)
-                                                                               
       #((top))
-                                                                               
       #("i4483"))
-                                                                               
     #(ribcage
-                                                                               
       ()
-                                                                               
       ()
-                                                                               
       ())
-                                                                               
     #(ribcage
-                                                                               
       #(f
-                                                                               
         clause
-                                                                               
         clauses)
-                                                                               
       #((top)
-                                                                               
         (top)
-                                                                               
         (top))
-                                                                               
       #("i4456"
-                                                                               
         "i4457"
-                                                                               
         "i4458"))
-                                                                               
     #(ribcage
-                                                                               
       #(_
-                                                                               
         e
-                                                                               
         m1
-                                                                               
         m2)
-                                                                               
       #((top)
-                                                                               
         (top)
-                                                                               
         (top)
-                                                                               
         (top))
-                                                                               
       #("i4444"
-                                                                               
         "i4445"
-                                                                               
         "i4446"
-                                                                               
         "i4447"))
-                                                                               
     #(ribcage
-                                                                               
       ()
-                                                                               
       ()
-                                                                               
       ())
-                                                                               
     #(ribcage
-                                                                               
       #(x)
-                                                                               
       #((top))
-                                                                               
       #("i4441")))
-                                                                               
    (hygiene
-                                                                               
      guile))
-                                                                               
 #{k\ 4490}#))
-                                                                    (cons 
'#(syntax-object
-                                                                             
begin
-                                                                             
((top)
-                                                                              
#(ribcage
-                                                                               
 #(k
-                                                                               
   e1
-                                                                               
   e2)
-                                                                               
 #((top)
-                                                                               
   (top)
-                                                                               
   (top))
-                                                                               
 #("i4487"
-                                                                               
   "i4488"
-                                                                               
   "i4489"))
-                                                                              
#(ribcage
-                                                                               
 #(rest)
-                                                                               
 #((top))
-                                                                               
 #("i4483"))
-                                                                              
#(ribcage
-                                                                               
 ()
-                                                                               
 ()
-                                                                               
 ())
-                                                                              
#(ribcage
-                                                                               
 #(f
-                                                                               
   clause
-                                                                               
   clauses)
-                                                                               
 #((top)
-                                                                               
   (top)
-                                                                               
   (top))
-                                                                               
 #("i4456"
-                                                                               
   "i4457"
-                                                                               
   "i4458"))
-                                                                              
#(ribcage
-                                                                               
 #(_
-                                                                               
   e
-                                                                               
   m1
-                                                                               
   m2)
-                                                                               
 #((top)
-                                                                               
   (top)
-                                                                               
   (top)
-                                                                               
   (top))
-                                                                               
 #("i4444"
-                                                                               
   "i4445"
-                                                                               
   "i4446"
-                                                                               
   "i4447"))
-                                                                              
#(ribcage
-                                                                               
 ()
-                                                                               
 ()
-                                                                               
 ())
-                                                                              
#(ribcage
-                                                                               
 #(x)
-                                                                               
 #((top))
-                                                                               
 #("i4441")))
-                                                                             
(hygiene
-                                                                               
guile))
-                                                                          
(cons #{e1\ 4491}#
-                                                                               
 #{e2\ 4492}#))
-                                                                    #{rest\ 
4484}#))
-                                                            #{tmp\ 4486}#)
-                                                     ((lambda (#{_\ 4496}#)
-                                                        (syntax-violation
-                                                          'case
-                                                          "bad clause"
-                                                          #{x\ 4440}#
-                                                          #{clause\ 4460}#))
-                                                      #{tmp\ 4485}#)))
-                                                 ($sc-dispatch
-                                                   #{tmp\ 4485}#
-                                                   '(each-any
-                                                      any
-                                                      .
-                                                      each-any))))
-                                              #{clause\ 4460}#))
-                                           #{tmp\ 4482}#))
-                                        (#{f\ 4459}#
-                                          (car #{clauses\ 4461}#)
-                                          (cdr #{clauses\ 4461}#)))))))
-                          (#{f\ 4459}# #{m1\ 4450}# #{m2\ 4451}#))))
-                     #{tmp\ 4443}#)
-              (syntax-violation
-                #f
-                "source expression failed to match any pattern"
-                #{tmp\ 4442}#)))
-          ($sc-dispatch
-            #{tmp\ 4442}#
-            '(any any any . each-any))))
-       #{x\ 4440}#))))
+                                     (if #{tmp\ 4533}#
+                                       (@apply
+                                         (lambda (#{e1\ 4536}# #{e2\ 4537}#)
+                                           (cons '#(syntax-object
+                                                    begin
+                                                    ((top)
+                                                     #(ribcage
+                                                       #(e1 e2)
+                                                       #((top) (top))
+                                                       #("i4534" "i4535"))
+                                                     #(ribcage () () ())
+                                                     #(ribcage
+                                                       #(f clause clauses)
+                                                       #((top) (top) (top))
+                                                       #("i4525"
+                                                         "i4526"
+                                                         "i4527"))
+                                                     #(ribcage
+                                                       #(_ e m1 m2)
+                                                       #((top)
+                                                         (top)
+                                                         (top)
+                                                         (top))
+                                                       #("i4513"
+                                                         "i4514"
+                                                         "i4515"
+                                                         "i4516"))
+                                                     #(ribcage () () ())
+                                                     #(ribcage
+                                                       #(x)
+                                                       #((top))
+                                                       #("i4510")))
+                                                    (hygiene guile))
+                                                 (cons #{e1\ 4536}#
+                                                       #{e2\ 4537}#)))
+                                         #{tmp\ 4533}#)
+                                       (let ((#{tmp\ 4539}#
+                                               ($sc-dispatch
+                                                 #{tmp\ 4532}#
+                                                 '(each-any any . each-any))))
+                                         (if #{tmp\ 4539}#
+                                           (@apply
+                                             (lambda (#{k\ 4543}#
+                                                      #{e1\ 4544}#
+                                                      #{e2\ 4545}#)
+                                               (list '#(syntax-object
+                                                        if
+                                                        ((top)
+                                                         #(ribcage
+                                                           #(k e1 e2)
+                                                           #((top) (top) (top))
+                                                           #("i4540"
+                                                             "i4541"
+                                                             "i4542"))
+                                                         #(ribcage () () ())
+                                                         #(ribcage
+                                                           #(f clause clauses)
+                                                           #((top) (top) (top))
+                                                           #("i4525"
+                                                             "i4526"
+                                                             "i4527"))
+                                                         #(ribcage
+                                                           #(_ e m1 m2)
+                                                           #((top)
+                                                             (top)
+                                                             (top)
+                                                             (top))
+                                                           #("i4513"
+                                                             "i4514"
+                                                             "i4515"
+                                                             "i4516"))
+                                                         #(ribcage () () ())
+                                                         #(ribcage
+                                                           #(x)
+                                                           #((top))
+                                                           #("i4510")))
+                                                        (hygiene guile))
+                                                     (list '#(syntax-object
+                                                              memv
+                                                              ((top)
+                                                               #(ribcage
+                                                                 #(k e1 e2)
+                                                                 #((top)
+                                                                   (top)
+                                                                   (top))
+                                                                 #("i4540"
+                                                                   "i4541"
+                                                                   "i4542"))
+                                                               #(ribcage
+                                                                 ()
+                                                                 ()
+                                                                 ())
+                                                               #(ribcage
+                                                                 #(f
+                                                                   clause
+                                                                   clauses)
+                                                                 #((top)
+                                                                   (top)
+                                                                   (top))
+                                                                 #("i4525"
+                                                                   "i4526"
+                                                                   "i4527"))
+                                                               #(ribcage
+                                                                 #(_ e m1 m2)
+                                                                 #((top)
+                                                                   (top)
+                                                                   (top)
+                                                                   (top))
+                                                                 #("i4513"
+                                                                   "i4514"
+                                                                   "i4515"
+                                                                   "i4516"))
+                                                               #(ribcage
+                                                                 ()
+                                                                 ()
+                                                                 ())
+                                                               #(ribcage
+                                                                 #(x)
+                                                                 #((top))
+                                                                 #("i4510")))
+                                                              (hygiene guile))
+                                                           '#(syntax-object
+                                                              t
+                                                              ((top)
+                                                               #(ribcage
+                                                                 #(k e1 e2)
+                                                                 #((top)
+                                                                   (top)
+                                                                   (top))
+                                                                 #("i4540"
+                                                                   "i4541"
+                                                                   "i4542"))
+                                                               #(ribcage
+                                                                 ()
+                                                                 ()
+                                                                 ())
+                                                               #(ribcage
+                                                                 #(f
+                                                                   clause
+                                                                   clauses)
+                                                                 #((top)
+                                                                   (top)
+                                                                   (top))
+                                                                 #("i4525"
+                                                                   "i4526"
+                                                                   "i4527"))
+                                                               #(ribcage
+                                                                 #(_ e m1 m2)
+                                                                 #((top)
+                                                                   (top)
+                                                                   (top)
+                                                                   (top))
+                                                                 #("i4513"
+                                                                   "i4514"
+                                                                   "i4515"
+                                                                   "i4516"))
+                                                               #(ribcage
+                                                                 ()
+                                                                 ()
+                                                                 ())
+                                                               #(ribcage
+                                                                 #(x)
+                                                                 #((top))
+                                                                 #("i4510")))
+                                                              (hygiene guile))
+                                                           (list 
'#(syntax-object
+                                                                    quote
+                                                                    ((top)
+                                                                     #(ribcage
+                                                                       #(k
+                                                                         e1
+                                                                         e2)
+                                                                       #((top)
+                                                                         (top)
+                                                                         (top))
+                                                                       
#("i4540"
+                                                                         
"i4541"
+                                                                         
"i4542"))
+                                                                     #(ribcage
+                                                                       ()
+                                                                       ()
+                                                                       ())
+                                                                     #(ribcage
+                                                                       #(f
+                                                                         clause
+                                                                         
clauses)
+                                                                       #((top)
+                                                                         (top)
+                                                                         (top))
+                                                                       
#("i4525"
+                                                                         
"i4526"
+                                                                         
"i4527"))
+                                                                     #(ribcage
+                                                                       #(_
+                                                                         e
+                                                                         m1
+                                                                         m2)
+                                                                       #((top)
+                                                                         (top)
+                                                                         (top)
+                                                                         (top))
+                                                                       
#("i4513"
+                                                                         
"i4514"
+                                                                         
"i4515"
+                                                                         
"i4516"))
+                                                                     #(ribcage
+                                                                       ()
+                                                                       ()
+                                                                       ())
+                                                                     #(ribcage
+                                                                       #(x)
+                                                                       #((top))
+                                                                       
#("i4510")))
+                                                                    (hygiene
+                                                                      guile))
+                                                                 #{k\ 4543}#))
+                                                     (cons '#(syntax-object
+                                                              begin
+                                                              ((top)
+                                                               #(ribcage
+                                                                 #(k e1 e2)
+                                                                 #((top)
+                                                                   (top)
+                                                                   (top))
+                                                                 #("i4540"
+                                                                   "i4541"
+                                                                   "i4542"))
+                                                               #(ribcage
+                                                                 ()
+                                                                 ()
+                                                                 ())
+                                                               #(ribcage
+                                                                 #(f
+                                                                   clause
+                                                                   clauses)
+                                                                 #((top)
+                                                                   (top)
+                                                                   (top))
+                                                                 #("i4525"
+                                                                   "i4526"
+                                                                   "i4527"))
+                                                               #(ribcage
+                                                                 #(_ e m1 m2)
+                                                                 #((top)
+                                                                   (top)
+                                                                   (top)
+                                                                   (top))
+                                                                 #("i4513"
+                                                                   "i4514"
+                                                                   "i4515"
+                                                                   "i4516"))
+                                                               #(ribcage
+                                                                 ()
+                                                                 ()
+                                                                 ())
+                                                               #(ribcage
+                                                                 #(x)
+                                                                 #((top))
+                                                                 #("i4510")))
+                                                              (hygiene guile))
+                                                           (cons #{e1\ 4544}#
+                                                                 #{e2\ 
4545}#))))
+                                             #{tmp\ 4539}#)
+                                           (let ((#{_\ 4549}# #{tmp\ 4532}#))
+                                             (syntax-violation
+                                               'case
+                                               "bad clause"
+                                               #{x\ 4509}#
+                                               #{clause\ 4529}#)))))))
+                                 (let ((#{tmp\ 4551}#
+                                         (#{f\ 4528}#
+                                           (car #{clauses\ 4530}#)
+                                           (cdr #{clauses\ 4530}#))))
+                                   (let ((#{rest\ 4553}# #{tmp\ 4551}#))
+                                     (let ((#{tmp\ 4554}# #{clause\ 4529}#))
+                                       (let ((#{tmp\ 4555}#
+                                               ($sc-dispatch
+                                                 #{tmp\ 4554}#
+                                                 '(each-any any . each-any))))
+                                         (if #{tmp\ 4555}#
+                                           (@apply
+                                             (lambda (#{k\ 4559}#
+                                                      #{e1\ 4560}#
+                                                      #{e2\ 4561}#)
+                                               (list '#(syntax-object
+                                                        if
+                                                        ((top)
+                                                         #(ribcage
+                                                           #(k e1 e2)
+                                                           #((top) (top) (top))
+                                                           #("i4556"
+                                                             "i4557"
+                                                             "i4558"))
+                                                         #(ribcage
+                                                           #(rest)
+                                                           #((top))
+                                                           #("i4552"))
+                                                         #(ribcage () () ())
+                                                         #(ribcage
+                                                           #(f clause clauses)
+                                                           #((top) (top) (top))
+                                                           #("i4525"
+                                                             "i4526"
+                                                             "i4527"))
+                                                         #(ribcage
+                                                           #(_ e m1 m2)
+                                                           #((top)
+                                                             (top)
+                                                             (top)
+                                                             (top))
+                                                           #("i4513"
+                                                             "i4514"
+                                                             "i4515"
+                                                             "i4516"))
+                                                         #(ribcage () () ())
+                                                         #(ribcage
+                                                           #(x)
+                                                           #((top))
+                                                           #("i4510")))
+                                                        (hygiene guile))
+                                                     (list '#(syntax-object
+                                                              memv
+                                                              ((top)
+                                                               #(ribcage
+                                                                 #(k e1 e2)
+                                                                 #((top)
+                                                                   (top)
+                                                                   (top))
+                                                                 #("i4556"
+                                                                   "i4557"
+                                                                   "i4558"))
+                                                               #(ribcage
+                                                                 #(rest)
+                                                                 #((top))
+                                                                 #("i4552"))
+                                                               #(ribcage
+                                                                 ()
+                                                                 ()
+                                                                 ())
+                                                               #(ribcage
+                                                                 #(f
+                                                                   clause
+                                                                   clauses)
+                                                                 #((top)
+                                                                   (top)
+                                                                   (top))
+                                                                 #("i4525"
+                                                                   "i4526"
+                                                                   "i4527"))
+                                                               #(ribcage
+                                                                 #(_ e m1 m2)
+                                                                 #((top)
+                                                                   (top)
+                                                                   (top)
+                                                                   (top))
+                                                                 #("i4513"
+                                                                   "i4514"
+                                                                   "i4515"
+                                                                   "i4516"))
+                                                               #(ribcage
+                                                                 ()
+                                                                 ()
+                                                                 ())
+                                                               #(ribcage
+                                                                 #(x)
+                                                                 #((top))
+                                                                 #("i4510")))
+                                                              (hygiene guile))
+                                                           '#(syntax-object
+                                                              t
+                                                              ((top)
+                                                               #(ribcage
+                                                                 #(k e1 e2)
+                                                                 #((top)
+                                                                   (top)
+                                                                   (top))
+                                                                 #("i4556"
+                                                                   "i4557"
+                                                                   "i4558"))
+                                                               #(ribcage
+                                                                 #(rest)
+                                                                 #((top))
+                                                                 #("i4552"))
+                                                               #(ribcage
+                                                                 ()
+                                                                 ()
+                                                                 ())
+                                                               #(ribcage
+                                                                 #(f
+                                                                   clause
+                                                                   clauses)
+                                                                 #((top)
+                                                                   (top)
+                                                                   (top))
+                                                                 #("i4525"
+                                                                   "i4526"
+                                                                   "i4527"))
+                                                               #(ribcage
+                                                                 #(_ e m1 m2)
+                                                                 #((top)
+                                                                   (top)
+                                                                   (top)
+                                                                   (top))
+                                                                 #("i4513"
+                                                                   "i4514"
+                                                                   "i4515"
+                                                                   "i4516"))
+                                                               #(ribcage
+                                                                 ()
+                                                                 ()
+                                                                 ())
+                                                               #(ribcage
+                                                                 #(x)
+                                                                 #((top))
+                                                                 #("i4510")))
+                                                              (hygiene guile))
+                                                           (list 
'#(syntax-object
+                                                                    quote
+                                                                    ((top)
+                                                                     #(ribcage
+                                                                       #(k
+                                                                         e1
+                                                                         e2)
+                                                                       #((top)
+                                                                         (top)
+                                                                         (top))
+                                                                       
#("i4556"
+                                                                         
"i4557"
+                                                                         
"i4558"))
+                                                                     #(ribcage
+                                                                       #(rest)
+                                                                       #((top))
+                                                                       
#("i4552"))
+                                                                     #(ribcage
+                                                                       ()
+                                                                       ()
+                                                                       ())
+                                                                     #(ribcage
+                                                                       #(f
+                                                                         clause
+                                                                         
clauses)
+                                                                       #((top)
+                                                                         (top)
+                                                                         (top))
+                                                                       
#("i4525"
+                                                                         
"i4526"
+                                                                         
"i4527"))
+                                                                     #(ribcage
+                                                                       #(_
+                                                                         e
+                                                                         m1
+                                                                         m2)
+                                                                       #((top)
+                                                                         (top)
+                                                                         (top)
+                                                                         (top))
+                                                                       
#("i4513"
+                                                                         
"i4514"
+                                                                         
"i4515"
+                                                                         
"i4516"))
+                                                                     #(ribcage
+                                                                       ()
+                                                                       ()
+                                                                       ())
+                                                                     #(ribcage
+                                                                       #(x)
+                                                                       #((top))
+                                                                       
#("i4510")))
+                                                                    (hygiene
+                                                                      guile))
+                                                                 #{k\ 4559}#))
+                                                     (cons '#(syntax-object
+                                                              begin
+                                                              ((top)
+                                                               #(ribcage
+                                                                 #(k e1 e2)
+                                                                 #((top)
+                                                                   (top)
+                                                                   (top))
+                                                                 #("i4556"
+                                                                   "i4557"
+                                                                   "i4558"))
+                                                               #(ribcage
+                                                                 #(rest)
+                                                                 #((top))
+                                                                 #("i4552"))
+                                                               #(ribcage
+                                                                 ()
+                                                                 ()
+                                                                 ())
+                                                               #(ribcage
+                                                                 #(f
+                                                                   clause
+                                                                   clauses)
+                                                                 #((top)
+                                                                   (top)
+                                                                   (top))
+                                                                 #("i4525"
+                                                                   "i4526"
+                                                                   "i4527"))
+                                                               #(ribcage
+                                                                 #(_ e m1 m2)
+                                                                 #((top)
+                                                                   (top)
+                                                                   (top)
+                                                                   (top))
+                                                                 #("i4513"
+                                                                   "i4514"
+                                                                   "i4515"
+                                                                   "i4516"))
+                                                               #(ribcage
+                                                                 ()
+                                                                 ()
+                                                                 ())
+                                                               #(ribcage
+                                                                 #(x)
+                                                                 #((top))
+                                                                 #("i4510")))
+                                                              (hygiene guile))
+                                                           (cons #{e1\ 4560}#
+                                                                 #{e2\ 4561}#))
+                                                     #{rest\ 4553}#))
+                                             #{tmp\ 4555}#)
+                                           (let ((#{_\ 4565}# #{tmp\ 4554}#))
+                                             (syntax-violation
+                                               'case
+                                               "bad clause"
+                                               #{x\ 4509}#
+                                               #{clause\ 4529}#)))))))))))
+                          (begin (#{f\ 4528}# #{m1\ 4519}# #{m2\ 4520}#)))))
+                  (let ((#{body\ 4524}# #{tmp\ 4522}#))
+                    (list '#(syntax-object
+                             let
+                             ((top)
+                              #(ribcage #(body) #((top)) #("i4523"))
+                              #(ribcage
+                                #(_ e m1 m2)
+                                #((top) (top) (top) (top))
+                                #("i4513" "i4514" "i4515" "i4516"))
+                              #(ribcage () () ())
+                              #(ribcage #(x) #((top)) #("i4510")))
+                             (hygiene guile))
+                          (list (list '#(syntax-object
+                                         t
+                                         ((top)
+                                          #(ribcage
+                                            #(body)
+                                            #((top))
+                                            #("i4523"))
+                                          #(ribcage
+                                            #(_ e m1 m2)
+                                            #((top) (top) (top) (top))
+                                            #("i4513" "i4514" "i4515" "i4516"))
+                                          #(ribcage () () ())
+                                          #(ribcage #(x) #((top)) #("i4510")))
+                                         (hygiene guile))
+                                      #{e\ 4518}#))
+                          #{body\ 4524}#))))
+              #{tmp\ 4512}#)
+            (syntax-violation
+              #f
+              "source expression failed to match any pattern"
+              #{tmp\ 4511}#)))))))
 
 (define identifier-syntax
   (make-syntax-transformer
     'identifier-syntax
     'macro
-    (lambda (#{x\ 4497}#)
-      ((lambda (#{tmp\ 4499}#)
-         ((lambda (#{tmp\ 4500}#)
-            (if #{tmp\ 4500}#
-              (apply (lambda (#{_\ 4503}# #{e\ 4504}#)
-                       (list '#(syntax-object
-                                lambda
-                                ((top)
-                                 #(ribcage
-                                   #(_ e)
-                                   #((top) (top))
-                                   #("i4501" "i4502"))
-                                 #(ribcage () () ())
-                                 #(ribcage #(x) #((top)) #("i4498")))
-                                (hygiene guile))
-                             '(#(syntax-object
-                                 x
-                                 ((top)
-                                  #(ribcage
-                                    #(_ e)
-                                    #((top) (top))
-                                    #("i4501" "i4502"))
-                                  #(ribcage () () ())
-                                  #(ribcage #(x) #((top)) #("i4498")))
-                                 (hygiene guile)))
-                             '#((#(syntax-object
-                                   macro-type
-                                   ((top)
-                                    #(ribcage
-                                      #(_ e)
-                                      #((top) (top))
-                                      #("i4501" "i4502"))
-                                    #(ribcage () () ())
-                                    #(ribcage #(x) #((top)) #("i4498")))
-                                   (hygiene guile))
-                                 .
-                                 #(syntax-object
-                                   identifier-syntax
-                                   ((top)
-                                    #(ribcage
-                                      #(_ e)
-                                      #((top) (top))
-                                      #("i4501" "i4502"))
-                                    #(ribcage () () ())
-                                    #(ribcage #(x) #((top)) #("i4498")))
-                                   (hygiene guile))))
-                             (list '#(syntax-object
-                                      syntax-case
-                                      ((top)
-                                       #(ribcage
-                                         #(_ e)
-                                         #((top) (top))
-                                         #("i4501" "i4502"))
-                                       #(ribcage () () ())
-                                       #(ribcage #(x) #((top)) #("i4498")))
-                                      (hygiene guile))
-                                   '#(syntax-object
-                                      x
+    (lambda (#{x\ 4566}#)
+      (let ((#{tmp\ 4568}# #{x\ 4566}#))
+        (let ((#{tmp\ 4569}#
+                ($sc-dispatch #{tmp\ 4568}# (quote (any any)))))
+          (if #{tmp\ 4569}#
+            (@apply
+              (lambda (#{_\ 4572}# #{e\ 4573}#)
+                (list '#(syntax-object
+                         lambda
+                         ((top)
+                          #(ribcage
+                            #(_ e)
+                            #((top) (top))
+                            #("i4570" "i4571"))
+                          #(ribcage () () ())
+                          #(ribcage #(x) #((top)) #("i4567")))
+                         (hygiene guile))
+                      '(#(syntax-object
+                          x
+                          ((top)
+                           #(ribcage
+                             #(_ e)
+                             #((top) (top))
+                             #("i4570" "i4571"))
+                           #(ribcage () () ())
+                           #(ribcage #(x) #((top)) #("i4567")))
+                          (hygiene guile)))
+                      '#((#(syntax-object
+                            macro-type
+                            ((top)
+                             #(ribcage
+                               #(_ e)
+                               #((top) (top))
+                               #("i4570" "i4571"))
+                             #(ribcage () () ())
+                             #(ribcage #(x) #((top)) #("i4567")))
+                            (hygiene guile))
+                          .
+                          #(syntax-object
+                            identifier-syntax
+                            ((top)
+                             #(ribcage
+                               #(_ e)
+                               #((top) (top))
+                               #("i4570" "i4571"))
+                             #(ribcage () () ())
+                             #(ribcage #(x) #((top)) #("i4567")))
+                            (hygiene guile))))
+                      (list '#(syntax-object
+                               syntax-case
+                               ((top)
+                                #(ribcage
+                                  #(_ e)
+                                  #((top) (top))
+                                  #("i4570" "i4571"))
+                                #(ribcage () () ())
+                                #(ribcage #(x) #((top)) #("i4567")))
+                               (hygiene guile))
+                            '#(syntax-object
+                               x
+                               ((top)
+                                #(ribcage
+                                  #(_ e)
+                                  #((top) (top))
+                                  #("i4570" "i4571"))
+                                #(ribcage () () ())
+                                #(ribcage #(x) #((top)) #("i4567")))
+                               (hygiene guile))
+                            '()
+                            (list '#(syntax-object
+                                     id
+                                     ((top)
+                                      #(ribcage
+                                        #(_ e)
+                                        #((top) (top))
+                                        #("i4570" "i4571"))
+                                      #(ribcage () () ())
+                                      #(ribcage #(x) #((top)) #("i4567")))
+                                     (hygiene guile))
+                                  '(#(syntax-object
+                                      identifier?
                                       ((top)
                                        #(ribcage
                                          #(_ e)
                                          #((top) (top))
-                                         #("i4501" "i4502"))
+                                         #("i4570" "i4571"))
                                        #(ribcage () () ())
-                                       #(ribcage #(x) #((top)) #("i4498")))
+                                       #(ribcage #(x) #((top)) #("i4567")))
                                       (hygiene guile))
-                                   '()
-                                   (list '#(syntax-object
-                                            id
+                                    (#(syntax-object
+                                       syntax
+                                       ((top)
+                                        #(ribcage
+                                          #(_ e)
+                                          #((top) (top))
+                                          #("i4570" "i4571"))
+                                        #(ribcage () () ())
+                                        #(ribcage #(x) #((top)) #("i4567")))
+                                       (hygiene guile))
+                                     #(syntax-object
+                                       id
+                                       ((top)
+                                        #(ribcage
+                                          #(_ e)
+                                          #((top) (top))
+                                          #("i4570" "i4571"))
+                                        #(ribcage () () ())
+                                        #(ribcage #(x) #((top)) #("i4567")))
+                                       (hygiene guile))))
+                                  (list '#(syntax-object
+                                           syntax
+                                           ((top)
+                                            #(ribcage
+                                              #(_ e)
+                                              #((top) (top))
+                                              #("i4570" "i4571"))
+                                            #(ribcage () () ())
+                                            #(ribcage
+                                              #(x)
+                                              #((top))
+                                              #("i4567")))
+                                           (hygiene guile))
+                                        #{e\ 4573}#))
+                            (list (cons #{_\ 4572}#
+                                        '(#(syntax-object
+                                            x
                                             ((top)
                                              #(ribcage
                                                #(_ e)
                                                #((top) (top))
-                                               #("i4501" "i4502"))
+                                               #("i4570" "i4571"))
                                              #(ribcage () () ())
                                              #(ribcage
                                                #(x)
                                                #((top))
-                                               #("i4498")))
+                                               #("i4567")))
                                             (hygiene guile))
-                                         '(#(syntax-object
-                                             identifier?
-                                             ((top)
-                                              #(ribcage
-                                                #(_ e)
-                                                #((top) (top))
-                                                #("i4501" "i4502"))
-                                              #(ribcage () () ())
-                                              #(ribcage
-                                                #(x)
-                                                #((top))
-                                                #("i4498")))
-                                             (hygiene guile))
-                                           (#(syntax-object
-                                              syntax
-                                              ((top)
-                                               #(ribcage
-                                                 #(_ e)
-                                                 #((top) (top))
-                                                 #("i4501" "i4502"))
-                                               #(ribcage () () ())
-                                               #(ribcage
-                                                 #(x)
-                                                 #((top))
-                                                 #("i4498")))
-                                              (hygiene guile))
-                                            #(syntax-object
-                                              id
-                                              ((top)
-                                               #(ribcage
-                                                 #(_ e)
-                                                 #((top) (top))
-                                                 #("i4501" "i4502"))
-                                               #(ribcage () () ())
-                                               #(ribcage
-                                                 #(x)
-                                                 #((top))
-                                                 #("i4498")))
-                                              (hygiene guile))))
-                                         (list '#(syntax-object
-                                                  syntax
+                                          #(syntax-object
+                                            ...
+                                            ((top)
+                                             #(ribcage
+                                               #(_ e)
+                                               #((top) (top))
+                                               #("i4570" "i4571"))
+                                             #(ribcage () () ())
+                                             #(ribcage
+                                               #(x)
+                                               #((top))
+                                               #("i4567")))
+                                            (hygiene guile))))
+                                  (list '#(syntax-object
+                                           syntax
+                                           ((top)
+                                            #(ribcage
+                                              #(_ e)
+                                              #((top) (top))
+                                              #("i4570" "i4571"))
+                                            #(ribcage () () ())
+                                            #(ribcage
+                                              #(x)
+                                              #((top))
+                                              #("i4567")))
+                                           (hygiene guile))
+                                        (cons #{e\ 4573}#
+                                              '(#(syntax-object
+                                                  x
                                                   ((top)
                                                    #(ribcage
                                                      #(_ e)
                                                      #((top) (top))
-                                                     #("i4501" "i4502"))
+                                                     #("i4570" "i4571"))
                                                    #(ribcage () () ())
                                                    #(ribcage
                                                      #(x)
                                                      #((top))
-                                                     #("i4498")))
+                                                     #("i4567")))
                                                   (hygiene guile))
-                                               #{e\ 4504}#))
-                                   (list (cons #{_\ 4503}#
-                                               '(#(syntax-object
-                                                   x
-                                                   ((top)
-                                                    #(ribcage
-                                                      #(_ e)
-                                                      #((top) (top))
-                                                      #("i4501" "i4502"))
-                                                    #(ribcage () () ())
-                                                    #(ribcage
-                                                      #(x)
-                                                      #((top))
-                                                      #("i4498")))
-                                                   (hygiene guile))
-                                                 #(syntax-object
-                                                   ...
-                                                   ((top)
-                                                    #(ribcage
-                                                      #(_ e)
-                                                      #((top) (top))
-                                                      #("i4501" "i4502"))
-                                                    #(ribcage () () ())
-                                                    #(ribcage
-                                                      #(x)
-                                                      #((top))
-                                                      #("i4498")))
-                                                   (hygiene guile))))
-                                         (list '#(syntax-object
-                                                  syntax
+                                                #(syntax-object
+                                                  ...
                                                   ((top)
                                                    #(ribcage
                                                      #(_ e)
                                                      #((top) (top))
-                                                     #("i4501" "i4502"))
+                                                     #("i4570" "i4571"))
                                                    #(ribcage () () ())
                                                    #(ribcage
                                                      #(x)
                                                      #((top))
-                                                     #("i4498")))
-                                                  (hygiene guile))
-                                               (cons #{e\ 4504}#
-                                                     '(#(syntax-object
-                                                         x
-                                                         ((top)
-                                                          #(ribcage
-                                                            #(_ e)
-                                                            #((top) (top))
-                                                            #("i4501" "i4502"))
-                                                          #(ribcage () () ())
-                                                          #(ribcage
-                                                            #(x)
-                                                            #((top))
-                                                            #("i4498")))
-                                                         (hygiene guile))
-                                                       #(syntax-object
-                                                         ...
-                                                         ((top)
-                                                          #(ribcage
-                                                            #(_ e)
-                                                            #((top) (top))
-                                                            #("i4501" "i4502"))
-                                                          #(ribcage () () ())
-                                                          #(ribcage
-                                                            #(x)
-                                                            #((top))
-                                                            #("i4498")))
-                                                         (hygiene
-                                                           guile)))))))))
-                     #{tmp\ 4500}#)
-              (syntax-violation
-                #f
-                "source expression failed to match any pattern"
-                #{tmp\ 4499}#)))
-          ($sc-dispatch #{tmp\ 4499}# (quote (any any)))))
-       #{x\ 4497}#))))
+                                                     #("i4567")))
+                                                  (hygiene guile)))))))))
+              #{tmp\ 4569}#)
+            (syntax-violation
+              #f
+              "source expression failed to match any pattern"
+              #{tmp\ 4568}#)))))))
 
 (define define*
   (make-syntax-transformer
     'define*
     'macro
-    (lambda (#{x\ 4505}#)
-      ((lambda (#{tmp\ 4507}#)
-         ((lambda (#{tmp\ 4508}#)
-            (if #{tmp\ 4508}#
-              (apply (lambda (#{_\ 4514}#
-                              #{id\ 4515}#
-                              #{args\ 4516}#
-                              #{b0\ 4517}#
-                              #{b1\ 4518}#)
-                       (list '#(syntax-object
-                                define
-                                ((top)
-                                 #(ribcage
-                                   #(_ id args b0 b1)
-                                   #((top) (top) (top) (top) (top))
-                                   #("i4509" "i4510" "i4511" "i4512" "i4513"))
-                                 #(ribcage () () ())
-                                 #(ribcage #(x) #((top)) #("i4506")))
-                                (hygiene guile))
-                             #{id\ 4515}#
-                             (cons '#(syntax-object
-                                      lambda*
-                                      ((top)
-                                       #(ribcage
-                                         #(_ id args b0 b1)
-                                         #((top) (top) (top) (top) (top))
-                                         #("i4509"
-                                           "i4510"
-                                           "i4511"
-                                           "i4512"
-                                           "i4513"))
-                                       #(ribcage () () ())
-                                       #(ribcage #(x) #((top)) #("i4506")))
-                                      (hygiene guile))
-                                   (cons #{args\ 4516}#
-                                         (cons #{b0\ 4517}# #{b1\ 4518}#)))))
-                     #{tmp\ 4508}#)
-              ((lambda (#{tmp\ 4520}#)
-                 (if (if #{tmp\ 4520}#
-                       (apply (lambda (#{_\ 4524}# #{id\ 4525}# #{val\ 4526}#)
-                                (identifier?
-                                  '#(syntax-object
-                                     x
-                                     ((top)
-                                      #(ribcage
-                                        #(_ id val)
-                                        #((top) (top) (top))
-                                        #("i4521" "i4522" "i4523"))
-                                      #(ribcage () () ())
-                                      #(ribcage #(x) #((top)) #("i4506")))
-                                     (hygiene guile))))
-                              #{tmp\ 4520}#)
-                       #f)
-                   (apply (lambda (#{_\ 4530}# #{id\ 4531}# #{val\ 4532}#)
-                            (list '#(syntax-object
-                                     define
-                                     ((top)
-                                      #(ribcage
-                                        #(_ id val)
-                                        #((top) (top) (top))
-                                        #("i4527" "i4528" "i4529"))
-                                      #(ribcage () () ())
-                                      #(ribcage #(x) #((top)) #("i4506")))
-                                     (hygiene guile))
-                                  #{id\ 4531}#
-                                  #{val\ 4532}#))
-                          #{tmp\ 4520}#)
-                   (syntax-violation
-                     #f
-                     "source expression failed to match any pattern"
-                     #{tmp\ 4507}#)))
-               ($sc-dispatch
-                 #{tmp\ 4507}#
-                 '(any any any)))))
-          ($sc-dispatch
-            #{tmp\ 4507}#
-            '(any (any . any) any . each-any))))
-       #{x\ 4505}#))))
+    (lambda (#{x\ 4574}#)
+      (let ((#{tmp\ 4576}# #{x\ 4574}#))
+        (let ((#{tmp\ 4577}#
+                ($sc-dispatch
+                  #{tmp\ 4576}#
+                  '(any (any . any) any . each-any))))
+          (if #{tmp\ 4577}#
+            (@apply
+              (lambda (#{_\ 4583}#
+                       #{id\ 4584}#
+                       #{args\ 4585}#
+                       #{b0\ 4586}#
+                       #{b1\ 4587}#)
+                (list '#(syntax-object
+                         define
+                         ((top)
+                          #(ribcage
+                            #(_ id args b0 b1)
+                            #((top) (top) (top) (top) (top))
+                            #("i4578" "i4579" "i4580" "i4581" "i4582"))
+                          #(ribcage () () ())
+                          #(ribcage #(x) #((top)) #("i4575")))
+                         (hygiene guile))
+                      #{id\ 4584}#
+                      (cons '#(syntax-object
+                               lambda*
+                               ((top)
+                                #(ribcage
+                                  #(_ id args b0 b1)
+                                  #((top) (top) (top) (top) (top))
+                                  #("i4578" "i4579" "i4580" "i4581" "i4582"))
+                                #(ribcage () () ())
+                                #(ribcage #(x) #((top)) #("i4575")))
+                               (hygiene guile))
+                            (cons #{args\ 4585}#
+                                  (cons #{b0\ 4586}# #{b1\ 4587}#)))))
+              #{tmp\ 4577}#)
+            (let ((#{tmp\ 4589}#
+                    ($sc-dispatch
+                      #{tmp\ 4576}#
+                      '(any any any))))
+              (if (if #{tmp\ 4589}#
+                    (@apply
+                      (lambda (#{_\ 4593}# #{id\ 4594}# #{val\ 4595}#)
+                        (identifier?
+                          '#(syntax-object
+                             x
+                             ((top)
+                              #(ribcage
+                                #(_ id val)
+                                #((top) (top) (top))
+                                #("i4590" "i4591" "i4592"))
+                              #(ribcage () () ())
+                              #(ribcage #(x) #((top)) #("i4575")))
+                             (hygiene guile))))
+                      #{tmp\ 4589}#)
+                    #f)
+                (@apply
+                  (lambda (#{_\ 4599}# #{id\ 4600}# #{val\ 4601}#)
+                    (list '#(syntax-object
+                             define
+                             ((top)
+                              #(ribcage
+                                #(_ id val)
+                                #((top) (top) (top))
+                                #("i4596" "i4597" "i4598"))
+                              #(ribcage () () ())
+                              #(ribcage #(x) #((top)) #("i4575")))
+                             (hygiene guile))
+                          #{id\ 4600}#
+                          #{val\ 4601}#))
+                  #{tmp\ 4589}#)
+                (syntax-violation
+                  #f
+                  "source expression failed to match any pattern"
+                  #{tmp\ 4576}#)))))))))
 
diff --git a/module/ice-9/psyntax.scm b/module/ice-9/psyntax.scm
index cf6a3d4..8345479 100644
--- a/module/ice-9/psyntax.scm
+++ b/module/ice-9/psyntax.scm
@@ -520,18 +520,18 @@
           (maybe-name-value! f-name proc)
           (for-each maybe-name-value! ids val-exps)
           (make-letrec
-           src
+           src #f
            (list f-name) (list f) (list proc)
            (build-application src (build-lexical-reference 'fun src f-name f)
                               val-exps))))))
 
   (define build-letrec
-    (lambda (src ids vars val-exps body-exp)
+    (lambda (src in-order? ids vars val-exps body-exp)
       (if (null? vars)
           body-exp
           (begin
             (for-each maybe-name-value! ids val-exps)
-            (make-letrec src ids vars val-exps body-exp)))))
+            (make-letrec src in-order? ids vars val-exps body-exp)))))
 
 
   ;; FIXME: use a faster gensym
@@ -1483,7 +1483,7 @@
                                            (loop (cdr bs) er r-cache))
                                          (loop (cdr bs) er-cache r-cache)))))
                              (set-cdr! r (extend-env labels bindings (cdr r)))
-                             (build-letrec no-source
+                             (build-letrec no-source #t
                                            (map syntax->datum var-ids)
                                            vars
                                            (map (lambda (x)
@@ -2103,7 +2103,7 @@
                                   (new-vars (map gen-var ids)))
                               (let ((w (make-binding-wrap ids labels w))
                                     (r (extend-var-env labels new-vars r)))
-                                (build-letrec s
+                                (build-letrec s #f
                                               (map syntax->datum ids)
                                               new-vars
                                               (map (lambda (x) (chi x r w 
mod)) #'(val ...))
@@ -2112,6 +2112,27 @@
                      (_ (syntax-violation 'letrec "bad letrec" (source-wrap e 
w s mod))))))
 
 
+  (global-extend 'core 'letrec*
+                 (lambda (e r w s mod)
+                   (syntax-case e ()
+                     ((_ ((id val) ...) e1 e2 ...)
+                      (and-map id? #'(id ...))
+                      (let ((ids #'(id ...)))
+                        (if (not (valid-bound-ids? ids))
+                            (syntax-violation 'letrec* "duplicate bound 
variable" e)
+                            (let ((labels (gen-labels ids))
+                                  (new-vars (map gen-var ids)))
+                              (let ((w (make-binding-wrap ids labels w))
+                                    (r (extend-var-env labels new-vars r)))
+                                (build-letrec s #t
+                                              (map syntax->datum ids)
+                                              new-vars
+                                              (map (lambda (x) (chi x r w 
mod)) #'(val ...))
+                                              (chi-body #'(e1 e2 ...) 
+                                                        (source-wrap e w s 
mod) r w mod)))))))
+                     (_ (syntax-violation 'letrec* "bad letrec*" (source-wrap 
e w s mod))))))
+
+
   (global-extend 'core 'set!
                  (lambda (e r w s mod)
                    (syntax-case e ()
diff --git a/module/language/elisp/compile-tree-il.scm 
b/module/language/elisp/compile-tree-il.scm
index 47b49d6..1701f0f 100644
--- a/module/language/elisp/compile-tree-il.scm
+++ b/module/language/elisp/compile-tree-il.scm
@@ -770,7 +770,7 @@
             (iter-thunk (make-lambda loc '()
                           (make-lambda-case #f '() #f #f #f '() '()
                                             lambda-body #f))))
-       (make-letrec loc '(iterate) (list itersym) (list iter-thunk)
+       (make-letrec loc #f '(iterate) (list itersym) (list iter-thunk)
          iter-call)))
 
     ; Either (lambda ...) or (function (lambda ...)) denotes a 
lambda-expression
diff --git a/module/language/tree-il.scm b/module/language/tree-il.scm
index 6811734..9cff011 100644
--- a/module/language/tree-il.scm
+++ b/module/language/tree-il.scm
@@ -42,7 +42,7 @@
                           lambda-case-inits lambda-case-gensyms
                           lambda-case-body lambda-case-alternate
             <let> let? make-let let-src let-names let-gensyms let-vals let-body
-            <letrec> letrec? make-letrec letrec-src letrec-names 
letrec-gensyms letrec-vals letrec-body
+            <letrec> letrec? make-letrec letrec-src letrec-in-order? 
letrec-names letrec-gensyms letrec-vals letrec-body
             <fix> fix? make-fix fix-src fix-names fix-gensyms fix-vals fix-body
             <let-values> let-values? make-let-values let-values-src 
let-values-exp let-values-body
             <dynwind> dynwind? make-dynwind dynwind-src dynwind-winder 
dynwind-body dynwind-unwinder
@@ -123,7 +123,7 @@
   ;; (<lambda> meta body)
   ;; (<lambda-case> req opt rest kw inits gensyms body alternate)
   ;; (<let> names gensyms vals body)
-  ;; (<letrec> names gensyms vals body)
+  ;; (<letrec> in-order? names gensyms vals body)
   ;; (<dynlet> fluids vals body)
 
 (define-type (<tree-il> #:common-slots (src) #:printer print-tree-il)
@@ -216,7 +216,10 @@
       (make-let loc names gensyms (map retrans vals) (retrans body)))
 
      ((letrec ,names ,gensyms ,vals ,body)
-      (make-letrec loc names gensyms (map retrans vals) (retrans body)))
+      (make-letrec loc #f names gensyms (map retrans vals) (retrans body)))
+
+     ((letrec* ,names ,gensyms ,vals ,body)
+      (make-letrec loc #t names gensyms (map retrans vals) (retrans body)))
 
      ((fix ,names ,gensyms ,vals ,body)
       (make-fix loc names gensyms (map retrans vals) (retrans body)))
@@ -297,8 +300,9 @@
     ((<let> names gensyms vals body)
      `(let ,names ,gensyms ,(map unparse-tree-il vals) ,(unparse-tree-il 
body)))
 
-    ((<letrec> names gensyms vals body)
-     `(letrec ,names ,gensyms ,(map unparse-tree-il vals) ,(unparse-tree-il 
body)))
+    ((<letrec> in-order? names gensyms vals body)
+     `(,(if in-order? 'letrec* 'letrec) ,names ,gensyms
+       ,(map unparse-tree-il vals) ,(unparse-tree-il body)))
 
     ((<fix> names gensyms vals body)
      `(fix ,names ,gensyms ,(map unparse-tree-il vals) ,(unparse-tree-il 
body)))
@@ -435,12 +439,15 @@
     ((<let> gensyms vals body)
      `(let ,(map list gensyms (map tree-il->scheme vals)) ,(tree-il->scheme 
body)))
     
-    ((<letrec> gensyms vals body)
-     `(letrec ,(map list gensyms (map tree-il->scheme vals)) ,(tree-il->scheme 
body)))
+    ((<letrec> in-order? gensyms vals body)
+     `(,(if in-order? 'letrec* 'letrec)
+       ,(map list gensyms (map tree-il->scheme vals)) ,(tree-il->scheme body)))
 
     ((<fix> gensyms vals body)
-     ;; not a typo, we really do translate back to letrec
-     `(letrec ,(map list gensyms (map tree-il->scheme vals)) ,(tree-il->scheme 
body)))
+     ;; not a typo, we really do translate back to letrec. use letrec* since it
+     ;; doesn't matter, and the naive letrec* transformation does not require 
an
+     ;; inner let.
+     `(letrec* ,(map list gensyms (map tree-il->scheme vals)) 
,(tree-il->scheme body)))
 
     ((<let-values> exp body)
      `(call-with-values (lambda () ,(tree-il->scheme exp))
diff --git a/module/language/tree-il/compile-glil.scm 
b/module/language/tree-il/compile-glil.scm
index 10b06b8..91ff8c7 100644
--- a/module/language/tree-il/compile-glil.scm
+++ b/module/language/tree-il/compile-glil.scm
@@ -114,7 +114,6 @@
    ((vector-set! . 3) . vector-set)
    ((variable-ref . 1) . variable-ref)
    ;; nb, *not* variable-set! -- the args are switched
-   ((variable-set . 2) . variable-set)
    ((variable-bound? . 1) . variable-bound?)
    ((struct? . 1) . struct?)
    ((struct-vtable . 1) . struct-vtable)
@@ -385,6 +384,18 @@
               args))
             (maybe-emit-return))))
 
+        ;; A hack for variable-set, the opcode for which takes its args
+        ;; reversed, relative to the variable-set! function
+        ((and (primitive-ref? proc)
+              (eq? (primitive-ref-name proc) 'variable-set!)
+              (= (length args) 2))
+         (comp-push (cadr args))
+         (comp-push (car args))
+         (emit-code src (make-glil-call 'variable-set 2))
+         (case context
+           ((tail push vals) (emit-code #f (make-glil-void))))
+         (maybe-emit-return))
+        
         ((and (primitive-ref? proc)
               (or (hash-ref *primcall-ops*
                             (cons (primitive-ref-name proc) (length args)))
@@ -778,21 +789,35 @@
        (comp-tail body)
        (emit-code #f (make-glil-unbind)))
 
-      ((<letrec> src names gensyms vals body)
+      ((<letrec> src in-order? names gensyms vals body)
+       ;; First prepare heap storage slots.
        (for-each (lambda (v)
                    (pmatch (hashq-ref (hashq-ref allocation v) self)
                      ((#t #t . ,n)
                       (emit-code src (make-glil-lexical #t #t 'empty-box n)))
                      (,loc (error "badness" x loc))))
                  gensyms)
-       (for-each comp-push vals)
+       ;; Even though the slots are empty, the bindings are valid.
        (emit-bindings src names gensyms allocation self emit-code)
-       (for-each (lambda (v)
-                   (pmatch (hashq-ref (hashq-ref allocation v) self)
-                     ((#t #t . ,n)
-                      (emit-code src (make-glil-lexical #t #t 'set n)))
-                     (,loc (error "badness" x loc))))
-                 (reverse gensyms))
+       (cond
+        (in-order?
+         ;; For letrec*, bind values in order.
+         (for-each (lambda (name v val)
+                     (pmatch (hashq-ref (hashq-ref allocation v) self)
+                       ((#t #t . ,n)
+                        (comp-push val)
+                        (emit-code src (make-glil-lexical #t #t 'set n)))
+                       (,loc (error "badness" x loc))))
+                   names gensyms vals))
+        (else
+         ;; But for letrec, eval all values, then bind.
+         (for-each comp-push vals)
+         (for-each (lambda (v)
+                     (pmatch (hashq-ref (hashq-ref allocation v) self)
+                       ((#t #t . ,n)
+                        (emit-code src (make-glil-lexical #t #t 'set n)))
+                       (,loc (error "badness" x loc))))
+                   (reverse gensyms))))
        (comp-tail body)
        (emit-code #f (make-glil-unbind)))
 
diff --git a/module/language/tree-il/fix-letrec.scm 
b/module/language/tree-il/fix-letrec.scm
index 13e4807..3fbe8c0 100644
--- a/module/language/tree-il/fix-letrec.scm
+++ b/module/language/tree-il/fix-letrec.scm
@@ -31,24 +31,25 @@
 (define fix-fold
   (make-tree-il-folder unref ref set simple lambda complex))
 
-(define (simple-expression? x bound-vars)
+(define (simple-expression? x bound-vars simple-primitive?)
   (record-case x
     ((<void>) #t)
     ((<const>) #t)
     ((<lexical-ref> gensym)
      (not (memq gensym bound-vars)))
     ((<conditional> test consequent alternate)
-     (and (simple-expression? test bound-vars)
-          (simple-expression? consequent bound-vars)
-          (simple-expression? alternate bound-vars)))
+     (and (simple-expression? test bound-vars simple-primitive?)
+          (simple-expression? consequent bound-vars simple-primitive?)
+          (simple-expression? alternate bound-vars simple-primitive?)))
     ((<sequence> exps)
-     (and-map (lambda (x) (simple-expression? x bound-vars))
+     (and-map (lambda (x) (simple-expression? x bound-vars simple-primitive?))
               exps))
     ((<application> proc args)
      (and (primitive-ref? proc)
-          (effect-free-primitive? (primitive-ref-name proc))
+          (simple-primitive? (primitive-ref-name proc))
           ;; FIXME: check arity?
-          (and-map (lambda (x) (simple-expression? x bound-vars))
+          (and-map (lambda (x)
+                     (simple-expression? x bound-vars simple-primitive?))
                    args)))
     (else #f)))
 
@@ -90,27 +91,43 @@
                        (values unref ref set simple lambda* complex))))
                   (lambda (x unref ref set simple lambda* complex)
                     (record-case x
-                      ((<letrec> (orig-gensyms gensyms) vals)
+                      ((<letrec> in-order? (orig-gensyms gensyms) vals)
                        (let lp ((gensyms orig-gensyms) (vals vals)
                                 (s '()) (l '()) (c '()))
                          (cond
                           ((null? gensyms)
-                           (values unref
+                           ;; Unreferenced vars are still complex for letrec*.
+                           ;; We need to update our algorithm to "Fixing letrec
+                           ;; reloaded" to fix this.
+                           (values (if in-order?
+                                       (lset-difference eq? unref c)
+                                       unref)
                                    ref
                                    set
                                    (append s simple)
                                    (append l lambda*)
                                    (append c complex)))
                           ((memq (car gensyms) unref)
-                           (lp (cdr gensyms) (cdr vals)
-                               s l c))
+                           ;; See above note about unref and letrec*.
+                           (if in-order?
+                               (lp (cdr gensyms) (cdr vals)
+                                   s l (cons (car gensyms) c))
+                               (lp (cdr gensyms) (cdr vals)
+                                   s l c)))
                           ((memq (car gensyms) set)
                            (lp (cdr gensyms) (cdr vals)
                                s l (cons (car gensyms) c)))
                           ((lambda? (car vals))
                            (lp (cdr gensyms) (cdr vals)
                                s (cons (car gensyms) l) c))
-                          ((simple-expression? (car vals) orig-gensyms)
+                          ((simple-expression?
+                            (car vals) orig-gensyms
+                            (if in-order?
+                                effect+exception-free-primitive?
+                                effect-free-primitive?))
+                           ;; For letrec*, we can't consider e.g. `car' to be
+                           ;; "simple", as it could raise an exception. Hence
+                           ;; effect+exception-free-primitive? above.
                            (lp (cdr gensyms) (cdr vals)
                                (cons (car gensyms) s) l c))
                           (else
@@ -172,11 +189,17 @@
               (make-sequence #f (list exp (make-void #f)))
               x))
 
-         ((<letrec> src names gensyms vals body)
+         ((<letrec> src in-order? names gensyms vals body)
           (let ((binds (map list gensyms names vals)))
+            ;; The bindings returned by this function need to appear in the 
same
+            ;; order that they appear in the letrec.
             (define (lookup set)
-              (map (lambda (v) (assq v binds))
-                   (lset-intersection eq? gensyms set)))
+              (let lp ((binds binds))
+                (cond
+                 ((null? binds) '())
+                 ((memq (caar binds) set)
+                  (cons (car binds) (lp (cdr binds))))
+                 (else (lp (cdr binds))))))
             (let ((u (lookup unref))
                   (s (lookup simple))
                   (l (lookup lambda*))
@@ -197,25 +220,34 @@
                   ;; The right-hand-sides of the unreferenced
                   ;; bindings, for effect.
                   (map caddr u)
-                  (if (null? c)
-                      ;; No complex bindings, just emit the body.
-                      (list body)
-                      (list
-                       ;; Evaluate the the "complex" bindings, in a `let' to
-                       ;; indicate that order doesn't matter, and bind to
-                       ;; their variables.
-                       (let ((tmps (map (lambda (x) (gensym)) c)))
-                         (make-let
-                          #f (map cadr c) tmps (map caddr c)
-                          (make-sequence
-                           #f
-                           (map (lambda (x tmp)
-                                  (make-lexical-set
-                                   #f (cadr x) (car x)
-                                   (make-lexical-ref #f (cadr x) tmp)))
-                                c tmps))))
-                       ;; Finally, the body.
-                       body)))))))))
+                  (cond
+                   ((null? c)
+                    ;; No complex bindings, just emit the body.
+                    (list body))
+                   (in-order?
+                    ;; For letrec*, assign complex bindings in order, then the
+                    ;; body.
+                    (append
+                     (map (lambda (c)
+                            (make-lexical-set #f (cadr c) (car c) (caddr c)))
+                          c)
+                     (list body)))
+                   (else
+                    ;; Otherwise for plain letrec, evaluate the the "complex"
+                    ;; bindings, in a `let' to indicate that order doesn't
+                    ;; matter, and bind to their variables.
+                    (list
+                     (let ((tmps (map (lambda (x) (gensym)) c)))
+                       (make-let
+                        #f (map cadr c) tmps (map caddr c)
+                        (make-sequence
+                         #f
+                         (map (lambda (x tmp)
+                                (make-lexical-set
+                                 #f (cadr x) (car x)
+                                 (make-lexical-ref #f (cadr x) tmp)))
+                              c tmps))))
+                     body))))))))))
 
          ((<let> src names gensyms vals body)
           (let ((binds (map list gensyms names vals)))
diff --git a/module/language/tree-il/primitives.scm 
b/module/language/tree-il/primitives.scm
index 6fc0b3c..f710fa6 100644
--- a/module/language/tree-il/primitives.scm
+++ b/module/language/tree-il/primitives.scm
@@ -26,7 +26,8 @@
   #:use-module (srfi srfi-4)
   #:use-module (srfi srfi-16)
   #:export (resolve-primitives! add-interesting-primitive!
-            expand-primitives! effect-free-primitive?))
+            expand-primitives!
+            effect-free-primitive? effect+exception-free-primitive?))
 
 (define *interesting-primitive-names* 
   '(apply @apply
@@ -59,7 +60,6 @@
     vector-ref vector-set!
     variable-ref variable-set!
     variable-bound?
-    ;; args of variable-set are switched; it needs special help
 
     fluid-ref fluid-set!
 
@@ -120,7 +120,7 @@
     caaaar caaadr caadar caaddr cadaar cadadr caddar cadddr
     cdaaar cdaadr cdadar cdaddr cddaar cddadr cdddar cddddr
     vector-ref
-    struct? struct-vtable make-struct struct-ref
+    struct? struct-vtable make-struct make-struct/no-tail struct-ref
     bytevector-u8-ref bytevector-s8-ref
     bytevector-u16-ref bytevector-u16-native-ref
     bytevector-s16-ref bytevector-s16-native-ref
@@ -131,14 +131,30 @@
     bytevector-ieee-single-ref bytevector-ieee-single-native-ref
     bytevector-ieee-double-ref bytevector-ieee-double-native-ref))
 
+;; Like *effect-free-primitives* above, but further restricted in that they
+;; cannot raise exceptions.
+(define *effect+exception-free-primitives*
+  '(values
+    eq? eqv? equal?
+    not
+    pair? null? list? acons cons cons*
+    list vector
+    struct?))
 
 (define *effect-free-primitive-table* (make-hash-table))
+(define *effect+exceptions-free-primitive-table* (make-hash-table))
 
-(for-each (lambda (x) (hashq-set! *effect-free-primitive-table* x #t))
+(for-each (lambda (x)
+            (hashq-set! *effect-free-primitive-table* x #t))
           *effect-free-primitives*)
+(for-each (lambda (x) 
+            (hashq-set! *effect+exceptions-free-primitive-table* x #t))
+          *effect+exception-free-primitives*)
 
 (define (effect-free-primitive? prim)
   (hashq-ref *effect-free-primitive-table* prim))
+(define (effect+exception-free-primitive? prim)
+  (hashq-ref *effect+exceptions-free-primitive-table* prim))
 
 (define (resolve-primitives! x mod)
   (post-order!
@@ -317,10 +333,6 @@
 
 (define-primitive-expander values (x) x)
 
-;; swap args
-(define-primitive-expander variable-set! (var val)
-  (variable-set val var))
-
 (define-primitive-expander make-struct (vtable tail-size . args)
   (if (and (const? tail-size)
            (let ((n (const-exp tail-size)))
diff --git a/test-suite/tests/tree-il.test b/test-suite/tests/tree-il.test
index caa8692..54bfd37 100644
--- a/test-suite/tests/tree-il.test
+++ b/test-suite/tests/tree-il.test
@@ -319,6 +319,52 @@
    (program () (std-prelude 0 0 #f) (label _)
             (const 2) (call null? 1) (call return 1))))
 
+(with-test-prefix "letrec"
+  ;; simple bindings -> let
+  (assert-tree-il->glil
+   (letrec (x y) (x1 y1) ((const 10) (const 20))
+           (apply (toplevel foo) (lexical x x1) (lexical y y1)))
+   (program () (std-prelude 0 2 #f) (label _)
+            (const 10) (const 20)
+            (bind (x #f 0) (y #f 1))
+            (lexical #t #f set 1) (lexical #t #f set 0)
+            (toplevel ref foo)
+            (lexical #t #f ref 0) (lexical #t #f ref 1)
+            (call tail-call 2)
+            (unbind)))
+
+  ;; complex bindings -> box and set! within let
+  (assert-tree-il->glil
+   (letrec (x y) (x1 y1) ((apply (toplevel foo)) (apply (toplevel bar)))
+           (apply (primitive +) (lexical x x1) (lexical y y1)))
+   (program () (std-prelude 0 4 #f) (label _)
+            (void) (void) ;; what are these?
+            (bind (x #t 0) (y #t 1))
+            (lexical #t #t box 1) (lexical #t #t box 0)
+            (call new-frame 0) (toplevel ref foo) (call call 0)
+            (call new-frame 0) (toplevel ref bar) (call call 0)
+            (bind (x #f 2) (y #f 3)) (lexical #t #f set 3) (lexical #t #f set 
2)
+            (lexical #t #f ref 2) (lexical #t #t set 0)
+            (lexical #t #f ref 3) (lexical #t #t set 1) (unbind)
+            (lexical #t #t ref 0) (lexical #t #t ref 1)
+            (call add 2) (call return 1) (unbind)))
+  
+  ;; complex bindings in letrec* -> box and set! in order
+  (assert-tree-il->glil
+   (letrec* (x y) (x1 y1) ((apply (toplevel foo)) (apply (toplevel bar)))
+            (apply (primitive +) (lexical x x1) (lexical y y1)))
+   (program () (std-prelude 0 2 #f) (label _)
+            (void) (void) ;; what are these?
+            (bind (x #t 0) (y #t 1))
+            (lexical #t #t box 1) (lexical #t #t box 0)
+            (call new-frame 0) (toplevel ref foo) (call call 0)
+            (lexical #t #t set 0)
+            (call new-frame 0) (toplevel ref bar) (call call 0)
+            (lexical #t #t set 1)
+            (lexical #t #t ref 0)
+            (lexical #t #t ref 1)
+            (call add 2) (call return 1) (unbind))))
+
 (with-test-prefix "lambda"
   (assert-tree-il->glil
    (lambda ()


hooks/post-receive
-- 
GNU Guile



reply via email to

[Prev in Thread] Current Thread [Next in Thread]