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-4-43-g9a8


From: Andy Wingo
Subject: [Guile-commits] GNU Guile branch, master, updated. release_1-9-4-43-g9a8eb5f
Date: Sun, 25 Oct 2009 12:19:43 +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=9a8eb5fb4641bd9ea83903624c8c71192fe0d0f6

The branch, master has been updated
       via  9a8eb5fb4641bd9ea83903624c8c71192fe0d0f6 (commit)
       via  647117cd3599c1eaae5afe4b77fa15886d6d344d (commit)
       via  8b652112048ae2c482993897cdf40c5d9a67a8d2 (commit)
       via  df435c83072a79d9fdacbc57d9925ab7c0be5deb (commit)
       via  c89222f8ceb038130c8a3dcdc96f747178ce9607 (commit)
       via  97bc28b60a9d7695e92578fff5687e23e4cab951 (commit)
      from  15ab4662998a57a5c72efe30f9165aac813ee762 (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 9a8eb5fb4641bd9ea83903624c8c71192fe0d0f6
Author: Andy Wingo <address@hidden>
Date:   Sun Oct 25 13:19:11 2009 +0100

    srfi-16 just re-exports psyntax's case-lambda
    
    * module/srfi/srfi-16.scm (case-lambda): Just re-export the core's
      case-lambda, it's semantically the same but faster and better
      integrated.

commit 647117cd3599c1eaae5afe4b77fa15886d6d344d
Author: Andy Wingo <address@hidden>
Date:   Sun Oct 25 12:39:03 2009 +0100

    case-lambda, case-lambda* in psyntax
    
    * module/ice-9/psyntax.scm (case-lambda, case-lambda*): Add
      implementations of these, present in the base environment.
    
    * module/ice-9/psyntax-pp.scm: Regenerated.
    
    * module/srfi/srfi-16.scm (case-lambda): Replace the core's case-lambda
      definition with our own. We're not quite ready to switch yet.

commit 8b652112048ae2c482993897cdf40c5d9a67a8d2
Author: Andy Wingo <address@hidden>
Date:   Sun Oct 25 12:41:48 2009 +0100

    assembly/disassembly support for br-if-nargs-*
    
    * module/language/assembly/compile-bytecode.scm (write-bytecode): Handle
      br-if-nargs compilation.
    
    * module/language/assembly/decompile-bytecode.scm (decode-load-program):
      And decompile them nicely as well.
    
    * module/language/assembly/disassemble.scm (code-annotation): And,
      present the disassembly if br-if-nargs-* nicely.

commit df435c83072a79d9fdacbc57d9925ab7c0be5deb
Author: Andy Wingo <address@hidden>
Date:   Sun Oct 25 13:01:57 2009 +0100

    arities can have noncontiguous starts and ends
    
    * module/language/glil/compile-assembly.scm (open-arity, close-arity)
      (begin-arity, glil->assembly): Refactor so that arities can have
      noncontiguous starts and ends. So within a prelude there is no arity
      -- only before (the previous arity) or after (the new arity).
    
    * module/system/vm/program.scm (arity:end): Add this private accessor.
      Arities are expected to be in the new format. While not a change in
      objcode format, it is an incompatible change, so I'll bump the objcode
      cookie.
      (program-arity): Check that the ip is within both bounds of the arity.
    
    * libguile/_scm.h (SCM_OBJCODE_MINOR_VERSION): Bump.
    
    * libguile/programs.c (scm_i_program_arity): Update for new arity format.
    
    * module/system/vm/frame.scm (vm-frame-arguments): Avoid throwing an
      error in this function, which is called from the backtrace code.

commit c89222f8ceb038130c8a3dcdc96f747178ce9607
Author: Andy Wingo <address@hidden>
Date:   Sun Oct 25 12:36:44 2009 +0100

    refactor psyntax.scm's treatment of lambda and lambda*
    
    * module/ice-9/psyntax.scm (lambda-formals, chi-simple-lambda)
      (lambda*-formals, chi-lambda-case): Refactor the lambda
      transformations with an eye to being able to do case-lambda.
    
    * module/ice-9/psyntax-pp.scm: Regenerated.
    
    * test-suite/tests/syntax.test: Adapted tests so that the errors we
      expect match what is given by psyntax.

commit 97bc28b60a9d7695e92578fff5687e23e4cab951
Author: Andy Wingo <address@hidden>
Date:   Sat Oct 24 16:32:27 2009 +0200

    define* in psyntax
    
    * module/ice-9/optargs.scm:
    * module/ice-9/psyntax-pp.scm:
    * module/ice-9/psyntax.scm: Make define* available in the default
      environment, as lambda* is available there.

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

Summary of changes:
 libguile/_scm.h                                 |    2 +-
 libguile/programs.c                             |    2 +-
 module/ice-9/optargs.scm                        |    8 +-
 module/ice-9/psyntax-pp.scm                     |12598 +++++++++++------------
 module/ice-9/psyntax.scm                        |  444 +-
 module/language/assembly/compile-bytecode.scm   |    3 +
 module/language/assembly/decompile-bytecode.scm |    4 +
 module/language/assembly/disassemble.scm        |    2 +
 module/language/glil/compile-assembly.scm       |   27 +-
 module/srfi/srfi-16.scm                         |   81 +-
 module/system/vm/frame.scm                      |    4 +-
 module/system/vm/program.scm                    |   32 +-
 test-suite/tests/syntax.test                    |   10 +-
 13 files changed, 6189 insertions(+), 7028 deletions(-)

diff --git a/libguile/_scm.h b/libguile/_scm.h
index 93cdfa1..33cb375 100644
--- a/libguile/_scm.h
+++ b/libguile/_scm.h
@@ -172,7 +172,7 @@
 
 /* Major and minor versions must be single characters. */
 #define SCM_OBJCODE_MAJOR_VERSION 0
-#define SCM_OBJCODE_MINOR_VERSION K
+#define SCM_OBJCODE_MINOR_VERSION L
 #define SCM_OBJCODE_MAJOR_VERSION_STRING        \
   SCM_CPP_STRINGIFY(SCM_OBJCODE_MAJOR_VERSION)
 #define SCM_OBJCODE_MINOR_VERSION_STRING        \
diff --git a/libguile/programs.c b/libguile/programs.c
index 61a0f11..7399fa0 100644
--- a/libguile/programs.c
+++ b/libguile/programs.c
@@ -296,7 +296,7 @@ scm_i_program_arity (SCM program, int *req, int *opt, int 
*rest)
   /* take the last arglist, it will be least specific */
   while (scm_is_pair (scm_cdr (arities)))
     arities = scm_cdr (arities);
-  x = scm_cdar (arities);
+  x = scm_cddar (arities);
   if (scm_is_pair (x))
     {
       *req = scm_to_int (scm_car (x));
diff --git a/module/ice-9/optargs.scm b/module/ice-9/optargs.scm
index ffad98e..138cf60 100644
--- a/module/ice-9/optargs.scm
+++ b/module/ice-9/optargs.scm
@@ -59,12 +59,11 @@
 
 (define-module (ice-9 optargs)
   #:use-module (system base pmatch)
-  #:re-export (lambda*)
+  #:re-export (lambda* define*)
   #:export (let-optional
             let-optional*
             let-keywords
             let-keywords*
-            define*
             define*-public
             defmacro*
             defmacro*-public))
@@ -256,11 +255,6 @@
 ;; Of course, define*[-public] also supports #:rest and #:allow-other-keys
 ;; in the same way as lambda*.
 
-(define-syntax define*
-  (syntax-rules ()
-    ((_ (id . args) b0 b1 ...)
-     (define id (lambda* args b0 b1 ...)))))
-
 (define-syntax define*-public
   (syntax-rules ()
     ((_ (id . args) b0 b1 ...)
diff --git a/module/ice-9/psyntax-pp.scm b/module/ice-9/psyntax-pp.scm
index 5d68bb6..56f15e8 100644
--- a/module/ice-9/psyntax-pp.scm
+++ b/module/ice-9/psyntax-pp.scm
@@ -33,93 +33,1920 @@
                                         #{rest\ 83}#)
                                       #f))))))
                      (#{andmap\ 77}# #{first\ 70}# #{rest\ 71}#))))))))
-  (letrec ((#{lambda-var-list\ 178}#
-             (lambda (#{vars\ 302}#)
-               (letrec ((#{lvl\ 303}#
-                          (lambda (#{vars\ 304}# #{ls\ 305}# #{w\ 306}#)
-                            (if (pair? #{vars\ 304}#)
-                              (#{lvl\ 303}#
-                                (cdr #{vars\ 304}#)
+  (letrec ((#{lambda-var-list\ 182}#
+             (lambda (#{vars\ 306}#)
+               (letrec ((#{lvl\ 307}#
+                          (lambda (#{vars\ 308}# #{ls\ 309}# #{w\ 310}#)
+                            (if (pair? #{vars\ 308}#)
+                              (#{lvl\ 307}#
+                                (cdr #{vars\ 308}#)
                                 (cons (#{wrap\ 159}#
-                                        (car #{vars\ 304}#)
-                                        #{w\ 306}#
+                                        (car #{vars\ 308}#)
+                                        #{w\ 310}#
                                         #f)
-                                      #{ls\ 305}#)
-                                #{w\ 306}#)
-                              (if (#{id?\ 131}# #{vars\ 304}#)
+                                      #{ls\ 309}#)
+                                #{w\ 310}#)
+                              (if (#{id?\ 131}# #{vars\ 308}#)
                                 (cons (#{wrap\ 159}#
-                                        #{vars\ 304}#
-                                        #{w\ 306}#
+                                        #{vars\ 308}#
+                                        #{w\ 310}#
                                         #f)
-                                      #{ls\ 305}#)
-                                (if (null? #{vars\ 304}#)
-                                  #{ls\ 305}#
-                                  (if (#{syntax-object?\ 115}# #{vars\ 304}#)
-                                    (#{lvl\ 303}#
+                                      #{ls\ 309}#)
+                                (if (null? #{vars\ 308}#)
+                                  #{ls\ 309}#
+                                  (if (#{syntax-object?\ 115}# #{vars\ 308}#)
+                                    (#{lvl\ 307}#
                                       (#{syntax-object-expression\ 116}#
-                                        #{vars\ 304}#)
-                                      #{ls\ 305}#
+                                        #{vars\ 308}#)
+                                      #{ls\ 309}#
                                       (#{join-wraps\ 150}#
-                                        #{w\ 306}#
+                                        #{w\ 310}#
                                         (#{syntax-object-wrap\ 117}#
-                                          #{vars\ 304}#)))
-                                    (cons #{vars\ 304}# #{ls\ 305}#))))))))
-                 (#{lvl\ 303}#
-                   #{vars\ 302}#
+                                          #{vars\ 308}#)))
+                                    (cons #{vars\ 308}# #{ls\ 309}#))))))))
+                 (#{lvl\ 307}#
+                   #{vars\ 306}#
                    '()
                    '(())))))
-           (#{gen-var\ 177}#
-             (lambda (#{id\ 307}#)
-               (let ((#{id\ 308}#
-                       (if (#{syntax-object?\ 115}# #{id\ 307}#)
-                         (#{syntax-object-expression\ 116}# #{id\ 307}#)
-                         #{id\ 307}#)))
+           (#{gen-var\ 181}#
+             (lambda (#{id\ 311}#)
+               (let ((#{id\ 312}#
+                       (if (#{syntax-object?\ 115}# #{id\ 311}#)
+                         (#{syntax-object-expression\ 116}# #{id\ 311}#)
+                         #{id\ 311}#)))
                  (gensym
-                   (string-append (symbol->string #{id\ 308}#) " ")))))
-           (#{strip\ 176}#
-             (lambda (#{x\ 309}# #{w\ 310}#)
+                   (string-append (symbol->string #{id\ 312}#) " ")))))
+           (#{strip\ 180}#
+             (lambda (#{x\ 313}# #{w\ 314}#)
                (if (memq 'top
-                         (#{wrap-marks\ 134}# #{w\ 310}#))
-                 #{x\ 309}#
-                 (letrec ((#{f\ 311}# (lambda (#{x\ 312}#)
+                         (#{wrap-marks\ 134}# #{w\ 314}#))
+                 #{x\ 313}#
+                 (letrec ((#{f\ 315}# (lambda (#{x\ 316}#)
                                         (if (#{syntax-object?\ 115}#
-                                              #{x\ 312}#)
-                                          (#{strip\ 176}#
+                                              #{x\ 316}#)
+                                          (#{strip\ 180}#
                                             (#{syntax-object-expression\ 116}#
-                                              #{x\ 312}#)
+                                              #{x\ 316}#)
                                             (#{syntax-object-wrap\ 117}#
-                                              #{x\ 312}#))
-                                          (if (pair? #{x\ 312}#)
-                                            (let ((#{a\ 313}# (#{f\ 311}# (car 
#{x\ 312}#)))
-                                                  (#{d\ 314}# (#{f\ 311}# (cdr 
#{x\ 312}#))))
-                                              (if (if (eq? #{a\ 313}#
-                                                           (car #{x\ 312}#))
-                                                    (eq? #{d\ 314}#
-                                                         (cdr #{x\ 312}#))
+                                              #{x\ 316}#))
+                                          (if (pair? #{x\ 316}#)
+                                            (let ((#{a\ 317}# (#{f\ 315}# (car 
#{x\ 316}#)))
+                                                  (#{d\ 318}# (#{f\ 315}# (cdr 
#{x\ 316}#))))
+                                              (if (if (eq? #{a\ 317}#
+                                                           (car #{x\ 316}#))
+                                                    (eq? #{d\ 318}#
+                                                         (cdr #{x\ 316}#))
                                                     #f)
-                                                #{x\ 312}#
-                                                (cons #{a\ 313}# #{d\ 314}#)))
-                                            (if (vector? #{x\ 312}#)
-                                              (let ((#{old\ 315}#
+                                                #{x\ 316}#
+                                                (cons #{a\ 317}# #{d\ 318}#)))
+                                            (if (vector? #{x\ 316}#)
+                                              (let ((#{old\ 319}#
                                                       (vector->list
-                                                        #{x\ 312}#)))
-                                                (let ((#{new\ 316}#
-                                                        (map #{f\ 311}#
-                                                             #{old\ 315}#)))
+                                                        #{x\ 316}#)))
+                                                (let ((#{new\ 320}#
+                                                        (map #{f\ 315}#
+                                                             #{old\ 319}#)))
                                                   (if (#{and-map*\ 31}#
                                                         eq?
-                                                        #{old\ 315}#
-                                                        #{new\ 316}#)
-                                                    #{x\ 312}#
+                                                        #{old\ 319}#
+                                                        #{new\ 320}#)
+                                                    #{x\ 316}#
                                                     (list->vector
-                                                      #{new\ 316}#))))
-                                              #{x\ 312}#))))))
-                   (#{f\ 311}# #{x\ 309}#)))))
+                                                      #{new\ 320}#))))
+                                              #{x\ 316}#))))))
+                   (#{f\ 315}# #{x\ 313}#)))))
+           (#{chi-lambda-case\ 179}#
+             (lambda (#{e\ 321}#
+                      #{r\ 322}#
+                      #{w\ 323}#
+                      #{s\ 324}#
+                      #{mod\ 325}#
+                      #{get-formals\ 326}#
+                      #{clauses\ 327}#)
+               (letrec ((#{expand-body\ 331}#
+                          (lambda (#{req\ 332}#
+                                   #{opt\ 333}#
+                                   #{rest\ 334}#
+                                   #{kw\ 335}#
+                                   #{body\ 336}#
+                                   #{vars\ 337}#
+                                   #{r*\ 338}#
+                                   #{w*\ 339}#
+                                   #{inits\ 340}#)
+                            ((lambda (#{tmp\ 341}#)
+                               ((lambda (#{tmp\ 342}#)
+                                  (if (if #{tmp\ 342}#
+                                        (apply (lambda (#{docstring\ 343}#
+                                                        #{e1\ 344}#
+                                                        #{e2\ 345}#)
+                                                 (string?
+                                                   (syntax->datum
+                                                     #{docstring\ 343}#)))
+                                               #{tmp\ 342}#)
+                                        #f)
+                                    (apply (lambda (#{docstring\ 346}#
+                                                    #{e1\ 347}#
+                                                    #{e2\ 348}#)
+                                             (values
+                                               (syntax->datum
+                                                 #{docstring\ 346}#)
+                                               #{req\ 332}#
+                                               #{opt\ 333}#
+                                               #{rest\ 334}#
+                                               #{kw\ 335}#
+                                               #{inits\ 340}#
+                                               #{vars\ 337}#
+                                               #f
+                                               (#{chi-body\ 171}#
+                                                 (cons #{e1\ 347}# #{e2\ 348}#)
+                                                 (#{source-wrap\ 160}#
+                                                   #{e\ 321}#
+                                                   #{w\ 323}#
+                                                   #{s\ 324}#
+                                                   #{mod\ 325}#)
+                                                 #{r*\ 338}#
+                                                 #{w*\ 339}#
+                                                 #{mod\ 325}#)))
+                                           #{tmp\ 342}#)
+                                    ((lambda (#{tmp\ 350}#)
+                                       (if #{tmp\ 350}#
+                                         (apply (lambda (#{e1\ 351}#
+                                                         #{e2\ 352}#)
+                                                  (values
+                                                    #f
+                                                    #{req\ 332}#
+                                                    #{opt\ 333}#
+                                                    #{rest\ 334}#
+                                                    #{kw\ 335}#
+                                                    #{inits\ 340}#
+                                                    #{vars\ 337}#
+                                                    #f
+                                                    (#{chi-body\ 171}#
+                                                      (cons #{e1\ 351}#
+                                                            #{e2\ 352}#)
+                                                      (#{source-wrap\ 160}#
+                                                        #{e\ 321}#
+                                                        #{w\ 323}#
+                                                        #{s\ 324}#
+                                                        #{mod\ 325}#)
+                                                      #{r*\ 338}#
+                                                      #{w*\ 339}#
+                                                      #{mod\ 325}#)))
+                                                #{tmp\ 350}#)
+                                         (syntax-violation
+                                           #f
+                                           "source expression failed to match 
any pattern"
+                                           #{tmp\ 341}#)))
+                                     ($sc-dispatch
+                                       #{tmp\ 341}#
+                                       '(any . each-any)))))
+                                ($sc-dispatch
+                                  #{tmp\ 341}#
+                                  '(any any . each-any))))
+                             #{body\ 336}#)))
+                        (#{expand-kw\ 330}#
+                          (lambda (#{req\ 354}#
+                                   #{opt\ 355}#
+                                   #{rest\ 356}#
+                                   #{kw\ 357}#
+                                   #{body\ 358}#
+                                   #{vars\ 359}#
+                                   #{r*\ 360}#
+                                   #{w*\ 361}#
+                                   #{aok\ 362}#
+                                   #{out\ 363}#
+                                   #{inits\ 364}#)
+                            (if (pair? #{kw\ 357}#)
+                              ((lambda (#{tmp\ 365}#)
+                                 ((lambda (#{tmp\ 366}#)
+                                    (if #{tmp\ 366}#
+                                      (apply (lambda (#{k\ 367}#
+                                                      #{id\ 368}#
+                                                      #{i\ 369}#)
+                                               (let ((#{v\ 370}# (#{gen-var\ 
181}#
+                                                                   #{id\ 
368}#)))
+                                                 (let ((#{l\ 371}# 
(#{gen-labels\ 137}#
+                                                                     (list 
#{v\ 370}#))))
+                                                   (let ((#{r**\ 372}#
+                                                           (#{extend-var-env\ 
126}#
+                                                             #{l\ 371}#
+                                                             (list #{v\ 370}#)
+                                                             #{r*\ 360}#)))
+                                                     (let ((#{w**\ 373}#
+                                                             
(#{make-binding-wrap\ 148}#
+                                                               (list #{id\ 
368}#)
+                                                               #{l\ 371}#
+                                                               #{w*\ 361}#)))
+                                                       (#{expand-kw\ 330}#
+                                                         #{req\ 354}#
+                                                         #{opt\ 355}#
+                                                         #{rest\ 356}#
+                                                         (cdr #{kw\ 357}#)
+                                                         #{body\ 358}#
+                                                         (cons #{v\ 370}#
+                                                               #{vars\ 359}#)
+                                                         #{r**\ 372}#
+                                                         #{w**\ 373}#
+                                                         #{aok\ 362}#
+                                                         (cons (list 
(syntax->datum
+                                                                       #{k\ 
367}#)
+                                                                     
(syntax->datum
+                                                                       #{id\ 
368}#)
+                                                                     #{v\ 
370}#)
+                                                               #{out\ 363}#)
+                                                         (cons (#{chi\ 167}#
+                                                                 #{i\ 369}#
+                                                                 #{r*\ 360}#
+                                                                 #{w*\ 361}#
+                                                                 #{mod\ 325}#)
+                                                               #{inits\ 
364}#)))))))
+                                             #{tmp\ 366}#)
+                                      (syntax-violation
+                                        #f
+                                        "source expression failed to match any 
pattern"
+                                        #{tmp\ 365}#)))
+                                  ($sc-dispatch
+                                    #{tmp\ 365}#
+                                    '(any any any))))
+                               (car #{kw\ 357}#))
+                              (#{expand-body\ 331}#
+                                #{req\ 354}#
+                                #{opt\ 355}#
+                                #{rest\ 356}#
+                                (if (let ((#{t\ 374}# #{aok\ 362}#))
+                                      (if #{t\ 374}#
+                                        #{t\ 374}#
+                                        (pair? #{out\ 363}#)))
+                                  (cons #{aok\ 362}# (reverse #{out\ 363}#))
+                                  #f)
+                                #{body\ 358}#
+                                (reverse #{vars\ 359}#)
+                                #{r*\ 360}#
+                                #{w*\ 361}#
+                                (reverse #{inits\ 364}#)))))
+                        (#{expand-opt\ 329}#
+                          (lambda (#{req\ 375}#
+                                   #{opt\ 376}#
+                                   #{rest\ 377}#
+                                   #{kw\ 378}#
+                                   #{body\ 379}#
+                                   #{vars\ 380}#
+                                   #{r*\ 381}#
+                                   #{w*\ 382}#
+                                   #{out\ 383}#
+                                   #{inits\ 384}#)
+                            (if (pair? #{opt\ 376}#)
+                              ((lambda (#{tmp\ 385}#)
+                                 ((lambda (#{tmp\ 386}#)
+                                    (if #{tmp\ 386}#
+                                      (apply (lambda (#{id\ 387}# #{i\ 388}#)
+                                               (let ((#{v\ 389}# (#{gen-var\ 
181}#
+                                                                   #{id\ 
387}#)))
+                                                 (let ((#{l\ 390}# 
(#{gen-labels\ 137}#
+                                                                     (list 
#{v\ 389}#))))
+                                                   (let ((#{r**\ 391}#
+                                                           (#{extend-var-env\ 
126}#
+                                                             #{l\ 390}#
+                                                             (list #{v\ 389}#)
+                                                             #{r*\ 381}#)))
+                                                     (let ((#{w**\ 392}#
+                                                             
(#{make-binding-wrap\ 148}#
+                                                               (list #{id\ 
387}#)
+                                                               #{l\ 390}#
+                                                               #{w*\ 382}#)))
+                                                       (#{expand-opt\ 329}#
+                                                         #{req\ 375}#
+                                                         (cdr #{opt\ 376}#)
+                                                         #{rest\ 377}#
+                                                         #{kw\ 378}#
+                                                         #{body\ 379}#
+                                                         (cons #{v\ 389}#
+                                                               #{vars\ 380}#)
+                                                         #{r**\ 391}#
+                                                         #{w**\ 392}#
+                                                         (cons (syntax->datum
+                                                                 #{id\ 387}#)
+                                                               #{out\ 383}#)
+                                                         (cons (#{chi\ 167}#
+                                                                 #{i\ 388}#
+                                                                 #{r*\ 381}#
+                                                                 #{w*\ 382}#
+                                                                 #{mod\ 325}#)
+                                                               #{inits\ 
384}#)))))))
+                                             #{tmp\ 386}#)
+                                      (syntax-violation
+                                        #f
+                                        "source expression failed to match any 
pattern"
+                                        #{tmp\ 385}#)))
+                                  ($sc-dispatch
+                                    #{tmp\ 385}#
+                                    '(any any))))
+                               (car #{opt\ 376}#))
+                              (if #{rest\ 377}#
+                                (let ((#{v\ 393}# (#{gen-var\ 181}#
+                                                    #{rest\ 377}#)))
+                                  (let ((#{l\ 394}# (#{gen-labels\ 137}#
+                                                      (list #{v\ 393}#))))
+                                    (let ((#{r*\ 395}#
+                                            (#{extend-var-env\ 126}#
+                                              #{l\ 394}#
+                                              (list #{v\ 393}#)
+                                              #{r*\ 381}#)))
+                                      (let ((#{w*\ 396}#
+                                              (#{make-binding-wrap\ 148}#
+                                                (list #{rest\ 377}#)
+                                                #{l\ 394}#
+                                                #{w*\ 382}#)))
+                                        (#{expand-kw\ 330}#
+                                          #{req\ 375}#
+                                          (if (pair? #{out\ 383}#)
+                                            (reverse #{out\ 383}#)
+                                            #f)
+                                          (syntax->datum #{rest\ 377}#)
+                                          (if (pair? #{kw\ 378}#)
+                                            (cdr #{kw\ 378}#)
+                                            #{kw\ 378}#)
+                                          #{body\ 379}#
+                                          (cons #{v\ 393}# #{vars\ 380}#)
+                                          #{r*\ 395}#
+                                          #{w*\ 396}#
+                                          (if (pair? #{kw\ 378}#)
+                                            (car #{kw\ 378}#)
+                                            #f)
+                                          '()
+                                          #{inits\ 384}#)))))
+                                (#{expand-kw\ 330}#
+                                  #{req\ 375}#
+                                  (if (pair? #{out\ 383}#)
+                                    (reverse #{out\ 383}#)
+                                    #f)
+                                  #f
+                                  (if (pair? #{kw\ 378}#)
+                                    (cdr #{kw\ 378}#)
+                                    #{kw\ 378}#)
+                                  #{body\ 379}#
+                                  #{vars\ 380}#
+                                  #{r*\ 381}#
+                                  #{w*\ 382}#
+                                  (if (pair? #{kw\ 378}#) (car #{kw\ 378}#) #f)
+                                  '()
+                                  #{inits\ 384}#)))))
+                        (#{expand-req\ 328}#
+                          (lambda (#{req\ 397}#
+                                   #{opt\ 398}#
+                                   #{rest\ 399}#
+                                   #{kw\ 400}#
+                                   #{body\ 401}#)
+                            (let ((#{vars\ 402}#
+                                    (map #{gen-var\ 181}# #{req\ 397}#))
+                                  (#{labels\ 403}#
+                                    (#{gen-labels\ 137}# #{req\ 397}#)))
+                              (let ((#{r*\ 404}#
+                                      (#{extend-var-env\ 126}#
+                                        #{labels\ 403}#
+                                        #{vars\ 402}#
+                                        #{r\ 322}#))
+                                    (#{w*\ 405}#
+                                      (#{make-binding-wrap\ 148}#
+                                        #{req\ 397}#
+                                        #{labels\ 403}#
+                                        #{w\ 323}#)))
+                                (#{expand-opt\ 329}#
+                                  (map syntax->datum #{req\ 397}#)
+                                  #{opt\ 398}#
+                                  #{rest\ 399}#
+                                  #{kw\ 400}#
+                                  #{body\ 401}#
+                                  (reverse #{vars\ 402}#)
+                                  #{r*\ 404}#
+                                  #{w*\ 405}#
+                                  '()
+                                  '()))))))
+                 ((lambda (#{tmp\ 406}#)
+                    ((lambda (#{tmp\ 407}#)
+                       (if #{tmp\ 407}#
+                         (apply (lambda () (values #f #f)) #{tmp\ 407}#)
+                         ((lambda (#{tmp\ 408}#)
+                            (if #{tmp\ 408}#
+                              (apply (lambda (#{args\ 409}#
+                                              #{e1\ 410}#
+                                              #{e2\ 411}#
+                                              #{args*\ 412}#
+                                              #{e1*\ 413}#
+                                              #{e2*\ 414}#)
+                                       (call-with-values
+                                         (lambda ()
+                                           (#{get-formals\ 326}#
+                                             #{args\ 409}#))
+                                         (lambda (#{req\ 415}#
+                                                  #{opt\ 416}#
+                                                  #{rest\ 417}#
+                                                  #{kw\ 418}#)
+                                           (call-with-values
+                                             (lambda ()
+                                               (#{expand-req\ 328}#
+                                                 #{req\ 415}#
+                                                 #{opt\ 416}#
+                                                 #{rest\ 417}#
+                                                 #{kw\ 418}#
+                                                 (cons #{e1\ 410}#
+                                                       #{e2\ 411}#)))
+                                             (lambda (#{docstring\ 420}#
+                                                      #{req\ 421}#
+                                                      #{opt\ 422}#
+                                                      #{rest\ 423}#
+                                                      #{kw\ 424}#
+                                                      #{inits\ 425}#
+                                                      #{vars\ 426}#
+                                                      #{pred\ 427}#
+                                                      #{body\ 428}#)
+                                               (call-with-values
+                                                 (lambda ()
+                                                   (#{chi-lambda-case\ 179}#
+                                                     #{e\ 321}#
+                                                     #{r\ 322}#
+                                                     #{w\ 323}#
+                                                     #{s\ 324}#
+                                                     #{mod\ 325}#
+                                                     #{get-formals\ 326}#
+                                                     (map (lambda (#{tmp\ 431}#
+                                                                   #{tmp\ 430}#
+                                                                   #{tmp\ 
429}#)
+                                                            (cons #{tmp\ 429}#
+                                                                  (cons #{tmp\ 
430}#
+                                                                        #{tmp\ 
431}#)))
+                                                          #{e2*\ 414}#
+                                                          #{e1*\ 413}#
+                                                          #{args*\ 412}#)))
+                                                 (lambda (#{docstring*\ 433}#
+                                                          #{else*\ 434}#)
+                                                   (values
+                                                     (let ((#{t\ 435}# 
#{docstring\ 420}#))
+                                                       (if #{t\ 435}#
+                                                         #{t\ 435}#
+                                                         #{docstring*\ 433}#))
+                                                     (#{build-lambda-case\ 
107}#
+                                                       #{s\ 324}#
+                                                       #{req\ 421}#
+                                                       #{opt\ 422}#
+                                                       #{rest\ 423}#
+                                                       #{kw\ 424}#
+                                                       #{inits\ 425}#
+                                                       #{vars\ 426}#
+                                                       #{pred\ 427}#
+                                                       #{body\ 428}#
+                                                       #{else*\ 434}#)))))))))
+                                     #{tmp\ 408}#)
+                              (syntax-violation
+                                #f
+                                "source expression failed to match any pattern"
+                                #{tmp\ 406}#)))
+                          ($sc-dispatch
+                            #{tmp\ 406}#
+                            '((any any . each-any)
+                              .
+                              #(each (any any . each-any)))))))
+                     ($sc-dispatch #{tmp\ 406}# (quote ()))))
+                  #{clauses\ 327}#))))
+           (#{lambda*-formals\ 178}#
+             (lambda (#{orig-args\ 436}#)
+               (letrec ((#{check\ 441}#
+                          (lambda (#{req\ 442}#
+                                   #{opt\ 443}#
+                                   #{rest\ 444}#
+                                   #{kw\ 445}#)
+                            (if (#{distinct-bound-ids?\ 157}#
+                                  (append
+                                    #{req\ 442}#
+                                    (map car #{opt\ 443}#)
+                                    (if #{rest\ 444}#
+                                      (list #{rest\ 444}#)
+                                      '())
+                                    (if (pair? #{kw\ 445}#)
+                                      (map cadr (cdr #{kw\ 445}#))
+                                      '())))
+                              (values
+                                #{req\ 442}#
+                                #{opt\ 443}#
+                                #{rest\ 444}#
+                                #{kw\ 445}#)
+                              (syntax-violation
+                                'lambda*
+                                "duplicate identifier in argument list"
+                                #{orig-args\ 436}#))))
+                        (#{rest\ 440}#
+                          (lambda (#{args\ 446}#
+                                   #{req\ 447}#
+                                   #{opt\ 448}#
+                                   #{kw\ 449}#)
+                            ((lambda (#{tmp\ 450}#)
+                               ((lambda (#{tmp\ 451}#)
+                                  (if (if #{tmp\ 451}#
+                                        (apply (lambda (#{r\ 452}#)
+                                                 (#{id?\ 131}# #{r\ 452}#))
+                                               #{tmp\ 451}#)
+                                        #f)
+                                    (apply (lambda (#{r\ 453}#)
+                                             (#{check\ 441}#
+                                               #{req\ 447}#
+                                               #{opt\ 448}#
+                                               #{r\ 453}#
+                                               #{kw\ 449}#))
+                                           #{tmp\ 451}#)
+                                    ((lambda (#{else\ 454}#)
+                                       (syntax-violation
+                                         'lambda*
+                                         "invalid rest argument"
+                                         #{orig-args\ 436}#
+                                         #{args\ 446}#))
+                                     #{tmp\ 450}#)))
+                                (list #{tmp\ 450}#)))
+                             #{args\ 446}#)))
+                        (#{key\ 439}#
+                          (lambda (#{args\ 455}#
+                                   #{req\ 456}#
+                                   #{opt\ 457}#
+                                   #{rkey\ 458}#)
+                            ((lambda (#{tmp\ 459}#)
+                               ((lambda (#{tmp\ 460}#)
+                                  (if #{tmp\ 460}#
+                                    (apply (lambda ()
+                                             (#{check\ 441}#
+                                               #{req\ 456}#
+                                               #{opt\ 457}#
+                                               #f
+                                               (cons #f
+                                                     (reverse #{rkey\ 458}#))))
+                                           #{tmp\ 460}#)
+                                    ((lambda (#{tmp\ 461}#)
+                                       (if (if #{tmp\ 461}#
+                                             (apply (lambda (#{a\ 462}#
+                                                             #{b\ 463}#)
+                                                      (#{id?\ 131}#
+                                                        #{a\ 462}#))
+                                                    #{tmp\ 461}#)
+                                             #f)
+                                         (apply (lambda (#{a\ 464}# #{b\ 465}#)
+                                                  ((lambda (#{tmp\ 466}#)
+                                                     ((lambda (#{k\ 467}#)
+                                                        (#{key\ 439}#
+                                                          #{b\ 465}#
+                                                          #{req\ 456}#
+                                                          #{opt\ 457}#
+                                                          (cons (cons #{k\ 
467}#
+                                                                      (cons 
#{a\ 464}#
+                                                                            
'(#(syntax-object
+                                                                               
 #f
+                                                                               
 ((top)
+                                                                               
  #(ribcage
+                                                                               
    #(k)
+                                                                               
    #((top))
+                                                                               
    #("i"))
+                                                                               
  #(ribcage
+                                                                               
    #(a
+                                                                               
      b)
+                                                                               
    #((top)
+                                                                               
      (top))
+                                                                               
    #("i"
+                                                                               
      "i"))
+                                                                               
  #(ribcage
+                                                                               
    ()
+                                                                               
    ()
+                                                                               
    ())
+                                                                               
  #(ribcage
+                                                                               
    #(args
+                                                                               
      req
+                                                                               
      opt
+                                                                               
      rkey)
+                                                                               
    #((top)
+                                                                               
      (top)
+                                                                               
      (top)
+                                                                               
      (top))
+                                                                               
    #("i"
+                                                                               
      "i"
+                                                                               
      "i"
+                                                                               
      "i"))
+                                                                               
  #(ribcage
+                                                                               
    (check rest
+                                                                               
           key
+                                                                               
           opt
+                                                                               
           req)
+                                                                               
    ((top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top))
+                                                                               
    ("i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"))
+                                                                               
  #(ribcage
+                                                                               
    #(orig-args)
+                                                                               
    #((top))
+                                                                               
    #("i"))
+                                                                               
  #(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-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+
+                                                                               
      *mode*
+                                                                               
      noexpand)
+                                                                               
    ((top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top)
+                                                                               
     (top))
+                                                                               
    ("i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"
+                                                                               
     "i"))
+                                                                               
  #(ribcage
+                                                                               
    (define-structure
+                                                                               
      and-map*)
+                                                                               
    ((top)
+                                                                               
     (top))
+                                                                               
    ("i"
+                                                                               
     "i")))
+                                                                               
 (hygiene
+                                                                               
   guile)))))
+                                                                #{rkey\ 
458}#)))
+                                                      #{tmp\ 466}#))
+                                                   (symbol->keyword
+                                                     (syntax->datum
+                                                       #{a\ 464}#))))
+                                                #{tmp\ 461}#)
+                                         ((lambda (#{tmp\ 468}#)
+                                            (if (if #{tmp\ 468}#
+                                                  (apply (lambda (#{a\ 469}#
+                                                                  #{init\ 470}#
+                                                                  #{b\ 471}#)
+                                                           (#{id?\ 131}#
+                                                             #{a\ 469}#))
+                                                         #{tmp\ 468}#)
+                                                  #f)
+                                              (apply (lambda (#{a\ 472}#
+                                                              #{init\ 473}#
+                                                              #{b\ 474}#)
+                                                       ((lambda (#{tmp\ 475}#)
+                                                          ((lambda (#{k\ 476}#)
+                                                             (#{key\ 439}#
+                                                               #{b\ 474}#
+                                                               #{req\ 456}#
+                                                               #{opt\ 457}#
+                                                               (cons (list 
#{k\ 476}#
+                                                                           
#{a\ 472}#
+                                                                           
#{init\ 473}#)
+                                                                     #{rkey\ 
458}#)))
+                                                           #{tmp\ 475}#))
+                                                        (symbol->keyword
+                                                          (syntax->datum
+                                                            #{a\ 472}#))))
+                                                     #{tmp\ 468}#)
+                                              ((lambda (#{tmp\ 477}#)
+                                                 (if (if #{tmp\ 477}#
+                                                       (apply (lambda (#{a\ 
478}#
+                                                                       #{init\ 
479}#
+                                                                       #{k\ 
480}#
+                                                                       #{b\ 
481}#)
+                                                                (if (#{id?\ 
131}#
+                                                                      #{a\ 
478}#)
+                                                                  (keyword?
+                                                                    
(syntax->datum
+                                                                      #{k\ 
480}#))
+                                                                  #f))
+                                                              #{tmp\ 477}#)
+                                                       #f)
+                                                   (apply (lambda (#{a\ 482}#
+                                                                   #{init\ 
483}#
+                                                                   #{k\ 484}#
+                                                                   #{b\ 485}#)
+                                                            (#{key\ 439}#
+                                                              #{b\ 485}#
+                                                              #{req\ 456}#
+                                                              #{opt\ 457}#
+                                                              (cons (list #{k\ 
484}#
+                                                                          #{a\ 
482}#
+                                                                          
#{init\ 483}#)
+                                                                    #{rkey\ 
458}#)))
+                                                          #{tmp\ 477}#)
+                                                   ((lambda (#{tmp\ 486}#)
+                                                      (if (if #{tmp\ 486}#
+                                                            (apply (lambda 
(#{aok\ 487}#)
+                                                                     (eq? 
(syntax->datum
+                                                                            
#{aok\ 487}#)
+                                                                          
#:allow-other-keys))
+                                                                   #{tmp\ 
486}#)
+                                                            #f)
+                                                        (apply (lambda (#{aok\ 
488}#)
+                                                                 (#{check\ 
441}#
+                                                                   #{req\ 456}#
+                                                                   #{opt\ 457}#
+                                                                   #f
+                                                                   (cons #t
+                                                                         
(reverse
+                                                                           
#{rkey\ 458}#))))
+                                                               #{tmp\ 486}#)
+                                                        ((lambda (#{tmp\ 489}#)
+                                                           (if (if #{tmp\ 489}#
+                                                                 (apply 
(lambda (#{aok\ 490}#
+                                                                               
  #{a\ 491}#
+                                                                               
  #{b\ 492}#)
+                                                                          (if 
(eq? (syntax->datum
+                                                                               
      #{aok\ 490}#)
+                                                                               
    #:allow-other-keys)
+                                                                            
(eq? (syntax->datum
+                                                                               
    #{a\ 491}#)
+                                                                               
  #:rest)
+                                                                            
#f))
+                                                                        #{tmp\ 
489}#)
+                                                                 #f)
+                                                             (apply (lambda 
(#{aok\ 493}#
+                                                                             
#{a\ 494}#
+                                                                             
#{b\ 495}#)
+                                                                      (#{rest\ 
440}#
+                                                                        #{b\ 
495}#
+                                                                        #{req\ 
456}#
+                                                                        #{opt\ 
457}#
+                                                                        (cons 
#t
+                                                                              
(reverse
+                                                                               
 #{rkey\ 458}#))))
+                                                                    #{tmp\ 
489}#)
+                                                             ((lambda (#{tmp\ 
496}#)
+                                                                (if (if #{tmp\ 
496}#
+                                                                      (apply 
(lambda (#{aok\ 497}#
+                                                                               
       #{r\ 498}#)
+                                                                               
(if (eq? (syntax->datum
+                                                                               
           #{aok\ 497}#)
+                                                                               
         #:allow-other-keys)
+                                                                               
  (#{id?\ 131}#
+                                                                               
    #{r\ 498}#)
+                                                                               
  #f))
+                                                                             
#{tmp\ 496}#)
+                                                                      #f)
+                                                                  (apply 
(lambda (#{aok\ 499}#
+                                                                               
   #{r\ 500}#)
+                                                                           
(#{rest\ 440}#
+                                                                             
#{r\ 500}#
+                                                                             
#{req\ 456}#
+                                                                             
#{opt\ 457}#
+                                                                             
(cons #t
+                                                                               
    (reverse
+                                                                               
      #{rkey\ 458}#))))
+                                                                         
#{tmp\ 496}#)
+                                                                  ((lambda 
(#{tmp\ 501}#)
+                                                                     (if (if 
#{tmp\ 501}#
+                                                                           
(apply (lambda (#{a\ 502}#
+                                                                               
            #{b\ 503}#)
+                                                                               
     (eq? (syntax->datum
+                                                                               
            #{a\ 502}#)
+                                                                               
          #:rest))
+                                                                               
   #{tmp\ 501}#)
+                                                                           #f)
+                                                                       (apply 
(lambda (#{a\ 504}#
+                                                                               
        #{b\ 505}#)
+                                                                               
 (#{rest\ 440}#
+                                                                               
   #{b\ 505}#
+                                                                               
   #{req\ 456}#
+                                                                               
   #{opt\ 457}#
+                                                                               
   (cons #f
+                                                                               
         (reverse
+                                                                               
           #{rkey\ 458}#))))
+                                                                              
#{tmp\ 501}#)
+                                                                       
((lambda (#{tmp\ 506}#)
+                                                                          (if 
(if #{tmp\ 506}#
+                                                                               
 (apply (lambda (#{r\ 507}#)
+                                                                               
          (#{id?\ 131}#
+                                                                               
            #{r\ 507}#))
+                                                                               
        #{tmp\ 506}#)
+                                                                               
 #f)
+                                                                            
(apply (lambda (#{r\ 508}#)
+                                                                               
      (#{rest\ 440}#
+                                                                               
        #{r\ 508}#
+                                                                               
        #{req\ 456}#
+                                                                               
        #{opt\ 457}#
+                                                                               
        (cons #f
+                                                                               
              (reverse
+                                                                               
                #{rkey\ 458}#))))
+                                                                               
    #{tmp\ 506}#)
+                                                                            
((lambda (#{else\ 509}#)
+                                                                               
(syntax-violation
+                                                                               
  'lambda*
+                                                                               
  "invalid keyword argument list"
+                                                                               
  #{orig-args\ 436}#
+                                                                               
  #{args\ 455}#))
+                                                                             
#{tmp\ 459}#)))
+                                                                        (list 
#{tmp\ 459}#))))
+                                                                   
($sc-dispatch
+                                                                     #{tmp\ 
459}#
+                                                                     '(any 
any)))))
+                                                              ($sc-dispatch
+                                                                #{tmp\ 459}#
+                                                                '(any .
+                                                                      any)))))
+                                                         ($sc-dispatch
+                                                           #{tmp\ 459}#
+                                                           '(any any any)))))
+                                                    ($sc-dispatch
+                                                      #{tmp\ 459}#
+                                                      '(any)))))
+                                               ($sc-dispatch
+                                                 #{tmp\ 459}#
+                                                 '((any any any) . any)))))
+                                          ($sc-dispatch
+                                            #{tmp\ 459}#
+                                            '((any any) . any)))))
+                                     ($sc-dispatch
+                                       #{tmp\ 459}#
+                                       '(any . any)))))
+                                ($sc-dispatch #{tmp\ 459}# (quote ()))))
+                             #{args\ 455}#)))
+                        (#{opt\ 438}#
+                          (lambda (#{args\ 510}# #{req\ 511}# #{ropt\ 512}#)
+                            ((lambda (#{tmp\ 513}#)
+                               ((lambda (#{tmp\ 514}#)
+                                  (if #{tmp\ 514}#
+                                    (apply (lambda ()
+                                             (#{check\ 441}#
+                                               #{req\ 511}#
+                                               (reverse #{ropt\ 512}#)
+                                               #f
+                                               '()))
+                                           #{tmp\ 514}#)
+                                    ((lambda (#{tmp\ 515}#)
+                                       (if (if #{tmp\ 515}#
+                                             (apply (lambda (#{a\ 516}#
+                                                             #{b\ 517}#)
+                                                      (#{id?\ 131}#
+                                                        #{a\ 516}#))
+                                                    #{tmp\ 515}#)
+                                             #f)
+                                         (apply (lambda (#{a\ 518}# #{b\ 519}#)
+                                                  (#{opt\ 438}#
+                                                    #{b\ 519}#
+                                                    #{req\ 511}#
+                                                    (cons (cons #{a\ 518}#
+                                                                
'(#(syntax-object
+                                                                    #f
+                                                                    ((top)
+                                                                     #(ribcage
+                                                                       #(a b)
+                                                                       #((top)
+                                                                         (top))
+                                                                       #("i"
+                                                                         "i"))
+                                                                     #(ribcage
+                                                                       ()
+                                                                       ()
+                                                                       ())
+                                                                     #(ribcage
+                                                                       #(args
+                                                                         req
+                                                                         ropt)
+                                                                       #((top)
+                                                                         (top)
+                                                                         (top))
+                                                                       #("i"
+                                                                         "i"
+                                                                         "i"))
+                                                                     #(ribcage
+                                                                       (check 
rest
+                                                                              
key
+                                                                              
opt
+                                                                              
req)
+                                                                       ((top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top))
+                                                                       ("i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"))
+                                                                     #(ribcage
+                                                                       
#(orig-args)
+                                                                       #((top))
+                                                                       #("i"))
+                                                                     #(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-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+
+                                                                         *mode*
+                                                                         
noexpand)
+                                                                       ((top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top)
+                                                                        (top))
+                                                                       ("i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"
+                                                                        "i"))
+                                                                     #(ribcage
+                                                                       
(define-structure
+                                                                         
and-map*)
+                                                                       ((top)
+                                                                        (top))
+                                                                       ("i"
+                                                                        "i")))
+                                                                    (hygiene
+                                                                      guile))))
+                                                          #{ropt\ 512}#)))
+                                                #{tmp\ 515}#)
+                                         ((lambda (#{tmp\ 520}#)
+                                            (if (if #{tmp\ 520}#
+                                                  (apply (lambda (#{a\ 521}#
+                                                                  #{init\ 522}#
+                                                                  #{b\ 523}#)
+                                                           (#{id?\ 131}#
+                                                             #{a\ 521}#))
+                                                         #{tmp\ 520}#)
+                                                  #f)
+                                              (apply (lambda (#{a\ 524}#
+                                                              #{init\ 525}#
+                                                              #{b\ 526}#)
+                                                       (#{opt\ 438}#
+                                                         #{b\ 526}#
+                                                         #{req\ 511}#
+                                                         (cons (list #{a\ 524}#
+                                                                     #{init\ 
525}#)
+                                                               #{ropt\ 512}#)))
+                                                     #{tmp\ 520}#)
+                                              ((lambda (#{tmp\ 527}#)
+                                                 (if (if #{tmp\ 527}#
+                                                       (apply (lambda (#{a\ 
528}#
+                                                                       #{b\ 
529}#)
+                                                                (eq? 
(syntax->datum
+                                                                       #{a\ 
528}#)
+                                                                     #:key))
+                                                              #{tmp\ 527}#)
+                                                       #f)
+                                                   (apply (lambda (#{a\ 530}#
+                                                                   #{b\ 531}#)
+                                                            (#{key\ 439}#
+                                                              #{b\ 531}#
+                                                              #{req\ 511}#
+                                                              (reverse
+                                                                #{ropt\ 512}#)
+                                                              '()))
+                                                          #{tmp\ 527}#)
+                                                   ((lambda (#{tmp\ 532}#)
+                                                      (if (if #{tmp\ 532}#
+                                                            (apply (lambda 
(#{a\ 533}#
+                                                                            
#{b\ 534}#)
+                                                                     (eq? 
(syntax->datum
+                                                                            
#{a\ 533}#)
+                                                                          
#:rest))
+                                                                   #{tmp\ 
532}#)
+                                                            #f)
+                                                        (apply (lambda (#{a\ 
535}#
+                                                                        #{b\ 
536}#)
+                                                                 (#{rest\ 440}#
+                                                                   #{b\ 536}#
+                                                                   #{req\ 511}#
+                                                                   (reverse
+                                                                     #{ropt\ 
512}#)
+                                                                   '()))
+                                                               #{tmp\ 532}#)
+                                                        ((lambda (#{tmp\ 537}#)
+                                                           (if (if #{tmp\ 537}#
+                                                                 (apply 
(lambda (#{r\ 538}#)
+                                                                          
(#{id?\ 131}#
+                                                                            
#{r\ 538}#))
+                                                                        #{tmp\ 
537}#)
+                                                                 #f)
+                                                             (apply (lambda 
(#{r\ 539}#)
+                                                                      (#{rest\ 
440}#
+                                                                        #{r\ 
539}#
+                                                                        #{req\ 
511}#
+                                                                        
(reverse
+                                                                          
#{ropt\ 512}#)
+                                                                        '()))
+                                                                    #{tmp\ 
537}#)
+                                                             ((lambda (#{else\ 
540}#)
+                                                                
(syntax-violation
+                                                                  'lambda*
+                                                                  "invalid 
optional argument list"
+                                                                  #{orig-args\ 
436}#
+                                                                  #{args\ 
510}#))
+                                                              #{tmp\ 513}#)))
+                                                         (list #{tmp\ 513}#))))
+                                                    ($sc-dispatch
+                                                      #{tmp\ 513}#
+                                                      '(any any)))))
+                                               ($sc-dispatch
+                                                 #{tmp\ 513}#
+                                                 '(any . any)))))
+                                          ($sc-dispatch
+                                            #{tmp\ 513}#
+                                            '((any any) . any)))))
+                                     ($sc-dispatch
+                                       #{tmp\ 513}#
+                                       '(any . any)))))
+                                ($sc-dispatch #{tmp\ 513}# (quote ()))))
+                             #{args\ 510}#)))
+                        (#{req\ 437}#
+                          (lambda (#{args\ 541}# #{rreq\ 542}#)
+                            ((lambda (#{tmp\ 543}#)
+                               ((lambda (#{tmp\ 544}#)
+                                  (if #{tmp\ 544}#
+                                    (apply (lambda ()
+                                             (#{check\ 441}#
+                                               (reverse #{rreq\ 542}#)
+                                               '()
+                                               #f
+                                               '()))
+                                           #{tmp\ 544}#)
+                                    ((lambda (#{tmp\ 545}#)
+                                       (if (if #{tmp\ 545}#
+                                             (apply (lambda (#{a\ 546}#
+                                                             #{b\ 547}#)
+                                                      (#{id?\ 131}#
+                                                        #{a\ 546}#))
+                                                    #{tmp\ 545}#)
+                                             #f)
+                                         (apply (lambda (#{a\ 548}# #{b\ 549}#)
+                                                  (#{req\ 437}#
+                                                    #{b\ 549}#
+                                                    (cons #{a\ 548}#
+                                                          #{rreq\ 542}#)))
+                                                #{tmp\ 545}#)
+                                         ((lambda (#{tmp\ 550}#)
+                                            (if (if #{tmp\ 550}#
+                                                  (apply (lambda (#{a\ 551}#
+                                                                  #{b\ 552}#)
+                                                           (eq? (syntax->datum
+                                                                  #{a\ 551}#)
+                                                                #:optional))
+                                                         #{tmp\ 550}#)
+                                                  #f)
+                                              (apply (lambda (#{a\ 553}#
+                                                              #{b\ 554}#)
+                                                       (#{opt\ 438}#
+                                                         #{b\ 554}#
+                                                         (reverse
+                                                           #{rreq\ 542}#)
+                                                         '()))
+                                                     #{tmp\ 550}#)
+                                              ((lambda (#{tmp\ 555}#)
+                                                 (if (if #{tmp\ 555}#
+                                                       (apply (lambda (#{a\ 
556}#
+                                                                       #{b\ 
557}#)
+                                                                (eq? 
(syntax->datum
+                                                                       #{a\ 
556}#)
+                                                                     #:key))
+                                                              #{tmp\ 555}#)
+                                                       #f)
+                                                   (apply (lambda (#{a\ 558}#
+                                                                   #{b\ 559}#)
+                                                            (#{key\ 439}#
+                                                              #{b\ 559}#
+                                                              (reverse
+                                                                #{rreq\ 542}#)
+                                                              '()
+                                                              '()))
+                                                          #{tmp\ 555}#)
+                                                   ((lambda (#{tmp\ 560}#)
+                                                      (if (if #{tmp\ 560}#
+                                                            (apply (lambda 
(#{a\ 561}#
+                                                                            
#{b\ 562}#)
+                                                                     (eq? 
(syntax->datum
+                                                                            
#{a\ 561}#)
+                                                                          
#:rest))
+                                                                   #{tmp\ 
560}#)
+                                                            #f)
+                                                        (apply (lambda (#{a\ 
563}#
+                                                                        #{b\ 
564}#)
+                                                                 (#{rest\ 440}#
+                                                                   #{b\ 564}#
+                                                                   (reverse
+                                                                     #{rreq\ 
542}#)
+                                                                   '()
+                                                                   '()))
+                                                               #{tmp\ 560}#)
+                                                        ((lambda (#{tmp\ 565}#)
+                                                           (if (if #{tmp\ 565}#
+                                                                 (apply 
(lambda (#{r\ 566}#)
+                                                                          
(#{id?\ 131}#
+                                                                            
#{r\ 566}#))
+                                                                        #{tmp\ 
565}#)
+                                                                 #f)
+                                                             (apply (lambda 
(#{r\ 567}#)
+                                                                      (#{rest\ 
440}#
+                                                                        #{r\ 
567}#
+                                                                        
(reverse
+                                                                          
#{rreq\ 542}#)
+                                                                        '()
+                                                                        '()))
+                                                                    #{tmp\ 
565}#)
+                                                             ((lambda (#{else\ 
568}#)
+                                                                
(syntax-violation
+                                                                  'lambda*
+                                                                  "invalid 
argument list"
+                                                                  #{orig-args\ 
436}#
+                                                                  #{args\ 
541}#))
+                                                              #{tmp\ 543}#)))
+                                                         (list #{tmp\ 543}#))))
+                                                    ($sc-dispatch
+                                                      #{tmp\ 543}#
+                                                      '(any any)))))
+                                               ($sc-dispatch
+                                                 #{tmp\ 543}#
+                                                 '(any . any)))))
+                                          ($sc-dispatch
+                                            #{tmp\ 543}#
+                                            '(any . any)))))
+                                     ($sc-dispatch
+                                       #{tmp\ 543}#
+                                       '(any . any)))))
+                                ($sc-dispatch #{tmp\ 543}# (quote ()))))
+                             #{args\ 541}#))))
+                 (#{req\ 437}# #{orig-args\ 436}# (quote ())))))
+           (#{chi-simple-lambda\ 177}#
+             (lambda (#{e\ 569}#
+                      #{r\ 570}#
+                      #{w\ 571}#
+                      #{s\ 572}#
+                      #{mod\ 573}#
+                      #{req\ 574}#
+                      #{rest\ 575}#
+                      #{docstring\ 576}#
+                      #{body\ 577}#)
+               (let ((#{ids\ 578}#
+                       (if #{rest\ 575}#
+                         (append #{req\ 574}# (list #{rest\ 575}#))
+                         #{req\ 574}#)))
+                 (let ((#{vars\ 579}#
+                         (map #{gen-var\ 181}# #{ids\ 578}#)))
+                   (let ((#{labels\ 580}#
+                           (#{gen-labels\ 137}# #{ids\ 578}#)))
+                     (#{build-simple-lambda\ 105}#
+                       #{s\ 572}#
+                       (map syntax->datum #{req\ 574}#)
+                       (if #{rest\ 575}#
+                         (syntax->datum #{rest\ 575}#)
+                         #f)
+                       #{vars\ 579}#
+                       #{docstring\ 576}#
+                       (#{chi-body\ 171}#
+                         #{body\ 577}#
+                         (#{source-wrap\ 160}#
+                           #{e\ 569}#
+                           #{w\ 571}#
+                           #{s\ 572}#
+                           #{mod\ 573}#)
+                         (#{extend-var-env\ 126}#
+                           #{labels\ 580}#
+                           #{vars\ 579}#
+                           #{r\ 570}#)
+                         (#{make-binding-wrap\ 148}#
+                           #{ids\ 578}#
+                           #{labels\ 580}#
+                           #{w\ 571}#)
+                         #{mod\ 573}#)))))))
+           (#{lambda-formals\ 176}#
+             (lambda (#{orig-args\ 581}#)
+               (letrec ((#{check\ 583}#
+                          (lambda (#{req\ 584}# #{rest\ 585}#)
+                            (if (#{distinct-bound-ids?\ 157}#
+                                  (if #{rest\ 585}#
+                                    (cons #{rest\ 585}# #{req\ 584}#)
+                                    #{req\ 584}#))
+                              (values #{req\ 584}# #f #{rest\ 585}# #f)
+                              (syntax-violation
+                                'lambda
+                                "duplicate identifier in argument list"
+                                #{orig-args\ 581}#))))
+                        (#{req\ 582}#
+                          (lambda (#{args\ 586}# #{rreq\ 587}#)
+                            ((lambda (#{tmp\ 588}#)
+                               ((lambda (#{tmp\ 589}#)
+                                  (if #{tmp\ 589}#
+                                    (apply (lambda ()
+                                             (#{check\ 583}#
+                                               (reverse #{rreq\ 587}#)
+                                               #f))
+                                           #{tmp\ 589}#)
+                                    ((lambda (#{tmp\ 590}#)
+                                       (if (if #{tmp\ 590}#
+                                             (apply (lambda (#{a\ 591}#
+                                                             #{b\ 592}#)
+                                                      (#{id?\ 131}#
+                                                        #{a\ 591}#))
+                                                    #{tmp\ 590}#)
+                                             #f)
+                                         (apply (lambda (#{a\ 593}# #{b\ 594}#)
+                                                  (#{req\ 582}#
+                                                    #{b\ 594}#
+                                                    (cons #{a\ 593}#
+                                                          #{rreq\ 587}#)))
+                                                #{tmp\ 590}#)
+                                         ((lambda (#{tmp\ 595}#)
+                                            (if (if #{tmp\ 595}#
+                                                  (apply (lambda (#{r\ 596}#)
+                                                           (#{id?\ 131}#
+                                                             #{r\ 596}#))
+                                                         #{tmp\ 595}#)
+                                                  #f)
+                                              (apply (lambda (#{r\ 597}#)
+                                                       (#{check\ 583}#
+                                                         (reverse
+                                                           #{rreq\ 587}#)
+                                                         #{r\ 597}#))
+                                                     #{tmp\ 595}#)
+                                              ((lambda (#{else\ 598}#)
+                                                 (syntax-violation
+                                                   'lambda
+                                                   "invalid argument list"
+                                                   #{orig-args\ 581}#
+                                                   #{args\ 586}#))
+                                               #{tmp\ 588}#)))
+                                          (list #{tmp\ 588}#))))
+                                     ($sc-dispatch
+                                       #{tmp\ 588}#
+                                       '(any . any)))))
+                                ($sc-dispatch #{tmp\ 588}# (quote ()))))
+                             #{args\ 586}#))))
+                 (#{req\ 582}# #{orig-args\ 581}# (quote ())))))
            (#{ellipsis?\ 175}#
-             (lambda (#{x\ 317}#)
-               (if (#{nonsymbol-id?\ 130}# #{x\ 317}#)
+             (lambda (#{x\ 599}#)
+               (if (#{nonsymbol-id?\ 130}# #{x\ 599}#)
                  (#{free-id=?\ 154}#
-                   #{x\ 317}#
+                   #{x\ 599}#
                    '#(syntax-object
                       ...
                       ((top)
@@ -130,6 +1957,10 @@
                          (lambda-var-list
                            gen-var
                            strip
+                           chi-lambda-case
+                           lambda*-formals
+                           chi-simple-lambda
+                           lambda-formals
                            ellipsis?
                            chi-void
                            eval-local-transformer
@@ -352,6 +2183,10 @@
                           (top)
                           (top)
                           (top)
+                          (top)
+                          (top)
+                          (top)
+                          (top)
                           (top))
                          ("i"
                           "i"
@@ -465,6 +2300,10 @@
                           "i"
                           "i"
                           "i"
+                          "i"
+                          "i"
+                          "i"
+                          "i"
                           "i"))
                        #(ribcage
                          (define-structure and-map*)
@@ -475,368 +2314,368 @@
            (#{chi-void\ 174}#
              (lambda () (#{build-void\ 95}# #f)))
            (#{eval-local-transformer\ 173}#
-             (lambda (#{expanded\ 318}# #{mod\ 319}#)
-               (let ((#{p\ 320}# (#{local-eval-hook\ 91}#
-                                   #{expanded\ 318}#
-                                   #{mod\ 319}#)))
-                 (if (procedure? #{p\ 320}#)
-                   #{p\ 320}#
+             (lambda (#{expanded\ 600}# #{mod\ 601}#)
+               (let ((#{p\ 602}# (#{local-eval-hook\ 91}#
+                                   #{expanded\ 600}#
+                                   #{mod\ 601}#)))
+                 (if (procedure? #{p\ 602}#)
+                   #{p\ 602}#
                    (syntax-violation
                      #f
                      "nonprocedure transformer"
-                     #{p\ 320}#)))))
+                     #{p\ 602}#)))))
            (#{chi-local-syntax\ 172}#
-             (lambda (#{rec?\ 321}#
-                      #{e\ 322}#
-                      #{r\ 323}#
-                      #{w\ 324}#
-                      #{s\ 325}#
-                      #{mod\ 326}#
-                      #{k\ 327}#)
-               ((lambda (#{tmp\ 328}#)
-                  ((lambda (#{tmp\ 329}#)
-                     (if #{tmp\ 329}#
-                       (apply (lambda (#{_\ 330}#
-                                       #{id\ 331}#
-                                       #{val\ 332}#
-                                       #{e1\ 333}#
-                                       #{e2\ 334}#)
-                                (let ((#{ids\ 335}# #{id\ 331}#))
+             (lambda (#{rec?\ 603}#
+                      #{e\ 604}#
+                      #{r\ 605}#
+                      #{w\ 606}#
+                      #{s\ 607}#
+                      #{mod\ 608}#
+                      #{k\ 609}#)
+               ((lambda (#{tmp\ 610}#)
+                  ((lambda (#{tmp\ 611}#)
+                     (if #{tmp\ 611}#
+                       (apply (lambda (#{_\ 612}#
+                                       #{id\ 613}#
+                                       #{val\ 614}#
+                                       #{e1\ 615}#
+                                       #{e2\ 616}#)
+                                (let ((#{ids\ 617}# #{id\ 613}#))
                                   (if (not (#{valid-bound-ids?\ 156}#
-                                             #{ids\ 335}#))
+                                             #{ids\ 617}#))
                                     (syntax-violation
                                       #f
                                       "duplicate bound keyword"
-                                      #{e\ 322}#)
-                                    (let ((#{labels\ 337}#
+                                      #{e\ 604}#)
+                                    (let ((#{labels\ 619}#
                                             (#{gen-labels\ 137}#
-                                              #{ids\ 335}#)))
-                                      (let ((#{new-w\ 338}#
+                                              #{ids\ 617}#)))
+                                      (let ((#{new-w\ 620}#
                                               (#{make-binding-wrap\ 148}#
-                                                #{ids\ 335}#
-                                                #{labels\ 337}#
-                                                #{w\ 324}#)))
-                                        (#{k\ 327}# (cons #{e1\ 333}#
-                                                          #{e2\ 334}#)
+                                                #{ids\ 617}#
+                                                #{labels\ 619}#
+                                                #{w\ 606}#)))
+                                        (#{k\ 609}# (cons #{e1\ 615}#
+                                                          #{e2\ 616}#)
                                                     (#{extend-env\ 125}#
-                                                      #{labels\ 337}#
-                                                      (let ((#{w\ 340}# (if 
#{rec?\ 321}#
-                                                                          
#{new-w\ 338}#
-                                                                          #{w\ 
324}#))
-                                                            (#{trans-r\ 341}#
+                                                      #{labels\ 619}#
+                                                      (let ((#{w\ 622}# (if 
#{rec?\ 603}#
+                                                                          
#{new-w\ 620}#
+                                                                          #{w\ 
606}#))
+                                                            (#{trans-r\ 623}#
                                                               
(#{macros-only-env\ 127}#
-                                                                #{r\ 323}#)))
-                                                        (map (lambda (#{x\ 
342}#)
+                                                                #{r\ 605}#)))
+                                                        (map (lambda (#{x\ 
624}#)
                                                                (cons 'macro
                                                                      
(#{eval-local-transformer\ 173}#
                                                                        (#{chi\ 
167}#
-                                                                         #{x\ 
342}#
-                                                                         
#{trans-r\ 341}#
-                                                                         #{w\ 
340}#
-                                                                         
#{mod\ 326}#)
-                                                                       #{mod\ 
326}#)))
-                                                             #{val\ 332}#))
-                                                      #{r\ 323}#)
-                                                    #{new-w\ 338}#
-                                                    #{s\ 325}#
-                                                    #{mod\ 326}#))))))
-                              #{tmp\ 329}#)
-                       ((lambda (#{_\ 344}#)
+                                                                         #{x\ 
624}#
+                                                                         
#{trans-r\ 623}#
+                                                                         #{w\ 
622}#
+                                                                         
#{mod\ 608}#)
+                                                                       #{mod\ 
608}#)))
+                                                             #{val\ 614}#))
+                                                      #{r\ 605}#)
+                                                    #{new-w\ 620}#
+                                                    #{s\ 607}#
+                                                    #{mod\ 608}#))))))
+                              #{tmp\ 611}#)
+                       ((lambda (#{_\ 626}#)
                           (syntax-violation
                             #f
                             "bad local syntax definition"
                             (#{source-wrap\ 160}#
-                              #{e\ 322}#
-                              #{w\ 324}#
-                              #{s\ 325}#
-                              #{mod\ 326}#)))
-                        #{tmp\ 328}#)))
+                              #{e\ 604}#
+                              #{w\ 606}#
+                              #{s\ 607}#
+                              #{mod\ 608}#)))
+                        #{tmp\ 610}#)))
                    ($sc-dispatch
-                     #{tmp\ 328}#
+                     #{tmp\ 610}#
                      '(any #(each (any any)) any . each-any))))
-                #{e\ 322}#)))
+                #{e\ 604}#)))
            (#{chi-body\ 171}#
-             (lambda (#{body\ 345}#
-                      #{outer-form\ 346}#
-                      #{r\ 347}#
-                      #{w\ 348}#
-                      #{mod\ 349}#)
-               (let ((#{r\ 350}# (cons '("placeholder" placeholder)
-                                       #{r\ 347}#)))
-                 (let ((#{ribcage\ 351}#
+             (lambda (#{body\ 627}#
+                      #{outer-form\ 628}#
+                      #{r\ 629}#
+                      #{w\ 630}#
+                      #{mod\ 631}#)
+               (let ((#{r\ 632}# (cons '("placeholder" placeholder)
+                                       #{r\ 629}#)))
+                 (let ((#{ribcage\ 633}#
                          (#{make-ribcage\ 138}#
                            '()
                            '()
                            '())))
-                   (let ((#{w\ 352}# (#{make-wrap\ 133}#
-                                       (#{wrap-marks\ 134}# #{w\ 348}#)
-                                       (cons #{ribcage\ 351}#
+                   (let ((#{w\ 634}# (#{make-wrap\ 133}#
+                                       (#{wrap-marks\ 134}# #{w\ 630}#)
+                                       (cons #{ribcage\ 633}#
                                              (#{wrap-subst\ 135}#
-                                               #{w\ 348}#)))))
-                     (letrec ((#{parse\ 353}#
-                                (lambda (#{body\ 354}#
-                                         #{ids\ 355}#
-                                         #{labels\ 356}#
-                                         #{var-ids\ 357}#
-                                         #{vars\ 358}#
-                                         #{vals\ 359}#
-                                         #{bindings\ 360}#)
-                                  (if (null? #{body\ 354}#)
+                                               #{w\ 630}#)))))
+                     (letrec ((#{parse\ 635}#
+                                (lambda (#{body\ 636}#
+                                         #{ids\ 637}#
+                                         #{labels\ 638}#
+                                         #{var-ids\ 639}#
+                                         #{vars\ 640}#
+                                         #{vals\ 641}#
+                                         #{bindings\ 642}#)
+                                  (if (null? #{body\ 636}#)
                                     (syntax-violation
                                       #f
                                       "no expressions in body"
-                                      #{outer-form\ 346}#)
-                                    (let ((#{e\ 362}# (cdar #{body\ 354}#))
-                                          (#{er\ 363}# (caar #{body\ 354}#)))
+                                      #{outer-form\ 628}#)
+                                    (let ((#{e\ 644}# (cdar #{body\ 636}#))
+                                          (#{er\ 645}# (caar #{body\ 636}#)))
                                       (call-with-values
                                         (lambda ()
                                           (#{syntax-type\ 165}#
-                                            #{e\ 362}#
-                                            #{er\ 363}#
+                                            #{e\ 644}#
+                                            #{er\ 645}#
                                             '(())
                                             (#{source-annotation\ 122}#
-                                              #{er\ 363}#)
-                                            #{ribcage\ 351}#
-                                            #{mod\ 349}#
+                                              #{er\ 645}#)
+                                            #{ribcage\ 633}#
+                                            #{mod\ 631}#
                                             #f))
-                                        (lambda (#{type\ 364}#
-                                                 #{value\ 365}#
-                                                 #{e\ 366}#
-                                                 #{w\ 367}#
-                                                 #{s\ 368}#
-                                                 #{mod\ 369}#)
-                                          (if (memv #{type\ 364}#
+                                        (lambda (#{type\ 646}#
+                                                 #{value\ 647}#
+                                                 #{e\ 648}#
+                                                 #{w\ 649}#
+                                                 #{s\ 650}#
+                                                 #{mod\ 651}#)
+                                          (if (memv #{type\ 646}#
                                                     '(define-form))
-                                            (let ((#{id\ 370}#
+                                            (let ((#{id\ 652}#
                                                     (#{wrap\ 159}#
-                                                      #{value\ 365}#
-                                                      #{w\ 367}#
-                                                      #{mod\ 369}#))
-                                                  (#{label\ 371}#
+                                                      #{value\ 647}#
+                                                      #{w\ 649}#
+                                                      #{mod\ 651}#))
+                                                  (#{label\ 653}#
                                                     (#{gen-label\ 136}#)))
-                                              (let ((#{var\ 372}#
-                                                      (#{gen-var\ 177}#
-                                                        #{id\ 370}#)))
+                                              (let ((#{var\ 654}#
+                                                      (#{gen-var\ 181}#
+                                                        #{id\ 652}#)))
                                                 (begin
                                                   (#{extend-ribcage!\ 147}#
-                                                    #{ribcage\ 351}#
-                                                    #{id\ 370}#
-                                                    #{label\ 371}#)
-                                                  (#{parse\ 353}#
-                                                    (cdr #{body\ 354}#)
-                                                    (cons #{id\ 370}#
-                                                          #{ids\ 355}#)
-                                                    (cons #{label\ 371}#
-                                                          #{labels\ 356}#)
-                                                    (cons #{id\ 370}#
-                                                          #{var-ids\ 357}#)
-                                                    (cons #{var\ 372}#
-                                                          #{vars\ 358}#)
-                                                    (cons (cons #{er\ 363}#
+                                                    #{ribcage\ 633}#
+                                                    #{id\ 652}#
+                                                    #{label\ 653}#)
+                                                  (#{parse\ 635}#
+                                                    (cdr #{body\ 636}#)
+                                                    (cons #{id\ 652}#
+                                                          #{ids\ 637}#)
+                                                    (cons #{label\ 653}#
+                                                          #{labels\ 638}#)
+                                                    (cons #{id\ 652}#
+                                                          #{var-ids\ 639}#)
+                                                    (cons #{var\ 654}#
+                                                          #{vars\ 640}#)
+                                                    (cons (cons #{er\ 645}#
                                                                 (#{wrap\ 159}#
-                                                                  #{e\ 366}#
-                                                                  #{w\ 367}#
-                                                                  #{mod\ 
369}#))
-                                                          #{vals\ 359}#)
+                                                                  #{e\ 648}#
+                                                                  #{w\ 649}#
+                                                                  #{mod\ 
651}#))
+                                                          #{vals\ 641}#)
                                                     (cons (cons 'lexical
-                                                                #{var\ 372}#)
-                                                          #{bindings\ 
360}#)))))
-                                            (if (memv #{type\ 364}#
+                                                                #{var\ 654}#)
+                                                          #{bindings\ 
642}#)))))
+                                            (if (memv #{type\ 646}#
                                                       '(define-syntax-form))
-                                              (let ((#{id\ 373}#
+                                              (let ((#{id\ 655}#
                                                       (#{wrap\ 159}#
-                                                        #{value\ 365}#
-                                                        #{w\ 367}#
-                                                        #{mod\ 369}#))
-                                                    (#{label\ 374}#
+                                                        #{value\ 647}#
+                                                        #{w\ 649}#
+                                                        #{mod\ 651}#))
+                                                    (#{label\ 656}#
                                                       (#{gen-label\ 136}#)))
                                                 (begin
                                                   (#{extend-ribcage!\ 147}#
-                                                    #{ribcage\ 351}#
-                                                    #{id\ 373}#
-                                                    #{label\ 374}#)
-                                                  (#{parse\ 353}#
-                                                    (cdr #{body\ 354}#)
-                                                    (cons #{id\ 373}#
-                                                          #{ids\ 355}#)
-                                                    (cons #{label\ 374}#
-                                                          #{labels\ 356}#)
-                                                    #{var-ids\ 357}#
-                                                    #{vars\ 358}#
-                                                    #{vals\ 359}#
+                                                    #{ribcage\ 633}#
+                                                    #{id\ 655}#
+                                                    #{label\ 656}#)
+                                                  (#{parse\ 635}#
+                                                    (cdr #{body\ 636}#)
+                                                    (cons #{id\ 655}#
+                                                          #{ids\ 637}#)
+                                                    (cons #{label\ 656}#
+                                                          #{labels\ 638}#)
+                                                    #{var-ids\ 639}#
+                                                    #{vars\ 640}#
+                                                    #{vals\ 641}#
                                                     (cons (cons 'macro
-                                                                (cons #{er\ 
363}#
+                                                                (cons #{er\ 
645}#
                                                                       (#{wrap\ 
159}#
-                                                                        #{e\ 
366}#
-                                                                        #{w\ 
367}#
-                                                                        #{mod\ 
369}#)))
-                                                          #{bindings\ 360}#))))
-                                              (if (memv #{type\ 364}#
+                                                                        #{e\ 
648}#
+                                                                        #{w\ 
649}#
+                                                                        #{mod\ 
651}#)))
+                                                          #{bindings\ 642}#))))
+                                              (if (memv #{type\ 646}#
                                                         '(begin-form))
-                                                ((lambda (#{tmp\ 375}#)
-                                                   ((lambda (#{tmp\ 376}#)
-                                                      (if #{tmp\ 376}#
-                                                        (apply (lambda (#{_\ 
377}#
-                                                                        #{e1\ 
378}#)
-                                                                 (#{parse\ 
353}#
-                                                                   (letrec 
((#{f\ 379}# (lambda (#{forms\ 380}#)
-                                                                               
           (if (null? #{forms\ 380}#)
-                                                                               
             (cdr #{body\ 354}#)
-                                                                               
             (cons (cons #{er\ 363}#
+                                                ((lambda (#{tmp\ 657}#)
+                                                   ((lambda (#{tmp\ 658}#)
+                                                      (if #{tmp\ 658}#
+                                                        (apply (lambda (#{_\ 
659}#
+                                                                        #{e1\ 
660}#)
+                                                                 (#{parse\ 
635}#
+                                                                   (letrec 
((#{f\ 661}# (lambda (#{forms\ 662}#)
+                                                                               
           (if (null? #{forms\ 662}#)
+                                                                               
             (cdr #{body\ 636}#)
+                                                                               
             (cons (cons #{er\ 645}#
                                                                                
                         (#{wrap\ 159}#
-                                                                               
                           (car #{forms\ 380}#)
-                                                                               
                           #{w\ 367}#
-                                                                               
                           #{mod\ 369}#))
-                                                                               
                   (#{f\ 379}# (cdr #{forms\ 380}#)))))))
-                                                                     (#{f\ 
379}# #{e1\ 378}#))
-                                                                   #{ids\ 355}#
-                                                                   #{labels\ 
356}#
-                                                                   #{var-ids\ 
357}#
-                                                                   #{vars\ 
358}#
-                                                                   #{vals\ 
359}#
-                                                                   #{bindings\ 
360}#))
-                                                               #{tmp\ 376}#)
+                                                                               
                           (car #{forms\ 662}#)
+                                                                               
                           #{w\ 649}#
+                                                                               
                           #{mod\ 651}#))
+                                                                               
                   (#{f\ 661}# (cdr #{forms\ 662}#)))))))
+                                                                     (#{f\ 
661}# #{e1\ 660}#))
+                                                                   #{ids\ 637}#
+                                                                   #{labels\ 
638}#
+                                                                   #{var-ids\ 
639}#
+                                                                   #{vars\ 
640}#
+                                                                   #{vals\ 
641}#
+                                                                   #{bindings\ 
642}#))
+                                                               #{tmp\ 658}#)
                                                         (syntax-violation
                                                           #f
                                                           "source expression 
failed to match any pattern"
-                                                          #{tmp\ 375}#)))
+                                                          #{tmp\ 657}#)))
                                                     ($sc-dispatch
-                                                      #{tmp\ 375}#
+                                                      #{tmp\ 657}#
                                                       '(any . each-any))))
-                                                 #{e\ 366}#)
-                                                (if (memv #{type\ 364}#
+                                                 #{e\ 648}#)
+                                                (if (memv #{type\ 646}#
                                                           '(local-syntax-form))
                                                   (#{chi-local-syntax\ 172}#
-                                                    #{value\ 365}#
-                                                    #{e\ 366}#
-                                                    #{er\ 363}#
-                                                    #{w\ 367}#
-                                                    #{s\ 368}#
-                                                    #{mod\ 369}#
-                                                    (lambda (#{forms\ 382}#
-                                                             #{er\ 383}#
-                                                             #{w\ 384}#
-                                                             #{s\ 385}#
-                                                             #{mod\ 386}#)
-                                                      (#{parse\ 353}#
-                                                        (letrec ((#{f\ 387}# 
(lambda (#{forms\ 388}#)
-                                                                               
(if (null? #{forms\ 388}#)
-                                                                               
  (cdr #{body\ 354}#)
-                                                                               
  (cons (cons #{er\ 383}#
+                                                    #{value\ 647}#
+                                                    #{e\ 648}#
+                                                    #{er\ 645}#
+                                                    #{w\ 649}#
+                                                    #{s\ 650}#
+                                                    #{mod\ 651}#
+                                                    (lambda (#{forms\ 664}#
+                                                             #{er\ 665}#
+                                                             #{w\ 666}#
+                                                             #{s\ 667}#
+                                                             #{mod\ 668}#)
+                                                      (#{parse\ 635}#
+                                                        (letrec ((#{f\ 669}# 
(lambda (#{forms\ 670}#)
+                                                                               
(if (null? #{forms\ 670}#)
+                                                                               
  (cdr #{body\ 636}#)
+                                                                               
  (cons (cons #{er\ 665}#
                                                                                
              (#{wrap\ 159}#
-                                                                               
                (car #{forms\ 388}#)
-                                                                               
                #{w\ 384}#
-                                                                               
                #{mod\ 386}#))
-                                                                               
        (#{f\ 387}# (cdr #{forms\ 388}#)))))))
-                                                          (#{f\ 387}# #{forms\ 
382}#))
-                                                        #{ids\ 355}#
-                                                        #{labels\ 356}#
-                                                        #{var-ids\ 357}#
-                                                        #{vars\ 358}#
-                                                        #{vals\ 359}#
-                                                        #{bindings\ 360}#)))
-                                                  (if (null? #{ids\ 355}#)
+                                                                               
                (car #{forms\ 670}#)
+                                                                               
                #{w\ 666}#
+                                                                               
                #{mod\ 668}#))
+                                                                               
        (#{f\ 669}# (cdr #{forms\ 670}#)))))))
+                                                          (#{f\ 669}# #{forms\ 
664}#))
+                                                        #{ids\ 637}#
+                                                        #{labels\ 638}#
+                                                        #{var-ids\ 639}#
+                                                        #{vars\ 640}#
+                                                        #{vals\ 641}#
+                                                        #{bindings\ 642}#)))
+                                                  (if (null? #{ids\ 637}#)
                                                     (#{build-sequence\ 110}#
                                                       #f
-                                                      (map (lambda (#{x\ 389}#)
+                                                      (map (lambda (#{x\ 671}#)
                                                              (#{chi\ 167}#
-                                                               (cdr #{x\ 389}#)
-                                                               (car #{x\ 389}#)
+                                                               (cdr #{x\ 671}#)
+                                                               (car #{x\ 671}#)
                                                                '(())
-                                                               #{mod\ 369}#))
-                                                           (cons (cons #{er\ 
363}#
+                                                               #{mod\ 651}#))
+                                                           (cons (cons #{er\ 
645}#
                                                                        
(#{source-wrap\ 160}#
-                                                                         #{e\ 
366}#
-                                                                         #{w\ 
367}#
-                                                                         #{s\ 
368}#
-                                                                         
#{mod\ 369}#))
-                                                                 (cdr #{body\ 
354}#))))
+                                                                         #{e\ 
648}#
+                                                                         #{w\ 
649}#
+                                                                         #{s\ 
650}#
+                                                                         
#{mod\ 651}#))
+                                                                 (cdr #{body\ 
636}#))))
                                                     (begin
                                                       (if (not 
(#{valid-bound-ids?\ 156}#
-                                                                 #{ids\ 355}#))
+                                                                 #{ids\ 637}#))
                                                         (syntax-violation
                                                           #f
                                                           "invalid or 
duplicate identifier in definition"
-                                                          #{outer-form\ 346}#))
-                                                      (letrec ((#{loop\ 390}#
-                                                                 (lambda 
(#{bs\ 391}#
-                                                                          
#{er-cache\ 392}#
-                                                                          
#{r-cache\ 393}#)
-                                                                   (if (not 
(null? #{bs\ 391}#))
-                                                                     (let 
((#{b\ 394}# (car #{bs\ 391}#)))
-                                                                       (if 
(eq? (car #{b\ 394}#)
+                                                          #{outer-form\ 628}#))
+                                                      (letrec ((#{loop\ 672}#
+                                                                 (lambda 
(#{bs\ 673}#
+                                                                          
#{er-cache\ 674}#
+                                                                          
#{r-cache\ 675}#)
+                                                                   (if (not 
(null? #{bs\ 673}#))
+                                                                     (let 
((#{b\ 676}# (car #{bs\ 673}#)))
+                                                                       (if 
(eq? (car #{b\ 676}#)
                                                                                
 'macro)
-                                                                         (let 
((#{er\ 395}#
-                                                                               
  (cadr #{b\ 394}#)))
-                                                                           
(let ((#{r-cache\ 396}#
-                                                                               
    (if (eq? #{er\ 395}#
-                                                                               
             #{er-cache\ 392}#)
-                                                                               
      #{r-cache\ 393}#
+                                                                         (let 
((#{er\ 677}#
+                                                                               
  (cadr #{b\ 676}#)))
+                                                                           
(let ((#{r-cache\ 678}#
+                                                                               
    (if (eq? #{er\ 677}#
+                                                                               
             #{er-cache\ 674}#)
+                                                                               
      #{r-cache\ 675}#
                                                                                
      (#{macros-only-env\ 127}#
-                                                                               
        #{er\ 395}#))))
+                                                                               
        #{er\ 677}#))))
                                                                              
(begin
                                                                                
(set-cdr!
-                                                                               
  #{b\ 394}#
+                                                                               
  #{b\ 676}#
                                                                                
  (#{eval-local-transformer\ 173}#
                                                                                
    (#{chi\ 167}#
-                                                                               
      (cddr #{b\ 394}#)
-                                                                               
      #{r-cache\ 396}#
+                                                                               
      (cddr #{b\ 676}#)
+                                                                               
      #{r-cache\ 678}#
                                                                                
      '(())
-                                                                               
      #{mod\ 369}#)
-                                                                               
    #{mod\ 369}#))
-                                                                               
(#{loop\ 390}#
-                                                                               
  (cdr #{bs\ 391}#)
-                                                                               
  #{er\ 395}#
-                                                                               
  #{r-cache\ 396}#))))
-                                                                         
(#{loop\ 390}#
-                                                                           
(cdr #{bs\ 391}#)
-                                                                           
#{er-cache\ 392}#
-                                                                           
#{r-cache\ 393}#)))))))
-                                                        (#{loop\ 390}#
-                                                          #{bindings\ 360}#
+                                                                               
      #{mod\ 651}#)
+                                                                               
    #{mod\ 651}#))
+                                                                               
(#{loop\ 672}#
+                                                                               
  (cdr #{bs\ 673}#)
+                                                                               
  #{er\ 677}#
+                                                                               
  #{r-cache\ 678}#))))
+                                                                         
(#{loop\ 672}#
+                                                                           
(cdr #{bs\ 673}#)
+                                                                           
#{er-cache\ 674}#
+                                                                           
#{r-cache\ 675}#)))))))
+                                                        (#{loop\ 672}#
+                                                          #{bindings\ 642}#
                                                           #f
                                                           #f))
                                                       (set-cdr!
-                                                        #{r\ 350}#
+                                                        #{r\ 632}#
                                                         (#{extend-env\ 125}#
-                                                          #{labels\ 356}#
-                                                          #{bindings\ 360}#
-                                                          (cdr #{r\ 350}#)))
+                                                          #{labels\ 638}#
+                                                          #{bindings\ 642}#
+                                                          (cdr #{r\ 632}#)))
                                                       (#{build-letrec\ 113}#
                                                         #f
                                                         (map syntax->datum
-                                                             #{var-ids\ 357}#)
-                                                        #{vars\ 358}#
-                                                        (map (lambda (#{x\ 
397}#)
+                                                             #{var-ids\ 639}#)
+                                                        #{vars\ 640}#
+                                                        (map (lambda (#{x\ 
679}#)
                                                                (#{chi\ 167}#
-                                                                 (cdr #{x\ 
397}#)
-                                                                 (car #{x\ 
397}#)
+                                                                 (cdr #{x\ 
679}#)
+                                                                 (car #{x\ 
679}#)
                                                                  '(())
-                                                                 #{mod\ 369}#))
-                                                             #{vals\ 359}#)
+                                                                 #{mod\ 651}#))
+                                                             #{vals\ 641}#)
                                                         (#{build-sequence\ 
110}#
                                                           #f
-                                                          (map (lambda (#{x\ 
398}#)
+                                                          (map (lambda (#{x\ 
680}#)
                                                                  (#{chi\ 167}#
-                                                                   (cdr #{x\ 
398}#)
-                                                                   (car #{x\ 
398}#)
+                                                                   (cdr #{x\ 
680}#)
+                                                                   (car #{x\ 
680}#)
                                                                    '(())
-                                                                   #{mod\ 
369}#))
-                                                               (cons (cons 
#{er\ 363}#
+                                                                   #{mod\ 
651}#))
+                                                               (cons (cons 
#{er\ 645}#
                                                                            
(#{source-wrap\ 160}#
-                                                                             
#{e\ 366}#
-                                                                             
#{w\ 367}#
-                                                                             
#{s\ 368}#
-                                                                             
#{mod\ 369}#))
-                                                                     (cdr 
#{body\ 354}#))))))))))))))))))
-                       (#{parse\ 353}#
-                         (map (lambda (#{x\ 361}#)
-                                (cons #{r\ 350}#
+                                                                             
#{e\ 648}#
+                                                                             
#{w\ 649}#
+                                                                             
#{s\ 650}#
+                                                                             
#{mod\ 651}#))
+                                                                     (cdr 
#{body\ 636}#))))))))))))))))))
+                       (#{parse\ 635}#
+                         (map (lambda (#{x\ 643}#)
+                                (cons #{r\ 632}#
                                       (#{wrap\ 159}#
-                                        #{x\ 361}#
-                                        #{w\ 352}#
-                                        #{mod\ 349}#)))
-                              #{body\ 345}#)
+                                        #{x\ 643}#
+                                        #{w\ 634}#
+                                        #{mod\ 631}#)))
+                              #{body\ 627}#)
                          '()
                          '()
                          '()
@@ -844,850 +2683,850 @@
                          '()
                          '())))))))
            (#{chi-macro\ 170}#
-             (lambda (#{p\ 399}#
-                      #{e\ 400}#
-                      #{r\ 401}#
-                      #{w\ 402}#
-                      #{rib\ 403}#
-                      #{mod\ 404}#)
-               (letrec ((#{rebuild-macro-output\ 405}#
-                          (lambda (#{x\ 406}# #{m\ 407}#)
-                            (if (pair? #{x\ 406}#)
-                              (cons (#{rebuild-macro-output\ 405}#
-                                      (car #{x\ 406}#)
-                                      #{m\ 407}#)
-                                    (#{rebuild-macro-output\ 405}#
-                                      (cdr #{x\ 406}#)
-                                      #{m\ 407}#))
-                              (if (#{syntax-object?\ 115}# #{x\ 406}#)
-                                (let ((#{w\ 408}# (#{syntax-object-wrap\ 117}#
-                                                    #{x\ 406}#)))
-                                  (let ((#{ms\ 409}#
-                                          (#{wrap-marks\ 134}# #{w\ 408}#))
-                                        (#{s\ 410}# (#{wrap-subst\ 135}#
-                                                      #{w\ 408}#)))
-                                    (if (if (pair? #{ms\ 409}#)
-                                          (eq? (car #{ms\ 409}#) #f)
+             (lambda (#{p\ 681}#
+                      #{e\ 682}#
+                      #{r\ 683}#
+                      #{w\ 684}#
+                      #{rib\ 685}#
+                      #{mod\ 686}#)
+               (letrec ((#{rebuild-macro-output\ 687}#
+                          (lambda (#{x\ 688}# #{m\ 689}#)
+                            (if (pair? #{x\ 688}#)
+                              (cons (#{rebuild-macro-output\ 687}#
+                                      (car #{x\ 688}#)
+                                      #{m\ 689}#)
+                                    (#{rebuild-macro-output\ 687}#
+                                      (cdr #{x\ 688}#)
+                                      #{m\ 689}#))
+                              (if (#{syntax-object?\ 115}# #{x\ 688}#)
+                                (let ((#{w\ 690}# (#{syntax-object-wrap\ 117}#
+                                                    #{x\ 688}#)))
+                                  (let ((#{ms\ 691}#
+                                          (#{wrap-marks\ 134}# #{w\ 690}#))
+                                        (#{s\ 692}# (#{wrap-subst\ 135}#
+                                                      #{w\ 690}#)))
+                                    (if (if (pair? #{ms\ 691}#)
+                                          (eq? (car #{ms\ 691}#) #f)
                                           #f)
                                       (#{make-syntax-object\ 114}#
                                         (#{syntax-object-expression\ 116}#
-                                          #{x\ 406}#)
+                                          #{x\ 688}#)
                                         (#{make-wrap\ 133}#
-                                          (cdr #{ms\ 409}#)
-                                          (if #{rib\ 403}#
-                                            (cons #{rib\ 403}#
-                                                  (cdr #{s\ 410}#))
-                                            (cdr #{s\ 410}#)))
+                                          (cdr #{ms\ 691}#)
+                                          (if #{rib\ 685}#
+                                            (cons #{rib\ 685}#
+                                                  (cdr #{s\ 692}#))
+                                            (cdr #{s\ 692}#)))
                                         (#{syntax-object-module\ 118}#
-                                          #{x\ 406}#))
+                                          #{x\ 688}#))
                                       (#{make-syntax-object\ 114}#
                                         (#{syntax-object-expression\ 116}#
-                                          #{x\ 406}#)
+                                          #{x\ 688}#)
                                         (#{make-wrap\ 133}#
-                                          (cons #{m\ 407}# #{ms\ 409}#)
-                                          (if #{rib\ 403}#
-                                            (cons #{rib\ 403}#
+                                          (cons #{m\ 689}# #{ms\ 691}#)
+                                          (if #{rib\ 685}#
+                                            (cons #{rib\ 685}#
                                                   (cons 'shift
-                                                        #{s\ 410}#))
-                                            (cons (quote shift) #{s\ 410}#)))
-                                        (let ((#{pmod\ 411}#
-                                                (procedure-module #{p\ 399}#)))
-                                          (if #{pmod\ 411}#
+                                                        #{s\ 692}#))
+                                            (cons (quote shift) #{s\ 692}#)))
+                                        (let ((#{pmod\ 693}#
+                                                (procedure-module #{p\ 681}#)))
+                                          (if #{pmod\ 693}#
                                             (cons 'hygiene
-                                                  (module-name #{pmod\ 411}#))
+                                                  (module-name #{pmod\ 693}#))
                                             '(hygiene guile)))))))
-                                (if (vector? #{x\ 406}#)
-                                  (let ((#{n\ 412}# (vector-length
-                                                      #{x\ 406}#)))
-                                    (let ((#{v\ 413}# (make-vector
-                                                        #{n\ 412}#)))
-                                      (letrec ((#{loop\ 414}#
-                                                 (lambda (#{i\ 415}#)
+                                (if (vector? #{x\ 688}#)
+                                  (let ((#{n\ 694}# (vector-length
+                                                      #{x\ 688}#)))
+                                    (let ((#{v\ 695}# (make-vector
+                                                        #{n\ 694}#)))
+                                      (letrec ((#{loop\ 696}#
+                                                 (lambda (#{i\ 697}#)
                                                    (if (#{fx=\ 88}#
-                                                         #{i\ 415}#
-                                                         #{n\ 412}#)
+                                                         #{i\ 697}#
+                                                         #{n\ 694}#)
                                                      (begin
                                                        (if #f #f)
-                                                       #{v\ 413}#)
+                                                       #{v\ 695}#)
                                                      (begin
                                                        (vector-set!
-                                                         #{v\ 413}#
-                                                         #{i\ 415}#
-                                                         
(#{rebuild-macro-output\ 405}#
+                                                         #{v\ 695}#
+                                                         #{i\ 697}#
+                                                         
(#{rebuild-macro-output\ 687}#
                                                            (vector-ref
-                                                             #{x\ 406}#
-                                                             #{i\ 415}#)
-                                                           #{m\ 407}#))
-                                                       (#{loop\ 414}#
+                                                             #{x\ 688}#
+                                                             #{i\ 697}#)
+                                                           #{m\ 689}#))
+                                                       (#{loop\ 696}#
                                                          (#{fx+\ 86}#
-                                                           #{i\ 415}#
+                                                           #{i\ 697}#
                                                            1)))))))
-                                        (#{loop\ 414}# 0))))
-                                  (if (symbol? #{x\ 406}#)
+                                        (#{loop\ 696}# 0))))
+                                  (if (symbol? #{x\ 688}#)
                                     (syntax-violation
                                       #f
                                       "encountered raw symbol in macro output"
                                       (#{source-wrap\ 160}#
-                                        #{e\ 400}#
-                                        #{w\ 402}#
-                                        (#{wrap-subst\ 135}# #{w\ 402}#)
-                                        #{mod\ 404}#)
-                                      #{x\ 406}#)
-                                    #{x\ 406}#)))))))
-                 (#{rebuild-macro-output\ 405}#
-                   (#{p\ 399}# (#{wrap\ 159}#
-                                 #{e\ 400}#
-                                 (#{anti-mark\ 146}# #{w\ 402}#)
-                                 #{mod\ 404}#))
+                                        #{e\ 682}#
+                                        #{w\ 684}#
+                                        (#{wrap-subst\ 135}# #{w\ 684}#)
+                                        #{mod\ 686}#)
+                                      #{x\ 688}#)
+                                    #{x\ 688}#)))))))
+                 (#{rebuild-macro-output\ 687}#
+                   (#{p\ 681}# (#{wrap\ 159}#
+                                 #{e\ 682}#
+                                 (#{anti-mark\ 146}# #{w\ 684}#)
+                                 #{mod\ 686}#))
                    (string #\m)))))
            (#{chi-application\ 169}#
-             (lambda (#{x\ 416}#
-                      #{e\ 417}#
-                      #{r\ 418}#
-                      #{w\ 419}#
-                      #{s\ 420}#
-                      #{mod\ 421}#)
-               ((lambda (#{tmp\ 422}#)
-                  ((lambda (#{tmp\ 423}#)
-                     (if #{tmp\ 423}#
-                       (apply (lambda (#{e0\ 424}# #{e1\ 425}#)
+             (lambda (#{x\ 698}#
+                      #{e\ 699}#
+                      #{r\ 700}#
+                      #{w\ 701}#
+                      #{s\ 702}#
+                      #{mod\ 703}#)
+               ((lambda (#{tmp\ 704}#)
+                  ((lambda (#{tmp\ 705}#)
+                     (if #{tmp\ 705}#
+                       (apply (lambda (#{e0\ 706}# #{e1\ 707}#)
                                 (#{build-application\ 96}#
-                                  #{s\ 420}#
-                                  #{x\ 416}#
-                                  (map (lambda (#{e\ 426}#)
+                                  #{s\ 702}#
+                                  #{x\ 698}#
+                                  (map (lambda (#{e\ 708}#)
                                          (#{chi\ 167}#
-                                           #{e\ 426}#
-                                           #{r\ 418}#
-                                           #{w\ 419}#
-                                           #{mod\ 421}#))
-                                       #{e1\ 425}#)))
-                              #{tmp\ 423}#)
+                                           #{e\ 708}#
+                                           #{r\ 700}#
+                                           #{w\ 701}#
+                                           #{mod\ 703}#))
+                                       #{e1\ 707}#)))
+                              #{tmp\ 705}#)
                        (syntax-violation
                          #f
                          "source expression failed to match any pattern"
-                         #{tmp\ 422}#)))
+                         #{tmp\ 704}#)))
                    ($sc-dispatch
-                     #{tmp\ 422}#
+                     #{tmp\ 704}#
                      '(any . each-any))))
-                #{e\ 417}#)))
+                #{e\ 699}#)))
            (#{chi-expr\ 168}#
-             (lambda (#{type\ 428}#
-                      #{value\ 429}#
-                      #{e\ 430}#
-                      #{r\ 431}#
-                      #{w\ 432}#
-                      #{s\ 433}#
-                      #{mod\ 434}#)
-               (if (memv #{type\ 428}# (quote (lexical)))
+             (lambda (#{type\ 710}#
+                      #{value\ 711}#
+                      #{e\ 712}#
+                      #{r\ 713}#
+                      #{w\ 714}#
+                      #{s\ 715}#
+                      #{mod\ 716}#)
+               (if (memv #{type\ 710}# (quote (lexical)))
                  (#{build-lexical-reference\ 98}#
                    'value
-                   #{s\ 433}#
-                   #{e\ 430}#
-                   #{value\ 429}#)
-                 (if (memv #{type\ 428}# (quote (core core-form)))
-                   (#{value\ 429}#
-                     #{e\ 430}#
-                     #{r\ 431}#
-                     #{w\ 432}#
-                     #{s\ 433}#
-                     #{mod\ 434}#)
-                   (if (memv #{type\ 428}# (quote (module-ref)))
+                   #{s\ 715}#
+                   #{e\ 712}#
+                   #{value\ 711}#)
+                 (if (memv #{type\ 710}# (quote (core core-form)))
+                   (#{value\ 711}#
+                     #{e\ 712}#
+                     #{r\ 713}#
+                     #{w\ 714}#
+                     #{s\ 715}#
+                     #{mod\ 716}#)
+                   (if (memv #{type\ 710}# (quote (module-ref)))
                      (call-with-values
-                       (lambda () (#{value\ 429}# #{e\ 430}#))
-                       (lambda (#{id\ 435}# #{mod\ 436}#)
+                       (lambda () (#{value\ 711}# #{e\ 712}#))
+                       (lambda (#{id\ 717}# #{mod\ 718}#)
                          (#{build-global-reference\ 101}#
-                           #{s\ 433}#
-                           #{id\ 435}#
-                           #{mod\ 436}#)))
-                     (if (memv #{type\ 428}# (quote (lexical-call)))
+                           #{s\ 715}#
+                           #{id\ 717}#
+                           #{mod\ 718}#)))
+                     (if (memv #{type\ 710}# (quote (lexical-call)))
                        (#{chi-application\ 169}#
                          (#{build-lexical-reference\ 98}#
                            'fun
-                           (#{source-annotation\ 122}# (car #{e\ 430}#))
-                           (car #{e\ 430}#)
-                           #{value\ 429}#)
-                         #{e\ 430}#
-                         #{r\ 431}#
-                         #{w\ 432}#
-                         #{s\ 433}#
-                         #{mod\ 434}#)
-                       (if (memv #{type\ 428}# (quote (global-call)))
+                           (#{source-annotation\ 122}# (car #{e\ 712}#))
+                           (car #{e\ 712}#)
+                           #{value\ 711}#)
+                         #{e\ 712}#
+                         #{r\ 713}#
+                         #{w\ 714}#
+                         #{s\ 715}#
+                         #{mod\ 716}#)
+                       (if (memv #{type\ 710}# (quote (global-call)))
                          (#{chi-application\ 169}#
                            (#{build-global-reference\ 101}#
-                             (#{source-annotation\ 122}# (car #{e\ 430}#))
-                             (if (#{syntax-object?\ 115}# #{value\ 429}#)
+                             (#{source-annotation\ 122}# (car #{e\ 712}#))
+                             (if (#{syntax-object?\ 115}# #{value\ 711}#)
                                (#{syntax-object-expression\ 116}#
-                                 #{value\ 429}#)
-                               #{value\ 429}#)
-                             (if (#{syntax-object?\ 115}# #{value\ 429}#)
-                               (#{syntax-object-module\ 118}# #{value\ 429}#)
-                               #{mod\ 434}#))
-                           #{e\ 430}#
-                           #{r\ 431}#
-                           #{w\ 432}#
-                           #{s\ 433}#
-                           #{mod\ 434}#)
-                         (if (memv #{type\ 428}# (quote (constant)))
+                                 #{value\ 711}#)
+                               #{value\ 711}#)
+                             (if (#{syntax-object?\ 115}# #{value\ 711}#)
+                               (#{syntax-object-module\ 118}# #{value\ 711}#)
+                               #{mod\ 716}#))
+                           #{e\ 712}#
+                           #{r\ 713}#
+                           #{w\ 714}#
+                           #{s\ 715}#
+                           #{mod\ 716}#)
+                         (if (memv #{type\ 710}# (quote (constant)))
                            (#{build-data\ 109}#
-                             #{s\ 433}#
-                             (#{strip\ 176}#
+                             #{s\ 715}#
+                             (#{strip\ 180}#
                                (#{source-wrap\ 160}#
-                                 #{e\ 430}#
-                                 #{w\ 432}#
-                                 #{s\ 433}#
-                                 #{mod\ 434}#)
+                                 #{e\ 712}#
+                                 #{w\ 714}#
+                                 #{s\ 715}#
+                                 #{mod\ 716}#)
                                '(())))
-                           (if (memv #{type\ 428}# (quote (global)))
+                           (if (memv #{type\ 710}# (quote (global)))
                              (#{build-global-reference\ 101}#
-                               #{s\ 433}#
-                               #{value\ 429}#
-                               #{mod\ 434}#)
-                             (if (memv #{type\ 428}# (quote (call)))
+                               #{s\ 715}#
+                               #{value\ 711}#
+                               #{mod\ 716}#)
+                             (if (memv #{type\ 710}# (quote (call)))
                                (#{chi-application\ 169}#
                                  (#{chi\ 167}#
-                                   (car #{e\ 430}#)
-                                   #{r\ 431}#
-                                   #{w\ 432}#
-                                   #{mod\ 434}#)
-                                 #{e\ 430}#
-                                 #{r\ 431}#
-                                 #{w\ 432}#
-                                 #{s\ 433}#
-                                 #{mod\ 434}#)
-                               (if (memv #{type\ 428}# (quote (begin-form)))
-                                 ((lambda (#{tmp\ 437}#)
-                                    ((lambda (#{tmp\ 438}#)
-                                       (if #{tmp\ 438}#
-                                         (apply (lambda (#{_\ 439}#
-                                                         #{e1\ 440}#
-                                                         #{e2\ 441}#)
+                                   (car #{e\ 712}#)
+                                   #{r\ 713}#
+                                   #{w\ 714}#
+                                   #{mod\ 716}#)
+                                 #{e\ 712}#
+                                 #{r\ 713}#
+                                 #{w\ 714}#
+                                 #{s\ 715}#
+                                 #{mod\ 716}#)
+                               (if (memv #{type\ 710}# (quote (begin-form)))
+                                 ((lambda (#{tmp\ 719}#)
+                                    ((lambda (#{tmp\ 720}#)
+                                       (if #{tmp\ 720}#
+                                         (apply (lambda (#{_\ 721}#
+                                                         #{e1\ 722}#
+                                                         #{e2\ 723}#)
                                                   (#{chi-sequence\ 161}#
-                                                    (cons #{e1\ 440}#
-                                                          #{e2\ 441}#)
-                                                    #{r\ 431}#
-                                                    #{w\ 432}#
-                                                    #{s\ 433}#
-                                                    #{mod\ 434}#))
-                                                #{tmp\ 438}#)
+                                                    (cons #{e1\ 722}#
+                                                          #{e2\ 723}#)
+                                                    #{r\ 713}#
+                                                    #{w\ 714}#
+                                                    #{s\ 715}#
+                                                    #{mod\ 716}#))
+                                                #{tmp\ 720}#)
                                          (syntax-violation
                                            #f
                                            "source expression failed to match 
any pattern"
-                                           #{tmp\ 437}#)))
+                                           #{tmp\ 719}#)))
                                      ($sc-dispatch
-                                       #{tmp\ 437}#
+                                       #{tmp\ 719}#
                                        '(any any . each-any))))
-                                  #{e\ 430}#)
-                                 (if (memv #{type\ 428}#
+                                  #{e\ 712}#)
+                                 (if (memv #{type\ 710}#
                                            '(local-syntax-form))
                                    (#{chi-local-syntax\ 172}#
-                                     #{value\ 429}#
-                                     #{e\ 430}#
-                                     #{r\ 431}#
-                                     #{w\ 432}#
-                                     #{s\ 433}#
-                                     #{mod\ 434}#
+                                     #{value\ 711}#
+                                     #{e\ 712}#
+                                     #{r\ 713}#
+                                     #{w\ 714}#
+                                     #{s\ 715}#
+                                     #{mod\ 716}#
                                      #{chi-sequence\ 161}#)
-                                   (if (memv #{type\ 428}#
+                                   (if (memv #{type\ 710}#
                                              '(eval-when-form))
-                                     ((lambda (#{tmp\ 443}#)
-                                        ((lambda (#{tmp\ 444}#)
-                                           (if #{tmp\ 444}#
-                                             (apply (lambda (#{_\ 445}#
-                                                             #{x\ 446}#
-                                                             #{e1\ 447}#
-                                                             #{e2\ 448}#)
-                                                      (let ((#{when-list\ 449}#
+                                     ((lambda (#{tmp\ 725}#)
+                                        ((lambda (#{tmp\ 726}#)
+                                           (if #{tmp\ 726}#
+                                             (apply (lambda (#{_\ 727}#
+                                                             #{x\ 728}#
+                                                             #{e1\ 729}#
+                                                             #{e2\ 730}#)
+                                                      (let ((#{when-list\ 731}#
                                                               
(#{chi-when-list\ 164}#
-                                                                #{e\ 430}#
-                                                                #{x\ 446}#
-                                                                #{w\ 432}#)))
+                                                                #{e\ 712}#
+                                                                #{x\ 728}#
+                                                                #{w\ 714}#)))
                                                         (if (memq 'eval
-                                                                  #{when-list\ 
449}#)
+                                                                  #{when-list\ 
731}#)
                                                           (#{chi-sequence\ 
161}#
-                                                            (cons #{e1\ 447}#
-                                                                  #{e2\ 448}#)
-                                                            #{r\ 431}#
-                                                            #{w\ 432}#
-                                                            #{s\ 433}#
-                                                            #{mod\ 434}#)
+                                                            (cons #{e1\ 729}#
+                                                                  #{e2\ 730}#)
+                                                            #{r\ 713}#
+                                                            #{w\ 714}#
+                                                            #{s\ 715}#
+                                                            #{mod\ 716}#)
                                                           (#{chi-void\ 
174}#))))
-                                                    #{tmp\ 444}#)
+                                                    #{tmp\ 726}#)
                                              (syntax-violation
                                                #f
                                                "source expression failed to 
match any pattern"
-                                               #{tmp\ 443}#)))
+                                               #{tmp\ 725}#)))
                                          ($sc-dispatch
-                                           #{tmp\ 443}#
+                                           #{tmp\ 725}#
                                            '(any each-any any . each-any))))
-                                      #{e\ 430}#)
-                                     (if (memv #{type\ 428}#
+                                      #{e\ 712}#)
+                                     (if (memv #{type\ 710}#
                                                '(define-form
                                                   define-syntax-form))
                                        (syntax-violation
                                          #f
                                          "definition in expression context"
-                                         #{e\ 430}#
+                                         #{e\ 712}#
                                          (#{wrap\ 159}#
-                                           #{value\ 429}#
-                                           #{w\ 432}#
-                                           #{mod\ 434}#))
-                                       (if (memv #{type\ 428}#
+                                           #{value\ 711}#
+                                           #{w\ 714}#
+                                           #{mod\ 716}#))
+                                       (if (memv #{type\ 710}#
                                                  '(syntax))
                                          (syntax-violation
                                            #f
                                            "reference to pattern variable 
outside syntax form"
                                            (#{source-wrap\ 160}#
-                                             #{e\ 430}#
-                                             #{w\ 432}#
-                                             #{s\ 433}#
-                                             #{mod\ 434}#))
-                                         (if (memv #{type\ 428}#
+                                             #{e\ 712}#
+                                             #{w\ 714}#
+                                             #{s\ 715}#
+                                             #{mod\ 716}#))
+                                         (if (memv #{type\ 710}#
                                                    '(displaced-lexical))
                                            (syntax-violation
                                              #f
                                              "reference to identifier outside 
its scope"
                                              (#{source-wrap\ 160}#
-                                               #{e\ 430}#
-                                               #{w\ 432}#
-                                               #{s\ 433}#
-                                               #{mod\ 434}#))
+                                               #{e\ 712}#
+                                               #{w\ 714}#
+                                               #{s\ 715}#
+                                               #{mod\ 716}#))
                                            (syntax-violation
                                              #f
                                              "unexpected syntax"
                                              (#{source-wrap\ 160}#
-                                               #{e\ 430}#
-                                               #{w\ 432}#
-                                               #{s\ 433}#
-                                               #{mod\ 434}#))))))))))))))))))
+                                               #{e\ 712}#
+                                               #{w\ 714}#
+                                               #{s\ 715}#
+                                               #{mod\ 716}#))))))))))))))))))
            (#{chi\ 167}#
-             (lambda (#{e\ 452}# #{r\ 453}# #{w\ 454}# #{mod\ 455}#)
+             (lambda (#{e\ 734}# #{r\ 735}# #{w\ 736}# #{mod\ 737}#)
                (call-with-values
                  (lambda ()
                    (#{syntax-type\ 165}#
-                     #{e\ 452}#
-                     #{r\ 453}#
-                     #{w\ 454}#
-                     (#{source-annotation\ 122}# #{e\ 452}#)
+                     #{e\ 734}#
+                     #{r\ 735}#
+                     #{w\ 736}#
+                     (#{source-annotation\ 122}# #{e\ 734}#)
                      #f
-                     #{mod\ 455}#
+                     #{mod\ 737}#
                      #f))
-                 (lambda (#{type\ 456}#
-                          #{value\ 457}#
-                          #{e\ 458}#
-                          #{w\ 459}#
-                          #{s\ 460}#
-                          #{mod\ 461}#)
+                 (lambda (#{type\ 738}#
+                          #{value\ 739}#
+                          #{e\ 740}#
+                          #{w\ 741}#
+                          #{s\ 742}#
+                          #{mod\ 743}#)
                    (#{chi-expr\ 168}#
-                     #{type\ 456}#
-                     #{value\ 457}#
-                     #{e\ 458}#
-                     #{r\ 453}#
-                     #{w\ 459}#
-                     #{s\ 460}#
-                     #{mod\ 461}#)))))
+                     #{type\ 738}#
+                     #{value\ 739}#
+                     #{e\ 740}#
+                     #{r\ 735}#
+                     #{w\ 741}#
+                     #{s\ 742}#
+                     #{mod\ 743}#)))))
            (#{chi-top\ 166}#
-             (lambda (#{e\ 462}#
-                      #{r\ 463}#
-                      #{w\ 464}#
-                      #{m\ 465}#
-                      #{esew\ 466}#
-                      #{mod\ 467}#)
+             (lambda (#{e\ 744}#
+                      #{r\ 745}#
+                      #{w\ 746}#
+                      #{m\ 747}#
+                      #{esew\ 748}#
+                      #{mod\ 749}#)
                (call-with-values
                  (lambda ()
                    (#{syntax-type\ 165}#
-                     #{e\ 462}#
-                     #{r\ 463}#
-                     #{w\ 464}#
-                     (#{source-annotation\ 122}# #{e\ 462}#)
+                     #{e\ 744}#
+                     #{r\ 745}#
+                     #{w\ 746}#
+                     (#{source-annotation\ 122}# #{e\ 744}#)
                      #f
-                     #{mod\ 467}#
+                     #{mod\ 749}#
                      #f))
-                 (lambda (#{type\ 475}#
-                          #{value\ 476}#
-                          #{e\ 477}#
-                          #{w\ 478}#
-                          #{s\ 479}#
-                          #{mod\ 480}#)
-                   (if (memv #{type\ 475}# (quote (begin-form)))
-                     ((lambda (#{tmp\ 481}#)
-                        ((lambda (#{tmp\ 482}#)
-                           (if #{tmp\ 482}#
-                             (apply (lambda (#{_\ 483}#) (#{chi-void\ 174}#))
-                                    #{tmp\ 482}#)
-                             ((lambda (#{tmp\ 484}#)
-                                (if #{tmp\ 484}#
-                                  (apply (lambda (#{_\ 485}#
-                                                  #{e1\ 486}#
-                                                  #{e2\ 487}#)
+                 (lambda (#{type\ 757}#
+                          #{value\ 758}#
+                          #{e\ 759}#
+                          #{w\ 760}#
+                          #{s\ 761}#
+                          #{mod\ 762}#)
+                   (if (memv #{type\ 757}# (quote (begin-form)))
+                     ((lambda (#{tmp\ 763}#)
+                        ((lambda (#{tmp\ 764}#)
+                           (if #{tmp\ 764}#
+                             (apply (lambda (#{_\ 765}#) (#{chi-void\ 174}#))
+                                    #{tmp\ 764}#)
+                             ((lambda (#{tmp\ 766}#)
+                                (if #{tmp\ 766}#
+                                  (apply (lambda (#{_\ 767}#
+                                                  #{e1\ 768}#
+                                                  #{e2\ 769}#)
                                            (#{chi-top-sequence\ 162}#
-                                             (cons #{e1\ 486}# #{e2\ 487}#)
-                                             #{r\ 463}#
-                                             #{w\ 478}#
-                                             #{s\ 479}#
-                                             #{m\ 465}#
-                                             #{esew\ 466}#
-                                             #{mod\ 480}#))
-                                         #{tmp\ 484}#)
+                                             (cons #{e1\ 768}# #{e2\ 769}#)
+                                             #{r\ 745}#
+                                             #{w\ 760}#
+                                             #{s\ 761}#
+                                             #{m\ 747}#
+                                             #{esew\ 748}#
+                                             #{mod\ 762}#))
+                                         #{tmp\ 766}#)
                                   (syntax-violation
                                     #f
                                     "source expression failed to match any 
pattern"
-                                    #{tmp\ 481}#)))
+                                    #{tmp\ 763}#)))
                               ($sc-dispatch
-                                #{tmp\ 481}#
+                                #{tmp\ 763}#
                                 '(any any . each-any)))))
-                         ($sc-dispatch #{tmp\ 481}# (quote (any)))))
-                      #{e\ 477}#)
-                     (if (memv #{type\ 475}# (quote (local-syntax-form)))
+                         ($sc-dispatch #{tmp\ 763}# (quote (any)))))
+                      #{e\ 759}#)
+                     (if (memv #{type\ 757}# (quote (local-syntax-form)))
                        (#{chi-local-syntax\ 172}#
-                         #{value\ 476}#
-                         #{e\ 477}#
-                         #{r\ 463}#
-                         #{w\ 478}#
-                         #{s\ 479}#
-                         #{mod\ 480}#
-                         (lambda (#{body\ 489}#
-                                  #{r\ 490}#
-                                  #{w\ 491}#
-                                  #{s\ 492}#
-                                  #{mod\ 493}#)
+                         #{value\ 758}#
+                         #{e\ 759}#
+                         #{r\ 745}#
+                         #{w\ 760}#
+                         #{s\ 761}#
+                         #{mod\ 762}#
+                         (lambda (#{body\ 771}#
+                                  #{r\ 772}#
+                                  #{w\ 773}#
+                                  #{s\ 774}#
+                                  #{mod\ 775}#)
                            (#{chi-top-sequence\ 162}#
-                             #{body\ 489}#
-                             #{r\ 490}#
-                             #{w\ 491}#
-                             #{s\ 492}#
-                             #{m\ 465}#
-                             #{esew\ 466}#
-                             #{mod\ 493}#)))
-                       (if (memv #{type\ 475}# (quote (eval-when-form)))
-                         ((lambda (#{tmp\ 494}#)
-                            ((lambda (#{tmp\ 495}#)
-                               (if #{tmp\ 495}#
-                                 (apply (lambda (#{_\ 496}#
-                                                 #{x\ 497}#
-                                                 #{e1\ 498}#
-                                                 #{e2\ 499}#)
-                                          (let ((#{when-list\ 500}#
+                             #{body\ 771}#
+                             #{r\ 772}#
+                             #{w\ 773}#
+                             #{s\ 774}#
+                             #{m\ 747}#
+                             #{esew\ 748}#
+                             #{mod\ 775}#)))
+                       (if (memv #{type\ 757}# (quote (eval-when-form)))
+                         ((lambda (#{tmp\ 776}#)
+                            ((lambda (#{tmp\ 777}#)
+                               (if #{tmp\ 777}#
+                                 (apply (lambda (#{_\ 778}#
+                                                 #{x\ 779}#
+                                                 #{e1\ 780}#
+                                                 #{e2\ 781}#)
+                                          (let ((#{when-list\ 782}#
                                                   (#{chi-when-list\ 164}#
-                                                    #{e\ 477}#
-                                                    #{x\ 497}#
-                                                    #{w\ 478}#))
-                                                (#{body\ 501}#
-                                                  (cons #{e1\ 498}#
-                                                        #{e2\ 499}#)))
-                                            (if (eq? #{m\ 465}# (quote e))
+                                                    #{e\ 759}#
+                                                    #{x\ 779}#
+                                                    #{w\ 760}#))
+                                                (#{body\ 783}#
+                                                  (cons #{e1\ 780}#
+                                                        #{e2\ 781}#)))
+                                            (if (eq? #{m\ 747}# (quote e))
                                               (if (memq 'eval
-                                                        #{when-list\ 500}#)
+                                                        #{when-list\ 782}#)
                                                 (#{chi-top-sequence\ 162}#
-                                                  #{body\ 501}#
-                                                  #{r\ 463}#
-                                                  #{w\ 478}#
-                                                  #{s\ 479}#
+                                                  #{body\ 783}#
+                                                  #{r\ 745}#
+                                                  #{w\ 760}#
+                                                  #{s\ 761}#
                                                   'e
                                                   '(eval)
-                                                  #{mod\ 480}#)
+                                                  #{mod\ 762}#)
                                                 (#{chi-void\ 174}#))
                                               (if (memq 'load
-                                                        #{when-list\ 500}#)
-                                                (if (let ((#{t\ 504}# (memq 
'compile
-                                                                            
#{when-list\ 500}#)))
-                                                      (if #{t\ 504}#
-                                                        #{t\ 504}#
-                                                        (if (eq? #{m\ 465}#
+                                                        #{when-list\ 782}#)
+                                                (if (let ((#{t\ 786}# (memq 
'compile
+                                                                            
#{when-list\ 782}#)))
+                                                      (if #{t\ 786}#
+                                                        #{t\ 786}#
+                                                        (if (eq? #{m\ 747}#
                                                                  'c&e)
                                                           (memq 'eval
-                                                                #{when-list\ 
500}#)
+                                                                #{when-list\ 
782}#)
                                                           #f)))
                                                   (#{chi-top-sequence\ 162}#
-                                                    #{body\ 501}#
-                                                    #{r\ 463}#
-                                                    #{w\ 478}#
-                                                    #{s\ 479}#
+                                                    #{body\ 783}#
+                                                    #{r\ 745}#
+                                                    #{w\ 760}#
+                                                    #{s\ 761}#
                                                     'c&e
                                                     '(compile load)
-                                                    #{mod\ 480}#)
-                                                  (if (memq #{m\ 465}#
+                                                    #{mod\ 762}#)
+                                                  (if (memq #{m\ 747}#
                                                             '(c c&e))
                                                     (#{chi-top-sequence\ 162}#
-                                                      #{body\ 501}#
-                                                      #{r\ 463}#
-                                                      #{w\ 478}#
-                                                      #{s\ 479}#
+                                                      #{body\ 783}#
+                                                      #{r\ 745}#
+                                                      #{w\ 760}#
+                                                      #{s\ 761}#
                                                       'c
                                                       '(load)
-                                                      #{mod\ 480}#)
+                                                      #{mod\ 762}#)
                                                     (#{chi-void\ 174}#)))
-                                                (if (let ((#{t\ 505}# (memq 
'compile
-                                                                            
#{when-list\ 500}#)))
-                                                      (if #{t\ 505}#
-                                                        #{t\ 505}#
-                                                        (if (eq? #{m\ 465}#
+                                                (if (let ((#{t\ 787}# (memq 
'compile
+                                                                            
#{when-list\ 782}#)))
+                                                      (if #{t\ 787}#
+                                                        #{t\ 787}#
+                                                        (if (eq? #{m\ 747}#
                                                                  'c&e)
                                                           (memq 'eval
-                                                                #{when-list\ 
500}#)
+                                                                #{when-list\ 
782}#)
                                                           #f)))
                                                   (begin
                                                     (#{top-level-eval-hook\ 
90}#
                                                       (#{chi-top-sequence\ 
162}#
-                                                        #{body\ 501}#
-                                                        #{r\ 463}#
-                                                        #{w\ 478}#
-                                                        #{s\ 479}#
+                                                        #{body\ 783}#
+                                                        #{r\ 745}#
+                                                        #{w\ 760}#
+                                                        #{s\ 761}#
                                                         'e
                                                         '(eval)
-                                                        #{mod\ 480}#)
-                                                      #{mod\ 480}#)
+                                                        #{mod\ 762}#)
+                                                      #{mod\ 762}#)
                                                     (#{chi-void\ 174}#))
                                                   (#{chi-void\ 174}#))))))
-                                        #{tmp\ 495}#)
+                                        #{tmp\ 777}#)
                                  (syntax-violation
                                    #f
                                    "source expression failed to match any 
pattern"
-                                   #{tmp\ 494}#)))
+                                   #{tmp\ 776}#)))
                              ($sc-dispatch
-                               #{tmp\ 494}#
+                               #{tmp\ 776}#
                                '(any each-any any . each-any))))
-                          #{e\ 477}#)
-                         (if (memv #{type\ 475}# (quote (define-syntax-form)))
-                           (let ((#{n\ 506}# (#{id-var-name\ 153}#
-                                               #{value\ 476}#
-                                               #{w\ 478}#))
-                                 (#{r\ 507}# (#{macros-only-env\ 127}#
-                                               #{r\ 463}#)))
-                             (if (memv #{m\ 465}# (quote (c)))
-                               (if (memq (quote compile) #{esew\ 466}#)
-                                 (let ((#{e\ 508}# (#{chi-install-global\ 163}#
-                                                     #{n\ 506}#
+                          #{e\ 759}#)
+                         (if (memv #{type\ 757}# (quote (define-syntax-form)))
+                           (let ((#{n\ 788}# (#{id-var-name\ 153}#
+                                               #{value\ 758}#
+                                               #{w\ 760}#))
+                                 (#{r\ 789}# (#{macros-only-env\ 127}#
+                                               #{r\ 745}#)))
+                             (if (memv #{m\ 747}# (quote (c)))
+                               (if (memq (quote compile) #{esew\ 748}#)
+                                 (let ((#{e\ 790}# (#{chi-install-global\ 163}#
+                                                     #{n\ 788}#
                                                      (#{chi\ 167}#
-                                                       #{e\ 477}#
-                                                       #{r\ 507}#
-                                                       #{w\ 478}#
-                                                       #{mod\ 480}#))))
+                                                       #{e\ 759}#
+                                                       #{r\ 789}#
+                                                       #{w\ 760}#
+                                                       #{mod\ 762}#))))
                                    (begin
                                      (#{top-level-eval-hook\ 90}#
-                                       #{e\ 508}#
-                                       #{mod\ 480}#)
-                                     (if (memq (quote load) #{esew\ 466}#)
-                                       #{e\ 508}#
+                                       #{e\ 790}#
+                                       #{mod\ 762}#)
+                                     (if (memq (quote load) #{esew\ 748}#)
+                                       #{e\ 790}#
                                        (#{chi-void\ 174}#))))
-                                 (if (memq (quote load) #{esew\ 466}#)
+                                 (if (memq (quote load) #{esew\ 748}#)
                                    (#{chi-install-global\ 163}#
-                                     #{n\ 506}#
+                                     #{n\ 788}#
                                      (#{chi\ 167}#
-                                       #{e\ 477}#
-                                       #{r\ 507}#
-                                       #{w\ 478}#
-                                       #{mod\ 480}#))
+                                       #{e\ 759}#
+                                       #{r\ 789}#
+                                       #{w\ 760}#
+                                       #{mod\ 762}#))
                                    (#{chi-void\ 174}#)))
-                               (if (memv #{m\ 465}# (quote (c&e)))
-                                 (let ((#{e\ 509}# (#{chi-install-global\ 163}#
-                                                     #{n\ 506}#
+                               (if (memv #{m\ 747}# (quote (c&e)))
+                                 (let ((#{e\ 791}# (#{chi-install-global\ 163}#
+                                                     #{n\ 788}#
                                                      (#{chi\ 167}#
-                                                       #{e\ 477}#
-                                                       #{r\ 507}#
-                                                       #{w\ 478}#
-                                                       #{mod\ 480}#))))
+                                                       #{e\ 759}#
+                                                       #{r\ 789}#
+                                                       #{w\ 760}#
+                                                       #{mod\ 762}#))))
                                    (begin
                                      (#{top-level-eval-hook\ 90}#
-                                       #{e\ 509}#
-                                       #{mod\ 480}#)
-                                     #{e\ 509}#))
+                                       #{e\ 791}#
+                                       #{mod\ 762}#)
+                                     #{e\ 791}#))
                                  (begin
-                                   (if (memq (quote eval) #{esew\ 466}#)
+                                   (if (memq (quote eval) #{esew\ 748}#)
                                      (#{top-level-eval-hook\ 90}#
                                        (#{chi-install-global\ 163}#
-                                         #{n\ 506}#
+                                         #{n\ 788}#
                                          (#{chi\ 167}#
-                                           #{e\ 477}#
-                                           #{r\ 507}#
-                                           #{w\ 478}#
-                                           #{mod\ 480}#))
-                                       #{mod\ 480}#))
+                                           #{e\ 759}#
+                                           #{r\ 789}#
+                                           #{w\ 760}#
+                                           #{mod\ 762}#))
+                                       #{mod\ 762}#))
                                    (#{chi-void\ 174}#)))))
-                           (if (memv #{type\ 475}# (quote (define-form)))
-                             (let ((#{n\ 510}# (#{id-var-name\ 153}#
-                                                 #{value\ 476}#
-                                                 #{w\ 478}#)))
-                               (let ((#{type\ 511}#
+                           (if (memv #{type\ 757}# (quote (define-form)))
+                             (let ((#{n\ 792}# (#{id-var-name\ 153}#
+                                                 #{value\ 758}#
+                                                 #{w\ 760}#)))
+                               (let ((#{type\ 793}#
                                        (#{binding-type\ 123}#
                                          (#{lookup\ 128}#
-                                           #{n\ 510}#
-                                           #{r\ 463}#
-                                           #{mod\ 480}#))))
-                                 (if (memv #{type\ 511}#
+                                           #{n\ 792}#
+                                           #{r\ 745}#
+                                           #{mod\ 762}#))))
+                                 (if (memv #{type\ 793}#
                                            '(global core macro module-ref))
                                    (begin
                                      (if (if (not (module-local-variable
                                                     (current-module)
-                                                    #{n\ 510}#))
+                                                    #{n\ 792}#))
                                            (current-module)
                                            #f)
-                                       (let ((#{old\ 512}#
+                                       (let ((#{old\ 794}#
                                                (module-variable
                                                  (current-module)
-                                                 #{n\ 510}#)))
+                                                 #{n\ 792}#)))
                                          (module-define!
                                            (current-module)
-                                           #{n\ 510}#
-                                           (if (variable? #{old\ 512}#)
-                                             (variable-ref #{old\ 512}#)
+                                           #{n\ 792}#
+                                           (if (variable? #{old\ 794}#)
+                                             (variable-ref #{old\ 794}#)
                                              #f))))
-                                     (let ((#{x\ 513}# 
(#{build-global-definition\ 104}#
-                                                         #{s\ 479}#
-                                                         #{n\ 510}#
+                                     (let ((#{x\ 795}# 
(#{build-global-definition\ 104}#
+                                                         #{s\ 761}#
+                                                         #{n\ 792}#
                                                          (#{chi\ 167}#
-                                                           #{e\ 477}#
-                                                           #{r\ 463}#
-                                                           #{w\ 478}#
-                                                           #{mod\ 480}#))))
+                                                           #{e\ 759}#
+                                                           #{r\ 745}#
+                                                           #{w\ 760}#
+                                                           #{mod\ 762}#))))
                                        (begin
-                                         (if (eq? #{m\ 465}# (quote c&e))
+                                         (if (eq? #{m\ 747}# (quote c&e))
                                            (#{top-level-eval-hook\ 90}#
-                                             #{x\ 513}#
-                                             #{mod\ 480}#))
-                                         #{x\ 513}#)))
-                                   (if (memv #{type\ 511}#
+                                             #{x\ 795}#
+                                             #{mod\ 762}#))
+                                         #{x\ 795}#)))
+                                   (if (memv #{type\ 793}#
                                              '(displaced-lexical))
                                      (syntax-violation
                                        #f
                                        "identifier out of context"
-                                       #{e\ 477}#
+                                       #{e\ 759}#
                                        (#{wrap\ 159}#
-                                         #{value\ 476}#
-                                         #{w\ 478}#
-                                         #{mod\ 480}#))
+                                         #{value\ 758}#
+                                         #{w\ 760}#
+                                         #{mod\ 762}#))
                                      (syntax-violation
                                        #f
                                        "cannot define keyword at top level"
-                                       #{e\ 477}#
+                                       #{e\ 759}#
                                        (#{wrap\ 159}#
-                                         #{value\ 476}#
-                                         #{w\ 478}#
-                                         #{mod\ 480}#))))))
-                             (let ((#{x\ 514}# (#{chi-expr\ 168}#
-                                                 #{type\ 475}#
-                                                 #{value\ 476}#
-                                                 #{e\ 477}#
-                                                 #{r\ 463}#
-                                                 #{w\ 478}#
-                                                 #{s\ 479}#
-                                                 #{mod\ 480}#)))
+                                         #{value\ 758}#
+                                         #{w\ 760}#
+                                         #{mod\ 762}#))))))
+                             (let ((#{x\ 796}# (#{chi-expr\ 168}#
+                                                 #{type\ 757}#
+                                                 #{value\ 758}#
+                                                 #{e\ 759}#
+                                                 #{r\ 745}#
+                                                 #{w\ 760}#
+                                                 #{s\ 761}#
+                                                 #{mod\ 762}#)))
                                (begin
-                                 (if (eq? #{m\ 465}# (quote c&e))
+                                 (if (eq? #{m\ 747}# (quote c&e))
                                    (#{top-level-eval-hook\ 90}#
-                                     #{x\ 514}#
-                                     #{mod\ 480}#))
-                                 #{x\ 514}#)))))))))))
+                                     #{x\ 796}#
+                                     #{mod\ 762}#))
+                                 #{x\ 796}#)))))))))))
            (#{syntax-type\ 165}#
-             (lambda (#{e\ 515}#
-                      #{r\ 516}#
-                      #{w\ 517}#
-                      #{s\ 518}#
-                      #{rib\ 519}#
-                      #{mod\ 520}#
-                      #{for-car?\ 521}#)
-               (if (symbol? #{e\ 515}#)
-                 (let ((#{n\ 522}# (#{id-var-name\ 153}#
-                                     #{e\ 515}#
-                                     #{w\ 517}#)))
-                   (let ((#{b\ 523}# (#{lookup\ 128}#
-                                       #{n\ 522}#
-                                       #{r\ 516}#
-                                       #{mod\ 520}#)))
-                     (let ((#{type\ 524}#
-                             (#{binding-type\ 123}# #{b\ 523}#)))
-                       (if (memv #{type\ 524}# (quote (lexical)))
+             (lambda (#{e\ 797}#
+                      #{r\ 798}#
+                      #{w\ 799}#
+                      #{s\ 800}#
+                      #{rib\ 801}#
+                      #{mod\ 802}#
+                      #{for-car?\ 803}#)
+               (if (symbol? #{e\ 797}#)
+                 (let ((#{n\ 804}# (#{id-var-name\ 153}#
+                                     #{e\ 797}#
+                                     #{w\ 799}#)))
+                   (let ((#{b\ 805}# (#{lookup\ 128}#
+                                       #{n\ 804}#
+                                       #{r\ 798}#
+                                       #{mod\ 802}#)))
+                     (let ((#{type\ 806}#
+                             (#{binding-type\ 123}# #{b\ 805}#)))
+                       (if (memv #{type\ 806}# (quote (lexical)))
                          (values
-                           #{type\ 524}#
-                           (#{binding-value\ 124}# #{b\ 523}#)
-                           #{e\ 515}#
-                           #{w\ 517}#
-                           #{s\ 518}#
-                           #{mod\ 520}#)
-                         (if (memv #{type\ 524}# (quote (global)))
+                           #{type\ 806}#
+                           (#{binding-value\ 124}# #{b\ 805}#)
+                           #{e\ 797}#
+                           #{w\ 799}#
+                           #{s\ 800}#
+                           #{mod\ 802}#)
+                         (if (memv #{type\ 806}# (quote (global)))
                            (values
-                             #{type\ 524}#
-                             #{n\ 522}#
-                             #{e\ 515}#
-                             #{w\ 517}#
-                             #{s\ 518}#
-                             #{mod\ 520}#)
-                           (if (memv #{type\ 524}# (quote (macro)))
-                             (if #{for-car?\ 521}#
+                             #{type\ 806}#
+                             #{n\ 804}#
+                             #{e\ 797}#
+                             #{w\ 799}#
+                             #{s\ 800}#
+                             #{mod\ 802}#)
+                           (if (memv #{type\ 806}# (quote (macro)))
+                             (if #{for-car?\ 803}#
                                (values
-                                 #{type\ 524}#
-                                 (#{binding-value\ 124}# #{b\ 523}#)
-                                 #{e\ 515}#
-                                 #{w\ 517}#
-                                 #{s\ 518}#
-                                 #{mod\ 520}#)
+                                 #{type\ 806}#
+                                 (#{binding-value\ 124}# #{b\ 805}#)
+                                 #{e\ 797}#
+                                 #{w\ 799}#
+                                 #{s\ 800}#
+                                 #{mod\ 802}#)
                                (#{syntax-type\ 165}#
                                  (#{chi-macro\ 170}#
-                                   (#{binding-value\ 124}# #{b\ 523}#)
-                                   #{e\ 515}#
-                                   #{r\ 516}#
-                                   #{w\ 517}#
-                                   #{rib\ 519}#
-                                   #{mod\ 520}#)
-                                 #{r\ 516}#
+                                   (#{binding-value\ 124}# #{b\ 805}#)
+                                   #{e\ 797}#
+                                   #{r\ 798}#
+                                   #{w\ 799}#
+                                   #{rib\ 801}#
+                                   #{mod\ 802}#)
+                                 #{r\ 798}#
                                  '(())
-                                 #{s\ 518}#
-                                 #{rib\ 519}#
-                                 #{mod\ 520}#
+                                 #{s\ 800}#
+                                 #{rib\ 801}#
+                                 #{mod\ 802}#
                                  #f))
                              (values
-                               #{type\ 524}#
-                               (#{binding-value\ 124}# #{b\ 523}#)
-                               #{e\ 515}#
-                               #{w\ 517}#
-                               #{s\ 518}#
-                               #{mod\ 520}#)))))))
-                 (if (pair? #{e\ 515}#)
-                   (let ((#{first\ 525}# (car #{e\ 515}#)))
+                               #{type\ 806}#
+                               (#{binding-value\ 124}# #{b\ 805}#)
+                               #{e\ 797}#
+                               #{w\ 799}#
+                               #{s\ 800}#
+                               #{mod\ 802}#)))))))
+                 (if (pair? #{e\ 797}#)
+                   (let ((#{first\ 807}# (car #{e\ 797}#)))
                      (call-with-values
                        (lambda ()
                          (#{syntax-type\ 165}#
-                           #{first\ 525}#
-                           #{r\ 516}#
-                           #{w\ 517}#
-                           #{s\ 518}#
-                           #{rib\ 519}#
-                           #{mod\ 520}#
+                           #{first\ 807}#
+                           #{r\ 798}#
+                           #{w\ 799}#
+                           #{s\ 800}#
+                           #{rib\ 801}#
+                           #{mod\ 802}#
                            #t))
-                       (lambda (#{ftype\ 526}#
-                                #{fval\ 527}#
-                                #{fe\ 528}#
-                                #{fw\ 529}#
-                                #{fs\ 530}#
-                                #{fmod\ 531}#)
-                         (if (memv #{ftype\ 526}# (quote (lexical)))
+                       (lambda (#{ftype\ 808}#
+                                #{fval\ 809}#
+                                #{fe\ 810}#
+                                #{fw\ 811}#
+                                #{fs\ 812}#
+                                #{fmod\ 813}#)
+                         (if (memv #{ftype\ 808}# (quote (lexical)))
                            (values
                              'lexical-call
-                             #{fval\ 527}#
-                             #{e\ 515}#
-                             #{w\ 517}#
-                             #{s\ 518}#
-                             #{mod\ 520}#)
-                           (if (memv #{ftype\ 526}# (quote (global)))
+                             #{fval\ 809}#
+                             #{e\ 797}#
+                             #{w\ 799}#
+                             #{s\ 800}#
+                             #{mod\ 802}#)
+                           (if (memv #{ftype\ 808}# (quote (global)))
                              (values
                                'global-call
                                (#{make-syntax-object\ 114}#
-                                 #{fval\ 527}#
-                                 #{w\ 517}#
-                                 #{fmod\ 531}#)
-                               #{e\ 515}#
-                               #{w\ 517}#
-                               #{s\ 518}#
-                               #{mod\ 520}#)
-                             (if (memv #{ftype\ 526}# (quote (macro)))
+                                 #{fval\ 809}#
+                                 #{w\ 799}#
+                                 #{fmod\ 813}#)
+                               #{e\ 797}#
+                               #{w\ 799}#
+                               #{s\ 800}#
+                               #{mod\ 802}#)
+                             (if (memv #{ftype\ 808}# (quote (macro)))
                                (#{syntax-type\ 165}#
                                  (#{chi-macro\ 170}#
-                                   #{fval\ 527}#
-                                   #{e\ 515}#
-                                   #{r\ 516}#
-                                   #{w\ 517}#
-                                   #{rib\ 519}#
-                                   #{mod\ 520}#)
-                                 #{r\ 516}#
+                                   #{fval\ 809}#
+                                   #{e\ 797}#
+                                   #{r\ 798}#
+                                   #{w\ 799}#
+                                   #{rib\ 801}#
+                                   #{mod\ 802}#)
+                                 #{r\ 798}#
                                  '(())
-                                 #{s\ 518}#
-                                 #{rib\ 519}#
-                                 #{mod\ 520}#
-                                 #{for-car?\ 521}#)
-                               (if (memv #{ftype\ 526}# (quote (module-ref)))
+                                 #{s\ 800}#
+                                 #{rib\ 801}#
+                                 #{mod\ 802}#
+                                 #{for-car?\ 803}#)
+                               (if (memv #{ftype\ 808}# (quote (module-ref)))
                                  (call-with-values
-                                   (lambda () (#{fval\ 527}# #{e\ 515}#))
-                                   (lambda (#{sym\ 532}# #{mod\ 533}#)
+                                   (lambda () (#{fval\ 809}# #{e\ 797}#))
+                                   (lambda (#{sym\ 814}# #{mod\ 815}#)
                                      (#{syntax-type\ 165}#
-                                       #{sym\ 532}#
-                                       #{r\ 516}#
-                                       #{w\ 517}#
-                                       #{s\ 518}#
-                                       #{rib\ 519}#
-                                       #{mod\ 533}#
-                                       #{for-car?\ 521}#)))
-                                 (if (memv #{ftype\ 526}# (quote (core)))
+                                       #{sym\ 814}#
+                                       #{r\ 798}#
+                                       #{w\ 799}#
+                                       #{s\ 800}#
+                                       #{rib\ 801}#
+                                       #{mod\ 815}#
+                                       #{for-car?\ 803}#)))
+                                 (if (memv #{ftype\ 808}# (quote (core)))
                                    (values
                                      'core-form
-                                     #{fval\ 527}#
-                                     #{e\ 515}#
-                                     #{w\ 517}#
-                                     #{s\ 518}#
-                                     #{mod\ 520}#)
-                                   (if (memv #{ftype\ 526}#
+                                     #{fval\ 809}#
+                                     #{e\ 797}#
+                                     #{w\ 799}#
+                                     #{s\ 800}#
+                                     #{mod\ 802}#)
+                                   (if (memv #{ftype\ 808}#
                                              '(local-syntax))
                                      (values
                                        'local-syntax-form
-                                       #{fval\ 527}#
-                                       #{e\ 515}#
-                                       #{w\ 517}#
-                                       #{s\ 518}#
-                                       #{mod\ 520}#)
-                                     (if (memv #{ftype\ 526}# (quote (begin)))
+                                       #{fval\ 809}#
+                                       #{e\ 797}#
+                                       #{w\ 799}#
+                                       #{s\ 800}#
+                                       #{mod\ 802}#)
+                                     (if (memv #{ftype\ 808}# (quote (begin)))
                                        (values
                                          'begin-form
                                          #f
-                                         #{e\ 515}#
-                                         #{w\ 517}#
-                                         #{s\ 518}#
-                                         #{mod\ 520}#)
-                                       (if (memv #{ftype\ 526}#
+                                         #{e\ 797}#
+                                         #{w\ 799}#
+                                         #{s\ 800}#
+                                         #{mod\ 802}#)
+                                       (if (memv #{ftype\ 808}#
                                                  '(eval-when))
                                          (values
                                            'eval-when-form
                                            #f
-                                           #{e\ 515}#
-                                           #{w\ 517}#
-                                           #{s\ 518}#
-                                           #{mod\ 520}#)
-                                         (if (memv #{ftype\ 526}#
+                                           #{e\ 797}#
+                                           #{w\ 799}#
+                                           #{s\ 800}#
+                                           #{mod\ 802}#)
+                                         (if (memv #{ftype\ 808}#
                                                    '(define))
-                                           ((lambda (#{tmp\ 534}#)
-                                              ((lambda (#{tmp\ 535}#)
-                                                 (if (if #{tmp\ 535}#
-                                                       (apply (lambda (#{_\ 
536}#
-                                                                       #{name\ 
537}#
-                                                                       #{val\ 
538}#)
+                                           ((lambda (#{tmp\ 816}#)
+                                              ((lambda (#{tmp\ 817}#)
+                                                 (if (if #{tmp\ 817}#
+                                                       (apply (lambda (#{_\ 
818}#
+                                                                       #{name\ 
819}#
+                                                                       #{val\ 
820}#)
                                                                 (#{id?\ 131}#
-                                                                  #{name\ 
537}#))
-                                                              #{tmp\ 535}#)
+                                                                  #{name\ 
819}#))
+                                                              #{tmp\ 817}#)
                                                        #f)
-                                                   (apply (lambda (#{_\ 539}#
-                                                                   #{name\ 
540}#
-                                                                   #{val\ 
541}#)
+                                                   (apply (lambda (#{_\ 821}#
+                                                                   #{name\ 
822}#
+                                                                   #{val\ 
823}#)
                                                             (values
                                                               'define-form
-                                                              #{name\ 540}#
-                                                              #{val\ 541}#
-                                                              #{w\ 517}#
-                                                              #{s\ 518}#
-                                                              #{mod\ 520}#))
-                                                          #{tmp\ 535}#)
-                                                   ((lambda (#{tmp\ 542}#)
-                                                      (if (if #{tmp\ 542}#
-                                                            (apply (lambda 
(#{_\ 543}#
-                                                                            
#{name\ 544}#
-                                                                            
#{args\ 545}#
-                                                                            
#{e1\ 546}#
-                                                                            
#{e2\ 547}#)
+                                                              #{name\ 822}#
+                                                              #{val\ 823}#
+                                                              #{w\ 799}#
+                                                              #{s\ 800}#
+                                                              #{mod\ 802}#))
+                                                          #{tmp\ 817}#)
+                                                   ((lambda (#{tmp\ 824}#)
+                                                      (if (if #{tmp\ 824}#
+                                                            (apply (lambda 
(#{_\ 825}#
+                                                                            
#{name\ 826}#
+                                                                            
#{args\ 827}#
+                                                                            
#{e1\ 828}#
+                                                                            
#{e2\ 829}#)
                                                                      (if 
(#{id?\ 131}#
-                                                                           
#{name\ 544}#)
+                                                                           
#{name\ 826}#)
                                                                        
(#{valid-bound-ids?\ 156}#
-                                                                         
(#{lambda-var-list\ 178}#
-                                                                           
#{args\ 545}#))
+                                                                         
(#{lambda-var-list\ 182}#
+                                                                           
#{args\ 827}#))
                                                                        #f))
-                                                                   #{tmp\ 
542}#)
+                                                                   #{tmp\ 
824}#)
                                                             #f)
-                                                        (apply (lambda (#{_\ 
548}#
-                                                                        
#{name\ 549}#
-                                                                        
#{args\ 550}#
-                                                                        #{e1\ 
551}#
-                                                                        #{e2\ 
552}#)
+                                                        (apply (lambda (#{_\ 
830}#
+                                                                        
#{name\ 831}#
+                                                                        
#{args\ 832}#
+                                                                        #{e1\ 
833}#
+                                                                        #{e2\ 
834}#)
                                                                  (values
                                                                    'define-form
                                                                    (#{wrap\ 
159}#
-                                                                     #{name\ 
549}#
-                                                                     #{w\ 517}#
-                                                                     #{mod\ 
520}#)
+                                                                     #{name\ 
831}#
+                                                                     #{w\ 799}#
+                                                                     #{mod\ 
802}#)
                                                                    
(#{decorate-source\ 94}#
                                                                      (cons 
'#(syntax-object
                                                                               
lambda
@@ -1781,6 +3620,10 @@
                                                                                
  (lambda-var-list
                                                                                
    gen-var
                                                                                
    strip
+                                                                               
    chi-lambda-case
+                                                                               
    lambda*-formals
+                                                                               
    chi-simple-lambda
+                                                                               
    lambda-formals
                                                                                
    ellipsis?
                                                                                
    chi-void
                                                                                
    eval-local-transformer
@@ -2003,6 +3846,10 @@
                                                                                
   (top)
                                                                                
   (top)
                                                                                
   (top)
+                                                                               
   (top)
+                                                                               
   (top)
+                                                                               
   (top)
+                                                                               
   (top)
                                                                                
   (top))
                                                                                
  ("i"
                                                                                
   "i"
@@ -2116,6 +3963,10 @@
                                                                                
   "i"
                                                                                
   "i"
                                                                                
   "i"
+                                                                               
   "i"
+                                                                               
   "i"
+                                                                               
   "i"
+                                                                               
   "i"
                                                                                
   "i"))
                                                                                
#(ribcage
                                                                                
  (define-structure
@@ -2127,32 +3978,32 @@
                                                                               
(hygiene
                                                                                
 guile))
                                                                            
(#{wrap\ 159}#
-                                                                             
(cons #{args\ 550}#
-                                                                               
    (cons #{e1\ 551}#
-                                                                               
          #{e2\ 552}#))
-                                                                             
#{w\ 517}#
-                                                                             
#{mod\ 520}#))
-                                                                     #{s\ 
518}#)
+                                                                             
(cons #{args\ 832}#
+                                                                               
    (cons #{e1\ 833}#
+                                                                               
          #{e2\ 834}#))
+                                                                             
#{w\ 799}#
+                                                                             
#{mod\ 802}#))
+                                                                     #{s\ 
800}#)
                                                                    '(())
-                                                                   #{s\ 518}#
-                                                                   #{mod\ 
520}#))
-                                                               #{tmp\ 542}#)
-                                                        ((lambda (#{tmp\ 554}#)
-                                                           (if (if #{tmp\ 554}#
-                                                                 (apply 
(lambda (#{_\ 555}#
-                                                                               
  #{name\ 556}#)
+                                                                   #{s\ 800}#
+                                                                   #{mod\ 
802}#))
+                                                               #{tmp\ 824}#)
+                                                        ((lambda (#{tmp\ 836}#)
+                                                           (if (if #{tmp\ 836}#
+                                                                 (apply 
(lambda (#{_\ 837}#
+                                                                               
  #{name\ 838}#)
                                                                           
(#{id?\ 131}#
-                                                                            
#{name\ 556}#))
-                                                                        #{tmp\ 
554}#)
+                                                                            
#{name\ 838}#))
+                                                                        #{tmp\ 
836}#)
                                                                  #f)
-                                                             (apply (lambda 
(#{_\ 557}#
-                                                                             
#{name\ 558}#)
+                                                             (apply (lambda 
(#{_\ 839}#
+                                                                             
#{name\ 840}#)
                                                                       (values
                                                                         
'define-form
                                                                         
(#{wrap\ 159}#
-                                                                          
#{name\ 558}#
-                                                                          #{w\ 
517}#
-                                                                          
#{mod\ 520}#)
+                                                                          
#{name\ 840}#
+                                                                          #{w\ 
799}#
+                                                                          
#{mod\ 802}#)
                                                                         
'(#(syntax-object
                                                                             if
                                                                             
((top)
@@ -2236,6 +4087,10 @@
                                                                                
(lambda-var-list
                                                                                
  gen-var
                                                                                
  strip
+                                                                               
  chi-lambda-case
+                                                                               
  lambda*-formals
+                                                                               
  chi-simple-lambda
+                                                                               
  lambda-formals
                                                                                
  ellipsis?
                                                                                
  chi-void
                                                                                
  eval-local-transformer
@@ -2458,6 +4313,10 @@
                                                                                
 (top)
                                                                                
 (top)
                                                                                
 (top)
+                                                                               
 (top)
+                                                                               
 (top)
+                                                                               
 (top)
+                                                                               
 (top)
                                                                                
 (top))
                                                                                
("i"
                                                                                
 "i"
@@ -2571,6 +4430,10 @@
                                                                                
 "i"
                                                                                
 "i"
                                                                                
 "i"
+                                                                               
 "i"
+                                                                               
 "i"
+                                                                               
 "i"
+                                                                               
 "i"
                                                                                
 "i"))
                                                                              
#(ribcage
                                                                                
(define-structure
@@ -2664,6 +4527,10 @@
                                                                                
(lambda-var-list
                                                                                
  gen-var
                                                                                
  strip
+                                                                               
  chi-lambda-case
+                                                                               
  lambda*-formals
+                                                                               
  chi-simple-lambda
+                                                                               
  lambda-formals
                                                                                
  ellipsis?
                                                                                
  chi-void
                                                                                
  eval-local-transformer
@@ -2886,6 +4753,10 @@
                                                                                
 (top)
                                                                                
 (top)
                                                                                
 (top)
+                                                                               
 (top)
+                                                                               
 (top)
+                                                                               
 (top)
+                                                                               
 (top)
                                                                                
 (top))
                                                                                
("i"
                                                                                
 "i"
@@ -2999,6 +4870,10 @@
                                                                                
 "i"
                                                                                
 "i"
                                                                                
 "i"
+                                                                               
 "i"
+                                                                               
 "i"
+                                                                               
 "i"
+                                                                               
 "i"
                                                                                
 "i"))
                                                                              
#(ribcage
                                                                                
(define-structure
@@ -3092,6 +4967,10 @@
                                                                                
(lambda-var-list
                                                                                
  gen-var
                                                                                
  strip
+                                                                               
  chi-lambda-case
+                                                                               
  lambda*-formals
+                                                                               
  chi-simple-lambda
+                                                                               
  lambda-formals
                                                                                
  ellipsis?
                                                                                
  chi-void
                                                                                
  eval-local-transformer
@@ -3314,6 +5193,10 @@
                                                                                
 (top)
                                                                                
 (top)
                                                                                
 (top)
+                                                                               
 (top)
+                                                                               
 (top)
+                                                                               
 (top)
+                                                                               
 (top)
                                                                                
 (top))
                                                                                
("i"
                                                                                
 "i"
@@ -3427,6 +5310,10 @@
                                                                                
 "i"
                                                                                
 "i"
                                                                                
 "i"
+                                                                               
 "i"
+                                                                               
 "i"
+                                                                               
 "i"
+                                                                               
 "i"
                                                                                
 "i"))
                                                                              
#(ribcage
                                                                                
(define-structure
@@ -3438,102 +5325,102 @@
                                                                             
(hygiene
                                                                               
guile)))
                                                                         '(())
-                                                                        #{s\ 
518}#
-                                                                        #{mod\ 
520}#))
-                                                                    #{tmp\ 
554}#)
+                                                                        #{s\ 
800}#
+                                                                        #{mod\ 
802}#))
+                                                                    #{tmp\ 
836}#)
                                                              (syntax-violation
                                                                #f
                                                                "source 
expression failed to match any pattern"
-                                                               #{tmp\ 534}#)))
+                                                               #{tmp\ 816}#)))
                                                          ($sc-dispatch
-                                                           #{tmp\ 534}#
+                                                           #{tmp\ 816}#
                                                            '(any any)))))
                                                     ($sc-dispatch
-                                                      #{tmp\ 534}#
+                                                      #{tmp\ 816}#
                                                       '(any (any . any)
                                                             any
                                                             .
                                                             each-any)))))
                                                ($sc-dispatch
-                                                 #{tmp\ 534}#
+                                                 #{tmp\ 816}#
                                                  '(any any any))))
-                                            #{e\ 515}#)
-                                           (if (memv #{ftype\ 526}#
+                                            #{e\ 797}#)
+                                           (if (memv #{ftype\ 808}#
                                                      '(define-syntax))
-                                             ((lambda (#{tmp\ 559}#)
-                                                ((lambda (#{tmp\ 560}#)
-                                                   (if (if #{tmp\ 560}#
-                                                         (apply (lambda (#{_\ 
561}#
-                                                                         
#{name\ 562}#
-                                                                         
#{val\ 563}#)
+                                             ((lambda (#{tmp\ 841}#)
+                                                ((lambda (#{tmp\ 842}#)
+                                                   (if (if #{tmp\ 842}#
+                                                         (apply (lambda (#{_\ 
843}#
+                                                                         
#{name\ 844}#
+                                                                         
#{val\ 845}#)
                                                                   (#{id?\ 131}#
-                                                                    #{name\ 
562}#))
-                                                                #{tmp\ 560}#)
+                                                                    #{name\ 
844}#))
+                                                                #{tmp\ 842}#)
                                                          #f)
-                                                     (apply (lambda (#{_\ 564}#
-                                                                     #{name\ 
565}#
-                                                                     #{val\ 
566}#)
+                                                     (apply (lambda (#{_\ 846}#
+                                                                     #{name\ 
847}#
+                                                                     #{val\ 
848}#)
                                                               (values
                                                                 
'define-syntax-form
-                                                                #{name\ 565}#
-                                                                #{val\ 566}#
-                                                                #{w\ 517}#
-                                                                #{s\ 518}#
-                                                                #{mod\ 520}#))
-                                                            #{tmp\ 560}#)
+                                                                #{name\ 847}#
+                                                                #{val\ 848}#
+                                                                #{w\ 799}#
+                                                                #{s\ 800}#
+                                                                #{mod\ 802}#))
+                                                            #{tmp\ 842}#)
                                                      (syntax-violation
                                                        #f
                                                        "source expression 
failed to match any pattern"
-                                                       #{tmp\ 559}#)))
+                                                       #{tmp\ 841}#)))
                                                  ($sc-dispatch
-                                                   #{tmp\ 559}#
+                                                   #{tmp\ 841}#
                                                    '(any any any))))
-                                              #{e\ 515}#)
+                                              #{e\ 797}#)
                                              (values
                                                'call
                                                #f
-                                               #{e\ 515}#
-                                               #{w\ 517}#
-                                               #{s\ 518}#
-                                               #{mod\ 520}#))))))))))))))
-                   (if (#{syntax-object?\ 115}# #{e\ 515}#)
+                                               #{e\ 797}#
+                                               #{w\ 799}#
+                                               #{s\ 800}#
+                                               #{mod\ 802}#))))))))))))))
+                   (if (#{syntax-object?\ 115}# #{e\ 797}#)
                      (#{syntax-type\ 165}#
-                       (#{syntax-object-expression\ 116}# #{e\ 515}#)
-                       #{r\ 516}#
+                       (#{syntax-object-expression\ 116}# #{e\ 797}#)
+                       #{r\ 798}#
                        (#{join-wraps\ 150}#
-                         #{w\ 517}#
-                         (#{syntax-object-wrap\ 117}# #{e\ 515}#))
-                       #{s\ 518}#
-                       #{rib\ 519}#
-                       (let ((#{t\ 567}# (#{syntax-object-module\ 118}#
-                                           #{e\ 515}#)))
-                         (if #{t\ 567}# #{t\ 567}# #{mod\ 520}#))
-                       #{for-car?\ 521}#)
-                     (if (self-evaluating? #{e\ 515}#)
+                         #{w\ 799}#
+                         (#{syntax-object-wrap\ 117}# #{e\ 797}#))
+                       #{s\ 800}#
+                       #{rib\ 801}#
+                       (let ((#{t\ 849}# (#{syntax-object-module\ 118}#
+                                           #{e\ 797}#)))
+                         (if #{t\ 849}# #{t\ 849}# #{mod\ 802}#))
+                       #{for-car?\ 803}#)
+                     (if (self-evaluating? #{e\ 797}#)
                        (values
                          'constant
                          #f
-                         #{e\ 515}#
-                         #{w\ 517}#
-                         #{s\ 518}#
-                         #{mod\ 520}#)
+                         #{e\ 797}#
+                         #{w\ 799}#
+                         #{s\ 800}#
+                         #{mod\ 802}#)
                        (values
                          'other
                          #f
-                         #{e\ 515}#
-                         #{w\ 517}#
-                         #{s\ 518}#
-                         #{mod\ 520}#)))))))
+                         #{e\ 797}#
+                         #{w\ 799}#
+                         #{s\ 800}#
+                         #{mod\ 802}#)))))))
            (#{chi-when-list\ 164}#
-             (lambda (#{e\ 568}# #{when-list\ 569}# #{w\ 570}#)
-               (letrec ((#{f\ 571}# (lambda (#{when-list\ 572}#
-                                             #{situations\ 573}#)
-                                      (if (null? #{when-list\ 572}#)
-                                        #{situations\ 573}#
-                                        (#{f\ 571}# (cdr #{when-list\ 572}#)
-                                                    (cons (let ((#{x\ 574}# 
(car #{when-list\ 572}#)))
+             (lambda (#{e\ 850}# #{when-list\ 851}# #{w\ 852}#)
+               (letrec ((#{f\ 853}# (lambda (#{when-list\ 854}#
+                                             #{situations\ 855}#)
+                                      (if (null? #{when-list\ 854}#)
+                                        #{situations\ 855}#
+                                        (#{f\ 853}# (cdr #{when-list\ 854}#)
+                                                    (cons (let ((#{x\ 856}# 
(car #{when-list\ 854}#)))
                                                             (if (#{free-id=?\ 
154}#
-                                                                  #{x\ 574}#
+                                                                  #{x\ 856}#
                                                                   
'#(syntax-object
                                                                      compile
                                                                      ((top)
@@ -3585,6 +5472,10 @@
                                                                         
(lambda-var-list
                                                                           
gen-var
                                                                           strip
+                                                                          
chi-lambda-case
+                                                                          
lambda*-formals
+                                                                          
chi-simple-lambda
+                                                                          
lambda-formals
                                                                           
ellipsis?
                                                                           
chi-void
                                                                           
eval-local-transformer
@@ -3807,6 +5698,10 @@
                                                                          (top)
                                                                          (top)
                                                                          (top)
+                                                                         (top)
+                                                                         (top)
+                                                                         (top)
+                                                                         (top)
                                                                          (top))
                                                                         ("i"
                                                                          "i"
@@ -3920,6 +5815,10 @@
                                                                          "i"
                                                                          "i"
                                                                          "i"
+                                                                         "i"
+                                                                         "i"
+                                                                         "i"
+                                                                         "i"
                                                                          "i"))
                                                                       #(ribcage
                                                                         
(define-structure
@@ -3932,7 +5831,7 @@
                                                                        guile)))
                                                               'compile
                                                               (if 
(#{free-id=?\ 154}#
-                                                                    #{x\ 574}#
+                                                                    #{x\ 856}#
                                                                     
'#(syntax-object
                                                                        load
                                                                        ((top)
@@ -3984,6 +5883,10 @@
                                                                           
(lambda-var-list
                                                                             
gen-var
                                                                             
strip
+                                                                            
chi-lambda-case
+                                                                            
lambda*-formals
+                                                                            
chi-simple-lambda
+                                                                            
lambda-formals
                                                                             
ellipsis?
                                                                             
chi-void
                                                                             
eval-local-transformer
@@ -4206,6 +6109,10 @@
                                                                            
(top)
                                                                            
(top)
                                                                            
(top)
+                                                                           
(top)
+                                                                           
(top)
+                                                                           
(top)
+                                                                           
(top)
                                                                            
(top))
                                                                           ("i"
                                                                            "i"
@@ -4319,6 +6226,10 @@
                                                                            "i"
                                                                            "i"
                                                                            "i"
+                                                                           "i"
+                                                                           "i"
+                                                                           "i"
+                                                                           "i"
                                                                            
"i"))
                                                                         
#(ribcage
                                                                           
(define-structure
@@ -4331,7 +6242,7 @@
                                                                          
guile)))
                                                                 'load
                                                                 (if 
(#{free-id=?\ 154}#
-                                                                      #{x\ 
574}#
+                                                                      #{x\ 
856}#
                                                                       
'#(syntax-object
                                                                          eval
                                                                          ((top)
@@ -4383,6 +6294,10 @@
                                                                             
(lambda-var-list
                                                                               
gen-var
                                                                               
strip
+                                                                              
chi-lambda-case
+                                                                              
lambda*-formals
+                                                                              
chi-simple-lambda
+                                                                              
lambda-formals
                                                                               
ellipsis?
                                                                               
chi-void
                                                                               
eval-local-transformer
@@ -4605,6 +6520,10 @@
                                                                              
(top)
                                                                              
(top)
                                                                              
(top)
+                                                                             
(top)
+                                                                             
(top)
+                                                                             
(top)
+                                                                             
(top)
                                                                              
(top))
                                                                             
("i"
                                                                              
"i"
@@ -4718,6 +6637,10 @@
                                                                              
"i"
                                                                              
"i"
                                                                              
"i"
+                                                                             
"i"
+                                                                             
"i"
+                                                                             
"i"
+                                                                             
"i"
                                                                              
"i"))
                                                                           
#(ribcage
                                                                             
(define-structure
@@ -4732,25 +6655,25 @@
                                                                   
(syntax-violation
                                                                     'eval-when
                                                                     "invalid 
situation"
-                                                                    #{e\ 568}#
+                                                                    #{e\ 850}#
                                                                     (#{wrap\ 
159}#
-                                                                      #{x\ 
574}#
-                                                                      #{w\ 
570}#
+                                                                      #{x\ 
856}#
+                                                                      #{w\ 
852}#
                                                                       #f))))))
-                                                          #{situations\ 
573}#))))))
-                 (#{f\ 571}# #{when-list\ 569}# (quote ())))))
+                                                          #{situations\ 
855}#))))))
+                 (#{f\ 853}# #{when-list\ 851}# (quote ())))))
            (#{chi-install-global\ 163}#
-             (lambda (#{name\ 575}# #{e\ 576}#)
+             (lambda (#{name\ 857}# #{e\ 858}#)
                (#{build-global-definition\ 104}#
                  #f
-                 #{name\ 575}#
-                 (if (let ((#{v\ 577}# (module-variable
+                 #{name\ 857}#
+                 (if (let ((#{v\ 859}# (module-variable
                                          (current-module)
-                                         #{name\ 575}#)))
-                       (if #{v\ 577}#
-                         (if (variable-bound? #{v\ 577}#)
-                           (if (macro? (variable-ref #{v\ 577}#))
-                             (not (eq? (macro-type (variable-ref #{v\ 577}#))
+                                         #{name\ 857}#)))
+                       (if #{v\ 859}#
+                         (if (variable-bound? #{v\ 859}#)
+                           (if (macro? (variable-ref #{v\ 859}#))
+                             (not (eq? (macro-type (variable-ref #{v\ 859}#))
                                        'syncase-macro))
                              #f)
                            #f)
@@ -4769,831 +6692,830 @@
                                        #f
                                        'current-module)
                                      '())
-                                   (#{build-data\ 109}# #f #{name\ 575}#)))
+                                   (#{build-data\ 109}# #f #{name\ 857}#)))
                            (#{build-data\ 109}# #f (quote macro))
-                           #{e\ 576}#))
+                           #{e\ 858}#))
                    (#{build-application\ 96}#
                      #f
                      (#{build-primref\ 108}#
                        #f
                        'make-syncase-macro)
                      (list (#{build-data\ 109}# #f (quote macro))
-                           #{e\ 576}#))))))
+                           #{e\ 858}#))))))
            (#{chi-top-sequence\ 162}#
-             (lambda (#{body\ 578}#
-                      #{r\ 579}#
-                      #{w\ 580}#
-                      #{s\ 581}#
-                      #{m\ 582}#
-                      #{esew\ 583}#
-                      #{mod\ 584}#)
+             (lambda (#{body\ 860}#
+                      #{r\ 861}#
+                      #{w\ 862}#
+                      #{s\ 863}#
+                      #{m\ 864}#
+                      #{esew\ 865}#
+                      #{mod\ 866}#)
                (#{build-sequence\ 110}#
-                 #{s\ 581}#
-                 (letrec ((#{dobody\ 585}#
-                            (lambda (#{body\ 586}#
-                                     #{r\ 587}#
-                                     #{w\ 588}#
-                                     #{m\ 589}#
-                                     #{esew\ 590}#
-                                     #{mod\ 591}#)
-                              (if (null? #{body\ 586}#)
+                 #{s\ 863}#
+                 (letrec ((#{dobody\ 867}#
+                            (lambda (#{body\ 868}#
+                                     #{r\ 869}#
+                                     #{w\ 870}#
+                                     #{m\ 871}#
+                                     #{esew\ 872}#
+                                     #{mod\ 873}#)
+                              (if (null? #{body\ 868}#)
                                 '()
-                                (let ((#{first\ 592}#
+                                (let ((#{first\ 874}#
                                         (#{chi-top\ 166}#
-                                          (car #{body\ 586}#)
-                                          #{r\ 587}#
-                                          #{w\ 588}#
-                                          #{m\ 589}#
-                                          #{esew\ 590}#
-                                          #{mod\ 591}#)))
-                                  (cons #{first\ 592}#
-                                        (#{dobody\ 585}#
-                                          (cdr #{body\ 586}#)
-                                          #{r\ 587}#
-                                          #{w\ 588}#
-                                          #{m\ 589}#
-                                          #{esew\ 590}#
-                                          #{mod\ 591}#)))))))
-                   (#{dobody\ 585}#
-                     #{body\ 578}#
-                     #{r\ 579}#
-                     #{w\ 580}#
-                     #{m\ 582}#
-                     #{esew\ 583}#
-                     #{mod\ 584}#)))))
+                                          (car #{body\ 868}#)
+                                          #{r\ 869}#
+                                          #{w\ 870}#
+                                          #{m\ 871}#
+                                          #{esew\ 872}#
+                                          #{mod\ 873}#)))
+                                  (cons #{first\ 874}#
+                                        (#{dobody\ 867}#
+                                          (cdr #{body\ 868}#)
+                                          #{r\ 869}#
+                                          #{w\ 870}#
+                                          #{m\ 871}#
+                                          #{esew\ 872}#
+                                          #{mod\ 873}#)))))))
+                   (#{dobody\ 867}#
+                     #{body\ 860}#
+                     #{r\ 861}#
+                     #{w\ 862}#
+                     #{m\ 864}#
+                     #{esew\ 865}#
+                     #{mod\ 866}#)))))
            (#{chi-sequence\ 161}#
-             (lambda (#{body\ 593}#
-                      #{r\ 594}#
-                      #{w\ 595}#
-                      #{s\ 596}#
-                      #{mod\ 597}#)
+             (lambda (#{body\ 875}#
+                      #{r\ 876}#
+                      #{w\ 877}#
+                      #{s\ 878}#
+                      #{mod\ 879}#)
                (#{build-sequence\ 110}#
-                 #{s\ 596}#
-                 (letrec ((#{dobody\ 598}#
-                            (lambda (#{body\ 599}#
-                                     #{r\ 600}#
-                                     #{w\ 601}#
-                                     #{mod\ 602}#)
-                              (if (null? #{body\ 599}#)
+                 #{s\ 878}#
+                 (letrec ((#{dobody\ 880}#
+                            (lambda (#{body\ 881}#
+                                     #{r\ 882}#
+                                     #{w\ 883}#
+                                     #{mod\ 884}#)
+                              (if (null? #{body\ 881}#)
                                 '()
-                                (let ((#{first\ 603}#
+                                (let ((#{first\ 885}#
                                         (#{chi\ 167}#
-                                          (car #{body\ 599}#)
-                                          #{r\ 600}#
-                                          #{w\ 601}#
-                                          #{mod\ 602}#)))
-                                  (cons #{first\ 603}#
-                                        (#{dobody\ 598}#
-                                          (cdr #{body\ 599}#)
-                                          #{r\ 600}#
-                                          #{w\ 601}#
-                                          #{mod\ 602}#)))))))
-                   (#{dobody\ 598}#
-                     #{body\ 593}#
-                     #{r\ 594}#
-                     #{w\ 595}#
-                     #{mod\ 597}#)))))
+                                          (car #{body\ 881}#)
+                                          #{r\ 882}#
+                                          #{w\ 883}#
+                                          #{mod\ 884}#)))
+                                  (cons #{first\ 885}#
+                                        (#{dobody\ 880}#
+                                          (cdr #{body\ 881}#)
+                                          #{r\ 882}#
+                                          #{w\ 883}#
+                                          #{mod\ 884}#)))))))
+                   (#{dobody\ 880}#
+                     #{body\ 875}#
+                     #{r\ 876}#
+                     #{w\ 877}#
+                     #{mod\ 879}#)))))
            (#{source-wrap\ 160}#
-             (lambda (#{x\ 604}#
-                      #{w\ 605}#
-                      #{s\ 606}#
-                      #{defmod\ 607}#)
+             (lambda (#{x\ 886}#
+                      #{w\ 887}#
+                      #{s\ 888}#
+                      #{defmod\ 889}#)
                (#{wrap\ 159}#
-                 (#{decorate-source\ 94}# #{x\ 604}# #{s\ 606}#)
-                 #{w\ 605}#
-                 #{defmod\ 607}#)))
+                 (#{decorate-source\ 94}# #{x\ 886}# #{s\ 888}#)
+                 #{w\ 887}#
+                 #{defmod\ 889}#)))
            (#{wrap\ 159}#
-             (lambda (#{x\ 608}# #{w\ 609}# #{defmod\ 610}#)
-               (if (if (null? (#{wrap-marks\ 134}# #{w\ 609}#))
-                     (null? (#{wrap-subst\ 135}# #{w\ 609}#))
+             (lambda (#{x\ 890}# #{w\ 891}# #{defmod\ 892}#)
+               (if (if (null? (#{wrap-marks\ 134}# #{w\ 891}#))
+                     (null? (#{wrap-subst\ 135}# #{w\ 891}#))
                      #f)
-                 #{x\ 608}#
-                 (if (#{syntax-object?\ 115}# #{x\ 608}#)
+                 #{x\ 890}#
+                 (if (#{syntax-object?\ 115}# #{x\ 890}#)
                    (#{make-syntax-object\ 114}#
-                     (#{syntax-object-expression\ 116}# #{x\ 608}#)
+                     (#{syntax-object-expression\ 116}# #{x\ 890}#)
                      (#{join-wraps\ 150}#
-                       #{w\ 609}#
-                       (#{syntax-object-wrap\ 117}# #{x\ 608}#))
-                     (#{syntax-object-module\ 118}# #{x\ 608}#))
-                   (if (null? #{x\ 608}#)
-                     #{x\ 608}#
+                       #{w\ 891}#
+                       (#{syntax-object-wrap\ 117}# #{x\ 890}#))
+                     (#{syntax-object-module\ 118}# #{x\ 890}#))
+                   (if (null? #{x\ 890}#)
+                     #{x\ 890}#
                      (#{make-syntax-object\ 114}#
-                       #{x\ 608}#
-                       #{w\ 609}#
-                       #{defmod\ 610}#))))))
+                       #{x\ 890}#
+                       #{w\ 891}#
+                       #{defmod\ 892}#))))))
            (#{bound-id-member?\ 158}#
-             (lambda (#{x\ 611}# #{list\ 612}#)
-               (if (not (null? #{list\ 612}#))
-                 (let ((#{t\ 613}# (#{bound-id=?\ 155}#
-                                     #{x\ 611}#
-                                     (car #{list\ 612}#))))
-                   (if #{t\ 613}#
-                     #{t\ 613}#
+             (lambda (#{x\ 893}# #{list\ 894}#)
+               (if (not (null? #{list\ 894}#))
+                 (let ((#{t\ 895}# (#{bound-id=?\ 155}#
+                                     #{x\ 893}#
+                                     (car #{list\ 894}#))))
+                   (if #{t\ 895}#
+                     #{t\ 895}#
                      (#{bound-id-member?\ 158}#
-                       #{x\ 611}#
-                       (cdr #{list\ 612}#))))
+                       #{x\ 893}#
+                       (cdr #{list\ 894}#))))
                  #f)))
            (#{distinct-bound-ids?\ 157}#
-             (lambda (#{ids\ 614}#)
-               (letrec ((#{distinct?\ 615}#
-                          (lambda (#{ids\ 616}#)
-                            (let ((#{t\ 617}# (null? #{ids\ 616}#)))
-                              (if #{t\ 617}#
-                                #{t\ 617}#
+             (lambda (#{ids\ 896}#)
+               (letrec ((#{distinct?\ 897}#
+                          (lambda (#{ids\ 898}#)
+                            (let ((#{t\ 899}# (null? #{ids\ 898}#)))
+                              (if #{t\ 899}#
+                                #{t\ 899}#
                                 (if (not (#{bound-id-member?\ 158}#
-                                           (car #{ids\ 616}#)
-                                           (cdr #{ids\ 616}#)))
-                                  (#{distinct?\ 615}# (cdr #{ids\ 616}#))
+                                           (car #{ids\ 898}#)
+                                           (cdr #{ids\ 898}#)))
+                                  (#{distinct?\ 897}# (cdr #{ids\ 898}#))
                                   #f))))))
-                 (#{distinct?\ 615}# #{ids\ 614}#))))
+                 (#{distinct?\ 897}# #{ids\ 896}#))))
            (#{valid-bound-ids?\ 156}#
-             (lambda (#{ids\ 618}#)
-               (if (letrec ((#{all-ids?\ 619}#
-                              (lambda (#{ids\ 620}#)
-                                (let ((#{t\ 621}# (null? #{ids\ 620}#)))
-                                  (if #{t\ 621}#
-                                    #{t\ 621}#
-                                    (if (#{id?\ 131}# (car #{ids\ 620}#))
-                                      (#{all-ids?\ 619}# (cdr #{ids\ 620}#))
+             (lambda (#{ids\ 900}#)
+               (if (letrec ((#{all-ids?\ 901}#
+                              (lambda (#{ids\ 902}#)
+                                (let ((#{t\ 903}# (null? #{ids\ 902}#)))
+                                  (if #{t\ 903}#
+                                    #{t\ 903}#
+                                    (if (#{id?\ 131}# (car #{ids\ 902}#))
+                                      (#{all-ids?\ 901}# (cdr #{ids\ 902}#))
                                       #f))))))
-                     (#{all-ids?\ 619}# #{ids\ 618}#))
-                 (#{distinct-bound-ids?\ 157}# #{ids\ 618}#)
+                     (#{all-ids?\ 901}# #{ids\ 900}#))
+                 (#{distinct-bound-ids?\ 157}# #{ids\ 900}#)
                  #f)))
            (#{bound-id=?\ 155}#
-             (lambda (#{i\ 622}# #{j\ 623}#)
-               (if (if (#{syntax-object?\ 115}# #{i\ 622}#)
-                     (#{syntax-object?\ 115}# #{j\ 623}#)
+             (lambda (#{i\ 904}# #{j\ 905}#)
+               (if (if (#{syntax-object?\ 115}# #{i\ 904}#)
+                     (#{syntax-object?\ 115}# #{j\ 905}#)
                      #f)
-                 (if (eq? (#{syntax-object-expression\ 116}# #{i\ 622}#)
-                          (#{syntax-object-expression\ 116}# #{j\ 623}#))
+                 (if (eq? (#{syntax-object-expression\ 116}# #{i\ 904}#)
+                          (#{syntax-object-expression\ 116}# #{j\ 905}#))
                    (#{same-marks?\ 152}#
                      (#{wrap-marks\ 134}#
-                       (#{syntax-object-wrap\ 117}# #{i\ 622}#))
+                       (#{syntax-object-wrap\ 117}# #{i\ 904}#))
                      (#{wrap-marks\ 134}#
-                       (#{syntax-object-wrap\ 117}# #{j\ 623}#)))
+                       (#{syntax-object-wrap\ 117}# #{j\ 905}#)))
                    #f)
-                 (eq? #{i\ 622}# #{j\ 623}#))))
+                 (eq? #{i\ 904}# #{j\ 905}#))))
            (#{free-id=?\ 154}#
-             (lambda (#{i\ 624}# #{j\ 625}#)
-               (if (eq? (let ((#{x\ 626}# #{i\ 624}#))
-                          (if (#{syntax-object?\ 115}# #{x\ 626}#)
-                            (#{syntax-object-expression\ 116}# #{x\ 626}#)
-                            #{x\ 626}#))
-                        (let ((#{x\ 627}# #{j\ 625}#))
-                          (if (#{syntax-object?\ 115}# #{x\ 627}#)
-                            (#{syntax-object-expression\ 116}# #{x\ 627}#)
-                            #{x\ 627}#)))
-                 (eq? (#{id-var-name\ 153}# #{i\ 624}# (quote (())))
-                      (#{id-var-name\ 153}# #{j\ 625}# (quote (()))))
+             (lambda (#{i\ 906}# #{j\ 907}#)
+               (if (eq? (let ((#{x\ 908}# #{i\ 906}#))
+                          (if (#{syntax-object?\ 115}# #{x\ 908}#)
+                            (#{syntax-object-expression\ 116}# #{x\ 908}#)
+                            #{x\ 908}#))
+                        (let ((#{x\ 909}# #{j\ 907}#))
+                          (if (#{syntax-object?\ 115}# #{x\ 909}#)
+                            (#{syntax-object-expression\ 116}# #{x\ 909}#)
+                            #{x\ 909}#)))
+                 (eq? (#{id-var-name\ 153}# #{i\ 906}# (quote (())))
+                      (#{id-var-name\ 153}# #{j\ 907}# (quote (()))))
                  #f)))
            (#{id-var-name\ 153}#
-             (lambda (#{id\ 628}# #{w\ 629}#)
-               (letrec ((#{search-vector-rib\ 632}#
-                          (lambda (#{sym\ 638}#
-                                   #{subst\ 639}#
-                                   #{marks\ 640}#
-                                   #{symnames\ 641}#
-                                   #{ribcage\ 642}#)
-                            (let ((#{n\ 643}# (vector-length
-                                                #{symnames\ 641}#)))
-                              (letrec ((#{f\ 644}# (lambda (#{i\ 645}#)
+             (lambda (#{id\ 910}# #{w\ 911}#)
+               (letrec ((#{search-vector-rib\ 914}#
+                          (lambda (#{sym\ 920}#
+                                   #{subst\ 921}#
+                                   #{marks\ 922}#
+                                   #{symnames\ 923}#
+                                   #{ribcage\ 924}#)
+                            (let ((#{n\ 925}# (vector-length
+                                                #{symnames\ 923}#)))
+                              (letrec ((#{f\ 926}# (lambda (#{i\ 927}#)
                                                      (if (#{fx=\ 88}#
-                                                           #{i\ 645}#
-                                                           #{n\ 643}#)
-                                                       (#{search\ 630}#
-                                                         #{sym\ 638}#
-                                                         (cdr #{subst\ 639}#)
-                                                         #{marks\ 640}#)
+                                                           #{i\ 927}#
+                                                           #{n\ 925}#)
+                                                       (#{search\ 912}#
+                                                         #{sym\ 920}#
+                                                         (cdr #{subst\ 921}#)
+                                                         #{marks\ 922}#)
                                                        (if (if (eq? (vector-ref
-                                                                      
#{symnames\ 641}#
-                                                                      #{i\ 
645}#)
-                                                                    #{sym\ 
638}#)
+                                                                      
#{symnames\ 923}#
+                                                                      #{i\ 
927}#)
+                                                                    #{sym\ 
920}#)
                                                              (#{same-marks?\ 
152}#
-                                                               #{marks\ 640}#
+                                                               #{marks\ 922}#
                                                                (vector-ref
                                                                  
(#{ribcage-marks\ 141}#
-                                                                   #{ribcage\ 
642}#)
-                                                                 #{i\ 645}#))
+                                                                   #{ribcage\ 
924}#)
+                                                                 #{i\ 927}#))
                                                              #f)
                                                          (values
                                                            (vector-ref
                                                              
(#{ribcage-labels\ 142}#
-                                                               #{ribcage\ 
642}#)
-                                                             #{i\ 645}#)
-                                                           #{marks\ 640}#)
-                                                         (#{f\ 644}# (#{fx+\ 
86}#
-                                                                       #{i\ 
645}#
+                                                               #{ribcage\ 
924}#)
+                                                             #{i\ 927}#)
+                                                           #{marks\ 922}#)
+                                                         (#{f\ 926}# (#{fx+\ 
86}#
+                                                                       #{i\ 
927}#
                                                                        1)))))))
-                                (#{f\ 644}# 0)))))
-                        (#{search-list-rib\ 631}#
-                          (lambda (#{sym\ 646}#
-                                   #{subst\ 647}#
-                                   #{marks\ 648}#
-                                   #{symnames\ 649}#
-                                   #{ribcage\ 650}#)
-                            (letrec ((#{f\ 651}# (lambda (#{symnames\ 652}#
-                                                          #{i\ 653}#)
-                                                   (if (null? #{symnames\ 
652}#)
-                                                     (#{search\ 630}#
-                                                       #{sym\ 646}#
-                                                       (cdr #{subst\ 647}#)
-                                                       #{marks\ 648}#)
-                                                     (if (if (eq? (car 
#{symnames\ 652}#)
-                                                                  #{sym\ 646}#)
+                                (#{f\ 926}# 0)))))
+                        (#{search-list-rib\ 913}#
+                          (lambda (#{sym\ 928}#
+                                   #{subst\ 929}#
+                                   #{marks\ 930}#
+                                   #{symnames\ 931}#
+                                   #{ribcage\ 932}#)
+                            (letrec ((#{f\ 933}# (lambda (#{symnames\ 934}#
+                                                          #{i\ 935}#)
+                                                   (if (null? #{symnames\ 
934}#)
+                                                     (#{search\ 912}#
+                                                       #{sym\ 928}#
+                                                       (cdr #{subst\ 929}#)
+                                                       #{marks\ 930}#)
+                                                     (if (if (eq? (car 
#{symnames\ 934}#)
+                                                                  #{sym\ 928}#)
                                                            (#{same-marks?\ 
152}#
-                                                             #{marks\ 648}#
+                                                             #{marks\ 930}#
                                                              (list-ref
                                                                
(#{ribcage-marks\ 141}#
-                                                                 #{ribcage\ 
650}#)
-                                                               #{i\ 653}#))
+                                                                 #{ribcage\ 
932}#)
+                                                               #{i\ 935}#))
                                                            #f)
                                                        (values
                                                          (list-ref
                                                            (#{ribcage-labels\ 
142}#
-                                                             #{ribcage\ 650}#)
-                                                           #{i\ 653}#)
-                                                         #{marks\ 648}#)
-                                                       (#{f\ 651}# (cdr 
#{symnames\ 652}#)
+                                                             #{ribcage\ 932}#)
+                                                           #{i\ 935}#)
+                                                         #{marks\ 930}#)
+                                                       (#{f\ 933}# (cdr 
#{symnames\ 934}#)
                                                                    (#{fx+\ 86}#
-                                                                     #{i\ 653}#
+                                                                     #{i\ 935}#
                                                                      1)))))))
-                              (#{f\ 651}# #{symnames\ 649}# 0))))
-                        (#{search\ 630}#
-                          (lambda (#{sym\ 654}# #{subst\ 655}# #{marks\ 656}#)
-                            (if (null? #{subst\ 655}#)
-                              (values #f #{marks\ 656}#)
-                              (let ((#{fst\ 657}# (car #{subst\ 655}#)))
-                                (if (eq? #{fst\ 657}# (quote shift))
-                                  (#{search\ 630}#
-                                    #{sym\ 654}#
-                                    (cdr #{subst\ 655}#)
-                                    (cdr #{marks\ 656}#))
-                                  (let ((#{symnames\ 658}#
+                              (#{f\ 933}# #{symnames\ 931}# 0))))
+                        (#{search\ 912}#
+                          (lambda (#{sym\ 936}# #{subst\ 937}# #{marks\ 938}#)
+                            (if (null? #{subst\ 937}#)
+                              (values #f #{marks\ 938}#)
+                              (let ((#{fst\ 939}# (car #{subst\ 937}#)))
+                                (if (eq? #{fst\ 939}# (quote shift))
+                                  (#{search\ 912}#
+                                    #{sym\ 936}#
+                                    (cdr #{subst\ 937}#)
+                                    (cdr #{marks\ 938}#))
+                                  (let ((#{symnames\ 940}#
                                           (#{ribcage-symnames\ 140}#
-                                            #{fst\ 657}#)))
-                                    (if (vector? #{symnames\ 658}#)
-                                      (#{search-vector-rib\ 632}#
-                                        #{sym\ 654}#
-                                        #{subst\ 655}#
-                                        #{marks\ 656}#
-                                        #{symnames\ 658}#
-                                        #{fst\ 657}#)
-                                      (#{search-list-rib\ 631}#
-                                        #{sym\ 654}#
-                                        #{subst\ 655}#
-                                        #{marks\ 656}#
-                                        #{symnames\ 658}#
-                                        #{fst\ 657}#)))))))))
-                 (if (symbol? #{id\ 628}#)
-                   (let ((#{t\ 659}# (call-with-values
+                                            #{fst\ 939}#)))
+                                    (if (vector? #{symnames\ 940}#)
+                                      (#{search-vector-rib\ 914}#
+                                        #{sym\ 936}#
+                                        #{subst\ 937}#
+                                        #{marks\ 938}#
+                                        #{symnames\ 940}#
+                                        #{fst\ 939}#)
+                                      (#{search-list-rib\ 913}#
+                                        #{sym\ 936}#
+                                        #{subst\ 937}#
+                                        #{marks\ 938}#
+                                        #{symnames\ 940}#
+                                        #{fst\ 939}#)))))))))
+                 (if (symbol? #{id\ 910}#)
+                   (let ((#{t\ 941}# (call-with-values
                                        (lambda ()
-                                         (#{search\ 630}#
-                                           #{id\ 628}#
-                                           (#{wrap-subst\ 135}# #{w\ 629}#)
-                                           (#{wrap-marks\ 134}# #{w\ 629}#)))
-                                       (lambda (#{x\ 660}# . #{ignore\ 661}#)
-                                         #{x\ 660}#))))
-                     (if #{t\ 659}# #{t\ 659}# #{id\ 628}#))
-                   (if (#{syntax-object?\ 115}# #{id\ 628}#)
-                     (let ((#{id\ 662}#
-                             (#{syntax-object-expression\ 116}# #{id\ 628}#))
-                           (#{w1\ 663}#
-                             (#{syntax-object-wrap\ 117}# #{id\ 628}#)))
-                       (let ((#{marks\ 664}#
+                                         (#{search\ 912}#
+                                           #{id\ 910}#
+                                           (#{wrap-subst\ 135}# #{w\ 911}#)
+                                           (#{wrap-marks\ 134}# #{w\ 911}#)))
+                                       (lambda (#{x\ 942}# . #{ignore\ 943}#)
+                                         #{x\ 942}#))))
+                     (if #{t\ 941}# #{t\ 941}# #{id\ 910}#))
+                   (if (#{syntax-object?\ 115}# #{id\ 910}#)
+                     (let ((#{id\ 944}#
+                             (#{syntax-object-expression\ 116}# #{id\ 910}#))
+                           (#{w1\ 945}#
+                             (#{syntax-object-wrap\ 117}# #{id\ 910}#)))
+                       (let ((#{marks\ 946}#
                                (#{join-marks\ 151}#
-                                 (#{wrap-marks\ 134}# #{w\ 629}#)
-                                 (#{wrap-marks\ 134}# #{w1\ 663}#))))
+                                 (#{wrap-marks\ 134}# #{w\ 911}#)
+                                 (#{wrap-marks\ 134}# #{w1\ 945}#))))
                          (call-with-values
                            (lambda ()
-                             (#{search\ 630}#
-                               #{id\ 662}#
-                               (#{wrap-subst\ 135}# #{w\ 629}#)
-                               #{marks\ 664}#))
-                           (lambda (#{new-id\ 665}# #{marks\ 666}#)
-                             (let ((#{t\ 667}# #{new-id\ 665}#))
-                               (if #{t\ 667}#
-                                 #{t\ 667}#
-                                 (let ((#{t\ 668}# (call-with-values
+                             (#{search\ 912}#
+                               #{id\ 944}#
+                               (#{wrap-subst\ 135}# #{w\ 911}#)
+                               #{marks\ 946}#))
+                           (lambda (#{new-id\ 947}# #{marks\ 948}#)
+                             (let ((#{t\ 949}# #{new-id\ 947}#))
+                               (if #{t\ 949}#
+                                 #{t\ 949}#
+                                 (let ((#{t\ 950}# (call-with-values
                                                      (lambda ()
-                                                       (#{search\ 630}#
-                                                         #{id\ 662}#
+                                                       (#{search\ 912}#
+                                                         #{id\ 944}#
                                                          (#{wrap-subst\ 135}#
-                                                           #{w1\ 663}#)
-                                                         #{marks\ 666}#))
-                                                     (lambda (#{x\ 669}#
+                                                           #{w1\ 945}#)
+                                                         #{marks\ 948}#))
+                                                     (lambda (#{x\ 951}#
                                                               .
-                                                              #{ignore\ 670}#)
-                                                       #{x\ 669}#))))
-                                   (if #{t\ 668}#
-                                     #{t\ 668}#
-                                     #{id\ 662}#))))))))
+                                                              #{ignore\ 952}#)
+                                                       #{x\ 951}#))))
+                                   (if #{t\ 950}#
+                                     #{t\ 950}#
+                                     #{id\ 944}#))))))))
                      (syntax-violation
                        'id-var-name
                        "invalid id"
-                       #{id\ 628}#))))))
+                       #{id\ 910}#))))))
            (#{same-marks?\ 152}#
-             (lambda (#{x\ 671}# #{y\ 672}#)
-               (let ((#{t\ 673}# (eq? #{x\ 671}# #{y\ 672}#)))
-                 (if #{t\ 673}#
-                   #{t\ 673}#
-                   (if (not (null? #{x\ 671}#))
-                     (if (not (null? #{y\ 672}#))
-                       (if (eq? (car #{x\ 671}#) (car #{y\ 672}#))
+             (lambda (#{x\ 953}# #{y\ 954}#)
+               (let ((#{t\ 955}# (eq? #{x\ 953}# #{y\ 954}#)))
+                 (if #{t\ 955}#
+                   #{t\ 955}#
+                   (if (not (null? #{x\ 953}#))
+                     (if (not (null? #{y\ 954}#))
+                       (if (eq? (car #{x\ 953}#) (car #{y\ 954}#))
                          (#{same-marks?\ 152}#
-                           (cdr #{x\ 671}#)
-                           (cdr #{y\ 672}#))
+                           (cdr #{x\ 953}#)
+                           (cdr #{y\ 954}#))
                          #f)
                        #f)
                      #f)))))
            (#{join-marks\ 151}#
-             (lambda (#{m1\ 674}# #{m2\ 675}#)
-               (#{smart-append\ 149}# #{m1\ 674}# #{m2\ 675}#)))
+             (lambda (#{m1\ 956}# #{m2\ 957}#)
+               (#{smart-append\ 149}# #{m1\ 956}# #{m2\ 957}#)))
            (#{join-wraps\ 150}#
-             (lambda (#{w1\ 676}# #{w2\ 677}#)
-               (let ((#{m1\ 678}# (#{wrap-marks\ 134}# #{w1\ 676}#))
-                     (#{s1\ 679}# (#{wrap-subst\ 135}# #{w1\ 676}#)))
-                 (if (null? #{m1\ 678}#)
-                   (if (null? #{s1\ 679}#)
-                     #{w2\ 677}#
+             (lambda (#{w1\ 958}# #{w2\ 959}#)
+               (let ((#{m1\ 960}# (#{wrap-marks\ 134}# #{w1\ 958}#))
+                     (#{s1\ 961}# (#{wrap-subst\ 135}# #{w1\ 958}#)))
+                 (if (null? #{m1\ 960}#)
+                   (if (null? #{s1\ 961}#)
+                     #{w2\ 959}#
                      (#{make-wrap\ 133}#
-                       (#{wrap-marks\ 134}# #{w2\ 677}#)
+                       (#{wrap-marks\ 134}# #{w2\ 959}#)
                        (#{smart-append\ 149}#
-                         #{s1\ 679}#
-                         (#{wrap-subst\ 135}# #{w2\ 677}#))))
+                         #{s1\ 961}#
+                         (#{wrap-subst\ 135}# #{w2\ 959}#))))
                    (#{make-wrap\ 133}#
                      (#{smart-append\ 149}#
-                       #{m1\ 678}#
-                       (#{wrap-marks\ 134}# #{w2\ 677}#))
+                       #{m1\ 960}#
+                       (#{wrap-marks\ 134}# #{w2\ 959}#))
                      (#{smart-append\ 149}#
-                       #{s1\ 679}#
-                       (#{wrap-subst\ 135}# #{w2\ 677}#)))))))
+                       #{s1\ 961}#
+                       (#{wrap-subst\ 135}# #{w2\ 959}#)))))))
            (#{smart-append\ 149}#
-             (lambda (#{m1\ 680}# #{m2\ 681}#)
-               (if (null? #{m2\ 681}#)
-                 #{m1\ 680}#
-                 (append #{m1\ 680}# #{m2\ 681}#))))
+             (lambda (#{m1\ 962}# #{m2\ 963}#)
+               (if (null? #{m2\ 963}#)
+                 #{m1\ 962}#
+                 (append #{m1\ 962}# #{m2\ 963}#))))
            (#{make-binding-wrap\ 148}#
-             (lambda (#{ids\ 682}# #{labels\ 683}# #{w\ 684}#)
-               (if (null? #{ids\ 682}#)
-                 #{w\ 684}#
+             (lambda (#{ids\ 964}# #{labels\ 965}# #{w\ 966}#)
+               (if (null? #{ids\ 964}#)
+                 #{w\ 966}#
                  (#{make-wrap\ 133}#
-                   (#{wrap-marks\ 134}# #{w\ 684}#)
-                   (cons (let ((#{labelvec\ 685}#
-                                 (list->vector #{labels\ 683}#)))
-                           (let ((#{n\ 686}# (vector-length
-                                               #{labelvec\ 685}#)))
-                             (let ((#{symnamevec\ 687}#
-                                     (make-vector #{n\ 686}#))
-                                   (#{marksvec\ 688}#
-                                     (make-vector #{n\ 686}#)))
+                   (#{wrap-marks\ 134}# #{w\ 966}#)
+                   (cons (let ((#{labelvec\ 967}#
+                                 (list->vector #{labels\ 965}#)))
+                           (let ((#{n\ 968}# (vector-length
+                                               #{labelvec\ 967}#)))
+                             (let ((#{symnamevec\ 969}#
+                                     (make-vector #{n\ 968}#))
+                                   (#{marksvec\ 970}#
+                                     (make-vector #{n\ 968}#)))
                                (begin
-                                 (letrec ((#{f\ 689}# (lambda (#{ids\ 690}#
-                                                               #{i\ 691}#)
-                                                        (if (not (null? #{ids\ 
690}#))
+                                 (letrec ((#{f\ 971}# (lambda (#{ids\ 972}#
+                                                               #{i\ 973}#)
+                                                        (if (not (null? #{ids\ 
972}#))
                                                           (call-with-values
                                                             (lambda ()
                                                               
(#{id-sym-name&marks\ 132}#
-                                                                (car #{ids\ 
690}#)
-                                                                #{w\ 684}#))
-                                                            (lambda 
(#{symname\ 692}#
-                                                                     #{marks\ 
693}#)
+                                                                (car #{ids\ 
972}#)
+                                                                #{w\ 966}#))
+                                                            (lambda 
(#{symname\ 974}#
+                                                                     #{marks\ 
975}#)
                                                               (begin
                                                                 (vector-set!
-                                                                  
#{symnamevec\ 687}#
-                                                                  #{i\ 691}#
-                                                                  #{symname\ 
692}#)
+                                                                  
#{symnamevec\ 969}#
+                                                                  #{i\ 973}#
+                                                                  #{symname\ 
974}#)
                                                                 (vector-set!
-                                                                  #{marksvec\ 
688}#
-                                                                  #{i\ 691}#
-                                                                  #{marks\ 
693}#)
-                                                                (#{f\ 689}# 
(cdr #{ids\ 690}#)
+                                                                  #{marksvec\ 
970}#
+                                                                  #{i\ 973}#
+                                                                  #{marks\ 
975}#)
+                                                                (#{f\ 971}# 
(cdr #{ids\ 972}#)
                                                                             
(#{fx+\ 86}#
-                                                                              
#{i\ 691}#
+                                                                              
#{i\ 973}#
                                                                               
1)))))))))
-                                   (#{f\ 689}# #{ids\ 682}# 0))
+                                   (#{f\ 971}# #{ids\ 964}# 0))
                                  (#{make-ribcage\ 138}#
-                                   #{symnamevec\ 687}#
-                                   #{marksvec\ 688}#
-                                   #{labelvec\ 685}#)))))
-                         (#{wrap-subst\ 135}# #{w\ 684}#))))))
+                                   #{symnamevec\ 969}#
+                                   #{marksvec\ 970}#
+                                   #{labelvec\ 967}#)))))
+                         (#{wrap-subst\ 135}# #{w\ 966}#))))))
            (#{extend-ribcage!\ 147}#
-             (lambda (#{ribcage\ 694}# #{id\ 695}# #{label\ 696}#)
+             (lambda (#{ribcage\ 976}# #{id\ 977}# #{label\ 978}#)
                (begin
                  (#{set-ribcage-symnames!\ 143}#
-                   #{ribcage\ 694}#
-                   (cons (#{syntax-object-expression\ 116}# #{id\ 695}#)
-                         (#{ribcage-symnames\ 140}# #{ribcage\ 694}#)))
+                   #{ribcage\ 976}#
+                   (cons (#{syntax-object-expression\ 116}# #{id\ 977}#)
+                         (#{ribcage-symnames\ 140}# #{ribcage\ 976}#)))
                  (#{set-ribcage-marks!\ 144}#
-                   #{ribcage\ 694}#
+                   #{ribcage\ 976}#
                    (cons (#{wrap-marks\ 134}#
-                           (#{syntax-object-wrap\ 117}# #{id\ 695}#))
-                         (#{ribcage-marks\ 141}# #{ribcage\ 694}#)))
+                           (#{syntax-object-wrap\ 117}# #{id\ 977}#))
+                         (#{ribcage-marks\ 141}# #{ribcage\ 976}#)))
                  (#{set-ribcage-labels!\ 145}#
-                   #{ribcage\ 694}#
-                   (cons #{label\ 696}#
-                         (#{ribcage-labels\ 142}# #{ribcage\ 694}#))))))
+                   #{ribcage\ 976}#
+                   (cons #{label\ 978}#
+                         (#{ribcage-labels\ 142}# #{ribcage\ 976}#))))))
            (#{anti-mark\ 146}#
-             (lambda (#{w\ 697}#)
+             (lambda (#{w\ 979}#)
                (#{make-wrap\ 133}#
-                 (cons #f (#{wrap-marks\ 134}# #{w\ 697}#))
+                 (cons #f (#{wrap-marks\ 134}# #{w\ 979}#))
                  (cons 'shift
-                       (#{wrap-subst\ 135}# #{w\ 697}#)))))
+                       (#{wrap-subst\ 135}# #{w\ 979}#)))))
            (#{set-ribcage-labels!\ 145}#
-             (lambda (#{x\ 698}# #{update\ 699}#)
-               (vector-set! #{x\ 698}# 3 #{update\ 699}#)))
+             (lambda (#{x\ 980}# #{update\ 981}#)
+               (vector-set! #{x\ 980}# 3 #{update\ 981}#)))
            (#{set-ribcage-marks!\ 144}#
-             (lambda (#{x\ 700}# #{update\ 701}#)
-               (vector-set! #{x\ 700}# 2 #{update\ 701}#)))
+             (lambda (#{x\ 982}# #{update\ 983}#)
+               (vector-set! #{x\ 982}# 2 #{update\ 983}#)))
            (#{set-ribcage-symnames!\ 143}#
-             (lambda (#{x\ 702}# #{update\ 703}#)
-               (vector-set! #{x\ 702}# 1 #{update\ 703}#)))
+             (lambda (#{x\ 984}# #{update\ 985}#)
+               (vector-set! #{x\ 984}# 1 #{update\ 985}#)))
            (#{ribcage-labels\ 142}#
-             (lambda (#{x\ 704}#) (vector-ref #{x\ 704}# 3)))
+             (lambda (#{x\ 986}#) (vector-ref #{x\ 986}# 3)))
            (#{ribcage-marks\ 141}#
-             (lambda (#{x\ 705}#) (vector-ref #{x\ 705}# 2)))
+             (lambda (#{x\ 987}#) (vector-ref #{x\ 987}# 2)))
            (#{ribcage-symnames\ 140}#
-             (lambda (#{x\ 706}#) (vector-ref #{x\ 706}# 1)))
+             (lambda (#{x\ 988}#) (vector-ref #{x\ 988}# 1)))
            (#{ribcage?\ 139}#
-             (lambda (#{x\ 707}#)
-               (if (vector? #{x\ 707}#)
-                 (if (= (vector-length #{x\ 707}#) 4)
-                   (eq? (vector-ref #{x\ 707}# 0) (quote ribcage))
+             (lambda (#{x\ 989}#)
+               (if (vector? #{x\ 989}#)
+                 (if (= (vector-length #{x\ 989}#) 4)
+                   (eq? (vector-ref #{x\ 989}# 0) (quote ribcage))
                    #f)
                  #f)))
            (#{make-ribcage\ 138}#
-             (lambda (#{symnames\ 708}#
-                      #{marks\ 709}#
-                      #{labels\ 710}#)
+             (lambda (#{symnames\ 990}#
+                      #{marks\ 991}#
+                      #{labels\ 992}#)
                (vector
                  'ribcage
-                 #{symnames\ 708}#
-                 #{marks\ 709}#
-                 #{labels\ 710}#)))
+                 #{symnames\ 990}#
+                 #{marks\ 991}#
+                 #{labels\ 992}#)))
            (#{gen-labels\ 137}#
-             (lambda (#{ls\ 711}#)
-               (if (null? #{ls\ 711}#)
+             (lambda (#{ls\ 993}#)
+               (if (null? #{ls\ 993}#)
                  '()
                  (cons (#{gen-label\ 136}#)
-                       (#{gen-labels\ 137}# (cdr #{ls\ 711}#))))))
+                       (#{gen-labels\ 137}# (cdr #{ls\ 993}#))))))
            (#{gen-label\ 136}# (lambda () (string #\i)))
            (#{wrap-subst\ 135}# cdr)
            (#{wrap-marks\ 134}# car)
            (#{make-wrap\ 133}# cons)
            (#{id-sym-name&marks\ 132}#
-             (lambda (#{x\ 712}# #{w\ 713}#)
-               (if (#{syntax-object?\ 115}# #{x\ 712}#)
+             (lambda (#{x\ 994}# #{w\ 995}#)
+               (if (#{syntax-object?\ 115}# #{x\ 994}#)
                  (values
-                   (#{syntax-object-expression\ 116}# #{x\ 712}#)
+                   (#{syntax-object-expression\ 116}# #{x\ 994}#)
                    (#{join-marks\ 151}#
-                     (#{wrap-marks\ 134}# #{w\ 713}#)
+                     (#{wrap-marks\ 134}# #{w\ 995}#)
                      (#{wrap-marks\ 134}#
-                       (#{syntax-object-wrap\ 117}# #{x\ 712}#))))
+                       (#{syntax-object-wrap\ 117}# #{x\ 994}#))))
                  (values
-                   #{x\ 712}#
-                   (#{wrap-marks\ 134}# #{w\ 713}#)))))
+                   #{x\ 994}#
+                   (#{wrap-marks\ 134}# #{w\ 995}#)))))
            (#{id?\ 131}#
-             (lambda (#{x\ 714}#)
-               (if (symbol? #{x\ 714}#)
+             (lambda (#{x\ 996}#)
+               (if (symbol? #{x\ 996}#)
                  #t
-                 (if (#{syntax-object?\ 115}# #{x\ 714}#)
+                 (if (#{syntax-object?\ 115}# #{x\ 996}#)
                    (symbol?
-                     (#{syntax-object-expression\ 116}# #{x\ 714}#))
+                     (#{syntax-object-expression\ 116}# #{x\ 996}#))
                    #f))))
            (#{nonsymbol-id?\ 130}#
-             (lambda (#{x\ 715}#)
-               (if (#{syntax-object?\ 115}# #{x\ 715}#)
+             (lambda (#{x\ 997}#)
+               (if (#{syntax-object?\ 115}# #{x\ 997}#)
                  (symbol?
-                   (#{syntax-object-expression\ 116}# #{x\ 715}#))
+                   (#{syntax-object-expression\ 116}# #{x\ 997}#))
                  #f)))
            (#{global-extend\ 129}#
-             (lambda (#{type\ 716}# #{sym\ 717}# #{val\ 718}#)
+             (lambda (#{type\ 998}# #{sym\ 999}# #{val\ 1000}#)
                (#{put-global-definition-hook\ 92}#
-                 #{sym\ 717}#
-                 #{type\ 716}#
-                 #{val\ 718}#)))
+                 #{sym\ 999}#
+                 #{type\ 998}#
+                 #{val\ 1000}#)))
            (#{lookup\ 128}#
-             (lambda (#{x\ 719}# #{r\ 720}# #{mod\ 721}#)
-               (let ((#{t\ 722}# (assq #{x\ 719}# #{r\ 720}#)))
-                 (if #{t\ 722}#
-                   (cdr #{t\ 722}#)
-                   (if (symbol? #{x\ 719}#)
-                     (let ((#{t\ 723}# (#{get-global-definition-hook\ 93}#
-                                         #{x\ 719}#
-                                         #{mod\ 721}#)))
-                       (if #{t\ 723}# #{t\ 723}# (quote (global))))
+             (lambda (#{x\ 1001}# #{r\ 1002}# #{mod\ 1003}#)
+               (let ((#{t\ 1004}# (assq #{x\ 1001}# #{r\ 1002}#)))
+                 (if #{t\ 1004}#
+                   (cdr #{t\ 1004}#)
+                   (if (symbol? #{x\ 1001}#)
+                     (let ((#{t\ 1005}#
+                             (#{get-global-definition-hook\ 93}#
+                               #{x\ 1001}#
+                               #{mod\ 1003}#)))
+                       (if #{t\ 1005}# #{t\ 1005}# (quote (global))))
                      '(displaced-lexical))))))
            (#{macros-only-env\ 127}#
-             (lambda (#{r\ 724}#)
-               (if (null? #{r\ 724}#)
+             (lambda (#{r\ 1006}#)
+               (if (null? #{r\ 1006}#)
                  '()
-                 (let ((#{a\ 725}# (car #{r\ 724}#)))
-                   (if (eq? (cadr #{a\ 725}#) (quote macro))
-                     (cons #{a\ 725}#
-                           (#{macros-only-env\ 127}# (cdr #{r\ 724}#)))
-                     (#{macros-only-env\ 127}# (cdr #{r\ 724}#)))))))
+                 (let ((#{a\ 1007}# (car #{r\ 1006}#)))
+                   (if (eq? (cadr #{a\ 1007}#) (quote macro))
+                     (cons #{a\ 1007}#
+                           (#{macros-only-env\ 127}# (cdr #{r\ 1006}#)))
+                     (#{macros-only-env\ 127}# (cdr #{r\ 1006}#)))))))
            (#{extend-var-env\ 126}#
-             (lambda (#{labels\ 726}# #{vars\ 727}# #{r\ 728}#)
-               (if (null? #{labels\ 726}#)
-                 #{r\ 728}#
+             (lambda (#{labels\ 1008}# #{vars\ 1009}# #{r\ 1010}#)
+               (if (null? #{labels\ 1008}#)
+                 #{r\ 1010}#
                  (#{extend-var-env\ 126}#
-                   (cdr #{labels\ 726}#)
-                   (cdr #{vars\ 727}#)
-                   (cons (cons (car #{labels\ 726}#)
-                               (cons (quote lexical) (car #{vars\ 727}#)))
-                         #{r\ 728}#)))))
+                   (cdr #{labels\ 1008}#)
+                   (cdr #{vars\ 1009}#)
+                   (cons (cons (car #{labels\ 1008}#)
+                               (cons (quote lexical) (car #{vars\ 1009}#)))
+                         #{r\ 1010}#)))))
            (#{extend-env\ 125}#
-             (lambda (#{labels\ 729}# #{bindings\ 730}# #{r\ 731}#)
-               (if (null? #{labels\ 729}#)
-                 #{r\ 731}#
+             (lambda (#{labels\ 1011}# #{bindings\ 1012}# #{r\ 1013}#)
+               (if (null? #{labels\ 1011}#)
+                 #{r\ 1013}#
                  (#{extend-env\ 125}#
-                   (cdr #{labels\ 729}#)
-                   (cdr #{bindings\ 730}#)
-                   (cons (cons (car #{labels\ 729}#)
-                               (car #{bindings\ 730}#))
-                         #{r\ 731}#)))))
+                   (cdr #{labels\ 1011}#)
+                   (cdr #{bindings\ 1012}#)
+                   (cons (cons (car #{labels\ 1011}#)
+                               (car #{bindings\ 1012}#))
+                         #{r\ 1013}#)))))
            (#{binding-value\ 124}# cdr)
            (#{binding-type\ 123}# car)
            (#{source-annotation\ 122}#
-             (lambda (#{x\ 732}#)
-               (if (#{syntax-object?\ 115}# #{x\ 732}#)
+             (lambda (#{x\ 1014}#)
+               (if (#{syntax-object?\ 115}# #{x\ 1014}#)
                  (#{source-annotation\ 122}#
-                   (#{syntax-object-expression\ 116}# #{x\ 732}#))
-                 (if (pair? #{x\ 732}#)
-                   (let ((#{props\ 733}# (source-properties #{x\ 732}#)))
-                     (if (pair? #{props\ 733}#) #{props\ 733}# #f))
+                   (#{syntax-object-expression\ 116}# #{x\ 1014}#))
+                 (if (pair? #{x\ 1014}#)
+                   (let ((#{props\ 1015}# (source-properties #{x\ 1014}#)))
+                     (if (pair? #{props\ 1015}#) #{props\ 1015}# #f))
                    #f))))
            (#{set-syntax-object-module!\ 121}#
-             (lambda (#{x\ 734}# #{update\ 735}#)
-               (vector-set! #{x\ 734}# 3 #{update\ 735}#)))
+             (lambda (#{x\ 1016}# #{update\ 1017}#)
+               (vector-set! #{x\ 1016}# 3 #{update\ 1017}#)))
            (#{set-syntax-object-wrap!\ 120}#
-             (lambda (#{x\ 736}# #{update\ 737}#)
-               (vector-set! #{x\ 736}# 2 #{update\ 737}#)))
+             (lambda (#{x\ 1018}# #{update\ 1019}#)
+               (vector-set! #{x\ 1018}# 2 #{update\ 1019}#)))
            (#{set-syntax-object-expression!\ 119}#
-             (lambda (#{x\ 738}# #{update\ 739}#)
-               (vector-set! #{x\ 738}# 1 #{update\ 739}#)))
+             (lambda (#{x\ 1020}# #{update\ 1021}#)
+               (vector-set! #{x\ 1020}# 1 #{update\ 1021}#)))
            (#{syntax-object-module\ 118}#
-             (lambda (#{x\ 740}#) (vector-ref #{x\ 740}# 3)))
+             (lambda (#{x\ 1022}#) (vector-ref #{x\ 1022}# 3)))
            (#{syntax-object-wrap\ 117}#
-             (lambda (#{x\ 741}#) (vector-ref #{x\ 741}# 2)))
+             (lambda (#{x\ 1023}#) (vector-ref #{x\ 1023}# 2)))
            (#{syntax-object-expression\ 116}#
-             (lambda (#{x\ 742}#) (vector-ref #{x\ 742}# 1)))
+             (lambda (#{x\ 1024}#) (vector-ref #{x\ 1024}# 1)))
            (#{syntax-object?\ 115}#
-             (lambda (#{x\ 743}#)
-               (if (vector? #{x\ 743}#)
-                 (if (= (vector-length #{x\ 743}#) 4)
-                   (eq? (vector-ref #{x\ 743}# 0)
+             (lambda (#{x\ 1025}#)
+               (if (vector? #{x\ 1025}#)
+                 (if (= (vector-length #{x\ 1025}#) 4)
+                   (eq? (vector-ref #{x\ 1025}# 0)
                         'syntax-object)
                    #f)
                  #f)))
            (#{make-syntax-object\ 114}#
-             (lambda (#{expression\ 744}#
-                      #{wrap\ 745}#
-                      #{module\ 746}#)
+             (lambda (#{expression\ 1026}#
+                      #{wrap\ 1027}#
+                      #{module\ 1028}#)
                (vector
                  'syntax-object
-                 #{expression\ 744}#
-                 #{wrap\ 745}#
-                 #{module\ 746}#)))
+                 #{expression\ 1026}#
+                 #{wrap\ 1027}#
+                 #{module\ 1028}#)))
            (#{build-letrec\ 113}#
-             (lambda (#{src\ 747}#
-                      #{ids\ 748}#
-                      #{vars\ 749}#
-                      #{val-exps\ 750}#
-                      #{body-exp\ 751}#)
-               (if (null? #{vars\ 749}#)
-                 #{body-exp\ 751}#
-                 (let ((#{atom-key\ 752}# (fluid-ref #{*mode*\ 85}#)))
-                   (if (memv #{atom-key\ 752}# (quote (c)))
+             (lambda (#{src\ 1029}#
+                      #{ids\ 1030}#
+                      #{vars\ 1031}#
+                      #{val-exps\ 1032}#
+                      #{body-exp\ 1033}#)
+               (if (null? #{vars\ 1031}#)
+                 #{body-exp\ 1033}#
+                 (let ((#{atom-key\ 1034}# (fluid-ref #{*mode*\ 85}#)))
+                   (if (memv #{atom-key\ 1034}# (quote (c)))
                      (begin
                        (for-each
                          #{maybe-name-value!\ 103}#
-                         #{ids\ 748}#
-                         #{val-exps\ 750}#)
+                         #{ids\ 1030}#
+                         #{val-exps\ 1032}#)
                        ((@ (language tree-il) make-letrec)
-                        #{src\ 747}#
-                        #{ids\ 748}#
-                        #{vars\ 749}#
-                        #{val-exps\ 750}#
-                        #{body-exp\ 751}#))
+                        #{src\ 1029}#
+                        #{ids\ 1030}#
+                        #{vars\ 1031}#
+                        #{val-exps\ 1032}#
+                        #{body-exp\ 1033}#))
                      (#{decorate-source\ 94}#
                        (list 'letrec
-                             (map list #{vars\ 749}# #{val-exps\ 750}#)
-                             #{body-exp\ 751}#)
-                       #{src\ 747}#))))))
+                             (map list #{vars\ 1031}# #{val-exps\ 1032}#)
+                             #{body-exp\ 1033}#)
+                       #{src\ 1029}#))))))
            (#{build-named-let\ 112}#
-             (lambda (#{src\ 753}#
-                      #{ids\ 754}#
-                      #{vars\ 755}#
-                      #{val-exps\ 756}#
-                      #{body-exp\ 757}#)
-               (let ((#{f\ 758}# (car #{vars\ 755}#))
-                     (#{f-name\ 759}# (car #{ids\ 754}#))
-                     (#{vars\ 760}# (cdr #{vars\ 755}#))
-                     (#{ids\ 761}# (cdr #{ids\ 754}#)))
-                 (let ((#{atom-key\ 762}# (fluid-ref #{*mode*\ 85}#)))
-                   (if (memv #{atom-key\ 762}# (quote (c)))
-                     (let ((#{proc\ 763}#
+             (lambda (#{src\ 1035}#
+                      #{ids\ 1036}#
+                      #{vars\ 1037}#
+                      #{val-exps\ 1038}#
+                      #{body-exp\ 1039}#)
+               (let ((#{f\ 1040}# (car #{vars\ 1037}#))
+                     (#{f-name\ 1041}# (car #{ids\ 1036}#))
+                     (#{vars\ 1042}# (cdr #{vars\ 1037}#))
+                     (#{ids\ 1043}# (cdr #{ids\ 1036}#)))
+                 (let ((#{atom-key\ 1044}# (fluid-ref #{*mode*\ 85}#)))
+                   (if (memv #{atom-key\ 1044}# (quote (c)))
+                     (let ((#{proc\ 1045}#
                              (#{build-simple-lambda\ 105}#
-                               #{src\ 753}#
-                               #{ids\ 761}#
+                               #{src\ 1035}#
+                               #{ids\ 1043}#
                                #f
-                               #{vars\ 760}#
+                               #{vars\ 1042}#
                                #f
-                               #{body-exp\ 757}#)))
+                               #{body-exp\ 1039}#)))
                        (begin
                          (#{maybe-name-value!\ 103}#
-                           #{f-name\ 759}#
-                           #{proc\ 763}#)
+                           #{f-name\ 1041}#
+                           #{proc\ 1045}#)
                          (for-each
                            #{maybe-name-value!\ 103}#
-                           #{ids\ 761}#
-                           #{val-exps\ 756}#)
+                           #{ids\ 1043}#
+                           #{val-exps\ 1038}#)
                          ((@ (language tree-il) make-letrec)
-                          #{src\ 753}#
-                          (list #{f-name\ 759}#)
-                          (list #{f\ 758}#)
-                          (list #{proc\ 763}#)
+                          #{src\ 1035}#
+                          (list #{f-name\ 1041}#)
+                          (list #{f\ 1040}#)
+                          (list #{proc\ 1045}#)
                           (#{build-application\ 96}#
-                            #{src\ 753}#
+                            #{src\ 1035}#
                             (#{build-lexical-reference\ 98}#
                               'fun
-                              #{src\ 753}#
-                              #{f-name\ 759}#
-                              #{f\ 758}#)
-                            #{val-exps\ 756}#))))
+                              #{src\ 1035}#
+                              #{f-name\ 1041}#
+                              #{f\ 1040}#)
+                            #{val-exps\ 1038}#))))
                      (#{decorate-source\ 94}#
                        (list 'let
-                             #{f\ 758}#
-                             (map list #{vars\ 760}# #{val-exps\ 756}#)
-                             #{body-exp\ 757}#)
-                       #{src\ 753}#))))))
+                             #{f\ 1040}#
+                             (map list #{vars\ 1042}# #{val-exps\ 1038}#)
+                             #{body-exp\ 1039}#)
+                       #{src\ 1035}#))))))
            (#{build-let\ 111}#
-             (lambda (#{src\ 764}#
-                      #{ids\ 765}#
-                      #{vars\ 766}#
-                      #{val-exps\ 767}#
-                      #{body-exp\ 768}#)
-               (if (null? #{vars\ 766}#)
-                 #{body-exp\ 768}#
-                 (let ((#{atom-key\ 769}# (fluid-ref #{*mode*\ 85}#)))
-                   (if (memv #{atom-key\ 769}# (quote (c)))
+             (lambda (#{src\ 1046}#
+                      #{ids\ 1047}#
+                      #{vars\ 1048}#
+                      #{val-exps\ 1049}#
+                      #{body-exp\ 1050}#)
+               (if (null? #{vars\ 1048}#)
+                 #{body-exp\ 1050}#
+                 (let ((#{atom-key\ 1051}# (fluid-ref #{*mode*\ 85}#)))
+                   (if (memv #{atom-key\ 1051}# (quote (c)))
                      (begin
                        (for-each
                          #{maybe-name-value!\ 103}#
-                         #{ids\ 765}#
-                         #{val-exps\ 767}#)
+                         #{ids\ 1047}#
+                         #{val-exps\ 1049}#)
                        ((@ (language tree-il) make-let)
-                        #{src\ 764}#
-                        #{ids\ 765}#
-                        #{vars\ 766}#
-                        #{val-exps\ 767}#
-                        #{body-exp\ 768}#))
+                        #{src\ 1046}#
+                        #{ids\ 1047}#
+                        #{vars\ 1048}#
+                        #{val-exps\ 1049}#
+                        #{body-exp\ 1050}#))
                      (#{decorate-source\ 94}#
                        (list 'let
-                             (map list #{vars\ 766}# #{val-exps\ 767}#)
-                             #{body-exp\ 768}#)
-                       #{src\ 764}#))))))
+                             (map list #{vars\ 1048}# #{val-exps\ 1049}#)
+                             #{body-exp\ 1050}#)
+                       #{src\ 1046}#))))))
            (#{build-sequence\ 110}#
-             (lambda (#{src\ 770}# #{exps\ 771}#)
-               (if (null? (cdr #{exps\ 771}#))
-                 (car #{exps\ 771}#)
-                 (let ((#{atom-key\ 772}# (fluid-ref #{*mode*\ 85}#)))
-                   (if (memv #{atom-key\ 772}# (quote (c)))
+             (lambda (#{src\ 1052}# #{exps\ 1053}#)
+               (if (null? (cdr #{exps\ 1053}#))
+                 (car #{exps\ 1053}#)
+                 (let ((#{atom-key\ 1054}# (fluid-ref #{*mode*\ 85}#)))
+                   (if (memv #{atom-key\ 1054}# (quote (c)))
                      ((@ (language tree-il) make-sequence)
-                      #{src\ 770}#
-                      #{exps\ 771}#)
+                      #{src\ 1052}#
+                      #{exps\ 1053}#)
                      (#{decorate-source\ 94}#
-                       (cons (quote begin) #{exps\ 771}#)
-                       #{src\ 770}#))))))
+                       (cons (quote begin) #{exps\ 1053}#)
+                       #{src\ 1052}#))))))
            (#{build-data\ 109}#
-             (lambda (#{src\ 773}# #{exp\ 774}#)
-               (let ((#{atom-key\ 775}# (fluid-ref #{*mode*\ 85}#)))
-                 (if (memv #{atom-key\ 775}# (quote (c)))
+             (lambda (#{src\ 1055}# #{exp\ 1056}#)
+               (let ((#{atom-key\ 1057}# (fluid-ref #{*mode*\ 85}#)))
+                 (if (memv #{atom-key\ 1057}# (quote (c)))
                    ((@ (language tree-il) make-const)
-                    #{src\ 773}#
-                    #{exp\ 774}#)
+                    #{src\ 1055}#
+                    #{exp\ 1056}#)
                    (#{decorate-source\ 94}#
-                     (if (if (self-evaluating? #{exp\ 774}#)
-                           (not (vector? #{exp\ 774}#))
+                     (if (if (self-evaluating? #{exp\ 1056}#)
+                           (not (vector? #{exp\ 1056}#))
                            #f)
-                       #{exp\ 774}#
-                       (list (quote quote) #{exp\ 774}#))
-                     #{src\ 773}#)))))
+                       #{exp\ 1056}#
+                       (list (quote quote) #{exp\ 1056}#))
+                     #{src\ 1055}#)))))
            (#{build-primref\ 108}#
-             (lambda (#{src\ 776}# #{name\ 777}#)
+             (lambda (#{src\ 1058}# #{name\ 1059}#)
                (if (equal?
                      (module-name (current-module))
                      '(guile))
-                 (let ((#{atom-key\ 778}# (fluid-ref #{*mode*\ 85}#)))
-                   (if (memv #{atom-key\ 778}# (quote (c)))
+                 (let ((#{atom-key\ 1060}# (fluid-ref #{*mode*\ 85}#)))
+                   (if (memv #{atom-key\ 1060}# (quote (c)))
                      ((@ (language tree-il) make-toplevel-ref)
-                      #{src\ 776}#
-                      #{name\ 777}#)
+                      #{src\ 1058}#
+                      #{name\ 1059}#)
                      (#{decorate-source\ 94}#
-                       #{name\ 777}#
-                       #{src\ 776}#)))
-                 (let ((#{atom-key\ 779}# (fluid-ref #{*mode*\ 85}#)))
-                   (if (memv #{atom-key\ 779}# (quote (c)))
+                       #{name\ 1059}#
+                       #{src\ 1058}#)))
+                 (let ((#{atom-key\ 1061}# (fluid-ref #{*mode*\ 85}#)))
+                   (if (memv #{atom-key\ 1061}# (quote (c)))
                      ((@ (language tree-il) make-module-ref)
-                      #{src\ 776}#
+                      #{src\ 1058}#
                       '(guile)
-                      #{name\ 777}#
+                      #{name\ 1059}#
                       #f)
                      (#{decorate-source\ 94}#
-                       (list (quote @@) (quote (guile)) #{name\ 777}#)
-                       #{src\ 776}#))))))
+                       (list (quote @@) (quote (guile)) #{name\ 1059}#)
+                       #{src\ 1058}#))))))
            (#{build-lambda-case\ 107}#
-             (lambda (#{src\ 780}#
-                      #{req\ 781}#
-                      #{opt\ 782}#
-                      #{rest\ 783}#
-                      #{kw\ 784}#
-                      #{inits\ 785}#
-                      #{vars\ 786}#
-                      #{predicate\ 787}#
-                      #{body\ 788}#
-                      #{else-case\ 789}#)
-               (let ((#{atom-key\ 790}# (fluid-ref #{*mode*\ 85}#)))
-                 (if (memv #{atom-key\ 790}# (quote (c)))
+             (lambda (#{src\ 1062}#
+                      #{req\ 1063}#
+                      #{opt\ 1064}#
+                      #{rest\ 1065}#
+                      #{kw\ 1066}#
+                      #{inits\ 1067}#
+                      #{vars\ 1068}#
+                      #{predicate\ 1069}#
+                      #{body\ 1070}#
+                      #{else-case\ 1071}#)
+               (let ((#{atom-key\ 1072}# (fluid-ref #{*mode*\ 85}#)))
+                 (if (memv #{atom-key\ 1072}# (quote (c)))
                    ((@ (language tree-il) make-lambda-case)
-                    #{src\ 780}#
-                    #{req\ 781}#
-                    #{opt\ 782}#
-                    #{rest\ 783}#
-                    #{kw\ 784}#
-                    #{inits\ 785}#
-                    #{vars\ 786}#
-                    #{predicate\ 787}#
-                    #{body\ 788}#
-                    #{else-case\ 789}#)
-                   (let ((#{nreq\ 791}# (length #{req\ 781}#)))
-                     (let ((#{nopt\ 792}#
-                             (if #{opt\ 782}# (length #{opt\ 782}#) 0)))
-                       (let ((#{rest-idx\ 793}#
-                               (if #{rest\ 783}#
-                                 (+ #{nreq\ 791}# #{nopt\ 792}#)
+                    #{src\ 1062}#
+                    #{req\ 1063}#
+                    #{opt\ 1064}#
+                    #{rest\ 1065}#
+                    #{kw\ 1066}#
+                    #{inits\ 1067}#
+                    #{vars\ 1068}#
+                    #{predicate\ 1069}#
+                    #{body\ 1070}#
+                    #{else-case\ 1071}#)
+                   (let ((#{nreq\ 1073}# (length #{req\ 1063}#)))
+                     (let ((#{nopt\ 1074}#
+                             (if #{opt\ 1064}# (length #{opt\ 1064}#) 0)))
+                       (let ((#{rest-idx\ 1075}#
+                               (if #{rest\ 1065}#
+                                 (+ #{nreq\ 1073}# #{nopt\ 1074}#)
                                  #f)))
-                         (let ((#{allow-other-keys?\ 794}#
-                                 (if #{kw\ 784}# (car #{kw\ 784}#) #f)))
-                           (let ((#{kw-indices\ 795}#
-                                   (map (lambda (#{x\ 796}#)
-                                          (cons (car #{x\ 796}#)
+                         (let ((#{allow-other-keys?\ 1076}#
+                                 (if #{kw\ 1066}# (car #{kw\ 1066}#) #f)))
+                           (let ((#{kw-indices\ 1077}#
+                                   (map (lambda (#{x\ 1078}#)
+                                          (cons (car #{x\ 1078}#)
                                                 (list-index
-                                                  #{vars\ 786}#
-                                                  (caddr #{x\ 796}#))))
-                                        (if #{kw\ 784}#
-                                          (cdr #{kw\ 784}#)
+                                                  #{vars\ 1068}#
+                                                  (caddr #{x\ 1078}#))))
+                                        (if #{kw\ 1066}#
+                                          (cdr #{kw\ 1066}#)
                                           '()))))
-                             (let ((#{nargs\ 797}#
+                             (let ((#{nargs\ 1079}#
                                      (apply max
-                                            (+ #{nreq\ 791}#
-                                               #{nopt\ 792}#
-                                               (if #{rest\ 783}# 1 0))
+                                            (+ #{nreq\ 1073}#
+                                               #{nopt\ 1074}#
+                                               (if #{rest\ 1065}# 1 0))
                                             (map 1+
                                                  (map cdr
-                                                      #{kw-indices\ 795}#)))))
+                                                      #{kw-indices\ 1077}#)))))
                                (begin
-                                 (let ((#{t\ 798}# (= #{nargs\ 797}#
-                                                      (length #{vars\ 786}#)
-                                                      (+ #{nreq\ 791}#
-                                                         (length
-                                                           #{inits\ 785}#)
-                                                         (if #{rest\ 783}#
-                                                           1
-                                                           0)))))
-                                   (if #{t\ 798}#
-                                     #{t\ 798}#
+                                 (let ((#{t\ 1080}#
+                                         (= #{nargs\ 1079}#
+                                            (length #{vars\ 1068}#)
+                                            (+ #{nreq\ 1073}#
+                                               (length #{inits\ 1067}#)
+                                               (if #{rest\ 1065}# 1 0)))))
+                                   (if #{t\ 1080}#
+                                     #{t\ 1080}#
                                      (error "something went wrong"
-                                            #{req\ 781}#
-                                            #{opt\ 782}#
-                                            #{rest\ 783}#
-                                            #{kw\ 784}#
-                                            #{inits\ 785}#
-                                            #{vars\ 786}#
-                                            #{nreq\ 791}#
-                                            #{nopt\ 792}#
-                                            #{kw-indices\ 795}#
-                                            #{nargs\ 797}#)))
+                                            #{req\ 1063}#
+                                            #{opt\ 1064}#
+                                            #{rest\ 1065}#
+                                            #{kw\ 1066}#
+                                            #{inits\ 1067}#
+                                            #{vars\ 1068}#
+                                            #{nreq\ 1073}#
+                                            #{nopt\ 1074}#
+                                            #{kw-indices\ 1077}#
+                                            #{nargs\ 1079}#)))
                                  (#{decorate-source\ 94}#
                                    (cons (list (cons '(@@ (ice-9 optargs)
                                                           parse-lambda-case)
                                                      (cons (list 'quote
-                                                                 (list #{nreq\ 
791}#
-                                                                       #{nopt\ 
792}#
-                                                                       
#{rest-idx\ 793}#
-                                                                       
#{nargs\ 797}#
-                                                                       
#{allow-other-keys?\ 794}#
-                                                                       
#{kw-indices\ 795}#))
+                                                                 (list #{nreq\ 
1073}#
+                                                                       #{nopt\ 
1074}#
+                                                                       
#{rest-idx\ 1075}#
+                                                                       
#{nargs\ 1079}#
+                                                                       
#{allow-other-keys?\ 1076}#
+                                                                       
#{kw-indices\ 1077}#))
                                                            (cons (cons 'list
-                                                                       (map 
(lambda (#{i\ 799}#)
+                                                                       (map 
(lambda (#{i\ 1081}#)
                                                                               
(list 'lambda
-                                                                               
     #{vars\ 786}#
-                                                                               
     #{i\ 799}#))
-                                                                            
#{inits\ 785}#))
-                                                                 (cons (if 
#{predicate\ 787}#
+                                                                               
     #{vars\ 1068}#
+                                                                               
     #{i\ 1081}#))
+                                                                            
#{inits\ 1067}#))
+                                                                 (cons (if 
#{predicate\ 1069}#
                                                                          (list 
'lambda
-                                                                               
#{vars\ 786}#
-                                                                               
#{predicate\ 787}#)
+                                                                               
#{vars\ 1068}#
+                                                                               
#{predicate\ 1069}#)
                                                                          #f)
                                                                        
'(%%args)))))
                                                '=>
@@ -5601,343 +7523,353 @@
                                                      '(%%%args . _)
                                                      (cons 'apply
                                                            (cons (list 'lambda
-                                                                       #{vars\ 
786}#
-                                                                       #{body\ 
788}#)
+                                                                       #{vars\ 
1068}#
+                                                                       #{body\ 
1070}#)
                                                                  '(%%%args)))))
-                                         (let ((#{t\ 800}# #{else-case\ 789}#))
-                                           (if #{t\ 800}#
-                                             #{t\ 800}#
+                                         (let ((#{t\ 1082}#
+                                                 #{else-case\ 1071}#))
+                                           (if #{t\ 1082}#
+                                             #{t\ 1082}#
                                              '((%%args
                                                  (error "wrong number of 
arguments"
                                                         %%args))))))
-                                   #{src\ 780}#))))))))))))
+                                   #{src\ 1062}#))))))))))))
            (#{build-case-lambda\ 106}#
-             (lambda (#{src\ 801}# #{docstring\ 802}# #{body\ 803}#)
-               (let ((#{atom-key\ 804}# (fluid-ref #{*mode*\ 85}#)))
-                 (if (memv #{atom-key\ 804}# (quote (c)))
+             (lambda (#{src\ 1083}#
+                      #{docstring\ 1084}#
+                      #{body\ 1085}#)
+               (let ((#{atom-key\ 1086}# (fluid-ref #{*mode*\ 85}#)))
+                 (if (memv #{atom-key\ 1086}# (quote (c)))
                    ((@ (language tree-il) make-lambda)
-                    #{src\ 801}#
-                    (if #{docstring\ 802}#
-                      (list (cons (quote documentation) #{docstring\ 802}#))
+                    #{src\ 1083}#
+                    (if #{docstring\ 1084}#
+                      (list (cons (quote documentation) #{docstring\ 1084}#))
                       '())
-                    #{body\ 803}#)
+                    #{body\ 1085}#)
                    (#{decorate-source\ 94}#
                      (cons 'lambda
                            (cons '%%args
                                  (append
-                                   (if #{docstring\ 802}#
-                                     (list #{docstring\ 802}#)
+                                   (if #{docstring\ 1084}#
+                                     (list #{docstring\ 1084}#)
                                      '())
-                                   (list (cons (quote cond) #{body\ 803}#)))))
-                     #{src\ 801}#)))))
+                                   (list (cons (quote cond) #{body\ 1085}#)))))
+                     #{src\ 1083}#)))))
            (#{build-simple-lambda\ 105}#
-             (lambda (#{src\ 805}#
-                      #{req\ 806}#
-                      #{rest\ 807}#
-                      #{vars\ 808}#
-                      #{docstring\ 809}#
-                      #{exp\ 810}#)
-               (let ((#{atom-key\ 811}# (fluid-ref #{*mode*\ 85}#)))
-                 (if (memv #{atom-key\ 811}# (quote (c)))
+             (lambda (#{src\ 1087}#
+                      #{req\ 1088}#
+                      #{rest\ 1089}#
+                      #{vars\ 1090}#
+                      #{docstring\ 1091}#
+                      #{exp\ 1092}#)
+               (let ((#{atom-key\ 1093}# (fluid-ref #{*mode*\ 85}#)))
+                 (if (memv #{atom-key\ 1093}# (quote (c)))
                    ((@ (language tree-il) make-lambda)
-                    #{src\ 805}#
-                    (if #{docstring\ 809}#
-                      (list (cons (quote documentation) #{docstring\ 809}#))
+                    #{src\ 1087}#
+                    (if #{docstring\ 1091}#
+                      (list (cons (quote documentation) #{docstring\ 1091}#))
                       '())
                     ((@ (language tree-il) make-lambda-case)
-                     #{src\ 805}#
-                     #{req\ 806}#
+                     #{src\ 1087}#
+                     #{req\ 1088}#
                      #f
-                     #{rest\ 807}#
+                     #{rest\ 1089}#
                      #f
                      '()
-                     #{vars\ 808}#
+                     #{vars\ 1090}#
                      #f
-                     #{exp\ 810}#
+                     #{exp\ 1092}#
                      #f))
                    (#{decorate-source\ 94}#
                      (cons 'lambda
-                           (cons (if #{rest\ 807}#
-                                   (apply cons* #{vars\ 808}#)
-                                   #{vars\ 808}#)
+                           (cons (if #{rest\ 1089}#
+                                   (apply cons* #{vars\ 1090}#)
+                                   #{vars\ 1090}#)
                                  (append
-                                   (if #{docstring\ 809}#
-                                     (list #{docstring\ 809}#)
+                                   (if #{docstring\ 1091}#
+                                     (list #{docstring\ 1091}#)
                                      '())
-                                   (list #{exp\ 810}#))))
-                     #{src\ 805}#)))))
+                                   (list #{exp\ 1092}#))))
+                     #{src\ 1087}#)))))
            (#{build-global-definition\ 104}#
-             (lambda (#{source\ 812}# #{var\ 813}# #{exp\ 814}#)
-               (let ((#{atom-key\ 815}# (fluid-ref #{*mode*\ 85}#)))
-                 (if (memv #{atom-key\ 815}# (quote (c)))
+             (lambda (#{source\ 1094}# #{var\ 1095}# #{exp\ 1096}#)
+               (let ((#{atom-key\ 1097}# (fluid-ref #{*mode*\ 85}#)))
+                 (if (memv #{atom-key\ 1097}# (quote (c)))
                    (begin
                      (#{maybe-name-value!\ 103}#
-                       #{var\ 813}#
-                       #{exp\ 814}#)
+                       #{var\ 1095}#
+                       #{exp\ 1096}#)
                      ((@ (language tree-il) make-toplevel-define)
-                      #{source\ 812}#
-                      #{var\ 813}#
-                      #{exp\ 814}#))
+                      #{source\ 1094}#
+                      #{var\ 1095}#
+                      #{exp\ 1096}#))
                    (#{decorate-source\ 94}#
-                     (list (quote define) #{var\ 813}# #{exp\ 814}#)
-                     #{source\ 812}#)))))
+                     (list (quote define) #{var\ 1095}# #{exp\ 1096}#)
+                     #{source\ 1094}#)))))
            (#{maybe-name-value!\ 103}#
-             (lambda (#{name\ 816}# #{val\ 817}#)
-               (if ((@ (language tree-il) lambda?) #{val\ 817}#)
-                 (let ((#{meta\ 818}#
-                         ((@ (language tree-il) lambda-meta) #{val\ 817}#)))
-                   (if (not (assq (quote name) #{meta\ 818}#))
+             (lambda (#{name\ 1098}# #{val\ 1099}#)
+               (if ((@ (language tree-il) lambda?) #{val\ 1099}#)
+                 (let ((#{meta\ 1100}#
+                         ((@ (language tree-il) lambda-meta)
+                          #{val\ 1099}#)))
+                   (if (not (assq (quote name) #{meta\ 1100}#))
                      ((setter (@ (language tree-il) lambda-meta))
-                      #{val\ 817}#
-                      (acons (quote name) #{name\ 816}# #{meta\ 818}#)))))))
+                      #{val\ 1099}#
+                      (acons 'name
+                             #{name\ 1098}#
+                             #{meta\ 1100}#)))))))
            (#{build-global-assignment\ 102}#
-             (lambda (#{source\ 819}#
-                      #{var\ 820}#
-                      #{exp\ 821}#
-                      #{mod\ 822}#)
+             (lambda (#{source\ 1101}#
+                      #{var\ 1102}#
+                      #{exp\ 1103}#
+                      #{mod\ 1104}#)
                (#{analyze-variable\ 100}#
-                 #{mod\ 822}#
-                 #{var\ 820}#
-                 (lambda (#{mod\ 823}# #{var\ 824}# #{public?\ 825}#)
-                   (let ((#{atom-key\ 826}# (fluid-ref #{*mode*\ 85}#)))
-                     (if (memv #{atom-key\ 826}# (quote (c)))
+                 #{mod\ 1104}#
+                 #{var\ 1102}#
+                 (lambda (#{mod\ 1105}# #{var\ 1106}# #{public?\ 1107}#)
+                   (let ((#{atom-key\ 1108}# (fluid-ref #{*mode*\ 85}#)))
+                     (if (memv #{atom-key\ 1108}# (quote (c)))
                        ((@ (language tree-il) make-module-set)
-                        #{source\ 819}#
-                        #{mod\ 823}#
-                        #{var\ 824}#
-                        #{public?\ 825}#
-                        #{exp\ 821}#)
+                        #{source\ 1101}#
+                        #{mod\ 1105}#
+                        #{var\ 1106}#
+                        #{public?\ 1107}#
+                        #{exp\ 1103}#)
                        (#{decorate-source\ 94}#
                          (list 'set!
-                               (list (if #{public?\ 825}# (quote @) (quote @@))
-                                     #{mod\ 823}#
-                                     #{var\ 824}#)
-                               #{exp\ 821}#)
-                         #{source\ 819}#))))
-                 (lambda (#{var\ 827}#)
-                   (let ((#{atom-key\ 828}# (fluid-ref #{*mode*\ 85}#)))
-                     (if (memv #{atom-key\ 828}# (quote (c)))
+                               (list (if #{public?\ 1107}#
+                                       '@
+                                       '@@)
+                                     #{mod\ 1105}#
+                                     #{var\ 1106}#)
+                               #{exp\ 1103}#)
+                         #{source\ 1101}#))))
+                 (lambda (#{var\ 1109}#)
+                   (let ((#{atom-key\ 1110}# (fluid-ref #{*mode*\ 85}#)))
+                     (if (memv #{atom-key\ 1110}# (quote (c)))
                        ((@ (language tree-il) make-toplevel-set)
-                        #{source\ 819}#
-                        #{var\ 827}#
-                        #{exp\ 821}#)
+                        #{source\ 1101}#
+                        #{var\ 1109}#
+                        #{exp\ 1103}#)
                        (#{decorate-source\ 94}#
-                         (list (quote set!) #{var\ 827}# #{exp\ 821}#)
-                         #{source\ 819}#)))))))
+                         (list (quote set!) #{var\ 1109}# #{exp\ 1103}#)
+                         #{source\ 1101}#)))))))
            (#{build-global-reference\ 101}#
-             (lambda (#{source\ 829}# #{var\ 830}# #{mod\ 831}#)
+             (lambda (#{source\ 1111}# #{var\ 1112}# #{mod\ 1113}#)
                (#{analyze-variable\ 100}#
-                 #{mod\ 831}#
-                 #{var\ 830}#
-                 (lambda (#{mod\ 832}# #{var\ 833}# #{public?\ 834}#)
-                   (let ((#{atom-key\ 835}# (fluid-ref #{*mode*\ 85}#)))
-                     (if (memv #{atom-key\ 835}# (quote (c)))
+                 #{mod\ 1113}#
+                 #{var\ 1112}#
+                 (lambda (#{mod\ 1114}# #{var\ 1115}# #{public?\ 1116}#)
+                   (let ((#{atom-key\ 1117}# (fluid-ref #{*mode*\ 85}#)))
+                     (if (memv #{atom-key\ 1117}# (quote (c)))
                        ((@ (language tree-il) make-module-ref)
-                        #{source\ 829}#
-                        #{mod\ 832}#
-                        #{var\ 833}#
-                        #{public?\ 834}#)
+                        #{source\ 1111}#
+                        #{mod\ 1114}#
+                        #{var\ 1115}#
+                        #{public?\ 1116}#)
                        (#{decorate-source\ 94}#
-                         (list (if #{public?\ 834}# (quote @) (quote @@))
-                               #{mod\ 832}#
-                               #{var\ 833}#)
-                         #{source\ 829}#))))
-                 (lambda (#{var\ 836}#)
-                   (let ((#{atom-key\ 837}# (fluid-ref #{*mode*\ 85}#)))
-                     (if (memv #{atom-key\ 837}# (quote (c)))
+                         (list (if #{public?\ 1116}# (quote @) (quote @@))
+                               #{mod\ 1114}#
+                               #{var\ 1115}#)
+                         #{source\ 1111}#))))
+                 (lambda (#{var\ 1118}#)
+                   (let ((#{atom-key\ 1119}# (fluid-ref #{*mode*\ 85}#)))
+                     (if (memv #{atom-key\ 1119}# (quote (c)))
                        ((@ (language tree-il) make-toplevel-ref)
-                        #{source\ 829}#
-                        #{var\ 836}#)
+                        #{source\ 1111}#
+                        #{var\ 1118}#)
                        (#{decorate-source\ 94}#
-                         #{var\ 836}#
-                         #{source\ 829}#)))))))
+                         #{var\ 1118}#
+                         #{source\ 1111}#)))))))
            (#{analyze-variable\ 100}#
-             (lambda (#{mod\ 838}#
-                      #{var\ 839}#
-                      #{modref-cont\ 840}#
-                      #{bare-cont\ 841}#)
-               (if (not #{mod\ 838}#)
-                 (#{bare-cont\ 841}# #{var\ 839}#)
-                 (let ((#{kind\ 842}# (car #{mod\ 838}#))
-                       (#{mod\ 843}# (cdr #{mod\ 838}#)))
-                   (if (memv #{kind\ 842}# (quote (public)))
-                     (#{modref-cont\ 840}#
-                       #{mod\ 843}#
-                       #{var\ 839}#
+             (lambda (#{mod\ 1120}#
+                      #{var\ 1121}#
+                      #{modref-cont\ 1122}#
+                      #{bare-cont\ 1123}#)
+               (if (not #{mod\ 1120}#)
+                 (#{bare-cont\ 1123}# #{var\ 1121}#)
+                 (let ((#{kind\ 1124}# (car #{mod\ 1120}#))
+                       (#{mod\ 1125}# (cdr #{mod\ 1120}#)))
+                   (if (memv #{kind\ 1124}# (quote (public)))
+                     (#{modref-cont\ 1122}#
+                       #{mod\ 1125}#
+                       #{var\ 1121}#
                        #t)
-                     (if (memv #{kind\ 842}# (quote (private)))
+                     (if (memv #{kind\ 1124}# (quote (private)))
                        (if (not (equal?
-                                  #{mod\ 843}#
+                                  #{mod\ 1125}#
                                   (module-name (current-module))))
-                         (#{modref-cont\ 840}#
-                           #{mod\ 843}#
-                           #{var\ 839}#
+                         (#{modref-cont\ 1122}#
+                           #{mod\ 1125}#
+                           #{var\ 1121}#
                            #f)
-                         (#{bare-cont\ 841}# #{var\ 839}#))
-                       (if (memv #{kind\ 842}# (quote (bare)))
-                         (#{bare-cont\ 841}# #{var\ 839}#)
-                         (if (memv #{kind\ 842}# (quote (hygiene)))
+                         (#{bare-cont\ 1123}# #{var\ 1121}#))
+                       (if (memv #{kind\ 1124}# (quote (bare)))
+                         (#{bare-cont\ 1123}# #{var\ 1121}#)
+                         (if (memv #{kind\ 1124}# (quote (hygiene)))
                            (if (if (not (equal?
-                                          #{mod\ 843}#
+                                          #{mod\ 1125}#
                                           (module-name (current-module))))
                                  (module-variable
-                                   (resolve-module #{mod\ 843}#)
-                                   #{var\ 839}#)
+                                   (resolve-module #{mod\ 1125}#)
+                                   #{var\ 1121}#)
                                  #f)
-                             (#{modref-cont\ 840}#
-                               #{mod\ 843}#
-                               #{var\ 839}#
+                             (#{modref-cont\ 1122}#
+                               #{mod\ 1125}#
+                               #{var\ 1121}#
                                #f)
-                             (#{bare-cont\ 841}# #{var\ 839}#))
+                             (#{bare-cont\ 1123}# #{var\ 1121}#))
                            (syntax-violation
                              #f
                              "bad module kind"
-                             #{var\ 839}#
-                             #{mod\ 843}#)))))))))
+                             #{var\ 1121}#
+                             #{mod\ 1125}#)))))))))
            (#{build-lexical-assignment\ 99}#
-             (lambda (#{source\ 844}#
-                      #{name\ 845}#
-                      #{var\ 846}#
-                      #{exp\ 847}#)
-               (let ((#{atom-key\ 848}# (fluid-ref #{*mode*\ 85}#)))
-                 (if (memv #{atom-key\ 848}# (quote (c)))
+             (lambda (#{source\ 1126}#
+                      #{name\ 1127}#
+                      #{var\ 1128}#
+                      #{exp\ 1129}#)
+               (let ((#{atom-key\ 1130}# (fluid-ref #{*mode*\ 85}#)))
+                 (if (memv #{atom-key\ 1130}# (quote (c)))
                    ((@ (language tree-il) make-lexical-set)
-                    #{source\ 844}#
-                    #{name\ 845}#
-                    #{var\ 846}#
-                    #{exp\ 847}#)
+                    #{source\ 1126}#
+                    #{name\ 1127}#
+                    #{var\ 1128}#
+                    #{exp\ 1129}#)
                    (#{decorate-source\ 94}#
-                     (list (quote set!) #{var\ 846}# #{exp\ 847}#)
-                     #{source\ 844}#)))))
+                     (list (quote set!) #{var\ 1128}# #{exp\ 1129}#)
+                     #{source\ 1126}#)))))
            (#{build-lexical-reference\ 98}#
-             (lambda (#{type\ 849}#
-                      #{source\ 850}#
-                      #{name\ 851}#
-                      #{var\ 852}#)
-               (let ((#{atom-key\ 853}# (fluid-ref #{*mode*\ 85}#)))
-                 (if (memv #{atom-key\ 853}# (quote (c)))
+             (lambda (#{type\ 1131}#
+                      #{source\ 1132}#
+                      #{name\ 1133}#
+                      #{var\ 1134}#)
+               (let ((#{atom-key\ 1135}# (fluid-ref #{*mode*\ 85}#)))
+                 (if (memv #{atom-key\ 1135}# (quote (c)))
                    ((@ (language tree-il) make-lexical-ref)
-                    #{source\ 850}#
-                    #{name\ 851}#
-                    #{var\ 852}#)
+                    #{source\ 1132}#
+                    #{name\ 1133}#
+                    #{var\ 1134}#)
                    (#{decorate-source\ 94}#
-                     #{var\ 852}#
-                     #{source\ 850}#)))))
+                     #{var\ 1134}#
+                     #{source\ 1132}#)))))
            (#{build-conditional\ 97}#
-             (lambda (#{source\ 854}#
-                      #{test-exp\ 855}#
-                      #{then-exp\ 856}#
-                      #{else-exp\ 857}#)
-               (let ((#{atom-key\ 858}# (fluid-ref #{*mode*\ 85}#)))
-                 (if (memv #{atom-key\ 858}# (quote (c)))
+             (lambda (#{source\ 1136}#
+                      #{test-exp\ 1137}#
+                      #{then-exp\ 1138}#
+                      #{else-exp\ 1139}#)
+               (let ((#{atom-key\ 1140}# (fluid-ref #{*mode*\ 85}#)))
+                 (if (memv #{atom-key\ 1140}# (quote (c)))
                    ((@ (language tree-il) make-conditional)
-                    #{source\ 854}#
-                    #{test-exp\ 855}#
-                    #{then-exp\ 856}#
-                    #{else-exp\ 857}#)
+                    #{source\ 1136}#
+                    #{test-exp\ 1137}#
+                    #{then-exp\ 1138}#
+                    #{else-exp\ 1139}#)
                    (#{decorate-source\ 94}#
-                     (if (equal? #{else-exp\ 857}# (quote (if #f #f)))
+                     (if (equal? #{else-exp\ 1139}# (quote (if #f #f)))
                        (list 'if
-                             #{test-exp\ 855}#
-                             #{then-exp\ 856}#)
+                             #{test-exp\ 1137}#
+                             #{then-exp\ 1138}#)
                        (list 'if
-                             #{test-exp\ 855}#
-                             #{then-exp\ 856}#
-                             #{else-exp\ 857}#))
-                     #{source\ 854}#)))))
+                             #{test-exp\ 1137}#
+                             #{then-exp\ 1138}#
+                             #{else-exp\ 1139}#))
+                     #{source\ 1136}#)))))
            (#{build-application\ 96}#
-             (lambda (#{source\ 859}#
-                      #{fun-exp\ 860}#
-                      #{arg-exps\ 861}#)
-               (let ((#{atom-key\ 862}# (fluid-ref #{*mode*\ 85}#)))
-                 (if (memv #{atom-key\ 862}# (quote (c)))
+             (lambda (#{source\ 1141}#
+                      #{fun-exp\ 1142}#
+                      #{arg-exps\ 1143}#)
+               (let ((#{atom-key\ 1144}# (fluid-ref #{*mode*\ 85}#)))
+                 (if (memv #{atom-key\ 1144}# (quote (c)))
                    ((@ (language tree-il) make-application)
-                    #{source\ 859}#
-                    #{fun-exp\ 860}#
-                    #{arg-exps\ 861}#)
+                    #{source\ 1141}#
+                    #{fun-exp\ 1142}#
+                    #{arg-exps\ 1143}#)
                    (#{decorate-source\ 94}#
-                     (cons #{fun-exp\ 860}# #{arg-exps\ 861}#)
-                     #{source\ 859}#)))))
+                     (cons #{fun-exp\ 1142}# #{arg-exps\ 1143}#)
+                     #{source\ 1141}#)))))
            (#{build-void\ 95}#
-             (lambda (#{source\ 863}#)
-               (let ((#{atom-key\ 864}# (fluid-ref #{*mode*\ 85}#)))
-                 (if (memv #{atom-key\ 864}# (quote (c)))
+             (lambda (#{source\ 1145}#)
+               (let ((#{atom-key\ 1146}# (fluid-ref #{*mode*\ 85}#)))
+                 (if (memv #{atom-key\ 1146}# (quote (c)))
                    ((@ (language tree-il) make-void)
-                    #{source\ 863}#)
+                    #{source\ 1145}#)
                    (#{decorate-source\ 94}#
                      '(if #f #f)
-                     #{source\ 863}#)))))
+                     #{source\ 1145}#)))))
            (#{decorate-source\ 94}#
-             (lambda (#{e\ 865}# #{s\ 866}#)
+             (lambda (#{e\ 1147}# #{s\ 1148}#)
                (begin
-                 (if (if (pair? #{e\ 865}#) #{s\ 866}# #f)
-                   (set-source-properties! #{e\ 865}# #{s\ 866}#))
-                 #{e\ 865}#)))
+                 (if (if (pair? #{e\ 1147}#) #{s\ 1148}# #f)
+                   (set-source-properties! #{e\ 1147}# #{s\ 1148}#))
+                 #{e\ 1147}#)))
            (#{get-global-definition-hook\ 93}#
-             (lambda (#{symbol\ 867}# #{module\ 868}#)
+             (lambda (#{symbol\ 1149}# #{module\ 1150}#)
                (begin
-                 (if (if (not #{module\ 868}#) (current-module) #f)
+                 (if (if (not #{module\ 1150}#) (current-module) #f)
                    (warn "module system is booted, we should have a module"
-                         #{symbol\ 867}#))
-                 (let ((#{v\ 869}# (module-variable
-                                     (if #{module\ 868}#
-                                       (resolve-module (cdr #{module\ 868}#))
-                                       (current-module))
-                                     #{symbol\ 867}#)))
-                   (if #{v\ 869}#
-                     (if (variable-bound? #{v\ 869}#)
-                       (let ((#{val\ 870}# (variable-ref #{v\ 869}#)))
-                         (if (macro? #{val\ 870}#)
-                           (if (syncase-macro-type #{val\ 870}#)
-                             (cons (syncase-macro-type #{val\ 870}#)
-                                   (syncase-macro-binding #{val\ 870}#))
+                         #{symbol\ 1149}#))
+                 (let ((#{v\ 1151}#
+                         (module-variable
+                           (if #{module\ 1150}#
+                             (resolve-module (cdr #{module\ 1150}#))
+                             (current-module))
+                           #{symbol\ 1149}#)))
+                   (if #{v\ 1151}#
+                     (if (variable-bound? #{v\ 1151}#)
+                       (let ((#{val\ 1152}# (variable-ref #{v\ 1151}#)))
+                         (if (macro? #{val\ 1152}#)
+                           (if (syncase-macro-type #{val\ 1152}#)
+                             (cons (syncase-macro-type #{val\ 1152}#)
+                                   (syncase-macro-binding #{val\ 1152}#))
                              #f)
                            #f))
                        #f)
                      #f)))))
            (#{put-global-definition-hook\ 92}#
-             (lambda (#{symbol\ 871}# #{type\ 872}# #{val\ 873}#)
-               (let ((#{existing\ 874}#
-                       (let ((#{v\ 875}# (module-variable
-                                           (current-module)
-                                           #{symbol\ 871}#)))
-                         (if #{v\ 875}#
-                           (if (variable-bound? #{v\ 875}#)
-                             (let ((#{val\ 876}# (variable-ref #{v\ 875}#)))
-                               (if (macro? #{val\ 876}#)
-                                 (if (not (syncase-macro-type #{val\ 876}#))
-                                   #{val\ 876}#
+             (lambda (#{symbol\ 1153}# #{type\ 1154}# #{val\ 1155}#)
+               (let ((#{existing\ 1156}#
+                       (let ((#{v\ 1157}#
+                               (module-variable
+                                 (current-module)
+                                 #{symbol\ 1153}#)))
+                         (if #{v\ 1157}#
+                           (if (variable-bound? #{v\ 1157}#)
+                             (let ((#{val\ 1158}# (variable-ref #{v\ 1157}#)))
+                               (if (macro? #{val\ 1158}#)
+                                 (if (not (syncase-macro-type #{val\ 1158}#))
+                                   #{val\ 1158}#
                                    #f)
                                  #f))
                              #f)
                            #f))))
                  (module-define!
                    (current-module)
-                   #{symbol\ 871}#
-                   (if #{existing\ 874}#
+                   #{symbol\ 1153}#
+                   (if #{existing\ 1156}#
                      (make-extended-syncase-macro
-                       #{existing\ 874}#
-                       #{type\ 872}#
-                       #{val\ 873}#)
-                     (make-syncase-macro #{type\ 872}# #{val\ 873}#))))))
+                       #{existing\ 1156}#
+                       #{type\ 1154}#
+                       #{val\ 1155}#)
+                     (make-syncase-macro #{type\ 1154}# #{val\ 1155}#))))))
            (#{local-eval-hook\ 91}#
-             (lambda (#{x\ 877}# #{mod\ 878}#)
+             (lambda (#{x\ 1159}# #{mod\ 1160}#)
                (primitive-eval
                  (list #{noexpand\ 84}#
-                       (let ((#{atom-key\ 879}# (fluid-ref #{*mode*\ 85}#)))
-                         (if (memv #{atom-key\ 879}# (quote (c)))
+                       (let ((#{atom-key\ 1161}# (fluid-ref #{*mode*\ 85}#)))
+                         (if (memv #{atom-key\ 1161}# (quote (c)))
                            ((@ (language tree-il) tree-il->scheme)
-                            #{x\ 877}#)
-                           #{x\ 877}#))))))
+                            #{x\ 1159}#)
+                           #{x\ 1159}#))))))
            (#{top-level-eval-hook\ 90}#
-             (lambda (#{x\ 880}# #{mod\ 881}#)
+             (lambda (#{x\ 1162}# #{mod\ 1163}#)
                (primitive-eval
                  (list #{noexpand\ 84}#
-                       (let ((#{atom-key\ 882}# (fluid-ref #{*mode*\ 85}#)))
-                         (if (memv #{atom-key\ 882}# (quote (c)))
+                       (let ((#{atom-key\ 1164}# (fluid-ref #{*mode*\ 85}#)))
+                         (if (memv #{atom-key\ 1164}# (quote (c)))
                            ((@ (language tree-il) tree-il->scheme)
-                            #{x\ 880}#)
-                           #{x\ 880}#))))))
+                            #{x\ 1162}#)
+                           #{x\ 1162}#))))))
            (#{fx<\ 89}# <)
            (#{fx=\ 88}# =)
            (#{fx-\ 87}# -)
@@ -5956,3931 +7888,1068 @@
       (#{global-extend\ 129}#
         'core
         'fluid-let-syntax
-        (lambda (#{e\ 883}#
-                 #{r\ 884}#
-                 #{w\ 885}#
-                 #{s\ 886}#
-                 #{mod\ 887}#)
-          ((lambda (#{tmp\ 888}#)
-             ((lambda (#{tmp\ 889}#)
-                (if (if #{tmp\ 889}#
-                      (apply (lambda (#{_\ 890}#
-                                      #{var\ 891}#
-                                      #{val\ 892}#
-                                      #{e1\ 893}#
-                                      #{e2\ 894}#)
-                               (#{valid-bound-ids?\ 156}# #{var\ 891}#))
-                             #{tmp\ 889}#)
+        (lambda (#{e\ 1165}#
+                 #{r\ 1166}#
+                 #{w\ 1167}#
+                 #{s\ 1168}#
+                 #{mod\ 1169}#)
+          ((lambda (#{tmp\ 1170}#)
+             ((lambda (#{tmp\ 1171}#)
+                (if (if #{tmp\ 1171}#
+                      (apply (lambda (#{_\ 1172}#
+                                      #{var\ 1173}#
+                                      #{val\ 1174}#
+                                      #{e1\ 1175}#
+                                      #{e2\ 1176}#)
+                               (#{valid-bound-ids?\ 156}# #{var\ 1173}#))
+                             #{tmp\ 1171}#)
                       #f)
-                  (apply (lambda (#{_\ 896}#
-                                  #{var\ 897}#
-                                  #{val\ 898}#
-                                  #{e1\ 899}#
-                                  #{e2\ 900}#)
-                           (let ((#{names\ 901}#
-                                   (map (lambda (#{x\ 902}#)
+                  (apply (lambda (#{_\ 1178}#
+                                  #{var\ 1179}#
+                                  #{val\ 1180}#
+                                  #{e1\ 1181}#
+                                  #{e2\ 1182}#)
+                           (let ((#{names\ 1183}#
+                                   (map (lambda (#{x\ 1184}#)
                                           (#{id-var-name\ 153}#
-                                            #{x\ 902}#
-                                            #{w\ 885}#))
-                                        #{var\ 897}#)))
+                                            #{x\ 1184}#
+                                            #{w\ 1167}#))
+                                        #{var\ 1179}#)))
                              (begin
                                (for-each
-                                 (lambda (#{id\ 904}# #{n\ 905}#)
-                                   (let ((#{atom-key\ 906}#
+                                 (lambda (#{id\ 1186}# #{n\ 1187}#)
+                                   (let ((#{atom-key\ 1188}#
                                            (#{binding-type\ 123}#
                                              (#{lookup\ 128}#
-                                               #{n\ 905}#
-                                               #{r\ 884}#
-                                               #{mod\ 887}#))))
-                                     (if (memv #{atom-key\ 906}#
+                                               #{n\ 1187}#
+                                               #{r\ 1166}#
+                                               #{mod\ 1169}#))))
+                                     (if (memv #{atom-key\ 1188}#
                                                '(displaced-lexical))
                                        (syntax-violation
                                          'fluid-let-syntax
                                          "identifier out of context"
-                                         #{e\ 883}#
+                                         #{e\ 1165}#
                                          (#{source-wrap\ 160}#
-                                           #{id\ 904}#
-                                           #{w\ 885}#
-                                           #{s\ 886}#
-                                           #{mod\ 887}#)))))
-                                 #{var\ 897}#
-                                 #{names\ 901}#)
+                                           #{id\ 1186}#
+                                           #{w\ 1167}#
+                                           #{s\ 1168}#
+                                           #{mod\ 1169}#)))))
+                                 #{var\ 1179}#
+                                 #{names\ 1183}#)
                                (#{chi-body\ 171}#
-                                 (cons #{e1\ 899}# #{e2\ 900}#)
+                                 (cons #{e1\ 1181}# #{e2\ 1182}#)
                                  (#{source-wrap\ 160}#
-                                   #{e\ 883}#
-                                   #{w\ 885}#
-                                   #{s\ 886}#
-                                   #{mod\ 887}#)
+                                   #{e\ 1165}#
+                                   #{w\ 1167}#
+                                   #{s\ 1168}#
+                                   #{mod\ 1169}#)
                                  (#{extend-env\ 125}#
-                                   #{names\ 901}#
-                                   (let ((#{trans-r\ 909}#
+                                   #{names\ 1183}#
+                                   (let ((#{trans-r\ 1191}#
                                            (#{macros-only-env\ 127}#
-                                             #{r\ 884}#)))
-                                     (map (lambda (#{x\ 910}#)
+                                             #{r\ 1166}#)))
+                                     (map (lambda (#{x\ 1192}#)
                                             (cons 'macro
                                                   (#{eval-local-transformer\ 
173}#
                                                     (#{chi\ 167}#
-                                                      #{x\ 910}#
-                                                      #{trans-r\ 909}#
-                                                      #{w\ 885}#
-                                                      #{mod\ 887}#)
-                                                    #{mod\ 887}#)))
-                                          #{val\ 898}#))
-                                   #{r\ 884}#)
-                                 #{w\ 885}#
-                                 #{mod\ 887}#))))
-                         #{tmp\ 889}#)
-                  ((lambda (#{_\ 912}#)
+                                                      #{x\ 1192}#
+                                                      #{trans-r\ 1191}#
+                                                      #{w\ 1167}#
+                                                      #{mod\ 1169}#)
+                                                    #{mod\ 1169}#)))
+                                          #{val\ 1180}#))
+                                   #{r\ 1166}#)
+                                 #{w\ 1167}#
+                                 #{mod\ 1169}#))))
+                         #{tmp\ 1171}#)
+                  ((lambda (#{_\ 1194}#)
                      (syntax-violation
                        'fluid-let-syntax
                        "bad syntax"
                        (#{source-wrap\ 160}#
-                         #{e\ 883}#
-                         #{w\ 885}#
-                         #{s\ 886}#
-                         #{mod\ 887}#)))
-                   #{tmp\ 888}#)))
+                         #{e\ 1165}#
+                         #{w\ 1167}#
+                         #{s\ 1168}#
+                         #{mod\ 1169}#)))
+                   #{tmp\ 1170}#)))
               ($sc-dispatch
-                #{tmp\ 888}#
+                #{tmp\ 1170}#
                 '(any #(each (any any)) any . each-any))))
-           #{e\ 883}#)))
+           #{e\ 1165}#)))
       (#{global-extend\ 129}#
         'core
         'quote
-        (lambda (#{e\ 913}#
-                 #{r\ 914}#
-                 #{w\ 915}#
-                 #{s\ 916}#
-                 #{mod\ 917}#)
-          ((lambda (#{tmp\ 918}#)
-             ((lambda (#{tmp\ 919}#)
-                (if #{tmp\ 919}#
-                  (apply (lambda (#{_\ 920}# #{e\ 921}#)
+        (lambda (#{e\ 1195}#
+                 #{r\ 1196}#
+                 #{w\ 1197}#
+                 #{s\ 1198}#
+                 #{mod\ 1199}#)
+          ((lambda (#{tmp\ 1200}#)
+             ((lambda (#{tmp\ 1201}#)
+                (if #{tmp\ 1201}#
+                  (apply (lambda (#{_\ 1202}# #{e\ 1203}#)
                            (#{build-data\ 109}#
-                             #{s\ 916}#
-                             (#{strip\ 176}# #{e\ 921}# #{w\ 915}#)))
-                         #{tmp\ 919}#)
-                  ((lambda (#{_\ 922}#)
+                             #{s\ 1198}#
+                             (#{strip\ 180}# #{e\ 1203}# #{w\ 1197}#)))
+                         #{tmp\ 1201}#)
+                  ((lambda (#{_\ 1204}#)
                      (syntax-violation
                        'quote
                        "bad syntax"
                        (#{source-wrap\ 160}#
-                         #{e\ 913}#
-                         #{w\ 915}#
-                         #{s\ 916}#
-                         #{mod\ 917}#)))
-                   #{tmp\ 918}#)))
-              ($sc-dispatch #{tmp\ 918}# (quote (any any)))))
-           #{e\ 913}#)))
+                         #{e\ 1195}#
+                         #{w\ 1197}#
+                         #{s\ 1198}#
+                         #{mod\ 1199}#)))
+                   #{tmp\ 1200}#)))
+              ($sc-dispatch #{tmp\ 1200}# (quote (any any)))))
+           #{e\ 1195}#)))
       (#{global-extend\ 129}#
         'core
         'syntax
-        (letrec ((#{regen\ 930}#
-                   (lambda (#{x\ 931}#)
-                     (let ((#{atom-key\ 932}# (car #{x\ 931}#)))
-                       (if (memv #{atom-key\ 932}# (quote (ref)))
+        (letrec ((#{regen\ 1212}#
+                   (lambda (#{x\ 1213}#)
+                     (let ((#{atom-key\ 1214}# (car #{x\ 1213}#)))
+                       (if (memv #{atom-key\ 1214}# (quote (ref)))
                          (#{build-lexical-reference\ 98}#
                            'value
                            #f
-                           (cadr #{x\ 931}#)
-                           (cadr #{x\ 931}#))
-                         (if (memv #{atom-key\ 932}# (quote (primitive)))
-                           (#{build-primref\ 108}# #f (cadr #{x\ 931}#))
-                           (if (memv #{atom-key\ 932}# (quote (quote)))
-                             (#{build-data\ 109}# #f (cadr #{x\ 931}#))
-                             (if (memv #{atom-key\ 932}# (quote (lambda)))
-                               (if (list? (cadr #{x\ 931}#))
+                           (cadr #{x\ 1213}#)
+                           (cadr #{x\ 1213}#))
+                         (if (memv #{atom-key\ 1214}# (quote (primitive)))
+                           (#{build-primref\ 108}# #f (cadr #{x\ 1213}#))
+                           (if (memv #{atom-key\ 1214}# (quote (quote)))
+                             (#{build-data\ 109}# #f (cadr #{x\ 1213}#))
+                             (if (memv #{atom-key\ 1214}# (quote (lambda)))
+                               (if (list? (cadr #{x\ 1213}#))
                                  (#{build-simple-lambda\ 105}#
                                    #f
-                                   (cadr #{x\ 931}#)
+                                   (cadr #{x\ 1213}#)
                                    #f
-                                   (cadr #{x\ 931}#)
+                                   (cadr #{x\ 1213}#)
                                    #f
-                                   (#{regen\ 930}# (caddr #{x\ 931}#)))
-                                 (error "how did we get here" #{x\ 931}#))
+                                   (#{regen\ 1212}# (caddr #{x\ 1213}#)))
+                                 (error "how did we get here" #{x\ 1213}#))
                                (#{build-application\ 96}#
                                  #f
-                                 (#{build-primref\ 108}# #f (car #{x\ 931}#))
-                                 (map #{regen\ 930}# (cdr #{x\ 931}#))))))))))
-                 (#{gen-vector\ 929}#
-                   (lambda (#{x\ 933}#)
-                     (if (eq? (car #{x\ 933}#) (quote list))
-                       (cons (quote vector) (cdr #{x\ 933}#))
-                       (if (eq? (car #{x\ 933}#) (quote quote))
+                                 (#{build-primref\ 108}# #f (car #{x\ 1213}#))
+                                 (map #{regen\ 1212}#
+                                      (cdr #{x\ 1213}#))))))))))
+                 (#{gen-vector\ 1211}#
+                   (lambda (#{x\ 1215}#)
+                     (if (eq? (car #{x\ 1215}#) (quote list))
+                       (cons (quote vector) (cdr #{x\ 1215}#))
+                       (if (eq? (car #{x\ 1215}#) (quote quote))
                          (list 'quote
-                               (list->vector (cadr #{x\ 933}#)))
-                         (list (quote list->vector) #{x\ 933}#)))))
-                 (#{gen-append\ 928}#
-                   (lambda (#{x\ 934}# #{y\ 935}#)
-                     (if (equal? #{y\ 935}# (quote (quote ())))
-                       #{x\ 934}#
-                       (list (quote append) #{x\ 934}# #{y\ 935}#))))
-                 (#{gen-cons\ 927}#
-                   (lambda (#{x\ 936}# #{y\ 937}#)
-                     (let ((#{atom-key\ 938}# (car #{y\ 937}#)))
-                       (if (memv #{atom-key\ 938}# (quote (quote)))
-                         (if (eq? (car #{x\ 936}#) (quote quote))
+                               (list->vector (cadr #{x\ 1215}#)))
+                         (list (quote list->vector) #{x\ 1215}#)))))
+                 (#{gen-append\ 1210}#
+                   (lambda (#{x\ 1216}# #{y\ 1217}#)
+                     (if (equal? #{y\ 1217}# (quote (quote ())))
+                       #{x\ 1216}#
+                       (list (quote append) #{x\ 1216}# #{y\ 1217}#))))
+                 (#{gen-cons\ 1209}#
+                   (lambda (#{x\ 1218}# #{y\ 1219}#)
+                     (let ((#{atom-key\ 1220}# (car #{y\ 1219}#)))
+                       (if (memv #{atom-key\ 1220}# (quote (quote)))
+                         (if (eq? (car #{x\ 1218}#) (quote quote))
                            (list 'quote
-                                 (cons (cadr #{x\ 936}#) (cadr #{y\ 937}#)))
-                           (if (eq? (cadr #{y\ 937}#) (quote ()))
-                             (list (quote list) #{x\ 936}#)
-                             (list (quote cons) #{x\ 936}# #{y\ 937}#)))
-                         (if (memv #{atom-key\ 938}# (quote (list)))
+                                 (cons (cadr #{x\ 1218}#) (cadr #{y\ 1219}#)))
+                           (if (eq? (cadr #{y\ 1219}#) (quote ()))
+                             (list (quote list) #{x\ 1218}#)
+                             (list (quote cons) #{x\ 1218}# #{y\ 1219}#)))
+                         (if (memv #{atom-key\ 1220}# (quote (list)))
                            (cons 'list
-                                 (cons #{x\ 936}# (cdr #{y\ 937}#)))
-                           (list (quote cons) #{x\ 936}# #{y\ 937}#))))))
-                 (#{gen-map\ 926}#
-                   (lambda (#{e\ 939}# #{map-env\ 940}#)
-                     (let ((#{formals\ 941}# (map cdr #{map-env\ 940}#))
-                           (#{actuals\ 942}#
-                             (map (lambda (#{x\ 943}#)
-                                    (list (quote ref) (car #{x\ 943}#)))
-                                  #{map-env\ 940}#)))
-                       (if (eq? (car #{e\ 939}#) (quote ref))
-                         (car #{actuals\ 942}#)
+                                 (cons #{x\ 1218}# (cdr #{y\ 1219}#)))
+                           (list (quote cons) #{x\ 1218}# #{y\ 1219}#))))))
+                 (#{gen-map\ 1208}#
+                   (lambda (#{e\ 1221}# #{map-env\ 1222}#)
+                     (let ((#{formals\ 1223}# (map cdr #{map-env\ 1222}#))
+                           (#{actuals\ 1224}#
+                             (map (lambda (#{x\ 1225}#)
+                                    (list (quote ref) (car #{x\ 1225}#)))
+                                  #{map-env\ 1222}#)))
+                       (if (eq? (car #{e\ 1221}#) (quote ref))
+                         (car #{actuals\ 1224}#)
                          (if (and-map
-                               (lambda (#{x\ 944}#)
-                                 (if (eq? (car #{x\ 944}#) (quote ref))
-                                   (memq (cadr #{x\ 944}#) #{formals\ 941}#)
+                               (lambda (#{x\ 1226}#)
+                                 (if (eq? (car #{x\ 1226}#) (quote ref))
+                                   (memq (cadr #{x\ 1226}#) #{formals\ 1223}#)
                                    #f))
-                               (cdr #{e\ 939}#))
+                               (cdr #{e\ 1221}#))
                            (cons 'map
                                  (cons (list 'primitive
-                                             (car #{e\ 939}#))
-                                       (map (let ((#{r\ 945}# (map cons
-                                                                   #{formals\ 
941}#
-                                                                   #{actuals\ 
942}#)))
-                                              (lambda (#{x\ 946}#)
-                                                (cdr (assq (cadr #{x\ 946}#)
-                                                           #{r\ 945}#))))
-                                            (cdr #{e\ 939}#))))
+                                             (car #{e\ 1221}#))
+                                       (map (let ((#{r\ 1227}#
+                                                    (map cons
+                                                         #{formals\ 1223}#
+                                                         #{actuals\ 1224}#)))
+                                              (lambda (#{x\ 1228}#)
+                                                (cdr (assq (cadr #{x\ 1228}#)
+                                                           #{r\ 1227}#))))
+                                            (cdr #{e\ 1221}#))))
                            (cons 'map
                                  (cons (list 'lambda
-                                             #{formals\ 941}#
-                                             #{e\ 939}#)
-                                       #{actuals\ 942}#)))))))
-                 (#{gen-mappend\ 925}#
-                   (lambda (#{e\ 947}# #{map-env\ 948}#)
+                                             #{formals\ 1223}#
+                                             #{e\ 1221}#)
+                                       #{actuals\ 1224}#)))))))
+                 (#{gen-mappend\ 1207}#
+                   (lambda (#{e\ 1229}# #{map-env\ 1230}#)
                      (list 'apply
                            '(primitive append)
-                           (#{gen-map\ 926}# #{e\ 947}# #{map-env\ 948}#))))
-                 (#{gen-ref\ 924}#
-                   (lambda (#{src\ 949}#
-                            #{var\ 950}#
-                            #{level\ 951}#
-                            #{maps\ 952}#)
-                     (if (#{fx=\ 88}# #{level\ 951}# 0)
-                       (values #{var\ 950}# #{maps\ 952}#)
-                       (if (null? #{maps\ 952}#)
+                           (#{gen-map\ 1208}# #{e\ 1229}# #{map-env\ 1230}#))))
+                 (#{gen-ref\ 1206}#
+                   (lambda (#{src\ 1231}#
+                            #{var\ 1232}#
+                            #{level\ 1233}#
+                            #{maps\ 1234}#)
+                     (if (#{fx=\ 88}# #{level\ 1233}# 0)
+                       (values #{var\ 1232}# #{maps\ 1234}#)
+                       (if (null? #{maps\ 1234}#)
                          (syntax-violation
                            'syntax
                            "missing ellipsis"
-                           #{src\ 949}#)
+                           #{src\ 1231}#)
                          (call-with-values
                            (lambda ()
-                             (#{gen-ref\ 924}#
-                               #{src\ 949}#
-                               #{var\ 950}#
-                               (#{fx-\ 87}# #{level\ 951}# 1)
-                               (cdr #{maps\ 952}#)))
-                           (lambda (#{outer-var\ 953}# #{outer-maps\ 954}#)
-                             (let ((#{b\ 955}# (assq #{outer-var\ 953}#
-                                                     (car #{maps\ 952}#))))
-                               (if #{b\ 955}#
-                                 (values (cdr #{b\ 955}#) #{maps\ 952}#)
-                                 (let ((#{inner-var\ 956}#
-                                         (#{gen-var\ 177}# (quote tmp))))
+                             (#{gen-ref\ 1206}#
+                               #{src\ 1231}#
+                               #{var\ 1232}#
+                               (#{fx-\ 87}# #{level\ 1233}# 1)
+                               (cdr #{maps\ 1234}#)))
+                           (lambda (#{outer-var\ 1235}# #{outer-maps\ 1236}#)
+                             (let ((#{b\ 1237}#
+                                     (assq #{outer-var\ 1235}#
+                                           (car #{maps\ 1234}#))))
+                               (if #{b\ 1237}#
+                                 (values (cdr #{b\ 1237}#) #{maps\ 1234}#)
+                                 (let ((#{inner-var\ 1238}#
+                                         (#{gen-var\ 181}# (quote tmp))))
                                    (values
-                                     #{inner-var\ 956}#
-                                     (cons (cons (cons #{outer-var\ 953}#
-                                                       #{inner-var\ 956}#)
-                                                 (car #{maps\ 952}#))
-                                           #{outer-maps\ 954}#)))))))))))
-                 (#{gen-syntax\ 923}#
-                   (lambda (#{src\ 957}#
-                            #{e\ 958}#
-                            #{r\ 959}#
-                            #{maps\ 960}#
-                            #{ellipsis?\ 961}#
-                            #{mod\ 962}#)
-                     (if (#{id?\ 131}# #{e\ 958}#)
-                       (let ((#{label\ 963}#
-                               (#{id-var-name\ 153}# #{e\ 958}# (quote (())))))
-                         (let ((#{b\ 964}# (#{lookup\ 128}#
-                                             #{label\ 963}#
-                                             #{r\ 959}#
-                                             #{mod\ 962}#)))
-                           (if (eq? (#{binding-type\ 123}# #{b\ 964}#)
+                                     #{inner-var\ 1238}#
+                                     (cons (cons (cons #{outer-var\ 1235}#
+                                                       #{inner-var\ 1238}#)
+                                                 (car #{maps\ 1234}#))
+                                           #{outer-maps\ 1236}#)))))))))))
+                 (#{gen-syntax\ 1205}#
+                   (lambda (#{src\ 1239}#
+                            #{e\ 1240}#
+                            #{r\ 1241}#
+                            #{maps\ 1242}#
+                            #{ellipsis?\ 1243}#
+                            #{mod\ 1244}#)
+                     (if (#{id?\ 131}# #{e\ 1240}#)
+                       (let ((#{label\ 1245}#
+                               (#{id-var-name\ 153}#
+                                 #{e\ 1240}#
+                                 '(()))))
+                         (let ((#{b\ 1246}#
+                                 (#{lookup\ 128}#
+                                   #{label\ 1245}#
+                                   #{r\ 1241}#
+                                   #{mod\ 1244}#)))
+                           (if (eq? (#{binding-type\ 123}# #{b\ 1246}#)
                                     'syntax)
                              (call-with-values
                                (lambda ()
-                                 (let ((#{var.lev\ 965}#
-                                         (#{binding-value\ 124}# #{b\ 964}#)))
-                                   (#{gen-ref\ 924}#
-                                     #{src\ 957}#
-                                     (car #{var.lev\ 965}#)
-                                     (cdr #{var.lev\ 965}#)
-                                     #{maps\ 960}#)))
-                               (lambda (#{var\ 966}# #{maps\ 967}#)
+                                 (let ((#{var.lev\ 1247}#
+                                         (#{binding-value\ 124}# #{b\ 1246}#)))
+                                   (#{gen-ref\ 1206}#
+                                     #{src\ 1239}#
+                                     (car #{var.lev\ 1247}#)
+                                     (cdr #{var.lev\ 1247}#)
+                                     #{maps\ 1242}#)))
+                               (lambda (#{var\ 1248}# #{maps\ 1249}#)
                                  (values
-                                   (list (quote ref) #{var\ 966}#)
-                                   #{maps\ 967}#)))
-                             (if (#{ellipsis?\ 961}# #{e\ 958}#)
+                                   (list (quote ref) #{var\ 1248}#)
+                                   #{maps\ 1249}#)))
+                             (if (#{ellipsis?\ 1243}# #{e\ 1240}#)
                                (syntax-violation
                                  'syntax
                                  "misplaced ellipsis"
-                                 #{src\ 957}#)
+                                 #{src\ 1239}#)
                                (values
-                                 (list (quote quote) #{e\ 958}#)
-                                 #{maps\ 960}#)))))
-                       ((lambda (#{tmp\ 968}#)
-                          ((lambda (#{tmp\ 969}#)
-                             (if (if #{tmp\ 969}#
-                                   (apply (lambda (#{dots\ 970}# #{e\ 971}#)
-                                            (#{ellipsis?\ 961}# #{dots\ 970}#))
-                                          #{tmp\ 969}#)
+                                 (list (quote quote) #{e\ 1240}#)
+                                 #{maps\ 1242}#)))))
+                       ((lambda (#{tmp\ 1250}#)
+                          ((lambda (#{tmp\ 1251}#)
+                             (if (if #{tmp\ 1251}#
+                                   (apply (lambda (#{dots\ 1252}# #{e\ 1253}#)
+                                            (#{ellipsis?\ 1243}#
+                                              #{dots\ 1252}#))
+                                          #{tmp\ 1251}#)
                                    #f)
-                               (apply (lambda (#{dots\ 972}# #{e\ 973}#)
-                                        (#{gen-syntax\ 923}#
-                                          #{src\ 957}#
-                                          #{e\ 973}#
-                                          #{r\ 959}#
-                                          #{maps\ 960}#
-                                          (lambda (#{x\ 974}#) #f)
-                                          #{mod\ 962}#))
-                                      #{tmp\ 969}#)
-                               ((lambda (#{tmp\ 975}#)
-                                  (if (if #{tmp\ 975}#
-                                        (apply (lambda (#{x\ 976}#
-                                                        #{dots\ 977}#
-                                                        #{y\ 978}#)
-                                                 (#{ellipsis?\ 961}#
-                                                   #{dots\ 977}#))
-                                               #{tmp\ 975}#)
+                               (apply (lambda (#{dots\ 1254}# #{e\ 1255}#)
+                                        (#{gen-syntax\ 1205}#
+                                          #{src\ 1239}#
+                                          #{e\ 1255}#
+                                          #{r\ 1241}#
+                                          #{maps\ 1242}#
+                                          (lambda (#{x\ 1256}#) #f)
+                                          #{mod\ 1244}#))
+                                      #{tmp\ 1251}#)
+                               ((lambda (#{tmp\ 1257}#)
+                                  (if (if #{tmp\ 1257}#
+                                        (apply (lambda (#{x\ 1258}#
+                                                        #{dots\ 1259}#
+                                                        #{y\ 1260}#)
+                                                 (#{ellipsis?\ 1243}#
+                                                   #{dots\ 1259}#))
+                                               #{tmp\ 1257}#)
                                         #f)
-                                    (apply (lambda (#{x\ 979}#
-                                                    #{dots\ 980}#
-                                                    #{y\ 981}#)
-                                             (letrec ((#{f\ 982}# (lambda 
(#{y\ 983}#
-                                                                           
#{k\ 984}#)
-                                                                    ((lambda 
(#{tmp\ 988}#)
-                                                                       
((lambda (#{tmp\ 989}#)
-                                                                          (if 
(if #{tmp\ 989}#
-                                                                               
 (apply (lambda (#{dots\ 990}#
-                                                                               
                 #{y\ 991}#)
-                                                                               
          (#{ellipsis?\ 961}#
-                                                                               
            #{dots\ 990}#))
-                                                                               
        #{tmp\ 989}#)
-                                                                               
 #f)
-                                                                            
(apply (lambda (#{dots\ 992}#
-                                                                               
             #{y\ 993}#)
-                                                                               
      (#{f\ 982}# #{y\ 993}#
-                                                                               
                  (lambda (#{maps\ 994}#)
-                                                                               
                    (call-with-values
-                                                                               
                      (lambda ()
-                                                                               
                        (#{k\ 984}# (cons '()
-                                                                               
                                          #{maps\ 994}#)))
-                                                                               
                      (lambda (#{x\ 995}#
-                                                                               
                               #{maps\ 996}#)
-                                                                               
                        (if (null? (car #{maps\ 996}#))
-                                                                               
                          (syntax-violation
-                                                                               
                            'syntax
-                                                                               
                            "extra ellipsis"
-                                                                               
                            #{src\ 957}#)
-                                                                               
                          (values
-                                                                               
                            (#{gen-mappend\ 925}#
-                                                                               
                              #{x\ 995}#
-                                                                               
                              (car #{maps\ 996}#))
-                                                                               
                            (cdr #{maps\ 996}#))))))))
-                                                                               
    #{tmp\ 989}#)
-                                                                            
((lambda (#{_\ 997}#)
+                                    (apply (lambda (#{x\ 1261}#
+                                                    #{dots\ 1262}#
+                                                    #{y\ 1263}#)
+                                             (letrec ((#{f\ 1264}#
+                                                        (lambda (#{y\ 1265}#
+                                                                 #{k\ 1266}#)
+                                                          ((lambda (#{tmp\ 
1270}#)
+                                                             ((lambda (#{tmp\ 
1271}#)
+                                                                (if (if #{tmp\ 
1271}#
+                                                                      (apply 
(lambda (#{dots\ 1272}#
+                                                                               
       #{y\ 1273}#)
+                                                                               
(#{ellipsis?\ 1243}#
+                                                                               
  #{dots\ 1272}#))
+                                                                             
#{tmp\ 1271}#)
+                                                                      #f)
+                                                                  (apply 
(lambda (#{dots\ 1274}#
+                                                                               
   #{y\ 1275}#)
+                                                                           
(#{f\ 1264}#
+                                                                             
#{y\ 1275}#
+                                                                             
(lambda (#{maps\ 1276}#)
                                                                                
(call-with-values
                                                                                
  (lambda ()
-                                                                               
    (#{gen-syntax\ 923}#
-                                                                               
      #{src\ 957}#
-                                                                               
      #{y\ 983}#
-                                                                               
      #{r\ 959}#
-                                                                               
      #{maps\ 960}#
-                                                                               
      #{ellipsis?\ 961}#
-                                                                               
      #{mod\ 962}#))
-                                                                               
  (lambda (#{y\ 998}#
-                                                                               
           #{maps\ 999}#)
-                                                                               
    (call-with-values
-                                                                               
      (lambda ()
-                                                                               
        (#{k\ 984}# #{maps\ 999}#))
-                                                                               
      (lambda (#{x\ 1000}#
-                                                                               
               #{maps\ 1001}#)
-                                                                               
        (values
-                                                                               
          (#{gen-append\ 928}#
-                                                                               
            #{x\ 1000}#
-                                                                               
            #{y\ 998}#)
-                                                                               
          #{maps\ 1001}#))))))
-                                                                             
#{tmp\ 988}#)))
-                                                                        
($sc-dispatch
-                                                                          
#{tmp\ 988}#
-                                                                          
'(any .
-                                                                               
 any))))
-                                                                     #{y\ 
983}#))))
-                                               (#{f\ 982}# #{y\ 981}#
-                                                           (lambda (#{maps\ 
985}#)
-                                                             (call-with-values
-                                                               (lambda ()
-                                                                 
(#{gen-syntax\ 923}#
-                                                                   #{src\ 957}#
-                                                                   #{x\ 979}#
-                                                                   #{r\ 959}#
-                                                                   (cons '()
-                                                                         
#{maps\ 985}#)
-                                                                   
#{ellipsis?\ 961}#
-                                                                   #{mod\ 
962}#))
-                                                               (lambda (#{x\ 
986}#
-                                                                        
#{maps\ 987}#)
-                                                                 (if (null? 
(car #{maps\ 987}#))
-                                                                   
(syntax-violation
-                                                                     'syntax
-                                                                     "extra 
ellipsis"
-                                                                     #{src\ 
957}#)
-                                                                   (values
-                                                                     
(#{gen-map\ 926}#
-                                                                       #{x\ 
986}#
-                                                                       (car 
#{maps\ 987}#))
-                                                                     (cdr 
#{maps\ 987}#)))))))))
-                                           #{tmp\ 975}#)
-                                    ((lambda (#{tmp\ 1002}#)
-                                       (if #{tmp\ 1002}#
-                                         (apply (lambda (#{x\ 1003}#
-                                                         #{y\ 1004}#)
+                                                                               
    (#{k\ 1266}#
+                                                                               
      (cons '()
+                                                                               
            #{maps\ 1276}#)))
+                                                                               
  (lambda (#{x\ 1277}#
+                                                                               
           #{maps\ 1278}#)
+                                                                               
    (if (null? (car #{maps\ 1278}#))
+                                                                               
      (syntax-violation
+                                                                               
        'syntax
+                                                                               
        "extra ellipsis"
+                                                                               
        #{src\ 1239}#)
+                                                                               
      (values
+                                                                               
        (#{gen-mappend\ 1207}#
+                                                                               
          #{x\ 1277}#
+                                                                               
          (car #{maps\ 1278}#))
+                                                                               
        (cdr #{maps\ 1278}#))))))))
+                                                                         
#{tmp\ 1271}#)
+                                                                  ((lambda 
(#{_\ 1279}#)
+                                                                     
(call-with-values
+                                                                       (lambda 
()
+                                                                         
(#{gen-syntax\ 1205}#
+                                                                           
#{src\ 1239}#
+                                                                           
#{y\ 1265}#
+                                                                           
#{r\ 1241}#
+                                                                           
#{maps\ 1242}#
+                                                                           
#{ellipsis?\ 1243}#
+                                                                           
#{mod\ 1244}#))
+                                                                       (lambda 
(#{y\ 1280}#
+                                                                               
 #{maps\ 1281}#)
+                                                                         
(call-with-values
+                                                                           
(lambda ()
+                                                                             
(#{k\ 1266}#
+                                                                               
#{maps\ 1281}#))
+                                                                           
(lambda (#{x\ 1282}#
+                                                                               
     #{maps\ 1283}#)
+                                                                             
(values
+                                                                               
(#{gen-append\ 1210}#
+                                                                               
  #{x\ 1282}#
+                                                                               
  #{y\ 1280}#)
+                                                                               
#{maps\ 1283}#))))))
+                                                                   #{tmp\ 
1270}#)))
+                                                              ($sc-dispatch
+                                                                #{tmp\ 1270}#
+                                                                '(any . any))))
+                                                           #{y\ 1265}#))))
+                                               (#{f\ 1264}#
+                                                 #{y\ 1263}#
+                                                 (lambda (#{maps\ 1267}#)
+                                                   (call-with-values
+                                                     (lambda ()
+                                                       (#{gen-syntax\ 1205}#
+                                                         #{src\ 1239}#
+                                                         #{x\ 1261}#
+                                                         #{r\ 1241}#
+                                                         (cons '()
+                                                               #{maps\ 1267}#)
+                                                         #{ellipsis?\ 1243}#
+                                                         #{mod\ 1244}#))
+                                                     (lambda (#{x\ 1268}#
+                                                              #{maps\ 1269}#)
+                                                       (if (null? (car #{maps\ 
1269}#))
+                                                         (syntax-violation
+                                                           'syntax
+                                                           "extra ellipsis"
+                                                           #{src\ 1239}#)
+                                                         (values
+                                                           (#{gen-map\ 1208}#
+                                                             #{x\ 1268}#
+                                                             (car #{maps\ 
1269}#))
+                                                           (cdr #{maps\ 
1269}#)))))))))
+                                           #{tmp\ 1257}#)
+                                    ((lambda (#{tmp\ 1284}#)
+                                       (if #{tmp\ 1284}#
+                                         (apply (lambda (#{x\ 1285}#
+                                                         #{y\ 1286}#)
                                                   (call-with-values
                                                     (lambda ()
-                                                      (#{gen-syntax\ 923}#
-                                                        #{src\ 957}#
-                                                        #{x\ 1003}#
-                                                        #{r\ 959}#
-                                                        #{maps\ 960}#
-                                                        #{ellipsis?\ 961}#
-                                                        #{mod\ 962}#))
-                                                    (lambda (#{x\ 1005}#
-                                                             #{maps\ 1006}#)
+                                                      (#{gen-syntax\ 1205}#
+                                                        #{src\ 1239}#
+                                                        #{x\ 1285}#
+                                                        #{r\ 1241}#
+                                                        #{maps\ 1242}#
+                                                        #{ellipsis?\ 1243}#
+                                                        #{mod\ 1244}#))
+                                                    (lambda (#{x\ 1287}#
+                                                             #{maps\ 1288}#)
                                                       (call-with-values
                                                         (lambda ()
-                                                          (#{gen-syntax\ 923}#
-                                                            #{src\ 957}#
-                                                            #{y\ 1004}#
-                                                            #{r\ 959}#
-                                                            #{maps\ 1006}#
-                                                            #{ellipsis?\ 961}#
-                                                            #{mod\ 962}#))
-                                                        (lambda (#{y\ 1007}#
-                                                                 #{maps\ 
1008}#)
+                                                          (#{gen-syntax\ 1205}#
+                                                            #{src\ 1239}#
+                                                            #{y\ 1286}#
+                                                            #{r\ 1241}#
+                                                            #{maps\ 1288}#
+                                                            #{ellipsis?\ 1243}#
+                                                            #{mod\ 1244}#))
+                                                        (lambda (#{y\ 1289}#
+                                                                 #{maps\ 
1290}#)
                                                           (values
-                                                            (#{gen-cons\ 927}#
-                                                              #{x\ 1005}#
-                                                              #{y\ 1007}#)
-                                                            #{maps\ 
1008}#))))))
-                                                #{tmp\ 1002}#)
-                                         ((lambda (#{tmp\ 1009}#)
-                                            (if #{tmp\ 1009}#
-                                              (apply (lambda (#{e1\ 1010}#
-                                                              #{e2\ 1011}#)
+                                                            (#{gen-cons\ 1209}#
+                                                              #{x\ 1287}#
+                                                              #{y\ 1289}#)
+                                                            #{maps\ 
1290}#))))))
+                                                #{tmp\ 1284}#)
+                                         ((lambda (#{tmp\ 1291}#)
+                                            (if #{tmp\ 1291}#
+                                              (apply (lambda (#{e1\ 1292}#
+                                                              #{e2\ 1293}#)
                                                        (call-with-values
                                                          (lambda ()
-                                                           (#{gen-syntax\ 923}#
-                                                             #{src\ 957}#
-                                                             (cons #{e1\ 1010}#
-                                                                   #{e2\ 
1011}#)
-                                                             #{r\ 959}#
-                                                             #{maps\ 960}#
-                                                             #{ellipsis?\ 961}#
-                                                             #{mod\ 962}#))
-                                                         (lambda (#{e\ 1013}#
-                                                                  #{maps\ 
1014}#)
+                                                           (#{gen-syntax\ 
1205}#
+                                                             #{src\ 1239}#
+                                                             (cons #{e1\ 1292}#
+                                                                   #{e2\ 
1293}#)
+                                                             #{r\ 1241}#
+                                                             #{maps\ 1242}#
+                                                             #{ellipsis?\ 
1243}#
+                                                             #{mod\ 1244}#))
+                                                         (lambda (#{e\ 1295}#
+                                                                  #{maps\ 
1296}#)
                                                            (values
-                                                             (#{gen-vector\ 
929}#
-                                                               #{e\ 1013}#)
-                                                             #{maps\ 1014}#))))
-                                                     #{tmp\ 1009}#)
-                                              ((lambda (#{_\ 1015}#)
+                                                             (#{gen-vector\ 
1211}#
+                                                               #{e\ 1295}#)
+                                                             #{maps\ 1296}#))))
+                                                     #{tmp\ 1291}#)
+                                              ((lambda (#{_\ 1297}#)
                                                  (values
                                                    (list 'quote
-                                                         #{e\ 958}#)
-                                                   #{maps\ 960}#))
-                                               #{tmp\ 968}#)))
+                                                         #{e\ 1240}#)
+                                                   #{maps\ 1242}#))
+                                               #{tmp\ 1250}#)))
                                           ($sc-dispatch
-                                            #{tmp\ 968}#
+                                            #{tmp\ 1250}#
                                             '#(vector (any . each-any))))))
                                      ($sc-dispatch
-                                       #{tmp\ 968}#
+                                       #{tmp\ 1250}#
                                        '(any . any)))))
                                 ($sc-dispatch
-                                  #{tmp\ 968}#
+                                  #{tmp\ 1250}#
                                   '(any any . any)))))
-                           ($sc-dispatch #{tmp\ 968}# (quote (any any)))))
-                        #{e\ 958}#)))))
-          (lambda (#{e\ 1016}#
-                   #{r\ 1017}#
-                   #{w\ 1018}#
-                   #{s\ 1019}#
-                   #{mod\ 1020}#)
-            (let ((#{e\ 1021}#
+                           ($sc-dispatch #{tmp\ 1250}# (quote (any any)))))
+                        #{e\ 1240}#)))))
+          (lambda (#{e\ 1298}#
+                   #{r\ 1299}#
+                   #{w\ 1300}#
+                   #{s\ 1301}#
+                   #{mod\ 1302}#)
+            (let ((#{e\ 1303}#
                     (#{source-wrap\ 160}#
-                      #{e\ 1016}#
-                      #{w\ 1018}#
-                      #{s\ 1019}#
-                      #{mod\ 1020}#)))
-              ((lambda (#{tmp\ 1022}#)
-                 ((lambda (#{tmp\ 1023}#)
-                    (if #{tmp\ 1023}#
-                      (apply (lambda (#{_\ 1024}# #{x\ 1025}#)
+                      #{e\ 1298}#
+                      #{w\ 1300}#
+                      #{s\ 1301}#
+                      #{mod\ 1302}#)))
+              ((lambda (#{tmp\ 1304}#)
+                 ((lambda (#{tmp\ 1305}#)
+                    (if #{tmp\ 1305}#
+                      (apply (lambda (#{_\ 1306}# #{x\ 1307}#)
                                (call-with-values
                                  (lambda ()
-                                   (#{gen-syntax\ 923}#
-                                     #{e\ 1021}#
-                                     #{x\ 1025}#
-                                     #{r\ 1017}#
+                                   (#{gen-syntax\ 1205}#
+                                     #{e\ 1303}#
+                                     #{x\ 1307}#
+                                     #{r\ 1299}#
                                      '()
                                      #{ellipsis?\ 175}#
-                                     #{mod\ 1020}#))
-                                 (lambda (#{e\ 1026}# #{maps\ 1027}#)
-                                   (#{regen\ 930}# #{e\ 1026}#))))
-                             #{tmp\ 1023}#)
-                      ((lambda (#{_\ 1028}#)
+                                     #{mod\ 1302}#))
+                                 (lambda (#{e\ 1308}# #{maps\ 1309}#)
+                                   (#{regen\ 1212}# #{e\ 1308}#))))
+                             #{tmp\ 1305}#)
+                      ((lambda (#{_\ 1310}#)
                          (syntax-violation
                            'syntax
                            "bad `syntax' form"
-                           #{e\ 1021}#))
-                       #{tmp\ 1022}#)))
-                  ($sc-dispatch #{tmp\ 1022}# (quote (any any)))))
-               #{e\ 1021}#)))))
+                           #{e\ 1303}#))
+                       #{tmp\ 1304}#)))
+                  ($sc-dispatch #{tmp\ 1304}# (quote (any any)))))
+               #{e\ 1303}#)))))
       (#{global-extend\ 129}#
         'core
         'lambda
-        (lambda (#{e\ 1029}#
-                 #{r\ 1030}#
-                 #{w\ 1031}#
-                 #{s\ 1032}#
-                 #{mod\ 1033}#)
-          (letrec ((#{docstring&body\ 1034}#
-                     (lambda (#{ids\ 1035}#
-                              #{vars\ 1036}#
-                              #{labels\ 1037}#
-                              #{c\ 1038}#)
-                       ((lambda (#{tmp\ 1039}#)
-                          ((lambda (#{tmp\ 1040}#)
-                             (if (if #{tmp\ 1040}#
-                                   (apply (lambda (#{docstring\ 1041}#
-                                                   #{e1\ 1042}#
-                                                   #{e2\ 1043}#)
-                                            (string?
-                                              (syntax->datum
-                                                #{docstring\ 1041}#)))
-                                          #{tmp\ 1040}#)
-                                   #f)
-                               (apply (lambda (#{docstring\ 1044}#
-                                               #{e1\ 1045}#
-                                               #{e2\ 1046}#)
-                                        (values
-                                          (syntax->datum #{docstring\ 1044}#)
-                                          (#{chi-body\ 171}#
-                                            (cons #{e1\ 1045}# #{e2\ 1046}#)
-                                            (#{source-wrap\ 160}#
-                                              #{e\ 1029}#
-                                              #{w\ 1031}#
-                                              #{s\ 1032}#
-                                              #{mod\ 1033}#)
-                                            (#{extend-var-env\ 126}#
-                                              #{labels\ 1037}#
-                                              #{vars\ 1036}#
-                                              #{r\ 1030}#)
-                                            (#{make-binding-wrap\ 148}#
-                                              #{ids\ 1035}#
-                                              #{labels\ 1037}#
-                                              #{w\ 1031}#)
-                                            #{mod\ 1033}#)))
-                                      #{tmp\ 1040}#)
-                               ((lambda (#{tmp\ 1048}#)
-                                  (if #{tmp\ 1048}#
-                                    (apply (lambda (#{e1\ 1049}# #{e2\ 1050}#)
-                                             (values
-                                               #f
-                                               (#{chi-body\ 171}#
-                                                 (cons #{e1\ 1049}#
-                                                       #{e2\ 1050}#)
-                                                 (#{source-wrap\ 160}#
-                                                   #{e\ 1029}#
-                                                   #{w\ 1031}#
-                                                   #{s\ 1032}#
-                                                   #{mod\ 1033}#)
-                                                 (#{extend-var-env\ 126}#
-                                                   #{labels\ 1037}#
-                                                   #{vars\ 1036}#
-                                                   #{r\ 1030}#)
-                                                 (#{make-binding-wrap\ 148}#
-                                                   #{ids\ 1035}#
-                                                   #{labels\ 1037}#
-                                                   #{w\ 1031}#)
-                                                 #{mod\ 1033}#)))
-                                           #{tmp\ 1048}#)
-                                    (syntax-violation
+        (lambda (#{e\ 1311}#
+                 #{r\ 1312}#
+                 #{w\ 1313}#
+                 #{s\ 1314}#
+                 #{mod\ 1315}#)
+          ((lambda (#{tmp\ 1316}#)
+             ((lambda (#{tmp\ 1317}#)
+                (if (if #{tmp\ 1317}#
+                      (apply (lambda (#{_\ 1318}#
+                                      #{args\ 1319}#
+                                      #{docstring\ 1320}#
+                                      #{e1\ 1321}#
+                                      #{e2\ 1322}#)
+                               (string? (syntax->datum #{docstring\ 1320}#)))
+                             #{tmp\ 1317}#)
+                      #f)
+                  (apply (lambda (#{_\ 1323}#
+                                  #{args\ 1324}#
+                                  #{docstring\ 1325}#
+                                  #{e1\ 1326}#
+                                  #{e2\ 1327}#)
+                           (call-with-values
+                             (lambda ()
+                               (#{lambda-formals\ 176}# #{args\ 1324}#))
+                             (lambda (#{req\ 1328}#
+                                      #{opt\ 1329}#
+                                      #{rest\ 1330}#
+                                      #{kw\ 1331}#)
+                               (#{chi-simple-lambda\ 177}#
+                                 #{e\ 1311}#
+                                 #{r\ 1312}#
+                                 #{w\ 1313}#
+                                 #{s\ 1314}#
+                                 #{mod\ 1315}#
+                                 #{req\ 1328}#
+                                 #{rest\ 1330}#
+                                 (syntax->datum #{docstring\ 1325}#)
+                                 (cons #{e1\ 1326}# #{e2\ 1327}#)))))
+                         #{tmp\ 1317}#)
+                  ((lambda (#{tmp\ 1333}#)
+                     (if #{tmp\ 1333}#
+                       (apply (lambda (#{_\ 1334}#
+                                       #{args\ 1335}#
+                                       #{e1\ 1336}#
+                                       #{e2\ 1337}#)
+                                (call-with-values
+                                  (lambda ()
+                                    (#{lambda-formals\ 176}# #{args\ 1335}#))
+                                  (lambda (#{req\ 1338}#
+                                           #{opt\ 1339}#
+                                           #{rest\ 1340}#
+                                           #{kw\ 1341}#)
+                                    (#{chi-simple-lambda\ 177}#
+                                      #{e\ 1311}#
+                                      #{r\ 1312}#
+                                      #{w\ 1313}#
+                                      #{s\ 1314}#
+                                      #{mod\ 1315}#
+                                      #{req\ 1338}#
+                                      #{rest\ 1340}#
                                       #f
-                                      "source expression failed to match any 
pattern"
-                                      #{tmp\ 1039}#)))
-                                ($sc-dispatch
-                                  #{tmp\ 1039}#
-                                  '(any . each-any)))))
-                           ($sc-dispatch
-                             #{tmp\ 1039}#
-                             '(any any . each-any))))
-                        #{c\ 1038}#))))
-            ((lambda (#{tmp\ 1052}#)
-               ((lambda (#{tmp\ 1053}#)
-                  (if #{tmp\ 1053}#
-                    (apply (lambda (#{_\ 1054}#
-                                    #{id\ 1055}#
-                                    #{e1\ 1056}#
-                                    #{e2\ 1057}#)
-                             (let ((#{ids\ 1058}# #{id\ 1055}#))
-                               (if (not (#{valid-bound-ids?\ 156}#
-                                          #{ids\ 1058}#))
-                                 (syntax-violation
-                                   'lambda
-                                   "invalid parameter list"
-                                   #{e\ 1029}#)
-                                 (let ((#{vars\ 1060}#
-                                         (map #{gen-var\ 177}# #{ids\ 1058}#))
-                                       (#{labels\ 1061}#
-                                         (#{gen-labels\ 137}# #{ids\ 1058}#)))
-                                   (call-with-values
-                                     (lambda ()
-                                       (#{docstring&body\ 1034}#
-                                         #{ids\ 1058}#
-                                         #{vars\ 1060}#
-                                         #{labels\ 1061}#
-                                         (cons #{e1\ 1056}# #{e2\ 1057}#)))
-                                     (lambda (#{docstring\ 1063}#
-                                              #{body\ 1064}#)
-                                       (#{build-simple-lambda\ 105}#
-                                         #{s\ 1032}#
-                                         (map syntax->datum #{ids\ 1058}#)
-                                         #f
-                                         #{vars\ 1060}#
-                                         #{docstring\ 1063}#
-                                         #{body\ 1064}#)))))))
-                           #{tmp\ 1053}#)
-                    ((lambda (#{tmp\ 1065}#)
-                       (if #{tmp\ 1065}#
-                         (apply (lambda (#{_\ 1066}#
-                                         #{ids\ 1067}#
-                                         #{e1\ 1068}#
-                                         #{e2\ 1069}#)
-                                  (let ((#{rids\ 1070}#
-                                          (#{lambda-var-list\ 178}#
-                                            #{ids\ 1067}#)))
-                                    (if (not (#{valid-bound-ids?\ 156}#
-                                               #{rids\ 1070}#))
-                                      (syntax-violation
-                                        'lambda
-                                        "invalid parameter list"
-                                        #{e\ 1029}#)
-                                      (let ((#{req\ 1071}#
-                                              (reverse (cdr #{rids\ 1070}#))))
-                                        (let ((#{rest\ 1072}#
-                                                (car #{rids\ 1070}#)))
-                                          (let ((#{rrids\ 1073}#
-                                                  (reverse #{rids\ 1070}#)))
-                                            (let ((#{vars\ 1074}#
-                                                    (map #{gen-var\ 177}#
-                                                         #{rrids\ 1073}#)))
-                                              (let ((#{labels\ 1075}#
-                                                      (#{gen-labels\ 137}#
-                                                        #{rrids\ 1073}#)))
-                                                (call-with-values
-                                                  (lambda ()
-                                                    (#{docstring&body\ 1034}#
-                                                      #{rrids\ 1073}#
-                                                      #{vars\ 1074}#
-                                                      #{labels\ 1075}#
-                                                      (cons #{e1\ 1068}#
-                                                            #{e2\ 1069}#)))
-                                                  (lambda (#{docstring\ 1077}#
-                                                           #{body\ 1078}#)
-                                                    (#{build-simple-lambda\ 
105}#
-                                                      #{s\ 1032}#
-                                                      (map syntax->datum
-                                                           #{req\ 1071}#)
-                                                      (syntax->datum
-                                                        #{rest\ 1072}#)
-                                                      #{vars\ 1074}#
-                                                      #{docstring\ 1077}#
-                                                      #{body\ 1078}#)))))))))))
-                                #{tmp\ 1065}#)
-                         ((lambda (#{_\ 1079}#)
-                            (syntax-violation
-                              'lambda
-                              "bad lambda"
-                              #{e\ 1029}#))
-                          #{tmp\ 1052}#)))
-                     ($sc-dispatch
-                       #{tmp\ 1052}#
-                       '(any any any . each-any)))))
-                ($sc-dispatch
-                  #{tmp\ 1052}#
-                  '(any each-any any . each-any))))
-             #{e\ 1029}#))))
+                                      (cons #{e1\ 1336}# #{e2\ 1337}#)))))
+                              #{tmp\ 1333}#)
+                       ((lambda (#{_\ 1343}#)
+                          (syntax-violation
+                            'lambda
+                            "bad lambda"
+                            #{e\ 1311}#))
+                        #{tmp\ 1316}#)))
+                   ($sc-dispatch
+                     #{tmp\ 1316}#
+                     '(any any any . each-any)))))
+              ($sc-dispatch
+                #{tmp\ 1316}#
+                '(any any any any . each-any))))
+           #{e\ 1311}#)))
       (#{global-extend\ 129}#
         'core
         'lambda*
-        (lambda (#{e\ 1080}#
-                 #{r\ 1081}#
-                 #{w\ 1082}#
-                 #{s\ 1083}#
-                 #{mod\ 1084}#)
-          (letrec ((#{expand-body\ 1092}#
-                     (lambda (#{req\ 1093}#
-                              #{opt\ 1094}#
-                              #{rest\ 1095}#
-                              #{kw\ 1096}#
-                              #{body\ 1097}#
-                              #{vars\ 1098}#
-                              #{r*\ 1099}#
-                              #{w*\ 1100}#
-                              #{inits\ 1101}#)
-                       ((lambda (#{tmp\ 1102}#)
-                          ((lambda (#{tmp\ 1103}#)
-                             (if (if #{tmp\ 1103}#
-                                   (apply (lambda (#{docstring\ 1104}#
-                                                   #{e1\ 1105}#
-                                                   #{e2\ 1106}#)
-                                            (string?
-                                              (syntax->datum
-                                                #{docstring\ 1104}#)))
-                                          #{tmp\ 1103}#)
-                                   #f)
-                               (apply (lambda (#{docstring\ 1107}#
-                                               #{e1\ 1108}#
-                                               #{e2\ 1109}#)
-                                        (values
-                                          (syntax->datum #{docstring\ 1107}#)
-                                          #{req\ 1093}#
-                                          #{opt\ 1094}#
-                                          #{rest\ 1095}#
-                                          #{kw\ 1096}#
-                                          #{inits\ 1101}#
-                                          #{vars\ 1098}#
-                                          #f
-                                          (#{chi-body\ 171}#
-                                            (cons #{e1\ 1108}# #{e2\ 1109}#)
-                                            (#{source-wrap\ 160}#
-                                              #{e\ 1080}#
-                                              #{w\ 1082}#
-                                              #{s\ 1083}#
-                                              #{mod\ 1084}#)
-                                            #{r*\ 1099}#
-                                            #{w*\ 1100}#
-                                            #{mod\ 1084}#)))
-                                      #{tmp\ 1103}#)
-                               ((lambda (#{tmp\ 1111}#)
-                                  (if #{tmp\ 1111}#
-                                    (apply (lambda (#{e1\ 1112}# #{e2\ 1113}#)
-                                             (values
-                                               #f
-                                               #{req\ 1093}#
-                                               #{opt\ 1094}#
-                                               #{rest\ 1095}#
-                                               #{kw\ 1096}#
-                                               #{inits\ 1101}#
-                                               #{vars\ 1098}#
-                                               #f
-                                               (#{chi-body\ 171}#
-                                                 (cons #{e1\ 1112}#
-                                                       #{e2\ 1113}#)
-                                                 (#{source-wrap\ 160}#
-                                                   #{e\ 1080}#
-                                                   #{w\ 1082}#
-                                                   #{s\ 1083}#
-                                                   #{mod\ 1084}#)
-                                                 #{r*\ 1099}#
-                                                 #{w*\ 1100}#
-                                                 #{mod\ 1084}#)))
-                                           #{tmp\ 1111}#)
-                                    (syntax-violation
-                                      #f
-                                      "source expression failed to match any 
pattern"
-                                      #{tmp\ 1102}#)))
-                                ($sc-dispatch
-                                  #{tmp\ 1102}#
-                                  '(any . each-any)))))
-                           ($sc-dispatch
-                             #{tmp\ 1102}#
-                             '(any any . each-any))))
-                        #{body\ 1097}#)))
-                   (#{expand-kw\ 1091}#
-                     (lambda (#{req\ 1115}#
-                              #{opt\ 1116}#
-                              #{rest\ 1117}#
-                              #{kw\ 1118}#
-                              #{body\ 1119}#
-                              #{vars\ 1120}#
-                              #{r*\ 1121}#
-                              #{w*\ 1122}#
-                              #{aok\ 1123}#
-                              #{out\ 1124}#
-                              #{inits\ 1125}#)
-                       (if (pair? #{kw\ 1118}#)
-                         ((lambda (#{tmp\ 1126}#)
-                            ((lambda (#{tmp\ 1127}#)
-                               (if #{tmp\ 1127}#
-                                 (apply (lambda (#{k\ 1128}#
-                                                 #{id\ 1129}#
-                                                 #{i\ 1130}#)
-                                          (let ((#{v\ 1131}#
-                                                  (#{gen-var\ 177}#
-                                                    #{id\ 1129}#)))
-                                            (let ((#{l\ 1132}#
-                                                    (#{gen-labels\ 137}#
-                                                      (list #{v\ 1131}#))))
-                                              (let ((#{r**\ 1133}#
-                                                      (#{extend-var-env\ 126}#
-                                                        #{l\ 1132}#
-                                                        (list #{v\ 1131}#)
-                                                        #{r*\ 1121}#)))
-                                                (let ((#{w**\ 1134}#
-                                                        (#{make-binding-wrap\ 
148}#
-                                                          (list #{id\ 1129}#)
-                                                          #{l\ 1132}#
-                                                          #{w*\ 1122}#)))
-                                                  (#{expand-kw\ 1091}#
-                                                    #{req\ 1115}#
-                                                    #{opt\ 1116}#
-                                                    #{rest\ 1117}#
-                                                    (cdr #{kw\ 1118}#)
-                                                    #{body\ 1119}#
-                                                    (cons #{v\ 1131}#
-                                                          #{vars\ 1120}#)
-                                                    #{r**\ 1133}#
-                                                    #{w**\ 1134}#
-                                                    #{aok\ 1123}#
-                                                    (cons (list (syntax->datum
-                                                                  #{k\ 1128}#)
-                                                                (syntax->datum
-                                                                  #{id\ 1129}#)
-                                                                #{v\ 1131}#)
-                                                          #{out\ 1124}#)
-                                                    (cons (#{chi\ 167}#
-                                                            #{i\ 1130}#
-                                                            #{r*\ 1121}#
-                                                            #{w*\ 1122}#
-                                                            #{mod\ 1084}#)
-                                                          #{inits\ 
1125}#)))))))
-                                        #{tmp\ 1127}#)
-                                 (syntax-violation
-                                   #f
-                                   "source expression failed to match any 
pattern"
-                                   #{tmp\ 1126}#)))
-                             ($sc-dispatch
-                               #{tmp\ 1126}#
-                               '(any any any))))
-                          (car #{kw\ 1118}#))
-                         (#{expand-body\ 1092}#
-                           #{req\ 1115}#
-                           #{opt\ 1116}#
-                           #{rest\ 1117}#
-                           (if (let ((#{t\ 1135}# #{aok\ 1123}#))
-                                 (if #{t\ 1135}#
-                                   #{t\ 1135}#
-                                   (pair? #{out\ 1124}#)))
-                             (cons #{aok\ 1123}# (reverse #{out\ 1124}#))
-                             #f)
-                           #{body\ 1119}#
-                           (reverse #{vars\ 1120}#)
-                           #{r*\ 1121}#
-                           #{w*\ 1122}#
-                           (reverse #{inits\ 1125}#)))))
-                   (#{expand-opt\ 1090}#
-                     (lambda (#{req\ 1136}#
-                              #{opt\ 1137}#
-                              #{rest\ 1138}#
-                              #{kw\ 1139}#
-                              #{body\ 1140}#
-                              #{vars\ 1141}#
-                              #{r*\ 1142}#
-                              #{w*\ 1143}#
-                              #{out\ 1144}#
-                              #{inits\ 1145}#)
-                       (if (pair? #{opt\ 1137}#)
-                         ((lambda (#{tmp\ 1146}#)
-                            ((lambda (#{tmp\ 1147}#)
-                               (if #{tmp\ 1147}#
-                                 (apply (lambda (#{id\ 1148}# #{i\ 1149}#)
-                                          (let ((#{v\ 1150}#
-                                                  (#{gen-var\ 177}#
-                                                    #{id\ 1148}#)))
-                                            (let ((#{l\ 1151}#
-                                                    (#{gen-labels\ 137}#
-                                                      (list #{v\ 1150}#))))
-                                              (let ((#{r**\ 1152}#
-                                                      (#{extend-var-env\ 126}#
-                                                        #{l\ 1151}#
-                                                        (list #{v\ 1150}#)
-                                                        #{r*\ 1142}#)))
-                                                (let ((#{w**\ 1153}#
-                                                        (#{make-binding-wrap\ 
148}#
-                                                          (list #{id\ 1148}#)
-                                                          #{l\ 1151}#
-                                                          #{w*\ 1143}#)))
-                                                  (#{expand-opt\ 1090}#
-                                                    #{req\ 1136}#
-                                                    (cdr #{opt\ 1137}#)
-                                                    #{rest\ 1138}#
-                                                    #{kw\ 1139}#
-                                                    #{body\ 1140}#
-                                                    (cons #{v\ 1150}#
-                                                          #{vars\ 1141}#)
-                                                    #{r**\ 1152}#
-                                                    #{w**\ 1153}#
-                                                    (cons (syntax->datum
-                                                            #{id\ 1148}#)
-                                                          #{out\ 1144}#)
-                                                    (cons (#{chi\ 167}#
-                                                            #{i\ 1149}#
-                                                            #{r*\ 1142}#
-                                                            #{w*\ 1143}#
-                                                            #{mod\ 1084}#)
-                                                          #{inits\ 
1145}#)))))))
-                                        #{tmp\ 1147}#)
-                                 (syntax-violation
-                                   #f
-                                   "source expression failed to match any 
pattern"
-                                   #{tmp\ 1146}#)))
-                             ($sc-dispatch #{tmp\ 1146}# (quote (any any)))))
-                          (car #{opt\ 1137}#))
-                         (if #{rest\ 1138}#
-                           (let ((#{v\ 1154}#
-                                   (#{gen-var\ 177}# #{rest\ 1138}#)))
-                             (let ((#{l\ 1155}#
-                                     (#{gen-labels\ 137}# (list #{v\ 1154}#))))
-                               (let ((#{r*\ 1156}#
-                                       (#{extend-var-env\ 126}#
-                                         #{l\ 1155}#
-                                         (list #{v\ 1154}#)
-                                         #{r*\ 1142}#)))
-                                 (let ((#{w*\ 1157}#
-                                         (#{make-binding-wrap\ 148}#
-                                           (list #{rest\ 1138}#)
-                                           #{l\ 1155}#
-                                           #{w*\ 1143}#)))
-                                   (#{expand-kw\ 1091}#
-                                     #{req\ 1136}#
-                                     (if (pair? #{out\ 1144}#)
-                                       (reverse #{out\ 1144}#)
-                                       #f)
-                                     (syntax->datum #{rest\ 1138}#)
-                                     (if (pair? #{kw\ 1139}#)
-                                       (cdr #{kw\ 1139}#)
-                                       #{kw\ 1139}#)
-                                     #{body\ 1140}#
-                                     (cons #{v\ 1154}# #{vars\ 1141}#)
-                                     #{r*\ 1156}#
-                                     #{w*\ 1157}#
-                                     (if (pair? #{kw\ 1139}#)
-                                       (car #{kw\ 1139}#)
-                                       #f)
-                                     '()
-                                     #{inits\ 1145}#)))))
-                           (#{expand-kw\ 1091}#
-                             #{req\ 1136}#
-                             (if (pair? #{out\ 1144}#)
-                               (reverse #{out\ 1144}#)
-                               #f)
-                             #f
-                             (if (pair? #{kw\ 1139}#)
-                               (cdr #{kw\ 1139}#)
-                               #{kw\ 1139}#)
-                             #{body\ 1140}#
-                             #{vars\ 1141}#
-                             #{r*\ 1142}#
-                             #{w*\ 1143}#
-                             (if (pair? #{kw\ 1139}#) (car #{kw\ 1139}#) #f)
-                             '()
-                             #{inits\ 1145}#)))))
-                   (#{expand-req\ 1089}#
-                     (lambda (#{req\ 1158}#
-                              #{opt\ 1159}#
-                              #{rest\ 1160}#
-                              #{kw\ 1161}#
-                              #{body\ 1162}#)
-                       (let ((#{vars\ 1163}#
-                               (map #{gen-var\ 177}# #{req\ 1158}#))
-                             (#{labels\ 1164}#
-                               (#{gen-labels\ 137}# #{req\ 1158}#)))
-                         (let ((#{r*\ 1165}#
-                                 (#{extend-var-env\ 126}#
-                                   #{labels\ 1164}#
-                                   #{vars\ 1163}#
-                                   #{r\ 1081}#))
-                               (#{w*\ 1166}#
-                                 (#{make-binding-wrap\ 148}#
-                                   #{req\ 1158}#
-                                   #{labels\ 1164}#
-                                   #{w\ 1082}#)))
-                           (#{expand-opt\ 1090}#
-                             (map syntax->datum #{req\ 1158}#)
-                             #{opt\ 1159}#
-                             #{rest\ 1160}#
-                             #{kw\ 1161}#
-                             #{body\ 1162}#
-                             (reverse #{vars\ 1163}#)
-                             #{r*\ 1165}#
-                             #{w*\ 1166}#
-                             '()
-                             '())))))
-                   (#{rest\ 1088}#
-                     (lambda (#{args\ 1167}#
-                              #{req\ 1168}#
-                              #{opt\ 1169}#
-                              #{kw\ 1170}#)
-                       ((lambda (#{tmp\ 1171}#)
-                          ((lambda (#{tmp\ 1172}#)
-                             (if (if #{tmp\ 1172}#
-                                   (apply (lambda (#{r\ 1173}#)
-                                            (symbol?
-                                              (syntax->datum #{r\ 1173}#)))
-                                          #{tmp\ 1172}#)
-                                   #f)
-                               (apply (lambda (#{r\ 1174}#)
-                                        (values
-                                          #{req\ 1168}#
-                                          #{opt\ 1169}#
-                                          #{r\ 1174}#
-                                          #{kw\ 1170}#))
-                                      #{tmp\ 1172}#)
-                               ((lambda (#{else\ 1175}#)
-                                  (syntax-violation
-                                    'lambda*
-                                    "invalid rest argument"
-                                    #{e\ 1080}#
-                                    #{args\ 1167}#))
-                                #{tmp\ 1171}#)))
-                           (list #{tmp\ 1171}#)))
-                        #{args\ 1167}#)))
-                   (#{key\ 1087}#
-                     (lambda (#{args\ 1176}#
-                              #{req\ 1177}#
-                              #{opt\ 1178}#
-                              #{rkey\ 1179}#)
-                       ((lambda (#{tmp\ 1180}#)
-                          ((lambda (#{tmp\ 1181}#)
-                             (if #{tmp\ 1181}#
-                               (apply (lambda ()
-                                        (values
-                                          #{req\ 1177}#
-                                          #{opt\ 1178}#
-                                          #f
-                                          (cons #f (reverse #{rkey\ 1179}#))))
-                                      #{tmp\ 1181}#)
-                               ((lambda (#{tmp\ 1182}#)
-                                  (if (if #{tmp\ 1182}#
-                                        (apply (lambda (#{a\ 1183}#
-                                                        #{b\ 1184}#)
-                                                 (symbol?
-                                                   (syntax->datum
-                                                     #{a\ 1183}#)))
-                                               #{tmp\ 1182}#)
-                                        #f)
-                                    (apply (lambda (#{a\ 1185}# #{b\ 1186}#)
-                                             ((lambda (#{tmp\ 1187}#)
-                                                ((lambda (#{k\ 1188}#)
-                                                   (#{key\ 1087}#
-                                                     #{b\ 1186}#
-                                                     #{req\ 1177}#
-                                                     #{opt\ 1178}#
-                                                     (cons (cons #{k\ 1188}#
-                                                                 (cons #{a\ 
1185}#
-                                                                       
'(#(syntax-object
-                                                                           #f
-                                                                           
((top)
-                                                                            
#(ribcage
-                                                                              
#(k)
-                                                                              
#((top))
-                                                                              
#("i"))
-                                                                            
#(ribcage
-                                                                              
#(a
-                                                                               
 b)
-                                                                              
#((top)
-                                                                               
 (top))
-                                                                              
#("i"
-                                                                               
 "i"))
-                                                                            
#(ribcage
-                                                                              
()
-                                                                              
()
-                                                                              
())
-                                                                            
#(ribcage
-                                                                              
#(args
-                                                                               
 req
-                                                                               
 opt
-                                                                               
 rkey)
-                                                                              
#((top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top))
-                                                                              
#("i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"))
-                                                                            
#(ribcage
-                                                                              
(expand-body
-                                                                               
 expand-kw
-                                                                               
 expand-opt
-                                                                               
 expand-req
-                                                                               
 rest
-                                                                               
 key
-                                                                               
 opt
-                                                                               
 req)
-                                                                              
((top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top))
-                                                                              
("i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"))
-                                                                            
#(ribcage
-                                                                              
#(e
-                                                                               
 r
-                                                                               
 w
-                                                                               
 s
-                                                                               
 mod)
-                                                                              
#((top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top))
-                                                                              
#("i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"))
-                                                                            
#(ribcage
-                                                                              
(lambda-var-list
-                                                                               
 gen-var
-                                                                               
 strip
-                                                                               
 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-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+
-                                                                               
 *mode*
-                                                                               
 noexpand)
-                                                                              
((top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top)
-                                                                               
(top))
-                                                                              
("i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"
-                                                                               
"i"))
-                                                                            
#(ribcage
-                                                                              
(define-structure
-                                                                               
 and-map*)
-                                                                              
((top)
-                                                                               
(top))
-                                                                              
("i"
-                                                                               
"i")))
-                                                                           
(hygiene
-                                                                             
guile)))))
-                                                           #{rkey\ 1179}#)))
-                                                 #{tmp\ 1187}#))
-                                              (symbol->keyword
-                                                (syntax->datum #{a\ 1185}#))))
-                                           #{tmp\ 1182}#)
-                                    ((lambda (#{tmp\ 1189}#)
-                                       (if (if #{tmp\ 1189}#
-                                             (apply (lambda (#{a\ 1190}#
-                                                             #{init\ 1191}#
-                                                             #{b\ 1192}#)
-                                                      (symbol?
-                                                        (syntax->datum
-                                                          #{a\ 1190}#)))
-                                                    #{tmp\ 1189}#)
-                                             #f)
-                                         (apply (lambda (#{a\ 1193}#
-                                                         #{init\ 1194}#
-                                                         #{b\ 1195}#)
-                                                  ((lambda (#{tmp\ 1196}#)
-                                                     ((lambda (#{k\ 1197}#)
-                                                        (#{key\ 1087}#
-                                                          #{b\ 1195}#
-                                                          #{req\ 1177}#
-                                                          #{opt\ 1178}#
-                                                          (cons (list #{k\ 
1197}#
-                                                                      #{a\ 
1193}#
-                                                                      #{init\ 
1194}#)
-                                                                #{rkey\ 
1179}#)))
-                                                      #{tmp\ 1196}#))
-                                                   (symbol->keyword
-                                                     (syntax->datum
-                                                       #{a\ 1193}#))))
-                                                #{tmp\ 1189}#)
-                                         ((lambda (#{tmp\ 1198}#)
-                                            (if (if #{tmp\ 1198}#
-                                                  (apply (lambda (#{a\ 1199}#
-                                                                  #{init\ 
1200}#
-                                                                  #{k\ 1201}#
-                                                                  #{b\ 1202}#)
-                                                           (if (symbol?
-                                                                 (syntax->datum
-                                                                   #{a\ 
1199}#))
-                                                             (keyword?
-                                                               (syntax->datum
-                                                                 #{k\ 1201}#))
-                                                             #f))
-                                                         #{tmp\ 1198}#)
-                                                  #f)
-                                              (apply (lambda (#{a\ 1203}#
-                                                              #{init\ 1204}#
-                                                              #{k\ 1205}#
-                                                              #{b\ 1206}#)
-                                                       (#{key\ 1087}#
-                                                         #{b\ 1206}#
-                                                         #{req\ 1177}#
-                                                         #{opt\ 1178}#
-                                                         (cons (list #{k\ 
1205}#
-                                                                     #{a\ 
1203}#
-                                                                     #{init\ 
1204}#)
-                                                               #{rkey\ 
1179}#)))
-                                                     #{tmp\ 1198}#)
-                                              ((lambda (#{tmp\ 1207}#)
-                                                 (if (if #{tmp\ 1207}#
-                                                       (apply (lambda (#{aok\ 
1208}#)
-                                                                (eq? 
(syntax->datum
-                                                                       #{aok\ 
1208}#)
-                                                                     
#:allow-other-keys))
-                                                              #{tmp\ 1207}#)
-                                                       #f)
-                                                   (apply (lambda (#{aok\ 
1209}#)
-                                                            (values
-                                                              #{req\ 1177}#
-                                                              #{opt\ 1178}#
-                                                              #f
-                                                              (cons #t
-                                                                    (reverse
-                                                                      #{rkey\ 
1179}#))))
-                                                          #{tmp\ 1207}#)
-                                                   ((lambda (#{tmp\ 1210}#)
-                                                      (if (if #{tmp\ 1210}#
-                                                            (apply (lambda 
(#{aok\ 1211}#
-                                                                            
#{a\ 1212}#
-                                                                            
#{b\ 1213}#)
-                                                                     (if (eq? 
(syntax->datum
-                                                                               
 #{aok\ 1211}#)
-                                                                              
#:allow-other-keys)
-                                                                       (eq? 
(syntax->datum
-                                                                              
#{a\ 1212}#)
-                                                                            
#:rest)
-                                                                       #f))
-                                                                   #{tmp\ 
1210}#)
-                                                            #f)
-                                                        (apply (lambda (#{aok\ 
1214}#
-                                                                        #{a\ 
1215}#
-                                                                        #{b\ 
1216}#)
-                                                                 (#{rest\ 
1088}#
-                                                                   #{b\ 1216}#
-                                                                   #{req\ 
1177}#
-                                                                   #{opt\ 
1178}#
-                                                                   (cons #t
-                                                                         
(reverse
-                                                                           
#{rkey\ 1179}#))))
-                                                               #{tmp\ 1210}#)
-                                                        ((lambda (#{tmp\ 
1217}#)
-                                                           (if (if #{tmp\ 
1217}#
-                                                                 (apply 
(lambda (#{aok\ 1218}#
-                                                                               
  #{r\ 1219}#)
-                                                                          (if 
(eq? (syntax->datum
-                                                                               
      #{aok\ 1218}#)
-                                                                               
    #:allow-other-keys)
-                                                                            
(symbol?
-                                                                              
(syntax->datum
-                                                                               
 #{r\ 1219}#))
-                                                                            
#f))
-                                                                        #{tmp\ 
1217}#)
-                                                                 #f)
-                                                             (apply (lambda 
(#{aok\ 1220}#
-                                                                             
#{r\ 1221}#)
-                                                                      (#{rest\ 
1088}#
-                                                                        #{r\ 
1221}#
-                                                                        #{req\ 
1177}#
-                                                                        #{opt\ 
1178}#
-                                                                        (cons 
#t
-                                                                              
(reverse
-                                                                               
 #{rkey\ 1179}#))))
-                                                                    #{tmp\ 
1217}#)
-                                                             ((lambda (#{tmp\ 
1222}#)
-                                                                (if (if #{tmp\ 
1222}#
-                                                                      (apply 
(lambda (#{a\ 1223}#
-                                                                               
       #{b\ 1224}#)
-                                                                               
(eq? (syntax->datum
-                                                                               
       #{a\ 1223}#)
-                                                                               
     #:rest))
-                                                                             
#{tmp\ 1222}#)
-                                                                      #f)
-                                                                  (apply 
(lambda (#{a\ 1225}#
-                                                                               
   #{b\ 1226}#)
-                                                                           
(#{rest\ 1088}#
-                                                                             
#{b\ 1226}#
-                                                                             
#{req\ 1177}#
-                                                                             
#{opt\ 1178}#
-                                                                             
(cons #f
-                                                                               
    (reverse
-                                                                               
      #{rkey\ 1179}#))))
-                                                                         
#{tmp\ 1222}#)
-                                                                  ((lambda 
(#{tmp\ 1227}#)
-                                                                     (if (if 
#{tmp\ 1227}#
-                                                                           
(apply (lambda (#{r\ 1228}#)
-                                                                               
     (symbol?
-                                                                               
       (syntax->datum
-                                                                               
         '#(syntax-object
-                                                                               
            a
-                                                                               
            ((top)
-                                                                               
             #(ribcage
-                                                                               
               #(r)
-                                                                               
               #((top))
-                                                                               
               #("i"))
-                                                                               
             #(ribcage
-                                                                               
               ()
-                                                                               
               ()
-                                                                               
               ())
-                                                                               
             #(ribcage
-                                                                               
               #(args
-                                                                               
                 req
-                                                                               
                 opt
-                                                                               
                 rkey)
-                                                                               
               #((top)
-                                                                               
                 (top)
-                                                                               
                 (top)
-                                                                               
                 (top))
-                                                                               
               #("i"
-                                                                               
                 "i"
-                                                                               
                 "i"
-                                                                               
                 "i"))
-                                                                               
             #(ribcage
-                                                                               
               (expand-body
-                                                                               
                 expand-kw
-                                                                               
                 expand-opt
-                                                                               
                 expand-req
-                                                                               
                 rest
-                                                                               
                 key
-                                                                               
                 opt
-                                                                               
                 req)
-                                                                               
               ((top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top))
-                                                                               
               ("i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"))
-                                                                               
             #(ribcage
-                                                                               
               #(e
-                                                                               
                 r
-                                                                               
                 w
-                                                                               
                 s
-                                                                               
                 mod)
-                                                                               
               #((top)
-                                                                               
                 (top)
-                                                                               
                 (top)
-                                                                               
                 (top)
-                                                                               
                 (top))
-                                                                               
               #("i"
-                                                                               
                 "i"
-                                                                               
                 "i"
-                                                                               
                 "i"
-                                                                               
                 "i"))
-                                                                               
             #(ribcage
-                                                                               
               (lambda-var-list
-                                                                               
                 gen-var
-                                                                               
                 strip
-                                                                               
                 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-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+
-                                                                               
                 *mode*
-                                                                               
                 noexpand)
-                                                                               
               ((top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top)
-                                                                               
                (top))
-                                                                               
               ("i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"
-                                                                               
                "i"))
-                                                                               
             #(ribcage
-                                                                               
               (define-structure
-                                                                               
                 and-map*)
-                                                                               
               ((top)
-                                                                               
                (top))
-                                                                               
               ("i"
-                                                                               
                "i")))
-                                                                               
            (hygiene
-                                                                               
              guile)))))
-                                                                               
   #{tmp\ 1227}#)
-                                                                           #f)
-                                                                       (apply 
(lambda (#{r\ 1229}#)
-                                                                               
 (#{rest\ 1088}#
-                                                                               
   #{r\ 1229}#
-                                                                               
   #{req\ 1177}#
-                                                                               
   #{opt\ 1178}#
-                                                                               
   (cons #f
-                                                                               
         (reverse
-                                                                               
           #{rkey\ 1179}#))))
-                                                                              
#{tmp\ 1227}#)
-                                                                       
((lambda (#{else\ 1230}#)
-                                                                          
(syntax-violation
-                                                                            
'lambda*
-                                                                            
"invalid argument list"
-                                                                            
#{e\ 1080}#
-                                                                            
#{args\ 1176}#))
-                                                                        #{tmp\ 
1180}#)))
-                                                                   (list 
#{tmp\ 1180}#))))
-                                                              ($sc-dispatch
-                                                                #{tmp\ 1180}#
-                                                                '(any any)))))
-                                                         ($sc-dispatch
-                                                           #{tmp\ 1180}#
-                                                           '(any . any)))))
-                                                    ($sc-dispatch
-                                                      #{tmp\ 1180}#
-                                                      '(any any any)))))
-                                               ($sc-dispatch
-                                                 #{tmp\ 1180}#
-                                                 '(any)))))
-                                          ($sc-dispatch
-                                            #{tmp\ 1180}#
-                                            '((any any any) . any)))))
-                                     ($sc-dispatch
-                                       #{tmp\ 1180}#
-                                       '((any any) . any)))))
-                                ($sc-dispatch
-                                  #{tmp\ 1180}#
-                                  '(any . any)))))
-                           ($sc-dispatch #{tmp\ 1180}# (quote ()))))
-                        #{args\ 1176}#)))
-                   (#{opt\ 1086}#
-                     (lambda (#{args\ 1231}# #{req\ 1232}# #{ropt\ 1233}#)
-                       ((lambda (#{tmp\ 1234}#)
-                          ((lambda (#{tmp\ 1235}#)
-                             (if #{tmp\ 1235}#
-                               (apply (lambda ()
-                                        (values
-                                          #{req\ 1232}#
-                                          (reverse #{ropt\ 1233}#)
-                                          #f
-                                          '()))
-                                      #{tmp\ 1235}#)
-                               ((lambda (#{tmp\ 1236}#)
-                                  (if (if #{tmp\ 1236}#
-                                        (apply (lambda (#{a\ 1237}#
-                                                        #{b\ 1238}#)
-                                                 (symbol?
-                                                   (syntax->datum
-                                                     #{a\ 1237}#)))
-                                               #{tmp\ 1236}#)
-                                        #f)
-                                    (apply (lambda (#{a\ 1239}# #{b\ 1240}#)
-                                             (#{opt\ 1086}#
-                                               #{b\ 1240}#
-                                               #{req\ 1232}#
-                                               (cons (cons #{a\ 1239}#
-                                                           '(#(syntax-object
-                                                               #f
-                                                               ((top)
-                                                                #(ribcage
-                                                                  #(a b)
-                                                                  #((top)
-                                                                    (top))
-                                                                  #("i" "i"))
-                                                                #(ribcage
-                                                                  ()
-                                                                  ()
-                                                                  ())
-                                                                #(ribcage
-                                                                  #(args
-                                                                    req
-                                                                    ropt)
-                                                                  #((top)
-                                                                    (top)
-                                                                    (top))
-                                                                  #("i"
-                                                                    "i"
-                                                                    "i"))
-                                                                #(ribcage
-                                                                  (expand-body
-                                                                    expand-kw
-                                                                    expand-opt
-                                                                    expand-req
-                                                                    rest
-                                                                    key
-                                                                    opt
-                                                                    req)
-                                                                  ((top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top))
-                                                                  ("i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"))
-                                                                #(ribcage
-                                                                  #(e
-                                                                    r
-                                                                    w
-                                                                    s
-                                                                    mod)
-                                                                  #((top)
-                                                                    (top)
-                                                                    (top)
-                                                                    (top)
-                                                                    (top))
-                                                                  #("i"
-                                                                    "i"
-                                                                    "i"
-                                                                    "i"
-                                                                    "i"))
-                                                                #(ribcage
-                                                                  
(lambda-var-list
-                                                                    gen-var
-                                                                    strip
-                                                                    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-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+
-                                                                    *mode*
-                                                                    noexpand)
-                                                                  ((top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top)
-                                                                   (top))
-                                                                  ("i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"
-                                                                   "i"))
-                                                                #(ribcage
-                                                                  
(define-structure
-                                                                    and-map*)
-                                                                  ((top) (top))
-                                                                  ("i" "i")))
-                                                               (hygiene
-                                                                 guile))))
-                                                     #{ropt\ 1233}#)))
-                                           #{tmp\ 1236}#)
-                                    ((lambda (#{tmp\ 1241}#)
-                                       (if (if #{tmp\ 1241}#
-                                             (apply (lambda (#{a\ 1242}#
-                                                             #{init\ 1243}#
-                                                             #{b\ 1244}#)
-                                                      (symbol?
-                                                        (syntax->datum
-                                                          #{a\ 1242}#)))
-                                                    #{tmp\ 1241}#)
-                                             #f)
-                                         (apply (lambda (#{a\ 1245}#
-                                                         #{init\ 1246}#
-                                                         #{b\ 1247}#)
-                                                  (#{opt\ 1086}#
-                                                    #{b\ 1247}#
-                                                    #{req\ 1232}#
-                                                    (cons (list #{a\ 1245}#
-                                                                #{init\ 1246}#)
-                                                          #{ropt\ 1233}#)))
-                                                #{tmp\ 1241}#)
-                                         ((lambda (#{tmp\ 1248}#)
-                                            (if (if #{tmp\ 1248}#
-                                                  (apply (lambda (#{a\ 1249}#
-                                                                  #{b\ 1250}#)
-                                                           (eq? (syntax->datum
-                                                                  #{a\ 1249}#)
-                                                                #:key))
-                                                         #{tmp\ 1248}#)
-                                                  #f)
-                                              (apply (lambda (#{a\ 1251}#
-                                                              #{b\ 1252}#)
-                                                       (#{key\ 1087}#
-                                                         #{b\ 1252}#
-                                                         #{req\ 1232}#
-                                                         (reverse
-                                                           #{ropt\ 1233}#)
-                                                         '()))
-                                                     #{tmp\ 1248}#)
-                                              ((lambda (#{tmp\ 1253}#)
-                                                 (if (if #{tmp\ 1253}#
-                                                       (apply (lambda (#{a\ 
1254}#
-                                                                       #{b\ 
1255}#)
-                                                                (eq? 
(syntax->datum
-                                                                       #{a\ 
1254}#)
-                                                                     #:rest))
-                                                              #{tmp\ 1253}#)
-                                                       #f)
-                                                   (apply (lambda (#{a\ 1256}#
-                                                                   #{b\ 1257}#)
-                                                            (#{rest\ 1088}#
-                                                              #{b\ 1257}#
-                                                              #{req\ 1232}#
-                                                              (reverse
-                                                                #{ropt\ 1233}#)
-                                                              '()))
-                                                          #{tmp\ 1253}#)
-                                                   ((lambda (#{tmp\ 1258}#)
-                                                      (if (if #{tmp\ 1258}#
-                                                            (apply (lambda 
(#{r\ 1259}#)
-                                                                     (symbol?
-                                                                       
(syntax->datum
-                                                                         
'#(syntax-object
-                                                                            a
-                                                                            
((top)
-                                                                             
#(ribcage
-                                                                               
#(r)
-                                                                               
#((top))
-                                                                               
#("i"))
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
#(args
-                                                                               
  req
-                                                                               
  ropt)
-                                                                               
#((top)
-                                                                               
  (top)
-                                                                               
  (top))
-                                                                               
#("i"
-                                                                               
  "i"
-                                                                               
  "i"))
-                                                                             
#(ribcage
-                                                                               
(expand-body
-                                                                               
  expand-kw
-                                                                               
  expand-opt
-                                                                               
  expand-req
-                                                                               
  rest
-                                                                               
  key
-                                                                               
  opt
-                                                                               
  req)
-                                                                               
((top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top))
-                                                                               
("i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"))
-                                                                             
#(ribcage
-                                                                               
#(e
-                                                                               
  r
-                                                                               
  w
-                                                                               
  s
-                                                                               
  mod)
-                                                                               
#((top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top))
-                                                                               
#("i"
-                                                                               
  "i"
-                                                                               
  "i"
-                                                                               
  "i"
-                                                                               
  "i"))
-                                                                             
#(ribcage
-                                                                               
(lambda-var-list
-                                                                               
  gen-var
-                                                                               
  strip
-                                                                               
  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-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+
-                                                                               
  *mode*
-                                                                               
  noexpand)
-                                                                               
((top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top))
-                                                                               
("i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"))
-                                                                             
#(ribcage
-                                                                               
(define-structure
-                                                                               
  and-map*)
-                                                                               
((top)
-                                                                               
 (top))
-                                                                               
("i"
-                                                                               
 "i")))
-                                                                            
(hygiene
-                                                                              
guile)))))
-                                                                   #{tmp\ 
1258}#)
-                                                            #f)
-                                                        (apply (lambda (#{r\ 
1260}#)
-                                                                 (#{rest\ 
1088}#
-                                                                   #{r\ 1260}#
-                                                                   #{req\ 
1232}#
-                                                                   (reverse
-                                                                     #{ropt\ 
1233}#)
-                                                                   '()))
-                                                               #{tmp\ 1258}#)
-                                                        ((lambda (#{else\ 
1261}#)
-                                                           (syntax-violation
-                                                             'lambda*
-                                                             "invalid argument 
list"
-                                                             #{e\ 1080}#
-                                                             #{args\ 1231}#))
-                                                         #{tmp\ 1234}#)))
-                                                    (list #{tmp\ 1234}#))))
-                                               ($sc-dispatch
-                                                 #{tmp\ 1234}#
-                                                 '(any any)))))
-                                          ($sc-dispatch
-                                            #{tmp\ 1234}#
-                                            '(any . any)))))
-                                     ($sc-dispatch
-                                       #{tmp\ 1234}#
-                                       '((any any) . any)))))
-                                ($sc-dispatch
-                                  #{tmp\ 1234}#
-                                  '(any . any)))))
-                           ($sc-dispatch #{tmp\ 1234}# (quote ()))))
-                        #{args\ 1231}#)))
-                   (#{req\ 1085}#
-                     (lambda (#{args\ 1262}# #{rreq\ 1263}#)
-                       ((lambda (#{tmp\ 1264}#)
-                          ((lambda (#{tmp\ 1265}#)
-                             (if #{tmp\ 1265}#
-                               (apply (lambda ()
-                                        (values
-                                          (reverse #{rreq\ 1263}#)
-                                          '()
-                                          #f
-                                          '()))
-                                      #{tmp\ 1265}#)
-                               ((lambda (#{tmp\ 1266}#)
-                                  (if (if #{tmp\ 1266}#
-                                        (apply (lambda (#{a\ 1267}#
-                                                        #{b\ 1268}#)
-                                                 (symbol?
-                                                   (syntax->datum
-                                                     #{a\ 1267}#)))
-                                               #{tmp\ 1266}#)
-                                        #f)
-                                    (apply (lambda (#{a\ 1269}# #{b\ 1270}#)
-                                             (#{req\ 1085}#
-                                               #{b\ 1270}#
-                                               (cons #{a\ 1269}#
-                                                     #{rreq\ 1263}#)))
-                                           #{tmp\ 1266}#)
-                                    ((lambda (#{tmp\ 1271}#)
-                                       (if (if #{tmp\ 1271}#
-                                             (apply (lambda (#{a\ 1272}#
-                                                             #{b\ 1273}#)
-                                                      (eq? (syntax->datum
-                                                             #{a\ 1272}#)
-                                                           #:optional))
-                                                    #{tmp\ 1271}#)
-                                             #f)
-                                         (apply (lambda (#{a\ 1274}#
-                                                         #{b\ 1275}#)
-                                                  (#{opt\ 1086}#
-                                                    #{b\ 1275}#
-                                                    (reverse #{rreq\ 1263}#)
-                                                    '()))
-                                                #{tmp\ 1271}#)
-                                         ((lambda (#{tmp\ 1276}#)
-                                            (if (if #{tmp\ 1276}#
-                                                  (apply (lambda (#{a\ 1277}#
-                                                                  #{b\ 1278}#)
-                                                           (eq? (syntax->datum
-                                                                  #{a\ 1277}#)
-                                                                #:key))
-                                                         #{tmp\ 1276}#)
-                                                  #f)
-                                              (apply (lambda (#{a\ 1279}#
-                                                              #{b\ 1280}#)
-                                                       (#{key\ 1087}#
-                                                         #{b\ 1280}#
-                                                         (reverse
-                                                           #{rreq\ 1263}#)
-                                                         '()
-                                                         '()))
-                                                     #{tmp\ 1276}#)
-                                              ((lambda (#{tmp\ 1281}#)
-                                                 (if (if #{tmp\ 1281}#
-                                                       (apply (lambda (#{a\ 
1282}#
-                                                                       #{b\ 
1283}#)
-                                                                (eq? 
(syntax->datum
-                                                                       #{a\ 
1282}#)
-                                                                     #:rest))
-                                                              #{tmp\ 1281}#)
-                                                       #f)
-                                                   (apply (lambda (#{a\ 1284}#
-                                                                   #{b\ 1285}#)
-                                                            (#{rest\ 1088}#
-                                                              #{b\ 1285}#
-                                                              (reverse
-                                                                #{rreq\ 1263}#)
-                                                              '()
-                                                              '()))
-                                                          #{tmp\ 1281}#)
-                                                   ((lambda (#{tmp\ 1286}#)
-                                                      (if (if #{tmp\ 1286}#
-                                                            (apply (lambda 
(#{r\ 1287}#)
-                                                                     (symbol?
-                                                                       
(syntax->datum
-                                                                         
'#(syntax-object
-                                                                            a
-                                                                            
((top)
-                                                                             
#(ribcage
-                                                                               
#(r)
-                                                                               
#((top))
-                                                                               
#("i"))
-                                                                             
#(ribcage
-                                                                               
()
-                                                                               
()
-                                                                               
())
-                                                                             
#(ribcage
-                                                                               
#(args
-                                                                               
  rreq)
-                                                                               
#((top)
-                                                                               
  (top))
-                                                                               
#("i"
-                                                                               
  "i"))
-                                                                             
#(ribcage
-                                                                               
(expand-body
-                                                                               
  expand-kw
-                                                                               
  expand-opt
-                                                                               
  expand-req
-                                                                               
  rest
-                                                                               
  key
-                                                                               
  opt
-                                                                               
  req)
-                                                                               
((top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top))
-                                                                               
("i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"))
-                                                                             
#(ribcage
-                                                                               
#(e
-                                                                               
  r
-                                                                               
  w
-                                                                               
  s
-                                                                               
  mod)
-                                                                               
#((top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top)
-                                                                               
  (top))
-                                                                               
#("i"
-                                                                               
  "i"
-                                                                               
  "i"
-                                                                               
  "i"
-                                                                               
  "i"))
-                                                                             
#(ribcage
-                                                                               
(lambda-var-list
-                                                                               
  gen-var
-                                                                               
  strip
-                                                                               
  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-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+
-                                                                               
  *mode*
-                                                                               
  noexpand)
-                                                                               
((top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top)
-                                                                               
 (top))
-                                                                               
("i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"
-                                                                               
 "i"))
-                                                                             
#(ribcage
-                                                                               
(define-structure
-                                                                               
  and-map*)
-                                                                               
((top)
-                                                                               
 (top))
-                                                                               
("i"
-                                                                               
 "i")))
-                                                                            
(hygiene
-                                                                              
guile)))))
-                                                                   #{tmp\ 
1286}#)
-                                                            #f)
-                                                        (apply (lambda (#{r\ 
1288}#)
-                                                                 (#{rest\ 
1088}#
-                                                                   #{r\ 1288}#
-                                                                   (reverse
-                                                                     #{rreq\ 
1263}#)
-                                                                   '()
-                                                                   '()))
-                                                               #{tmp\ 1286}#)
-                                                        ((lambda (#{else\ 
1289}#)
-                                                           (syntax-violation
-                                                             'lambda*
-                                                             "invalid argument 
list"
-                                                             #{e\ 1080}#
-                                                             #{args\ 1262}#))
-                                                         #{tmp\ 1264}#)))
-                                                    (list #{tmp\ 1264}#))))
-                                               ($sc-dispatch
-                                                 #{tmp\ 1264}#
-                                                 '(any any)))))
-                                          ($sc-dispatch
-                                            #{tmp\ 1264}#
-                                            '(any . any)))))
-                                     ($sc-dispatch
-                                       #{tmp\ 1264}#
-                                       '(any . any)))))
-                                ($sc-dispatch
-                                  #{tmp\ 1264}#
-                                  '(any . any)))))
-                           ($sc-dispatch #{tmp\ 1264}# (quote ()))))
-                        #{args\ 1262}#))))
-            ((lambda (#{tmp\ 1290}#)
-               ((lambda (#{tmp\ 1291}#)
-                  (if #{tmp\ 1291}#
-                    (apply (lambda (#{_\ 1292}#
-                                    #{args\ 1293}#
-                                    #{e1\ 1294}#
-                                    #{e2\ 1295}#)
-                             (call-with-values
-                               (lambda ()
-                                 (#{req\ 1085}# #{args\ 1293}# (quote ())))
-                               (lambda (#{req\ 1296}#
-                                        #{opt\ 1297}#
-                                        #{rest\ 1298}#
-                                        #{kw\ 1299}#)
-                                 (if (not (#{valid-bound-ids?\ 156}#
-                                            (append
-                                              #{req\ 1296}#
-                                              (map car #{opt\ 1297}#)
-                                              (if #{rest\ 1298}#
-                                                (list #{rest\ 1298}#)
-                                                '())
-                                              (if (pair? #{kw\ 1299}#)
-                                                (map cadr (cdr #{kw\ 1299}#))
-                                                '()))))
-                                   (syntax-violation
-                                     'lambda
-                                     "invalid parameter list"
-                                     #{e\ 1080}#
-                                     #{args\ 1293}#)
-                                   (call-with-values
-                                     (lambda ()
-                                       (#{expand-req\ 1089}#
-                                         #{req\ 1296}#
-                                         #{opt\ 1297}#
-                                         #{rest\ 1298}#
-                                         #{kw\ 1299}#
-                                         (cons #{e1\ 1294}# #{e2\ 1295}#)))
-                                     (lambda (#{docstring\ 1301}#
-                                              #{req\ 1302}#
-                                              #{opt\ 1303}#
-                                              #{rest\ 1304}#
-                                              #{kw\ 1305}#
-                                              #{inits\ 1306}#
-                                              #{vars\ 1307}#
-                                              #{pred\ 1308}#
-                                              #{body\ 1309}#)
-                                       (#{build-case-lambda\ 106}#
-                                         #{s\ 1083}#
-                                         #{docstring\ 1301}#
-                                         (#{build-lambda-case\ 107}#
-                                           #{s\ 1083}#
-                                           #{req\ 1302}#
-                                           #{opt\ 1303}#
-                                           #{rest\ 1304}#
-                                           #{kw\ 1305}#
-                                           #{inits\ 1306}#
-                                           #{vars\ 1307}#
-                                           #{pred\ 1308}#
-                                           #{body\ 1309}#
-                                           #f))))))))
-                           #{tmp\ 1291}#)
-                    ((lambda (#{_\ 1310}#)
-                       (syntax-violation
-                         'lambda
-                         "bad lambda*"
-                         #{e\ 1080}#))
-                     #{tmp\ 1290}#)))
-                ($sc-dispatch
-                  #{tmp\ 1290}#
-                  '(any any any . each-any))))
-             #{e\ 1080}#))))
+        (lambda (#{e\ 1344}#
+                 #{r\ 1345}#
+                 #{w\ 1346}#
+                 #{s\ 1347}#
+                 #{mod\ 1348}#)
+          ((lambda (#{tmp\ 1349}#)
+             ((lambda (#{tmp\ 1350}#)
+                (if #{tmp\ 1350}#
+                  (apply (lambda (#{_\ 1351}#
+                                  #{args\ 1352}#
+                                  #{e1\ 1353}#
+                                  #{e2\ 1354}#)
+                           (call-with-values
+                             (lambda ()
+                               (#{chi-lambda-case\ 179}#
+                                 #{e\ 1344}#
+                                 #{r\ 1345}#
+                                 #{w\ 1346}#
+                                 #{s\ 1347}#
+                                 #{mod\ 1348}#
+                                 #{lambda*-formals\ 178}#
+                                 (list (cons #{args\ 1352}#
+                                             (cons #{e1\ 1353}#
+                                                   #{e2\ 1354}#)))))
+                             (lambda (#{docstring\ 1356}# #{lcase\ 1357}#)
+                               (#{build-case-lambda\ 106}#
+                                 #{s\ 1347}#
+                                 #{docstring\ 1356}#
+                                 #{lcase\ 1357}#))))
+                         #{tmp\ 1350}#)
+                  ((lambda (#{_\ 1358}#)
+                     (syntax-violation
+                       'lambda
+                       "bad lambda*"
+                       #{e\ 1344}#))
+                   #{tmp\ 1349}#)))
+              ($sc-dispatch
+                #{tmp\ 1349}#
+                '(any any any . each-any))))
+           #{e\ 1344}#)))
+      (#{global-extend\ 129}#
+        'core
+        'case-lambda
+        (lambda (#{e\ 1359}#
+                 #{r\ 1360}#
+                 #{w\ 1361}#
+                 #{s\ 1362}#
+                 #{mod\ 1363}#)
+          ((lambda (#{tmp\ 1364}#)
+             ((lambda (#{tmp\ 1365}#)
+                (if #{tmp\ 1365}#
+                  (apply (lambda (#{_\ 1366}#
+                                  #{args\ 1367}#
+                                  #{e1\ 1368}#
+                                  #{e2\ 1369}#
+                                  #{args*\ 1370}#
+                                  #{e1*\ 1371}#
+                                  #{e2*\ 1372}#)
+                           (call-with-values
+                             (lambda ()
+                               (#{chi-lambda-case\ 179}#
+                                 #{e\ 1359}#
+                                 #{r\ 1360}#
+                                 #{w\ 1361}#
+                                 #{s\ 1362}#
+                                 #{mod\ 1363}#
+                                 #{lambda-formals\ 176}#
+                                 (cons (cons #{args\ 1367}#
+                                             (cons #{e1\ 1368}# #{e2\ 1369}#))
+                                       (map (lambda (#{tmp\ 1376}#
+                                                     #{tmp\ 1375}#
+                                                     #{tmp\ 1374}#)
+                                              (cons #{tmp\ 1374}#
+                                                    (cons #{tmp\ 1375}#
+                                                          #{tmp\ 1376}#)))
+                                            #{e2*\ 1372}#
+                                            #{e1*\ 1371}#
+                                            #{args*\ 1370}#))))
+                             (lambda (#{docstring\ 1378}# #{lcase\ 1379}#)
+                               (#{build-case-lambda\ 106}#
+                                 #{s\ 1362}#
+                                 #{docstring\ 1378}#
+                                 #{lcase\ 1379}#))))
+                         #{tmp\ 1365}#)
+                  ((lambda (#{_\ 1380}#)
+                     (syntax-violation
+                       'case-lambda
+                       "bad case-lambda"
+                       #{e\ 1359}#))
+                   #{tmp\ 1364}#)))
+              ($sc-dispatch
+                #{tmp\ 1364}#
+                '(any (any any . each-any)
+                      .
+                      #(each (any any . each-any))))))
+           #{e\ 1359}#)))
+      (#{global-extend\ 129}#
+        'core
+        'case-lambda*
+        (lambda (#{e\ 1381}#
+                 #{r\ 1382}#
+                 #{w\ 1383}#
+                 #{s\ 1384}#
+                 #{mod\ 1385}#)
+          ((lambda (#{tmp\ 1386}#)
+             ((lambda (#{tmp\ 1387}#)
+                (if #{tmp\ 1387}#
+                  (apply (lambda (#{_\ 1388}#
+                                  #{args\ 1389}#
+                                  #{e1\ 1390}#
+                                  #{e2\ 1391}#
+                                  #{args*\ 1392}#
+                                  #{e1*\ 1393}#
+                                  #{e2*\ 1394}#)
+                           (call-with-values
+                             (lambda ()
+                               (#{chi-lambda-case\ 179}#
+                                 #{e\ 1381}#
+                                 #{r\ 1382}#
+                                 #{w\ 1383}#
+                                 #{s\ 1384}#
+                                 #{mod\ 1385}#
+                                 #{lambda*-formals\ 178}#
+                                 (cons (cons #{args\ 1389}#
+                                             (cons #{e1\ 1390}# #{e2\ 1391}#))
+                                       (map (lambda (#{tmp\ 1398}#
+                                                     #{tmp\ 1397}#
+                                                     #{tmp\ 1396}#)
+                                              (cons #{tmp\ 1396}#
+                                                    (cons #{tmp\ 1397}#
+                                                          #{tmp\ 1398}#)))
+                                            #{e2*\ 1394}#
+                                            #{e1*\ 1393}#
+                                            #{args*\ 1392}#))))
+                             (lambda (#{docstring\ 1400}# #{lcase\ 1401}#)
+                               (#{build-case-lambda\ 106}#
+                                 #{s\ 1384}#
+                                 #{docstring\ 1400}#
+                                 #{lcase\ 1401}#))))
+                         #{tmp\ 1387}#)
+                  ((lambda (#{_\ 1402}#)
+                     (syntax-violation
+                       'case-lambda
+                       "bad case-lambda*"
+                       #{e\ 1381}#))
+                   #{tmp\ 1386}#)))
+              ($sc-dispatch
+                #{tmp\ 1386}#
+                '(any (any any . each-any)
+                      .
+                      #(each (any any . each-any))))))
+           #{e\ 1381}#)))
       (#{global-extend\ 129}#
         'core
         'let
-        (letrec ((#{chi-let\ 1311}#
-                   (lambda (#{e\ 1312}#
-                            #{r\ 1313}#
-                            #{w\ 1314}#
-                            #{s\ 1315}#
-                            #{mod\ 1316}#
-                            #{constructor\ 1317}#
-                            #{ids\ 1318}#
-                            #{vals\ 1319}#
-                            #{exps\ 1320}#)
-                     (if (not (#{valid-bound-ids?\ 156}# #{ids\ 1318}#))
+        (letrec ((#{chi-let\ 1403}#
+                   (lambda (#{e\ 1404}#
+                            #{r\ 1405}#
+                            #{w\ 1406}#
+                            #{s\ 1407}#
+                            #{mod\ 1408}#
+                            #{constructor\ 1409}#
+                            #{ids\ 1410}#
+                            #{vals\ 1411}#
+                            #{exps\ 1412}#)
+                     (if (not (#{valid-bound-ids?\ 156}# #{ids\ 1410}#))
                        (syntax-violation
                          'let
                          "duplicate bound variable"
-                         #{e\ 1312}#)
-                       (let ((#{labels\ 1321}#
-                               (#{gen-labels\ 137}# #{ids\ 1318}#))
-                             (#{new-vars\ 1322}#
-                               (map #{gen-var\ 177}# #{ids\ 1318}#)))
-                         (let ((#{nw\ 1323}#
+                         #{e\ 1404}#)
+                       (let ((#{labels\ 1413}#
+                               (#{gen-labels\ 137}# #{ids\ 1410}#))
+                             (#{new-vars\ 1414}#
+                               (map #{gen-var\ 181}# #{ids\ 1410}#)))
+                         (let ((#{nw\ 1415}#
                                  (#{make-binding-wrap\ 148}#
-                                   #{ids\ 1318}#
-                                   #{labels\ 1321}#
-                                   #{w\ 1314}#))
-                               (#{nr\ 1324}#
+                                   #{ids\ 1410}#
+                                   #{labels\ 1413}#
+                                   #{w\ 1406}#))
+                               (#{nr\ 1416}#
                                  (#{extend-var-env\ 126}#
-                                   #{labels\ 1321}#
-                                   #{new-vars\ 1322}#
-                                   #{r\ 1313}#)))
-                           (#{constructor\ 1317}#
-                             #{s\ 1315}#
-                             (map syntax->datum #{ids\ 1318}#)
-                             #{new-vars\ 1322}#
-                             (map (lambda (#{x\ 1325}#)
+                                   #{labels\ 1413}#
+                                   #{new-vars\ 1414}#
+                                   #{r\ 1405}#)))
+                           (#{constructor\ 1409}#
+                             #{s\ 1407}#
+                             (map syntax->datum #{ids\ 1410}#)
+                             #{new-vars\ 1414}#
+                             (map (lambda (#{x\ 1417}#)
                                     (#{chi\ 167}#
-                                      #{x\ 1325}#
-                                      #{r\ 1313}#
-                                      #{w\ 1314}#
-                                      #{mod\ 1316}#))
-                                  #{vals\ 1319}#)
+                                      #{x\ 1417}#
+                                      #{r\ 1405}#
+                                      #{w\ 1406}#
+                                      #{mod\ 1408}#))
+                                  #{vals\ 1411}#)
                              (#{chi-body\ 171}#
-                               #{exps\ 1320}#
+                               #{exps\ 1412}#
                                (#{source-wrap\ 160}#
-                                 #{e\ 1312}#
-                                 #{nw\ 1323}#
-                                 #{s\ 1315}#
-                                 #{mod\ 1316}#)
-                               #{nr\ 1324}#
-                               #{nw\ 1323}#
-                               #{mod\ 1316}#))))))))
-          (lambda (#{e\ 1326}#
-                   #{r\ 1327}#
-                   #{w\ 1328}#
-                   #{s\ 1329}#
-                   #{mod\ 1330}#)
-            ((lambda (#{tmp\ 1331}#)
-               ((lambda (#{tmp\ 1332}#)
-                  (if (if #{tmp\ 1332}#
-                        (apply (lambda (#{_\ 1333}#
-                                        #{id\ 1334}#
-                                        #{val\ 1335}#
-                                        #{e1\ 1336}#
-                                        #{e2\ 1337}#)
-                                 (and-map #{id?\ 131}# #{id\ 1334}#))
-                               #{tmp\ 1332}#)
+                                 #{e\ 1404}#
+                                 #{nw\ 1415}#
+                                 #{s\ 1407}#
+                                 #{mod\ 1408}#)
+                               #{nr\ 1416}#
+                               #{nw\ 1415}#
+                               #{mod\ 1408}#))))))))
+          (lambda (#{e\ 1418}#
+                   #{r\ 1419}#
+                   #{w\ 1420}#
+                   #{s\ 1421}#
+                   #{mod\ 1422}#)
+            ((lambda (#{tmp\ 1423}#)
+               ((lambda (#{tmp\ 1424}#)
+                  (if (if #{tmp\ 1424}#
+                        (apply (lambda (#{_\ 1425}#
+                                        #{id\ 1426}#
+                                        #{val\ 1427}#
+                                        #{e1\ 1428}#
+                                        #{e2\ 1429}#)
+                                 (and-map #{id?\ 131}# #{id\ 1426}#))
+                               #{tmp\ 1424}#)
                         #f)
-                    (apply (lambda (#{_\ 1339}#
-                                    #{id\ 1340}#
-                                    #{val\ 1341}#
-                                    #{e1\ 1342}#
-                                    #{e2\ 1343}#)
-                             (#{chi-let\ 1311}#
-                               #{e\ 1326}#
-                               #{r\ 1327}#
-                               #{w\ 1328}#
-                               #{s\ 1329}#
-                               #{mod\ 1330}#
+                    (apply (lambda (#{_\ 1431}#
+                                    #{id\ 1432}#
+                                    #{val\ 1433}#
+                                    #{e1\ 1434}#
+                                    #{e2\ 1435}#)
+                             (#{chi-let\ 1403}#
+                               #{e\ 1418}#
+                               #{r\ 1419}#
+                               #{w\ 1420}#
+                               #{s\ 1421}#
+                               #{mod\ 1422}#
                                #{build-let\ 111}#
-                               #{id\ 1340}#
-                               #{val\ 1341}#
-                               (cons #{e1\ 1342}# #{e2\ 1343}#)))
-                           #{tmp\ 1332}#)
-                    ((lambda (#{tmp\ 1347}#)
-                       (if (if #{tmp\ 1347}#
-                             (apply (lambda (#{_\ 1348}#
-                                             #{f\ 1349}#
-                                             #{id\ 1350}#
-                                             #{val\ 1351}#
-                                             #{e1\ 1352}#
-                                             #{e2\ 1353}#)
-                                      (if (#{id?\ 131}# #{f\ 1349}#)
-                                        (and-map #{id?\ 131}# #{id\ 1350}#)
+                               #{id\ 1432}#
+                               #{val\ 1433}#
+                               (cons #{e1\ 1434}# #{e2\ 1435}#)))
+                           #{tmp\ 1424}#)
+                    ((lambda (#{tmp\ 1439}#)
+                       (if (if #{tmp\ 1439}#
+                             (apply (lambda (#{_\ 1440}#
+                                             #{f\ 1441}#
+                                             #{id\ 1442}#
+                                             #{val\ 1443}#
+                                             #{e1\ 1444}#
+                                             #{e2\ 1445}#)
+                                      (if (#{id?\ 131}# #{f\ 1441}#)
+                                        (and-map #{id?\ 131}# #{id\ 1442}#)
                                         #f))
-                                    #{tmp\ 1347}#)
+                                    #{tmp\ 1439}#)
                              #f)
-                         (apply (lambda (#{_\ 1355}#
-                                         #{f\ 1356}#
-                                         #{id\ 1357}#
-                                         #{val\ 1358}#
-                                         #{e1\ 1359}#
-                                         #{e2\ 1360}#)
-                                  (#{chi-let\ 1311}#
-                                    #{e\ 1326}#
-                                    #{r\ 1327}#
-                                    #{w\ 1328}#
-                                    #{s\ 1329}#
-                                    #{mod\ 1330}#
+                         (apply (lambda (#{_\ 1447}#
+                                         #{f\ 1448}#
+                                         #{id\ 1449}#
+                                         #{val\ 1450}#
+                                         #{e1\ 1451}#
+                                         #{e2\ 1452}#)
+                                  (#{chi-let\ 1403}#
+                                    #{e\ 1418}#
+                                    #{r\ 1419}#
+                                    #{w\ 1420}#
+                                    #{s\ 1421}#
+                                    #{mod\ 1422}#
                                     #{build-named-let\ 112}#
-                                    (cons #{f\ 1356}# #{id\ 1357}#)
-                                    #{val\ 1358}#
-                                    (cons #{e1\ 1359}# #{e2\ 1360}#)))
-                                #{tmp\ 1347}#)
-                         ((lambda (#{_\ 1364}#)
+                                    (cons #{f\ 1448}# #{id\ 1449}#)
+                                    #{val\ 1450}#
+                                    (cons #{e1\ 1451}# #{e2\ 1452}#)))
+                                #{tmp\ 1439}#)
+                         ((lambda (#{_\ 1456}#)
                             (syntax-violation
                               'let
                               "bad let"
                               (#{source-wrap\ 160}#
-                                #{e\ 1326}#
-                                #{w\ 1328}#
-                                #{s\ 1329}#
-                                #{mod\ 1330}#)))
-                          #{tmp\ 1331}#)))
+                                #{e\ 1418}#
+                                #{w\ 1420}#
+                                #{s\ 1421}#
+                                #{mod\ 1422}#)))
+                          #{tmp\ 1423}#)))
                      ($sc-dispatch
-                       #{tmp\ 1331}#
+                       #{tmp\ 1423}#
                        '(any any #(each (any any)) any . each-any)))))
                 ($sc-dispatch
-                  #{tmp\ 1331}#
+                  #{tmp\ 1423}#
                   '(any #(each (any any)) any . each-any))))
-             #{e\ 1326}#))))
+             #{e\ 1418}#))))
       (#{global-extend\ 129}#
         'core
         'letrec
-        (lambda (#{e\ 1365}#
-                 #{r\ 1366}#
-                 #{w\ 1367}#
-                 #{s\ 1368}#
-                 #{mod\ 1369}#)
-          ((lambda (#{tmp\ 1370}#)
-             ((lambda (#{tmp\ 1371}#)
-                (if (if #{tmp\ 1371}#
-                      (apply (lambda (#{_\ 1372}#
-                                      #{id\ 1373}#
-                                      #{val\ 1374}#
-                                      #{e1\ 1375}#
-                                      #{e2\ 1376}#)
-                               (and-map #{id?\ 131}# #{id\ 1373}#))
-                             #{tmp\ 1371}#)
+        (lambda (#{e\ 1457}#
+                 #{r\ 1458}#
+                 #{w\ 1459}#
+                 #{s\ 1460}#
+                 #{mod\ 1461}#)
+          ((lambda (#{tmp\ 1462}#)
+             ((lambda (#{tmp\ 1463}#)
+                (if (if #{tmp\ 1463}#
+                      (apply (lambda (#{_\ 1464}#
+                                      #{id\ 1465}#
+                                      #{val\ 1466}#
+                                      #{e1\ 1467}#
+                                      #{e2\ 1468}#)
+                               (and-map #{id?\ 131}# #{id\ 1465}#))
+                             #{tmp\ 1463}#)
                       #f)
-                  (apply (lambda (#{_\ 1378}#
-                                  #{id\ 1379}#
-                                  #{val\ 1380}#
-                                  #{e1\ 1381}#
-                                  #{e2\ 1382}#)
-                           (let ((#{ids\ 1383}# #{id\ 1379}#))
+                  (apply (lambda (#{_\ 1470}#
+                                  #{id\ 1471}#
+                                  #{val\ 1472}#
+                                  #{e1\ 1473}#
+                                  #{e2\ 1474}#)
+                           (let ((#{ids\ 1475}# #{id\ 1471}#))
                              (if (not (#{valid-bound-ids?\ 156}#
-                                        #{ids\ 1383}#))
+                                        #{ids\ 1475}#))
                                (syntax-violation
                                  'letrec
                                  "duplicate bound variable"
-                                 #{e\ 1365}#)
-                               (let ((#{labels\ 1385}#
-                                       (#{gen-labels\ 137}# #{ids\ 1383}#))
-                                     (#{new-vars\ 1386}#
-                                       (map #{gen-var\ 177}# #{ids\ 1383}#)))
-                                 (let ((#{w\ 1387}#
+                                 #{e\ 1457}#)
+                               (let ((#{labels\ 1477}#
+                                       (#{gen-labels\ 137}# #{ids\ 1475}#))
+                                     (#{new-vars\ 1478}#
+                                       (map #{gen-var\ 181}# #{ids\ 1475}#)))
+                                 (let ((#{w\ 1479}#
                                          (#{make-binding-wrap\ 148}#
-                                           #{ids\ 1383}#
-                                           #{labels\ 1385}#
-                                           #{w\ 1367}#))
-                                       (#{r\ 1388}#
+                                           #{ids\ 1475}#
+                                           #{labels\ 1477}#
+                                           #{w\ 1459}#))
+                                       (#{r\ 1480}#
                                          (#{extend-var-env\ 126}#
-                                           #{labels\ 1385}#
-                                           #{new-vars\ 1386}#
-                                           #{r\ 1366}#)))
+                                           #{labels\ 1477}#
+                                           #{new-vars\ 1478}#
+                                           #{r\ 1458}#)))
                                    (#{build-letrec\ 113}#
-                                     #{s\ 1368}#
-                                     (map syntax->datum #{ids\ 1383}#)
-                                     #{new-vars\ 1386}#
-                                     (map (lambda (#{x\ 1389}#)
+                                     #{s\ 1460}#
+                                     (map syntax->datum #{ids\ 1475}#)
+                                     #{new-vars\ 1478}#
+                                     (map (lambda (#{x\ 1481}#)
                                             (#{chi\ 167}#
-                                              #{x\ 1389}#
-                                              #{r\ 1388}#
-                                              #{w\ 1387}#
-                                              #{mod\ 1369}#))
-                                          #{val\ 1380}#)
+                                              #{x\ 1481}#
+                                              #{r\ 1480}#
+                                              #{w\ 1479}#
+                                              #{mod\ 1461}#))
+                                          #{val\ 1472}#)
                                      (#{chi-body\ 171}#
-                                       (cons #{e1\ 1381}# #{e2\ 1382}#)
+                                       (cons #{e1\ 1473}# #{e2\ 1474}#)
                                        (#{source-wrap\ 160}#
-                                         #{e\ 1365}#
-                                         #{w\ 1387}#
-                                         #{s\ 1368}#
-                                         #{mod\ 1369}#)
-                                       #{r\ 1388}#
-                                       #{w\ 1387}#
-                                       #{mod\ 1369}#)))))))
-                         #{tmp\ 1371}#)
-                  ((lambda (#{_\ 1392}#)
+                                         #{e\ 1457}#
+                                         #{w\ 1479}#
+                                         #{s\ 1460}#
+                                         #{mod\ 1461}#)
+                                       #{r\ 1480}#
+                                       #{w\ 1479}#
+                                       #{mod\ 1461}#)))))))
+                         #{tmp\ 1463}#)
+                  ((lambda (#{_\ 1484}#)
                      (syntax-violation
                        'letrec
                        "bad letrec"
                        (#{source-wrap\ 160}#
-                         #{e\ 1365}#
-                         #{w\ 1367}#
-                         #{s\ 1368}#
-                         #{mod\ 1369}#)))
-                   #{tmp\ 1370}#)))
+                         #{e\ 1457}#
+                         #{w\ 1459}#
+                         #{s\ 1460}#
+                         #{mod\ 1461}#)))
+                   #{tmp\ 1462}#)))
               ($sc-dispatch
-                #{tmp\ 1370}#
+                #{tmp\ 1462}#
                 '(any #(each (any any)) any . each-any))))
-           #{e\ 1365}#)))
+           #{e\ 1457}#)))
       (#{global-extend\ 129}#
         'core
         'set!
-        (lambda (#{e\ 1393}#
-                 #{r\ 1394}#
-                 #{w\ 1395}#
-                 #{s\ 1396}#
-                 #{mod\ 1397}#)
-          ((lambda (#{tmp\ 1398}#)
-             ((lambda (#{tmp\ 1399}#)
-                (if (if #{tmp\ 1399}#
-                      (apply (lambda (#{_\ 1400}# #{id\ 1401}# #{val\ 1402}#)
-                               (#{id?\ 131}# #{id\ 1401}#))
-                             #{tmp\ 1399}#)
+        (lambda (#{e\ 1485}#
+                 #{r\ 1486}#
+                 #{w\ 1487}#
+                 #{s\ 1488}#
+                 #{mod\ 1489}#)
+          ((lambda (#{tmp\ 1490}#)
+             ((lambda (#{tmp\ 1491}#)
+                (if (if #{tmp\ 1491}#
+                      (apply (lambda (#{_\ 1492}# #{id\ 1493}# #{val\ 1494}#)
+                               (#{id?\ 131}# #{id\ 1493}#))
+                             #{tmp\ 1491}#)
                       #f)
-                  (apply (lambda (#{_\ 1403}# #{id\ 1404}# #{val\ 1405}#)
-                           (let ((#{val\ 1406}#
+                  (apply (lambda (#{_\ 1495}# #{id\ 1496}# #{val\ 1497}#)
+                           (let ((#{val\ 1498}#
                                    (#{chi\ 167}#
-                                     #{val\ 1405}#
-                                     #{r\ 1394}#
-                                     #{w\ 1395}#
-                                     #{mod\ 1397}#))
-                                 (#{n\ 1407}#
+                                     #{val\ 1497}#
+                                     #{r\ 1486}#
+                                     #{w\ 1487}#
+                                     #{mod\ 1489}#))
+                                 (#{n\ 1499}#
                                    (#{id-var-name\ 153}#
-                                     #{id\ 1404}#
-                                     #{w\ 1395}#)))
-                             (let ((#{b\ 1408}#
+                                     #{id\ 1496}#
+                                     #{w\ 1487}#)))
+                             (let ((#{b\ 1500}#
                                      (#{lookup\ 128}#
-                                       #{n\ 1407}#
-                                       #{r\ 1394}#
-                                       #{mod\ 1397}#)))
-                               (let ((#{atom-key\ 1409}#
-                                       (#{binding-type\ 123}# #{b\ 1408}#)))
-                                 (if (memv #{atom-key\ 1409}#
+                                       #{n\ 1499}#
+                                       #{r\ 1486}#
+                                       #{mod\ 1489}#)))
+                               (let ((#{atom-key\ 1501}#
+                                       (#{binding-type\ 123}# #{b\ 1500}#)))
+                                 (if (memv #{atom-key\ 1501}#
                                            '(lexical))
                                    (#{build-lexical-assignment\ 99}#
-                                     #{s\ 1396}#
-                                     (syntax->datum #{id\ 1404}#)
-                                     (#{binding-value\ 124}# #{b\ 1408}#)
-                                     #{val\ 1406}#)
-                                   (if (memv #{atom-key\ 1409}#
+                                     #{s\ 1488}#
+                                     (syntax->datum #{id\ 1496}#)
+                                     (#{binding-value\ 124}# #{b\ 1500}#)
+                                     #{val\ 1498}#)
+                                   (if (memv #{atom-key\ 1501}#
                                              '(global))
                                      (#{build-global-assignment\ 102}#
-                                       #{s\ 1396}#
-                                       #{n\ 1407}#
-                                       #{val\ 1406}#
-                                       #{mod\ 1397}#)
-                                     (if (memv #{atom-key\ 1409}#
+                                       #{s\ 1488}#
+                                       #{n\ 1499}#
+                                       #{val\ 1498}#
+                                       #{mod\ 1489}#)
+                                     (if (memv #{atom-key\ 1501}#
                                                '(displaced-lexical))
                                        (syntax-violation
                                          'set!
                                          "identifier out of context"
                                          (#{wrap\ 159}#
-                                           #{id\ 1404}#
-                                           #{w\ 1395}#
-                                           #{mod\ 1397}#))
+                                           #{id\ 1496}#
+                                           #{w\ 1487}#
+                                           #{mod\ 1489}#))
                                        (syntax-violation
                                          'set!
                                          "bad set!"
                                          (#{source-wrap\ 160}#
-                                           #{e\ 1393}#
-                                           #{w\ 1395}#
-                                           #{s\ 1396}#
-                                           #{mod\ 1397}#)))))))))
-                         #{tmp\ 1399}#)
-                  ((lambda (#{tmp\ 1410}#)
-                     (if #{tmp\ 1410}#
-                       (apply (lambda (#{_\ 1411}#
-                                       #{head\ 1412}#
-                                       #{tail\ 1413}#
-                                       #{val\ 1414}#)
+                                           #{e\ 1485}#
+                                           #{w\ 1487}#
+                                           #{s\ 1488}#
+                                           #{mod\ 1489}#)))))))))
+                         #{tmp\ 1491}#)
+                  ((lambda (#{tmp\ 1502}#)
+                     (if #{tmp\ 1502}#
+                       (apply (lambda (#{_\ 1503}#
+                                       #{head\ 1504}#
+                                       #{tail\ 1505}#
+                                       #{val\ 1506}#)
                                 (call-with-values
                                   (lambda ()
                                     (#{syntax-type\ 165}#
-                                      #{head\ 1412}#
-                                      #{r\ 1394}#
+                                      #{head\ 1504}#
+                                      #{r\ 1486}#
                                       '(())
                                       #f
                                       #f
-                                      #{mod\ 1397}#
+                                      #{mod\ 1489}#
                                       #t))
-                                  (lambda (#{type\ 1415}#
-                                           #{value\ 1416}#
-                                           #{ee\ 1417}#
-                                           #{ww\ 1418}#
-                                           #{ss\ 1419}#
-                                           #{modmod\ 1420}#)
-                                    (if (memv #{type\ 1415}#
+                                  (lambda (#{type\ 1507}#
+                                           #{value\ 1508}#
+                                           #{ee\ 1509}#
+                                           #{ww\ 1510}#
+                                           #{ss\ 1511}#
+                                           #{modmod\ 1512}#)
+                                    (if (memv #{type\ 1507}#
                                               '(module-ref))
-                                      (let ((#{val\ 1421}#
+                                      (let ((#{val\ 1513}#
                                               (#{chi\ 167}#
-                                                #{val\ 1414}#
-                                                #{r\ 1394}#
-                                                #{w\ 1395}#
-                                                #{mod\ 1397}#)))
+                                                #{val\ 1506}#
+                                                #{r\ 1486}#
+                                                #{w\ 1487}#
+                                                #{mod\ 1489}#)))
                                         (call-with-values
                                           (lambda ()
-                                            (#{value\ 1416}#
-                                              (cons #{head\ 1412}#
-                                                    #{tail\ 1413}#)))
-                                          (lambda (#{id\ 1423}# #{mod\ 1424}#)
+                                            (#{value\ 1508}#
+                                              (cons #{head\ 1504}#
+                                                    #{tail\ 1505}#)))
+                                          (lambda (#{id\ 1515}# #{mod\ 1516}#)
                                             (#{build-global-assignment\ 102}#
-                                              #{s\ 1396}#
-                                              #{id\ 1423}#
-                                              #{val\ 1421}#
-                                              #{mod\ 1424}#))))
+                                              #{s\ 1488}#
+                                              #{id\ 1515}#
+                                              #{val\ 1513}#
+                                              #{mod\ 1516}#))))
                                       (#{build-application\ 96}#
-                                        #{s\ 1396}#
+                                        #{s\ 1488}#
                                         (#{chi\ 167}#
                                           (list '#(syntax-object
                                                    setter
@@ -9926,6 +8995,10 @@
                                                       (lambda-var-list
                                                         gen-var
                                                         strip
+                                                        chi-lambda-case
+                                                        lambda*-formals
+                                                        chi-simple-lambda
+                                                        lambda-formals
                                                         ellipsis?
                                                         chi-void
                                                         eval-local-transformer
@@ -10148,6 +9221,10 @@
                                                        (top)
                                                        (top)
                                                        (top)
+                                                       (top)
+                                                       (top)
+                                                       (top)
+                                                       (top)
                                                        (top))
                                                       ("i"
                                                        "i"
@@ -10261,6 +9338,10 @@
                                                        "i"
                                                        "i"
                                                        "i"
+                                                       "i"
+                                                       "i"
+                                                       "i"
+                                                       "i"
                                                        "i"))
                                                     #(ribcage
                                                       (define-structure
@@ -10268,53 +9349,53 @@
                                                       ((top) (top))
                                                       ("i" "i")))
                                                    (hygiene guile))
-                                                #{head\ 1412}#)
-                                          #{r\ 1394}#
-                                          #{w\ 1395}#
-                                          #{mod\ 1397}#)
-                                        (map (lambda (#{e\ 1425}#)
+                                                #{head\ 1504}#)
+                                          #{r\ 1486}#
+                                          #{w\ 1487}#
+                                          #{mod\ 1489}#)
+                                        (map (lambda (#{e\ 1517}#)
                                                (#{chi\ 167}#
-                                                 #{e\ 1425}#
-                                                 #{r\ 1394}#
-                                                 #{w\ 1395}#
-                                                 #{mod\ 1397}#))
+                                                 #{e\ 1517}#
+                                                 #{r\ 1486}#
+                                                 #{w\ 1487}#
+                                                 #{mod\ 1489}#))
                                              (append
-                                               #{tail\ 1413}#
-                                               (list #{val\ 1414}#))))))))
-                              #{tmp\ 1410}#)
-                       ((lambda (#{_\ 1427}#)
+                                               #{tail\ 1505}#
+                                               (list #{val\ 1506}#))))))))
+                              #{tmp\ 1502}#)
+                       ((lambda (#{_\ 1519}#)
                           (syntax-violation
                             'set!
                             "bad set!"
                             (#{source-wrap\ 160}#
-                              #{e\ 1393}#
-                              #{w\ 1395}#
-                              #{s\ 1396}#
-                              #{mod\ 1397}#)))
-                        #{tmp\ 1398}#)))
+                              #{e\ 1485}#
+                              #{w\ 1487}#
+                              #{s\ 1488}#
+                              #{mod\ 1489}#)))
+                        #{tmp\ 1490}#)))
                    ($sc-dispatch
-                     #{tmp\ 1398}#
+                     #{tmp\ 1490}#
                      '(any (any . each-any) any)))))
               ($sc-dispatch
-                #{tmp\ 1398}#
+                #{tmp\ 1490}#
                 '(any any any))))
-           #{e\ 1393}#)))
+           #{e\ 1485}#)))
       (#{global-extend\ 129}#
         'module-ref
         '@
-        (lambda (#{e\ 1428}#)
-          ((lambda (#{tmp\ 1429}#)
-             ((lambda (#{tmp\ 1430}#)
-                (if (if #{tmp\ 1430}#
-                      (apply (lambda (#{_\ 1431}# #{mod\ 1432}# #{id\ 1433}#)
-                               (if (and-map #{id?\ 131}# #{mod\ 1432}#)
-                                 (#{id?\ 131}# #{id\ 1433}#)
+        (lambda (#{e\ 1520}#)
+          ((lambda (#{tmp\ 1521}#)
+             ((lambda (#{tmp\ 1522}#)
+                (if (if #{tmp\ 1522}#
+                      (apply (lambda (#{_\ 1523}# #{mod\ 1524}# #{id\ 1525}#)
+                               (if (and-map #{id?\ 131}# #{mod\ 1524}#)
+                                 (#{id?\ 131}# #{id\ 1525}#)
                                  #f))
-                             #{tmp\ 1430}#)
+                             #{tmp\ 1522}#)
                       #f)
-                  (apply (lambda (#{_\ 1435}# #{mod\ 1436}# #{id\ 1437}#)
+                  (apply (lambda (#{_\ 1527}# #{mod\ 1528}# #{id\ 1529}#)
                            (values
-                             (syntax->datum #{id\ 1437}#)
+                             (syntax->datum #{id\ 1529}#)
                              (syntax->datum
                                (cons '#(syntax-object
                                         public
@@ -10329,6 +9410,10 @@
                                            (lambda-var-list
                                              gen-var
                                              strip
+                                             chi-lambda-case
+                                             lambda*-formals
+                                             chi-simple-lambda
+                                             lambda-formals
                                              ellipsis?
                                              chi-void
                                              eval-local-transformer
@@ -10551,6 +9636,10 @@
                                             (top)
                                             (top)
                                             (top)
+                                            (top)
+                                            (top)
+                                            (top)
+                                            (top)
                                             (top))
                                            ("i"
                                             "i"
@@ -10664,38 +9753,42 @@
                                             "i"
                                             "i"
                                             "i"
+                                            "i"
+                                            "i"
+                                            "i"
+                                            "i"
                                             "i"))
                                          #(ribcage
                                            (define-structure and-map*)
                                            ((top) (top))
                                            ("i" "i")))
                                         (hygiene guile))
-                                     #{mod\ 1436}#))))
-                         #{tmp\ 1430}#)
+                                     #{mod\ 1528}#))))
+                         #{tmp\ 1522}#)
                   (syntax-violation
                     #f
                     "source expression failed to match any pattern"
-                    #{tmp\ 1429}#)))
+                    #{tmp\ 1521}#)))
               ($sc-dispatch
-                #{tmp\ 1429}#
+                #{tmp\ 1521}#
                 '(any each-any any))))
-           #{e\ 1428}#)))
+           #{e\ 1520}#)))
       (#{global-extend\ 129}#
         'module-ref
         '@@
-        (lambda (#{e\ 1439}#)
-          ((lambda (#{tmp\ 1440}#)
-             ((lambda (#{tmp\ 1441}#)
-                (if (if #{tmp\ 1441}#
-                      (apply (lambda (#{_\ 1442}# #{mod\ 1443}# #{id\ 1444}#)
-                               (if (and-map #{id?\ 131}# #{mod\ 1443}#)
-                                 (#{id?\ 131}# #{id\ 1444}#)
+        (lambda (#{e\ 1531}#)
+          ((lambda (#{tmp\ 1532}#)
+             ((lambda (#{tmp\ 1533}#)
+                (if (if #{tmp\ 1533}#
+                      (apply (lambda (#{_\ 1534}# #{mod\ 1535}# #{id\ 1536}#)
+                               (if (and-map #{id?\ 131}# #{mod\ 1535}#)
+                                 (#{id?\ 131}# #{id\ 1536}#)
                                  #f))
-                             #{tmp\ 1441}#)
+                             #{tmp\ 1533}#)
                       #f)
-                  (apply (lambda (#{_\ 1446}# #{mod\ 1447}# #{id\ 1448}#)
+                  (apply (lambda (#{_\ 1538}# #{mod\ 1539}# #{id\ 1540}#)
                            (values
-                             (syntax->datum #{id\ 1448}#)
+                             (syntax->datum #{id\ 1540}#)
                              (syntax->datum
                                (cons '#(syntax-object
                                         private
@@ -10710,6 +9803,10 @@
                                            (lambda-var-list
                                              gen-var
                                              strip
+                                             chi-lambda-case
+                                             lambda*-formals
+                                             chi-simple-lambda
+                                             lambda-formals
                                              ellipsis?
                                              chi-void
                                              eval-local-transformer
@@ -10932,6 +10029,10 @@
                                             (top)
                                             (top)
                                             (top)
+                                            (top)
+                                            (top)
+                                            (top)
+                                            (top)
                                             (top))
                                            ("i"
                                             "i"
@@ -11045,83 +10146,87 @@
                                             "i"
                                             "i"
                                             "i"
+                                            "i"
+                                            "i"
+                                            "i"
+                                            "i"
                                             "i"))
                                          #(ribcage
                                            (define-structure and-map*)
                                            ((top) (top))
                                            ("i" "i")))
                                         (hygiene guile))
-                                     #{mod\ 1447}#))))
-                         #{tmp\ 1441}#)
+                                     #{mod\ 1539}#))))
+                         #{tmp\ 1533}#)
                   (syntax-violation
                     #f
                     "source expression failed to match any pattern"
-                    #{tmp\ 1440}#)))
+                    #{tmp\ 1532}#)))
               ($sc-dispatch
-                #{tmp\ 1440}#
+                #{tmp\ 1532}#
                 '(any each-any any))))
-           #{e\ 1439}#)))
+           #{e\ 1531}#)))
       (#{global-extend\ 129}#
         'core
         'if
-        (lambda (#{e\ 1450}#
-                 #{r\ 1451}#
-                 #{w\ 1452}#
-                 #{s\ 1453}#
-                 #{mod\ 1454}#)
-          ((lambda (#{tmp\ 1455}#)
-             ((lambda (#{tmp\ 1456}#)
-                (if #{tmp\ 1456}#
-                  (apply (lambda (#{_\ 1457}# #{test\ 1458}# #{then\ 1459}#)
+        (lambda (#{e\ 1542}#
+                 #{r\ 1543}#
+                 #{w\ 1544}#
+                 #{s\ 1545}#
+                 #{mod\ 1546}#)
+          ((lambda (#{tmp\ 1547}#)
+             ((lambda (#{tmp\ 1548}#)
+                (if #{tmp\ 1548}#
+                  (apply (lambda (#{_\ 1549}# #{test\ 1550}# #{then\ 1551}#)
                            (#{build-conditional\ 97}#
-                             #{s\ 1453}#
+                             #{s\ 1545}#
                              (#{chi\ 167}#
-                               #{test\ 1458}#
-                               #{r\ 1451}#
-                               #{w\ 1452}#
-                               #{mod\ 1454}#)
+                               #{test\ 1550}#
+                               #{r\ 1543}#
+                               #{w\ 1544}#
+                               #{mod\ 1546}#)
                              (#{chi\ 167}#
-                               #{then\ 1459}#
-                               #{r\ 1451}#
-                               #{w\ 1452}#
-                               #{mod\ 1454}#)
+                               #{then\ 1551}#
+                               #{r\ 1543}#
+                               #{w\ 1544}#
+                               #{mod\ 1546}#)
                              (#{build-void\ 95}# #f)))
-                         #{tmp\ 1456}#)
-                  ((lambda (#{tmp\ 1460}#)
-                     (if #{tmp\ 1460}#
-                       (apply (lambda (#{_\ 1461}#
-                                       #{test\ 1462}#
-                                       #{then\ 1463}#
-                                       #{else\ 1464}#)
+                         #{tmp\ 1548}#)
+                  ((lambda (#{tmp\ 1552}#)
+                     (if #{tmp\ 1552}#
+                       (apply (lambda (#{_\ 1553}#
+                                       #{test\ 1554}#
+                                       #{then\ 1555}#
+                                       #{else\ 1556}#)
                                 (#{build-conditional\ 97}#
-                                  #{s\ 1453}#
+                                  #{s\ 1545}#
                                   (#{chi\ 167}#
-                                    #{test\ 1462}#
-                                    #{r\ 1451}#
-                                    #{w\ 1452}#
-                                    #{mod\ 1454}#)
+                                    #{test\ 1554}#
+                                    #{r\ 1543}#
+                                    #{w\ 1544}#
+                                    #{mod\ 1546}#)
                                   (#{chi\ 167}#
-                                    #{then\ 1463}#
-                                    #{r\ 1451}#
-                                    #{w\ 1452}#
-                                    #{mod\ 1454}#)
+                                    #{then\ 1555}#
+                                    #{r\ 1543}#
+                                    #{w\ 1544}#
+                                    #{mod\ 1546}#)
                                   (#{chi\ 167}#
-                                    #{else\ 1464}#
-                                    #{r\ 1451}#
-                                    #{w\ 1452}#
-                                    #{mod\ 1454}#)))
-                              #{tmp\ 1460}#)
+                                    #{else\ 1556}#
+                                    #{r\ 1543}#
+                                    #{w\ 1544}#
+                                    #{mod\ 1546}#)))
+                              #{tmp\ 1552}#)
                        (syntax-violation
                          #f
                          "source expression failed to match any pattern"
-                         #{tmp\ 1455}#)))
+                         #{tmp\ 1547}#)))
                    ($sc-dispatch
-                     #{tmp\ 1455}#
+                     #{tmp\ 1547}#
                      '(any any any any)))))
               ($sc-dispatch
-                #{tmp\ 1455}#
+                #{tmp\ 1547}#
                 '(any any any))))
-           #{e\ 1450}#)))
+           #{e\ 1542}#)))
       (#{global-extend\ 129}#
         'begin
         'begin
@@ -11141,13 +10246,13 @@
       (#{global-extend\ 129}#
         'core
         'syntax-case
-        (letrec ((#{gen-syntax-case\ 1468}#
-                   (lambda (#{x\ 1469}#
-                            #{keys\ 1470}#
-                            #{clauses\ 1471}#
-                            #{r\ 1472}#
-                            #{mod\ 1473}#)
-                     (if (null? #{clauses\ 1471}#)
+        (letrec ((#{gen-syntax-case\ 1560}#
+                   (lambda (#{x\ 1561}#
+                            #{keys\ 1562}#
+                            #{clauses\ 1563}#
+                            #{r\ 1564}#
+                            #{mod\ 1565}#)
+                     (if (null? #{clauses\ 1563}#)
                        (#{build-application\ 96}#
                          #f
                          (#{build-primref\ 108}#
@@ -11157,17 +10262,17 @@
                                (#{build-data\ 109}#
                                  #f
                                  "source expression failed to match any 
pattern")
-                               #{x\ 1469}#))
-                       ((lambda (#{tmp\ 1474}#)
-                          ((lambda (#{tmp\ 1475}#)
-                             (if #{tmp\ 1475}#
-                               (apply (lambda (#{pat\ 1476}# #{exp\ 1477}#)
-                                        (if (if (#{id?\ 131}# #{pat\ 1476}#)
+                               #{x\ 1561}#))
+                       ((lambda (#{tmp\ 1566}#)
+                          ((lambda (#{tmp\ 1567}#)
+                             (if #{tmp\ 1567}#
+                               (apply (lambda (#{pat\ 1568}# #{exp\ 1569}#)
+                                        (if (if (#{id?\ 131}# #{pat\ 1568}#)
                                               (and-map
-                                                (lambda (#{x\ 1478}#)
+                                                (lambda (#{x\ 1570}#)
                                                   (not (#{free-id=?\ 154}#
-                                                         #{pat\ 1476}#
-                                                         #{x\ 1478}#)))
+                                                         #{pat\ 1568}#
+                                                         #{x\ 1570}#)))
                                                 (cons '#(syntax-object
                                                          ...
                                                          ((top)
@@ -11206,6 +10311,10 @@
                                                             (lambda-var-list
                                                               gen-var
                                                               strip
+                                                              chi-lambda-case
+                                                              lambda*-formals
+                                                              chi-simple-lambda
+                                                              lambda-formals
                                                               ellipsis?
                                                               chi-void
                                                               
eval-local-transformer
@@ -11428,6 +10537,10 @@
                                                              (top)
                                                              (top)
                                                              (top)
+                                                             (top)
+                                                             (top)
+                                                             (top)
+                                                             (top)
                                                              (top))
                                                             ("i"
                                                              "i"
@@ -11541,6 +10654,10 @@
                                                              "i"
                                                              "i"
                                                              "i"
+                                                             "i"
+                                                             "i"
+                                                             "i"
+                                                             "i"
                                                              "i"))
                                                           #(ribcage
                                                             (define-structure
@@ -11548,734 +10665,734 @@
                                                             ((top) (top))
                                                             ("i" "i")))
                                                          (hygiene guile))
-                                                      #{keys\ 1470}#))
+                                                      #{keys\ 1562}#))
                                               #f)
-                                          (let ((#{labels\ 1479}#
+                                          (let ((#{labels\ 1571}#
                                                   (list (#{gen-label\ 136}#)))
-                                                (#{var\ 1480}#
-                                                  (#{gen-var\ 177}#
-                                                    #{pat\ 1476}#)))
+                                                (#{var\ 1572}#
+                                                  (#{gen-var\ 181}#
+                                                    #{pat\ 1568}#)))
                                             (#{build-application\ 96}#
                                               #f
                                               (#{build-simple-lambda\ 105}#
                                                 #f
                                                 (list (syntax->datum
-                                                        #{pat\ 1476}#))
+                                                        #{pat\ 1568}#))
                                                 #f
-                                                (list #{var\ 1480}#)
+                                                (list #{var\ 1572}#)
                                                 #f
                                                 (#{chi\ 167}#
-                                                  #{exp\ 1477}#
+                                                  #{exp\ 1569}#
                                                   (#{extend-env\ 125}#
-                                                    #{labels\ 1479}#
+                                                    #{labels\ 1571}#
                                                     (list (cons 'syntax
-                                                                (cons #{var\ 
1480}#
+                                                                (cons #{var\ 
1572}#
                                                                       0)))
-                                                    #{r\ 1472}#)
+                                                    #{r\ 1564}#)
                                                   (#{make-binding-wrap\ 148}#
-                                                    (list #{pat\ 1476}#)
-                                                    #{labels\ 1479}#
+                                                    (list #{pat\ 1568}#)
+                                                    #{labels\ 1571}#
                                                     '(()))
-                                                  #{mod\ 1473}#))
-                                              (list #{x\ 1469}#)))
-                                          (#{gen-clause\ 1467}#
-                                            #{x\ 1469}#
-                                            #{keys\ 1470}#
-                                            (cdr #{clauses\ 1471}#)
-                                            #{r\ 1472}#
-                                            #{pat\ 1476}#
+                                                  #{mod\ 1565}#))
+                                              (list #{x\ 1561}#)))
+                                          (#{gen-clause\ 1559}#
+                                            #{x\ 1561}#
+                                            #{keys\ 1562}#
+                                            (cdr #{clauses\ 1563}#)
+                                            #{r\ 1564}#
+                                            #{pat\ 1568}#
                                             #t
-                                            #{exp\ 1477}#
-                                            #{mod\ 1473}#)))
-                                      #{tmp\ 1475}#)
-                               ((lambda (#{tmp\ 1481}#)
-                                  (if #{tmp\ 1481}#
-                                    (apply (lambda (#{pat\ 1482}#
-                                                    #{fender\ 1483}#
-                                                    #{exp\ 1484}#)
-                                             (#{gen-clause\ 1467}#
-                                               #{x\ 1469}#
-                                               #{keys\ 1470}#
-                                               (cdr #{clauses\ 1471}#)
-                                               #{r\ 1472}#
-                                               #{pat\ 1482}#
-                                               #{fender\ 1483}#
-                                               #{exp\ 1484}#
-                                               #{mod\ 1473}#))
-                                           #{tmp\ 1481}#)
-                                    ((lambda (#{_\ 1485}#)
+                                            #{exp\ 1569}#
+                                            #{mod\ 1565}#)))
+                                      #{tmp\ 1567}#)
+                               ((lambda (#{tmp\ 1573}#)
+                                  (if #{tmp\ 1573}#
+                                    (apply (lambda (#{pat\ 1574}#
+                                                    #{fender\ 1575}#
+                                                    #{exp\ 1576}#)
+                                             (#{gen-clause\ 1559}#
+                                               #{x\ 1561}#
+                                               #{keys\ 1562}#
+                                               (cdr #{clauses\ 1563}#)
+                                               #{r\ 1564}#
+                                               #{pat\ 1574}#
+                                               #{fender\ 1575}#
+                                               #{exp\ 1576}#
+                                               #{mod\ 1565}#))
+                                           #{tmp\ 1573}#)
+                                    ((lambda (#{_\ 1577}#)
                                        (syntax-violation
                                          'syntax-case
                                          "invalid clause"
-                                         (car #{clauses\ 1471}#)))
-                                     #{tmp\ 1474}#)))
+                                         (car #{clauses\ 1563}#)))
+                                     #{tmp\ 1566}#)))
                                 ($sc-dispatch
-                                  #{tmp\ 1474}#
+                                  #{tmp\ 1566}#
                                   '(any any any)))))
-                           ($sc-dispatch #{tmp\ 1474}# (quote (any any)))))
-                        (car #{clauses\ 1471}#)))))
-                 (#{gen-clause\ 1467}#
-                   (lambda (#{x\ 1486}#
-                            #{keys\ 1487}#
-                            #{clauses\ 1488}#
-                            #{r\ 1489}#
-                            #{pat\ 1490}#
-                            #{fender\ 1491}#
-                            #{exp\ 1492}#
-                            #{mod\ 1493}#)
+                           ($sc-dispatch #{tmp\ 1566}# (quote (any any)))))
+                        (car #{clauses\ 1563}#)))))
+                 (#{gen-clause\ 1559}#
+                   (lambda (#{x\ 1578}#
+                            #{keys\ 1579}#
+                            #{clauses\ 1580}#
+                            #{r\ 1581}#
+                            #{pat\ 1582}#
+                            #{fender\ 1583}#
+                            #{exp\ 1584}#
+                            #{mod\ 1585}#)
                      (call-with-values
                        (lambda ()
-                         (#{convert-pattern\ 1465}#
-                           #{pat\ 1490}#
-                           #{keys\ 1487}#))
-                       (lambda (#{p\ 1494}# #{pvars\ 1495}#)
+                         (#{convert-pattern\ 1557}#
+                           #{pat\ 1582}#
+                           #{keys\ 1579}#))
+                       (lambda (#{p\ 1586}# #{pvars\ 1587}#)
                          (if (not (#{distinct-bound-ids?\ 157}#
-                                    (map car #{pvars\ 1495}#)))
+                                    (map car #{pvars\ 1587}#)))
                            (syntax-violation
                              'syntax-case
                              "duplicate pattern variable"
-                             #{pat\ 1490}#)
+                             #{pat\ 1582}#)
                            (if (not (and-map
-                                      (lambda (#{x\ 1496}#)
+                                      (lambda (#{x\ 1588}#)
                                         (not (#{ellipsis?\ 175}#
-                                               (car #{x\ 1496}#))))
-                                      #{pvars\ 1495}#))
+                                               (car #{x\ 1588}#))))
+                                      #{pvars\ 1587}#))
                              (syntax-violation
                                'syntax-case
                                "misplaced ellipsis"
-                               #{pat\ 1490}#)
-                             (let ((#{y\ 1497}#
-                                     (#{gen-var\ 177}# (quote tmp))))
+                               #{pat\ 1582}#)
+                             (let ((#{y\ 1589}#
+                                     (#{gen-var\ 181}# (quote tmp))))
                                (#{build-application\ 96}#
                                  #f
                                  (#{build-simple-lambda\ 105}#
                                    #f
                                    (list (quote tmp))
                                    #f
-                                   (list #{y\ 1497}#)
+                                   (list #{y\ 1589}#)
                                    #f
-                                   (let ((#{y\ 1498}#
+                                   (let ((#{y\ 1590}#
                                            (#{build-lexical-reference\ 98}#
                                              'value
                                              #f
                                              'tmp
-                                             #{y\ 1497}#)))
+                                             #{y\ 1589}#)))
                                      (#{build-conditional\ 97}#
                                        #f
-                                       ((lambda (#{tmp\ 1499}#)
-                                          ((lambda (#{tmp\ 1500}#)
-                                             (if #{tmp\ 1500}#
-                                               (apply (lambda () #{y\ 1498}#)
-                                                      #{tmp\ 1500}#)
-                                               ((lambda (#{_\ 1501}#)
+                                       ((lambda (#{tmp\ 1591}#)
+                                          ((lambda (#{tmp\ 1592}#)
+                                             (if #{tmp\ 1592}#
+                                               (apply (lambda () #{y\ 1590}#)
+                                                      #{tmp\ 1592}#)
+                                               ((lambda (#{_\ 1593}#)
                                                   (#{build-conditional\ 97}#
                                                     #f
-                                                    #{y\ 1498}#
-                                                    (#{build-dispatch-call\ 
1466}#
-                                                      #{pvars\ 1495}#
-                                                      #{fender\ 1491}#
-                                                      #{y\ 1498}#
-                                                      #{r\ 1489}#
-                                                      #{mod\ 1493}#)
+                                                    #{y\ 1590}#
+                                                    (#{build-dispatch-call\ 
1558}#
+                                                      #{pvars\ 1587}#
+                                                      #{fender\ 1583}#
+                                                      #{y\ 1590}#
+                                                      #{r\ 1581}#
+                                                      #{mod\ 1585}#)
                                                     (#{build-data\ 109}#
                                                       #f
                                                       #f)))
-                                                #{tmp\ 1499}#)))
+                                                #{tmp\ 1591}#)))
                                            ($sc-dispatch
-                                             #{tmp\ 1499}#
+                                             #{tmp\ 1591}#
                                              '#(atom #t))))
-                                        #{fender\ 1491}#)
-                                       (#{build-dispatch-call\ 1466}#
-                                         #{pvars\ 1495}#
-                                         #{exp\ 1492}#
-                                         #{y\ 1498}#
-                                         #{r\ 1489}#
-                                         #{mod\ 1493}#)
-                                       (#{gen-syntax-case\ 1468}#
-                                         #{x\ 1486}#
-                                         #{keys\ 1487}#
-                                         #{clauses\ 1488}#
-                                         #{r\ 1489}#
-                                         #{mod\ 1493}#))))
-                                 (list (if (eq? #{p\ 1494}# (quote any))
+                                        #{fender\ 1583}#)
+                                       (#{build-dispatch-call\ 1558}#
+                                         #{pvars\ 1587}#
+                                         #{exp\ 1584}#
+                                         #{y\ 1590}#
+                                         #{r\ 1581}#
+                                         #{mod\ 1585}#)
+                                       (#{gen-syntax-case\ 1560}#
+                                         #{x\ 1578}#
+                                         #{keys\ 1579}#
+                                         #{clauses\ 1580}#
+                                         #{r\ 1581}#
+                                         #{mod\ 1585}#))))
+                                 (list (if (eq? #{p\ 1586}# (quote any))
                                          (#{build-application\ 96}#
                                            #f
                                            (#{build-primref\ 108}#
                                              #f
                                              'list)
-                                           (list #{x\ 1486}#))
+                                           (list #{x\ 1578}#))
                                          (#{build-application\ 96}#
                                            #f
                                            (#{build-primref\ 108}#
                                              #f
                                              '$sc-dispatch)
-                                           (list #{x\ 1486}#
+                                           (list #{x\ 1578}#
                                                  (#{build-data\ 109}#
                                                    #f
-                                                   #{p\ 1494}#)))))))))))))
-                 (#{build-dispatch-call\ 1466}#
-                   (lambda (#{pvars\ 1502}#
-                            #{exp\ 1503}#
-                            #{y\ 1504}#
-                            #{r\ 1505}#
-                            #{mod\ 1506}#)
-                     (let ((#{ids\ 1507}# (map car #{pvars\ 1502}#))
-                           (#{levels\ 1508}# (map cdr #{pvars\ 1502}#)))
-                       (let ((#{labels\ 1509}#
-                               (#{gen-labels\ 137}# #{ids\ 1507}#))
-                             (#{new-vars\ 1510}#
-                               (map #{gen-var\ 177}# #{ids\ 1507}#)))
+                                                   #{p\ 1586}#)))))))))))))
+                 (#{build-dispatch-call\ 1558}#
+                   (lambda (#{pvars\ 1594}#
+                            #{exp\ 1595}#
+                            #{y\ 1596}#
+                            #{r\ 1597}#
+                            #{mod\ 1598}#)
+                     (let ((#{ids\ 1599}# (map car #{pvars\ 1594}#))
+                           (#{levels\ 1600}# (map cdr #{pvars\ 1594}#)))
+                       (let ((#{labels\ 1601}#
+                               (#{gen-labels\ 137}# #{ids\ 1599}#))
+                             (#{new-vars\ 1602}#
+                               (map #{gen-var\ 181}# #{ids\ 1599}#)))
                          (#{build-application\ 96}#
                            #f
                            (#{build-primref\ 108}# #f (quote apply))
                            (list (#{build-simple-lambda\ 105}#
                                    #f
-                                   (map syntax->datum #{ids\ 1507}#)
+                                   (map syntax->datum #{ids\ 1599}#)
                                    #f
-                                   #{new-vars\ 1510}#
+                                   #{new-vars\ 1602}#
                                    #f
                                    (#{chi\ 167}#
-                                     #{exp\ 1503}#
+                                     #{exp\ 1595}#
                                      (#{extend-env\ 125}#
-                                       #{labels\ 1509}#
-                                       (map (lambda (#{var\ 1511}#
-                                                     #{level\ 1512}#)
+                                       #{labels\ 1601}#
+                                       (map (lambda (#{var\ 1603}#
+                                                     #{level\ 1604}#)
                                               (cons 'syntax
-                                                    (cons #{var\ 1511}#
-                                                          #{level\ 1512}#)))
-                                            #{new-vars\ 1510}#
-                                            (map cdr #{pvars\ 1502}#))
-                                       #{r\ 1505}#)
+                                                    (cons #{var\ 1603}#
+                                                          #{level\ 1604}#)))
+                                            #{new-vars\ 1602}#
+                                            (map cdr #{pvars\ 1594}#))
+                                       #{r\ 1597}#)
                                      (#{make-binding-wrap\ 148}#
-                                       #{ids\ 1507}#
-                                       #{labels\ 1509}#
+                                       #{ids\ 1599}#
+                                       #{labels\ 1601}#
                                        '(()))
-                                     #{mod\ 1506}#))
-                                 #{y\ 1504}#))))))
-                 (#{convert-pattern\ 1465}#
-                   (lambda (#{pattern\ 1513}# #{keys\ 1514}#)
-                     (letrec ((#{cvt\ 1515}#
-                                (lambda (#{p\ 1516}# #{n\ 1517}# #{ids\ 1518}#)
-                                  (if (#{id?\ 131}# #{p\ 1516}#)
+                                     #{mod\ 1598}#))
+                                 #{y\ 1596}#))))))
+                 (#{convert-pattern\ 1557}#
+                   (lambda (#{pattern\ 1605}# #{keys\ 1606}#)
+                     (letrec ((#{cvt\ 1607}#
+                                (lambda (#{p\ 1608}# #{n\ 1609}# #{ids\ 1610}#)
+                                  (if (#{id?\ 131}# #{p\ 1608}#)
                                     (if (#{bound-id-member?\ 158}#
-                                          #{p\ 1516}#
-                                          #{keys\ 1514}#)
+                                          #{p\ 1608}#
+                                          #{keys\ 1606}#)
                                       (values
-                                        (vector (quote free-id) #{p\ 1516}#)
-                                        #{ids\ 1518}#)
+                                        (vector (quote free-id) #{p\ 1608}#)
+                                        #{ids\ 1610}#)
                                       (values
                                         'any
-                                        (cons (cons #{p\ 1516}# #{n\ 1517}#)
-                                              #{ids\ 1518}#)))
-                                    ((lambda (#{tmp\ 1519}#)
-                                       ((lambda (#{tmp\ 1520}#)
-                                          (if (if #{tmp\ 1520}#
-                                                (apply (lambda (#{x\ 1521}#
-                                                                #{dots\ 1522}#)
+                                        (cons (cons #{p\ 1608}# #{n\ 1609}#)
+                                              #{ids\ 1610}#)))
+                                    ((lambda (#{tmp\ 1611}#)
+                                       ((lambda (#{tmp\ 1612}#)
+                                          (if (if #{tmp\ 1612}#
+                                                (apply (lambda (#{x\ 1613}#
+                                                                #{dots\ 1614}#)
                                                          (#{ellipsis?\ 175}#
-                                                           #{dots\ 1522}#))
-                                                       #{tmp\ 1520}#)
+                                                           #{dots\ 1614}#))
+                                                       #{tmp\ 1612}#)
                                                 #f)
-                                            (apply (lambda (#{x\ 1523}#
-                                                            #{dots\ 1524}#)
+                                            (apply (lambda (#{x\ 1615}#
+                                                            #{dots\ 1616}#)
                                                      (call-with-values
                                                        (lambda ()
-                                                         (#{cvt\ 1515}#
-                                                           #{x\ 1523}#
+                                                         (#{cvt\ 1607}#
+                                                           #{x\ 1615}#
                                                            (#{fx+\ 86}#
-                                                             #{n\ 1517}#
+                                                             #{n\ 1609}#
                                                              1)
-                                                           #{ids\ 1518}#))
-                                                       (lambda (#{p\ 1525}#
-                                                                #{ids\ 1526}#)
+                                                           #{ids\ 1610}#))
+                                                       (lambda (#{p\ 1617}#
+                                                                #{ids\ 1618}#)
                                                          (values
-                                                           (if (eq? #{p\ 1525}#
+                                                           (if (eq? #{p\ 1617}#
                                                                     'any)
                                                              'each-any
                                                              (vector
                                                                'each
-                                                               #{p\ 1525}#))
-                                                           #{ids\ 1526}#))))
-                                                   #{tmp\ 1520}#)
-                                            ((lambda (#{tmp\ 1527}#)
-                                               (if #{tmp\ 1527}#
-                                                 (apply (lambda (#{x\ 1528}#
-                                                                 #{y\ 1529}#)
+                                                               #{p\ 1617}#))
+                                                           #{ids\ 1618}#))))
+                                                   #{tmp\ 1612}#)
+                                            ((lambda (#{tmp\ 1619}#)
+                                               (if #{tmp\ 1619}#
+                                                 (apply (lambda (#{x\ 1620}#
+                                                                 #{y\ 1621}#)
                                                           (call-with-values
                                                             (lambda ()
-                                                              (#{cvt\ 1515}#
-                                                                #{y\ 1529}#
-                                                                #{n\ 1517}#
-                                                                #{ids\ 1518}#))
-                                                            (lambda (#{y\ 
1530}#
-                                                                     #{ids\ 
1531}#)
+                                                              (#{cvt\ 1607}#
+                                                                #{y\ 1621}#
+                                                                #{n\ 1609}#
+                                                                #{ids\ 1610}#))
+                                                            (lambda (#{y\ 
1622}#
+                                                                     #{ids\ 
1623}#)
                                                               (call-with-values
                                                                 (lambda ()
-                                                                  (#{cvt\ 
1515}#
-                                                                    #{x\ 1528}#
-                                                                    #{n\ 1517}#
-                                                                    #{ids\ 
1531}#))
-                                                                (lambda (#{x\ 
1532}#
-                                                                         
#{ids\ 1533}#)
+                                                                  (#{cvt\ 
1607}#
+                                                                    #{x\ 1620}#
+                                                                    #{n\ 1609}#
+                                                                    #{ids\ 
1623}#))
+                                                                (lambda (#{x\ 
1624}#
+                                                                         
#{ids\ 1625}#)
                                                                   (values
-                                                                    (cons #{x\ 
1532}#
-                                                                          #{y\ 
1530}#)
-                                                                    #{ids\ 
1533}#))))))
-                                                        #{tmp\ 1527}#)
-                                                 ((lambda (#{tmp\ 1534}#)
-                                                    (if #{tmp\ 1534}#
+                                                                    (cons #{x\ 
1624}#
+                                                                          #{y\ 
1622}#)
+                                                                    #{ids\ 
1625}#))))))
+                                                        #{tmp\ 1619}#)
+                                                 ((lambda (#{tmp\ 1626}#)
+                                                    (if #{tmp\ 1626}#
                                                       (apply (lambda ()
                                                                (values
                                                                  '()
-                                                                 #{ids\ 
1518}#))
-                                                             #{tmp\ 1534}#)
-                                                      ((lambda (#{tmp\ 1535}#)
-                                                         (if #{tmp\ 1535}#
-                                                           (apply (lambda 
(#{x\ 1536}#)
+                                                                 #{ids\ 
1610}#))
+                                                             #{tmp\ 1626}#)
+                                                      ((lambda (#{tmp\ 1627}#)
+                                                         (if #{tmp\ 1627}#
+                                                           (apply (lambda 
(#{x\ 1628}#)
                                                                     
(call-with-values
                                                                       (lambda 
()
-                                                                        
(#{cvt\ 1515}#
-                                                                          #{x\ 
1536}#
-                                                                          #{n\ 
1517}#
-                                                                          
#{ids\ 1518}#))
-                                                                      (lambda 
(#{p\ 1538}#
-                                                                               
#{ids\ 1539}#)
+                                                                        
(#{cvt\ 1607}#
+                                                                          #{x\ 
1628}#
+                                                                          #{n\ 
1609}#
+                                                                          
#{ids\ 1610}#))
+                                                                      (lambda 
(#{p\ 1630}#
+                                                                               
#{ids\ 1631}#)
                                                                         (values
                                                                           
(vector
                                                                             
'vector
-                                                                            
#{p\ 1538}#)
-                                                                          
#{ids\ 1539}#))))
-                                                                  #{tmp\ 
1535}#)
-                                                           ((lambda (#{x\ 
1540}#)
+                                                                            
#{p\ 1630}#)
+                                                                          
#{ids\ 1631}#))))
+                                                                  #{tmp\ 
1627}#)
+                                                           ((lambda (#{x\ 
1632}#)
                                                               (values
                                                                 (vector
                                                                   'atom
-                                                                  (#{strip\ 
176}#
-                                                                    #{p\ 1516}#
+                                                                  (#{strip\ 
180}#
+                                                                    #{p\ 1608}#
                                                                     '(())))
-                                                                #{ids\ 1518}#))
-                                                            #{tmp\ 1519}#)))
+                                                                #{ids\ 1610}#))
+                                                            #{tmp\ 1611}#)))
                                                        ($sc-dispatch
-                                                         #{tmp\ 1519}#
+                                                         #{tmp\ 1611}#
                                                          '#(vector
                                                             each-any)))))
                                                   ($sc-dispatch
-                                                    #{tmp\ 1519}#
+                                                    #{tmp\ 1611}#
                                                     '()))))
                                              ($sc-dispatch
-                                               #{tmp\ 1519}#
+                                               #{tmp\ 1611}#
                                                '(any . any)))))
                                         ($sc-dispatch
-                                          #{tmp\ 1519}#
+                                          #{tmp\ 1611}#
                                           '(any any))))
-                                     #{p\ 1516}#)))))
-                       (#{cvt\ 1515}# #{pattern\ 1513}# 0 (quote ()))))))
-          (lambda (#{e\ 1541}#
-                   #{r\ 1542}#
-                   #{w\ 1543}#
-                   #{s\ 1544}#
-                   #{mod\ 1545}#)
-            (let ((#{e\ 1546}#
+                                     #{p\ 1608}#)))))
+                       (#{cvt\ 1607}# #{pattern\ 1605}# 0 (quote ()))))))
+          (lambda (#{e\ 1633}#
+                   #{r\ 1634}#
+                   #{w\ 1635}#
+                   #{s\ 1636}#
+                   #{mod\ 1637}#)
+            (let ((#{e\ 1638}#
                     (#{source-wrap\ 160}#
-                      #{e\ 1541}#
-                      #{w\ 1543}#
-                      #{s\ 1544}#
-                      #{mod\ 1545}#)))
-              ((lambda (#{tmp\ 1547}#)
-                 ((lambda (#{tmp\ 1548}#)
-                    (if #{tmp\ 1548}#
-                      (apply (lambda (#{_\ 1549}#
-                                      #{val\ 1550}#
-                                      #{key\ 1551}#
-                                      #{m\ 1552}#)
+                      #{e\ 1633}#
+                      #{w\ 1635}#
+                      #{s\ 1636}#
+                      #{mod\ 1637}#)))
+              ((lambda (#{tmp\ 1639}#)
+                 ((lambda (#{tmp\ 1640}#)
+                    (if #{tmp\ 1640}#
+                      (apply (lambda (#{_\ 1641}#
+                                      #{val\ 1642}#
+                                      #{key\ 1643}#
+                                      #{m\ 1644}#)
                                (if (and-map
-                                     (lambda (#{x\ 1553}#)
-                                       (if (#{id?\ 131}# #{x\ 1553}#)
-                                         (not (#{ellipsis?\ 175}# #{x\ 1553}#))
+                                     (lambda (#{x\ 1645}#)
+                                       (if (#{id?\ 131}# #{x\ 1645}#)
+                                         (not (#{ellipsis?\ 175}# #{x\ 1645}#))
                                          #f))
-                                     #{key\ 1551}#)
-                                 (let ((#{x\ 1555}#
-                                         (#{gen-var\ 177}# (quote tmp))))
+                                     #{key\ 1643}#)
+                                 (let ((#{x\ 1647}#
+                                         (#{gen-var\ 181}# (quote tmp))))
                                    (#{build-application\ 96}#
-                                     #{s\ 1544}#
+                                     #{s\ 1636}#
                                      (#{build-simple-lambda\ 105}#
                                        #f
                                        (list (quote tmp))
                                        #f
-                                       (list #{x\ 1555}#)
+                                       (list #{x\ 1647}#)
                                        #f
-                                       (#{gen-syntax-case\ 1468}#
+                                       (#{gen-syntax-case\ 1560}#
                                          (#{build-lexical-reference\ 98}#
                                            'value
                                            #f
                                            'tmp
-                                           #{x\ 1555}#)
-                                         #{key\ 1551}#
-                                         #{m\ 1552}#
-                                         #{r\ 1542}#
-                                         #{mod\ 1545}#))
+                                           #{x\ 1647}#)
+                                         #{key\ 1643}#
+                                         #{m\ 1644}#
+                                         #{r\ 1634}#
+                                         #{mod\ 1637}#))
                                      (list (#{chi\ 167}#
-                                             #{val\ 1550}#
-                                             #{r\ 1542}#
+                                             #{val\ 1642}#
+                                             #{r\ 1634}#
                                              '(())
-                                             #{mod\ 1545}#))))
+                                             #{mod\ 1637}#))))
                                  (syntax-violation
                                    'syntax-case
                                    "invalid literals list"
-                                   #{e\ 1546}#)))
-                             #{tmp\ 1548}#)
+                                   #{e\ 1638}#)))
+                             #{tmp\ 1640}#)
                       (syntax-violation
                         #f
                         "source expression failed to match any pattern"
-                        #{tmp\ 1547}#)))
+                        #{tmp\ 1639}#)))
                   ($sc-dispatch
-                    #{tmp\ 1547}#
+                    #{tmp\ 1639}#
                     '(any any each-any . each-any))))
-               #{e\ 1546}#)))))
+               #{e\ 1638}#)))))
       (set! sc-expand
-        (lambda (#{x\ 1558}# . #{rest\ 1559}#)
-          (if (if (pair? #{x\ 1558}#)
-                (equal? (car #{x\ 1558}#) #{noexpand\ 84}#)
+        (lambda (#{x\ 1650}# . #{rest\ 1651}#)
+          (if (if (pair? #{x\ 1650}#)
+                (equal? (car #{x\ 1650}#) #{noexpand\ 84}#)
                 #f)
-            (cadr #{x\ 1558}#)
-            (let ((#{m\ 1560}#
-                    (if (null? #{rest\ 1559}#)
+            (cadr #{x\ 1650}#)
+            (let ((#{m\ 1652}#
+                    (if (null? #{rest\ 1651}#)
                       'e
-                      (car #{rest\ 1559}#)))
-                  (#{esew\ 1561}#
-                    (if (let ((#{t\ 1562}# (null? #{rest\ 1559}#)))
-                          (if #{t\ 1562}#
-                            #{t\ 1562}#
-                            (null? (cdr #{rest\ 1559}#))))
+                      (car #{rest\ 1651}#)))
+                  (#{esew\ 1653}#
+                    (if (let ((#{t\ 1654}# (null? #{rest\ 1651}#)))
+                          (if #{t\ 1654}#
+                            #{t\ 1654}#
+                            (null? (cdr #{rest\ 1651}#))))
                       '(eval)
-                      (cadr #{rest\ 1559}#))))
+                      (cadr #{rest\ 1651}#))))
               (with-fluid*
                 #{*mode*\ 85}#
-                #{m\ 1560}#
+                #{m\ 1652}#
                 (lambda ()
                   (#{chi-top\ 166}#
-                    #{x\ 1558}#
+                    #{x\ 1650}#
                     '()
                     '((top))
-                    #{m\ 1560}#
-                    #{esew\ 1561}#
+                    #{m\ 1652}#
+                    #{esew\ 1653}#
                     (cons 'hygiene
                           (module-name (current-module))))))))))
       (set! identifier?
-        (lambda (#{x\ 1563}#)
-          (#{nonsymbol-id?\ 130}# #{x\ 1563}#)))
+        (lambda (#{x\ 1655}#)
+          (#{nonsymbol-id?\ 130}# #{x\ 1655}#)))
       (set! datum->syntax
-        (lambda (#{id\ 1564}# #{datum\ 1565}#)
+        (lambda (#{id\ 1656}# #{datum\ 1657}#)
           (#{make-syntax-object\ 114}#
-            #{datum\ 1565}#
-            (#{syntax-object-wrap\ 117}# #{id\ 1564}#)
+            #{datum\ 1657}#
+            (#{syntax-object-wrap\ 117}# #{id\ 1656}#)
             #f)))
       (set! syntax->datum
-        (lambda (#{x\ 1566}#)
-          (#{strip\ 176}# #{x\ 1566}# (quote (())))))
+        (lambda (#{x\ 1658}#)
+          (#{strip\ 180}# #{x\ 1658}# (quote (())))))
       (set! generate-temporaries
-        (lambda (#{ls\ 1567}#)
+        (lambda (#{ls\ 1659}#)
           (begin
-            (let ((#{x\ 1568}# #{ls\ 1567}#))
-              (if (not (list? #{x\ 1568}#))
+            (let ((#{x\ 1660}# #{ls\ 1659}#))
+              (if (not (list? #{x\ 1660}#))
                 (syntax-violation
                   'generate-temporaries
                   "invalid argument"
-                  #{x\ 1568}#)))
-            (map (lambda (#{x\ 1569}#)
+                  #{x\ 1660}#)))
+            (map (lambda (#{x\ 1661}#)
                    (#{wrap\ 159}# (gensym) (quote ((top))) #f))
-                 #{ls\ 1567}#))))
+                 #{ls\ 1659}#))))
       (set! free-identifier=?
-        (lambda (#{x\ 1570}# #{y\ 1571}#)
+        (lambda (#{x\ 1662}# #{y\ 1663}#)
           (begin
-            (let ((#{x\ 1572}# #{x\ 1570}#))
-              (if (not (#{nonsymbol-id?\ 130}# #{x\ 1572}#))
+            (let ((#{x\ 1664}# #{x\ 1662}#))
+              (if (not (#{nonsymbol-id?\ 130}# #{x\ 1664}#))
                 (syntax-violation
                   'free-identifier=?
                   "invalid argument"
-                  #{x\ 1572}#)))
-            (let ((#{x\ 1573}# #{y\ 1571}#))
-              (if (not (#{nonsymbol-id?\ 130}# #{x\ 1573}#))
+                  #{x\ 1664}#)))
+            (let ((#{x\ 1665}# #{y\ 1663}#))
+              (if (not (#{nonsymbol-id?\ 130}# #{x\ 1665}#))
                 (syntax-violation
                   'free-identifier=?
                   "invalid argument"
-                  #{x\ 1573}#)))
-            (#{free-id=?\ 154}# #{x\ 1570}# #{y\ 1571}#))))
+                  #{x\ 1665}#)))
+            (#{free-id=?\ 154}# #{x\ 1662}# #{y\ 1663}#))))
       (set! bound-identifier=?
-        (lambda (#{x\ 1574}# #{y\ 1575}#)
+        (lambda (#{x\ 1666}# #{y\ 1667}#)
           (begin
-            (let ((#{x\ 1576}# #{x\ 1574}#))
-              (if (not (#{nonsymbol-id?\ 130}# #{x\ 1576}#))
+            (let ((#{x\ 1668}# #{x\ 1666}#))
+              (if (not (#{nonsymbol-id?\ 130}# #{x\ 1668}#))
                 (syntax-violation
                   'bound-identifier=?
                   "invalid argument"
-                  #{x\ 1576}#)))
-            (let ((#{x\ 1577}# #{y\ 1575}#))
-              (if (not (#{nonsymbol-id?\ 130}# #{x\ 1577}#))
+                  #{x\ 1668}#)))
+            (let ((#{x\ 1669}# #{y\ 1667}#))
+              (if (not (#{nonsymbol-id?\ 130}# #{x\ 1669}#))
                 (syntax-violation
                   'bound-identifier=?
                   "invalid argument"
-                  #{x\ 1577}#)))
-            (#{bound-id=?\ 155}# #{x\ 1574}# #{y\ 1575}#))))
+                  #{x\ 1669}#)))
+            (#{bound-id=?\ 155}# #{x\ 1666}# #{y\ 1667}#))))
       (set! syntax-violation
-        (lambda (#{who\ 1578}#
-                 #{message\ 1579}#
-                 #{form\ 1580}#
+        (lambda (#{who\ 1670}#
+                 #{message\ 1671}#
+                 #{form\ 1672}#
                  .
-                 #{subform\ 1581}#)
+                 #{subform\ 1673}#)
           (begin
-            (let ((#{x\ 1582}# #{who\ 1578}#))
-              (if (not ((lambda (#{x\ 1583}#)
-                          (let ((#{t\ 1584}# (not #{x\ 1583}#)))
-                            (if #{t\ 1584}#
-                              #{t\ 1584}#
-                              (let ((#{t\ 1585}# (string? #{x\ 1583}#)))
-                                (if #{t\ 1585}#
-                                  #{t\ 1585}#
-                                  (symbol? #{x\ 1583}#))))))
-                        #{x\ 1582}#))
+            (let ((#{x\ 1674}# #{who\ 1670}#))
+              (if (not ((lambda (#{x\ 1675}#)
+                          (let ((#{t\ 1676}# (not #{x\ 1675}#)))
+                            (if #{t\ 1676}#
+                              #{t\ 1676}#
+                              (let ((#{t\ 1677}# (string? #{x\ 1675}#)))
+                                (if #{t\ 1677}#
+                                  #{t\ 1677}#
+                                  (symbol? #{x\ 1675}#))))))
+                        #{x\ 1674}#))
                 (syntax-violation
                   'syntax-violation
                   "invalid argument"
-                  #{x\ 1582}#)))
-            (let ((#{x\ 1586}# #{message\ 1579}#))
-              (if (not (string? #{x\ 1586}#))
+                  #{x\ 1674}#)))
+            (let ((#{x\ 1678}# #{message\ 1671}#))
+              (if (not (string? #{x\ 1678}#))
                 (syntax-violation
                   'syntax-violation
                   "invalid argument"
-                  #{x\ 1586}#)))
+                  #{x\ 1678}#)))
             (scm-error
               'syntax-error
               'sc-expand
               (string-append
-                (if #{who\ 1578}# "~a: " "")
+                (if #{who\ 1670}# "~a: " "")
                 "~a "
-                (if (null? #{subform\ 1581}#)
+                (if (null? #{subform\ 1673}#)
                   "in ~a"
                   "in subform `~s' of `~s'"))
-              (let ((#{tail\ 1587}#
-                      (cons #{message\ 1579}#
-                            (map (lambda (#{x\ 1588}#)
-                                   (#{strip\ 176}# #{x\ 1588}# (quote (()))))
+              (let ((#{tail\ 1679}#
+                      (cons #{message\ 1671}#
+                            (map (lambda (#{x\ 1680}#)
+                                   (#{strip\ 180}# #{x\ 1680}# (quote (()))))
                                  (append
-                                   #{subform\ 1581}#
-                                   (list #{form\ 1580}#))))))
-                (if #{who\ 1578}#
-                  (cons #{who\ 1578}# #{tail\ 1587}#)
-                  #{tail\ 1587}#))
+                                   #{subform\ 1673}#
+                                   (list #{form\ 1672}#))))))
+                (if #{who\ 1670}#
+                  (cons #{who\ 1670}# #{tail\ 1679}#)
+                  #{tail\ 1679}#))
               #f))))
-      (letrec ((#{match\ 1593}#
-                 (lambda (#{e\ 1594}#
-                          #{p\ 1595}#
-                          #{w\ 1596}#
-                          #{r\ 1597}#
-                          #{mod\ 1598}#)
-                   (if (not #{r\ 1597}#)
+      (letrec ((#{match\ 1685}#
+                 (lambda (#{e\ 1686}#
+                          #{p\ 1687}#
+                          #{w\ 1688}#
+                          #{r\ 1689}#
+                          #{mod\ 1690}#)
+                   (if (not #{r\ 1689}#)
                      #f
-                     (if (eq? #{p\ 1595}# (quote any))
+                     (if (eq? #{p\ 1687}# (quote any))
                        (cons (#{wrap\ 159}#
-                               #{e\ 1594}#
-                               #{w\ 1596}#
-                               #{mod\ 1598}#)
-                             #{r\ 1597}#)
-                       (if (#{syntax-object?\ 115}# #{e\ 1594}#)
-                         (#{match*\ 1592}#
-                           (#{syntax-object-expression\ 116}# #{e\ 1594}#)
-                           #{p\ 1595}#
+                               #{e\ 1686}#
+                               #{w\ 1688}#
+                               #{mod\ 1690}#)
+                             #{r\ 1689}#)
+                       (if (#{syntax-object?\ 115}# #{e\ 1686}#)
+                         (#{match*\ 1684}#
+                           (#{syntax-object-expression\ 116}# #{e\ 1686}#)
+                           #{p\ 1687}#
                            (#{join-wraps\ 150}#
-                             #{w\ 1596}#
-                             (#{syntax-object-wrap\ 117}# #{e\ 1594}#))
-                           #{r\ 1597}#
-                           (#{syntax-object-module\ 118}# #{e\ 1594}#))
-                         (#{match*\ 1592}#
-                           #{e\ 1594}#
-                           #{p\ 1595}#
-                           #{w\ 1596}#
-                           #{r\ 1597}#
-                           #{mod\ 1598}#))))))
-               (#{match*\ 1592}#
-                 (lambda (#{e\ 1599}#
-                          #{p\ 1600}#
-                          #{w\ 1601}#
-                          #{r\ 1602}#
-                          #{mod\ 1603}#)
-                   (if (null? #{p\ 1600}#)
-                     (if (null? #{e\ 1599}#) #{r\ 1602}# #f)
-                     (if (pair? #{p\ 1600}#)
-                       (if (pair? #{e\ 1599}#)
-                         (#{match\ 1593}#
-                           (car #{e\ 1599}#)
-                           (car #{p\ 1600}#)
-                           #{w\ 1601}#
-                           (#{match\ 1593}#
-                             (cdr #{e\ 1599}#)
-                             (cdr #{p\ 1600}#)
-                             #{w\ 1601}#
-                             #{r\ 1602}#
-                             #{mod\ 1603}#)
-                           #{mod\ 1603}#)
+                             #{w\ 1688}#
+                             (#{syntax-object-wrap\ 117}# #{e\ 1686}#))
+                           #{r\ 1689}#
+                           (#{syntax-object-module\ 118}# #{e\ 1686}#))
+                         (#{match*\ 1684}#
+                           #{e\ 1686}#
+                           #{p\ 1687}#
+                           #{w\ 1688}#
+                           #{r\ 1689}#
+                           #{mod\ 1690}#))))))
+               (#{match*\ 1684}#
+                 (lambda (#{e\ 1691}#
+                          #{p\ 1692}#
+                          #{w\ 1693}#
+                          #{r\ 1694}#
+                          #{mod\ 1695}#)
+                   (if (null? #{p\ 1692}#)
+                     (if (null? #{e\ 1691}#) #{r\ 1694}# #f)
+                     (if (pair? #{p\ 1692}#)
+                       (if (pair? #{e\ 1691}#)
+                         (#{match\ 1685}#
+                           (car #{e\ 1691}#)
+                           (car #{p\ 1692}#)
+                           #{w\ 1693}#
+                           (#{match\ 1685}#
+                             (cdr #{e\ 1691}#)
+                             (cdr #{p\ 1692}#)
+                             #{w\ 1693}#
+                             #{r\ 1694}#
+                             #{mod\ 1695}#)
+                           #{mod\ 1695}#)
                          #f)
-                       (if (eq? #{p\ 1600}# (quote each-any))
-                         (let ((#{l\ 1604}#
-                                 (#{match-each-any\ 1590}#
-                                   #{e\ 1599}#
-                                   #{w\ 1601}#
-                                   #{mod\ 1603}#)))
-                           (if #{l\ 1604}#
-                             (cons #{l\ 1604}# #{r\ 1602}#)
+                       (if (eq? #{p\ 1692}# (quote each-any))
+                         (let ((#{l\ 1696}#
+                                 (#{match-each-any\ 1682}#
+                                   #{e\ 1691}#
+                                   #{w\ 1693}#
+                                   #{mod\ 1695}#)))
+                           (if #{l\ 1696}#
+                             (cons #{l\ 1696}# #{r\ 1694}#)
                              #f))
-                         (let ((#{atom-key\ 1605}# (vector-ref #{p\ 1600}# 0)))
-                           (if (memv #{atom-key\ 1605}# (quote (each)))
-                             (if (null? #{e\ 1599}#)
-                               (#{match-empty\ 1591}#
-                                 (vector-ref #{p\ 1600}# 1)
-                                 #{r\ 1602}#)
-                               (let ((#{l\ 1606}#
-                                       (#{match-each\ 1589}#
-                                         #{e\ 1599}#
-                                         (vector-ref #{p\ 1600}# 1)
-                                         #{w\ 1601}#
-                                         #{mod\ 1603}#)))
-                                 (if #{l\ 1606}#
-                                   (letrec ((#{collect\ 1607}#
-                                              (lambda (#{l\ 1608}#)
-                                                (if (null? (car #{l\ 1608}#))
-                                                  #{r\ 1602}#
-                                                  (cons (map car #{l\ 1608}#)
-                                                        (#{collect\ 1607}#
+                         (let ((#{atom-key\ 1697}# (vector-ref #{p\ 1692}# 0)))
+                           (if (memv #{atom-key\ 1697}# (quote (each)))
+                             (if (null? #{e\ 1691}#)
+                               (#{match-empty\ 1683}#
+                                 (vector-ref #{p\ 1692}# 1)
+                                 #{r\ 1694}#)
+                               (let ((#{l\ 1698}#
+                                       (#{match-each\ 1681}#
+                                         #{e\ 1691}#
+                                         (vector-ref #{p\ 1692}# 1)
+                                         #{w\ 1693}#
+                                         #{mod\ 1695}#)))
+                                 (if #{l\ 1698}#
+                                   (letrec ((#{collect\ 1699}#
+                                              (lambda (#{l\ 1700}#)
+                                                (if (null? (car #{l\ 1700}#))
+                                                  #{r\ 1694}#
+                                                  (cons (map car #{l\ 1700}#)
+                                                        (#{collect\ 1699}#
                                                           (map cdr
-                                                               #{l\ 
1608}#)))))))
-                                     (#{collect\ 1607}# #{l\ 1606}#))
+                                                               #{l\ 
1700}#)))))))
+                                     (#{collect\ 1699}# #{l\ 1698}#))
                                    #f)))
-                             (if (memv #{atom-key\ 1605}# (quote (free-id)))
-                               (if (#{id?\ 131}# #{e\ 1599}#)
+                             (if (memv #{atom-key\ 1697}# (quote (free-id)))
+                               (if (#{id?\ 131}# #{e\ 1691}#)
                                  (if (#{free-id=?\ 154}#
                                        (#{wrap\ 159}#
-                                         #{e\ 1599}#
-                                         #{w\ 1601}#
-                                         #{mod\ 1603}#)
-                                       (vector-ref #{p\ 1600}# 1))
-                                   #{r\ 1602}#
+                                         #{e\ 1691}#
+                                         #{w\ 1693}#
+                                         #{mod\ 1695}#)
+                                       (vector-ref #{p\ 1692}# 1))
+                                   #{r\ 1694}#
                                    #f)
                                  #f)
-                               (if (memv #{atom-key\ 1605}# (quote (atom)))
+                               (if (memv #{atom-key\ 1697}# (quote (atom)))
                                  (if (equal?
-                                       (vector-ref #{p\ 1600}# 1)
-                                       (#{strip\ 176}#
-                                         #{e\ 1599}#
-                                         #{w\ 1601}#))
-                                   #{r\ 1602}#
+                                       (vector-ref #{p\ 1692}# 1)
+                                       (#{strip\ 180}#
+                                         #{e\ 1691}#
+                                         #{w\ 1693}#))
+                                   #{r\ 1694}#
                                    #f)
-                                 (if (memv #{atom-key\ 1605}# (quote (vector)))
-                                   (if (vector? #{e\ 1599}#)
-                                     (#{match\ 1593}#
-                                       (vector->list #{e\ 1599}#)
-                                       (vector-ref #{p\ 1600}# 1)
-                                       #{w\ 1601}#
-                                       #{r\ 1602}#
-                                       #{mod\ 1603}#)
+                                 (if (memv #{atom-key\ 1697}# (quote (vector)))
+                                   (if (vector? #{e\ 1691}#)
+                                     (#{match\ 1685}#
+                                       (vector->list #{e\ 1691}#)
+                                       (vector-ref #{p\ 1692}# 1)
+                                       #{w\ 1693}#
+                                       #{r\ 1694}#
+                                       #{mod\ 1695}#)
                                      #f)))))))))))
-               (#{match-empty\ 1591}#
-                 (lambda (#{p\ 1609}# #{r\ 1610}#)
-                   (if (null? #{p\ 1609}#)
-                     #{r\ 1610}#
-                     (if (eq? #{p\ 1609}# (quote any))
-                       (cons (quote ()) #{r\ 1610}#)
-                       (if (pair? #{p\ 1609}#)
-                         (#{match-empty\ 1591}#
-                           (car #{p\ 1609}#)
-                           (#{match-empty\ 1591}#
-                             (cdr #{p\ 1609}#)
-                             #{r\ 1610}#))
-                         (if (eq? #{p\ 1609}# (quote each-any))
-                           (cons (quote ()) #{r\ 1610}#)
-                           (let ((#{atom-key\ 1611}#
-                                   (vector-ref #{p\ 1609}# 0)))
-                             (if (memv #{atom-key\ 1611}# (quote (each)))
-                               (#{match-empty\ 1591}#
-                                 (vector-ref #{p\ 1609}# 1)
-                                 #{r\ 1610}#)
-                               (if (memv #{atom-key\ 1611}#
+               (#{match-empty\ 1683}#
+                 (lambda (#{p\ 1701}# #{r\ 1702}#)
+                   (if (null? #{p\ 1701}#)
+                     #{r\ 1702}#
+                     (if (eq? #{p\ 1701}# (quote any))
+                       (cons (quote ()) #{r\ 1702}#)
+                       (if (pair? #{p\ 1701}#)
+                         (#{match-empty\ 1683}#
+                           (car #{p\ 1701}#)
+                           (#{match-empty\ 1683}#
+                             (cdr #{p\ 1701}#)
+                             #{r\ 1702}#))
+                         (if (eq? #{p\ 1701}# (quote each-any))
+                           (cons (quote ()) #{r\ 1702}#)
+                           (let ((#{atom-key\ 1703}#
+                                   (vector-ref #{p\ 1701}# 0)))
+                             (if (memv #{atom-key\ 1703}# (quote (each)))
+                               (#{match-empty\ 1683}#
+                                 (vector-ref #{p\ 1701}# 1)
+                                 #{r\ 1702}#)
+                               (if (memv #{atom-key\ 1703}#
                                          '(free-id atom))
-                                 #{r\ 1610}#
-                                 (if (memv #{atom-key\ 1611}# (quote (vector)))
-                                   (#{match-empty\ 1591}#
-                                     (vector-ref #{p\ 1609}# 1)
-                                     #{r\ 1610}#)))))))))))
-               (#{match-each-any\ 1590}#
-                 (lambda (#{e\ 1612}# #{w\ 1613}# #{mod\ 1614}#)
-                   (if (pair? #{e\ 1612}#)
-                     (let ((#{l\ 1615}#
-                             (#{match-each-any\ 1590}#
-                               (cdr #{e\ 1612}#)
-                               #{w\ 1613}#
-                               #{mod\ 1614}#)))
-                       (if #{l\ 1615}#
+                                 #{r\ 1702}#
+                                 (if (memv #{atom-key\ 1703}# (quote (vector)))
+                                   (#{match-empty\ 1683}#
+                                     (vector-ref #{p\ 1701}# 1)
+                                     #{r\ 1702}#)))))))))))
+               (#{match-each-any\ 1682}#
+                 (lambda (#{e\ 1704}# #{w\ 1705}# #{mod\ 1706}#)
+                   (if (pair? #{e\ 1704}#)
+                     (let ((#{l\ 1707}#
+                             (#{match-each-any\ 1682}#
+                               (cdr #{e\ 1704}#)
+                               #{w\ 1705}#
+                               #{mod\ 1706}#)))
+                       (if #{l\ 1707}#
                          (cons (#{wrap\ 159}#
-                                 (car #{e\ 1612}#)
-                                 #{w\ 1613}#
-                                 #{mod\ 1614}#)
-                               #{l\ 1615}#)
+                                 (car #{e\ 1704}#)
+                                 #{w\ 1705}#
+                                 #{mod\ 1706}#)
+                               #{l\ 1707}#)
                          #f))
-                     (if (null? #{e\ 1612}#)
+                     (if (null? #{e\ 1704}#)
                        '()
-                       (if (#{syntax-object?\ 115}# #{e\ 1612}#)
-                         (#{match-each-any\ 1590}#
-                           (#{syntax-object-expression\ 116}# #{e\ 1612}#)
+                       (if (#{syntax-object?\ 115}# #{e\ 1704}#)
+                         (#{match-each-any\ 1682}#
+                           (#{syntax-object-expression\ 116}# #{e\ 1704}#)
                            (#{join-wraps\ 150}#
-                             #{w\ 1613}#
-                             (#{syntax-object-wrap\ 117}# #{e\ 1612}#))
-                           #{mod\ 1614}#)
+                             #{w\ 1705}#
+                             (#{syntax-object-wrap\ 117}# #{e\ 1704}#))
+                           #{mod\ 1706}#)
                          #f)))))
-               (#{match-each\ 1589}#
-                 (lambda (#{e\ 1616}#
-                          #{p\ 1617}#
-                          #{w\ 1618}#
-                          #{mod\ 1619}#)
-                   (if (pair? #{e\ 1616}#)
-                     (let ((#{first\ 1620}#
-                             (#{match\ 1593}#
-                               (car #{e\ 1616}#)
-                               #{p\ 1617}#
-                               #{w\ 1618}#
+               (#{match-each\ 1681}#
+                 (lambda (#{e\ 1708}#
+                          #{p\ 1709}#
+                          #{w\ 1710}#
+                          #{mod\ 1711}#)
+                   (if (pair? #{e\ 1708}#)
+                     (let ((#{first\ 1712}#
+                             (#{match\ 1685}#
+                               (car #{e\ 1708}#)
+                               #{p\ 1709}#
+                               #{w\ 1710}#
                                '()
-                               #{mod\ 1619}#)))
-                       (if #{first\ 1620}#
-                         (let ((#{rest\ 1621}#
-                                 (#{match-each\ 1589}#
-                                   (cdr #{e\ 1616}#)
-                                   #{p\ 1617}#
-                                   #{w\ 1618}#
-                                   #{mod\ 1619}#)))
-                           (if #{rest\ 1621}#
-                             (cons #{first\ 1620}# #{rest\ 1621}#)
+                               #{mod\ 1711}#)))
+                       (if #{first\ 1712}#
+                         (let ((#{rest\ 1713}#
+                                 (#{match-each\ 1681}#
+                                   (cdr #{e\ 1708}#)
+                                   #{p\ 1709}#
+                                   #{w\ 1710}#
+                                   #{mod\ 1711}#)))
+                           (if #{rest\ 1713}#
+                             (cons #{first\ 1712}# #{rest\ 1713}#)
                              #f))
                          #f))
-                     (if (null? #{e\ 1616}#)
+                     (if (null? #{e\ 1708}#)
                        '()
-                       (if (#{syntax-object?\ 115}# #{e\ 1616}#)
-                         (#{match-each\ 1589}#
-                           (#{syntax-object-expression\ 116}# #{e\ 1616}#)
-                           #{p\ 1617}#
+                       (if (#{syntax-object?\ 115}# #{e\ 1708}#)
+                         (#{match-each\ 1681}#
+                           (#{syntax-object-expression\ 116}# #{e\ 1708}#)
+                           #{p\ 1709}#
                            (#{join-wraps\ 150}#
-                             #{w\ 1618}#
-                             (#{syntax-object-wrap\ 117}# #{e\ 1616}#))
-                           (#{syntax-object-module\ 118}# #{e\ 1616}#))
+                             #{w\ 1710}#
+                             (#{syntax-object-wrap\ 117}# #{e\ 1708}#))
+                           (#{syntax-object-module\ 118}# #{e\ 1708}#))
                          #f))))))
         (set! $sc-dispatch
-          (lambda (#{e\ 1622}# #{p\ 1623}#)
-            (if (eq? #{p\ 1623}# (quote any))
-              (list #{e\ 1622}#)
-              (if (#{syntax-object?\ 115}# #{e\ 1622}#)
-                (#{match*\ 1592}#
-                  (#{syntax-object-expression\ 116}# #{e\ 1622}#)
-                  #{p\ 1623}#
-                  (#{syntax-object-wrap\ 117}# #{e\ 1622}#)
+          (lambda (#{e\ 1714}# #{p\ 1715}#)
+            (if (eq? #{p\ 1715}# (quote any))
+              (list #{e\ 1714}#)
+              (if (#{syntax-object?\ 115}# #{e\ 1714}#)
+                (#{match*\ 1684}#
+                  (#{syntax-object-expression\ 116}# #{e\ 1714}#)
+                  #{p\ 1715}#
+                  (#{syntax-object-wrap\ 117}# #{e\ 1714}#)
                   '()
-                  (#{syntax-object-module\ 118}# #{e\ 1622}#))
-                (#{match*\ 1592}#
-                  #{e\ 1622}#
-                  #{p\ 1623}#
+                  (#{syntax-object-module\ 118}# #{e\ 1714}#))
+                (#{match*\ 1684}#
+                  #{e\ 1714}#
+                  #{p\ 1715}#
                   '(())
                   '()
                   #f)))))))))
@@ -12283,11 +11400,11 @@
 (define with-syntax
   (make-syncase-macro
     'macro
-    (lambda (#{x\ 1624}#)
-      ((lambda (#{tmp\ 1625}#)
-         ((lambda (#{tmp\ 1626}#)
-            (if #{tmp\ 1626}#
-              (apply (lambda (#{_\ 1627}# #{e1\ 1628}# #{e2\ 1629}#)
+    (lambda (#{x\ 1716}#)
+      ((lambda (#{tmp\ 1717}#)
+         ((lambda (#{tmp\ 1718}#)
+            (if #{tmp\ 1718}#
+              (apply (lambda (#{_\ 1719}# #{e1\ 1720}# #{e2\ 1721}#)
                        (cons '#(syntax-object
                                 begin
                                 ((top)
@@ -12298,15 +11415,15 @@
                                  #(ribcage () () ())
                                  #(ribcage #(x) #((top)) #("i")))
                                 (hygiene guile))
-                             (cons #{e1\ 1628}# #{e2\ 1629}#)))
-                     #{tmp\ 1626}#)
-              ((lambda (#{tmp\ 1631}#)
-                 (if #{tmp\ 1631}#
-                   (apply (lambda (#{_\ 1632}#
-                                   #{out\ 1633}#
-                                   #{in\ 1634}#
-                                   #{e1\ 1635}#
-                                   #{e2\ 1636}#)
+                             (cons #{e1\ 1720}# #{e2\ 1721}#)))
+                     #{tmp\ 1718}#)
+              ((lambda (#{tmp\ 1723}#)
+                 (if #{tmp\ 1723}#
+                   (apply (lambda (#{_\ 1724}#
+                                   #{out\ 1725}#
+                                   #{in\ 1726}#
+                                   #{e1\ 1727}#
+                                   #{e2\ 1728}#)
                             (list '#(syntax-object
                                      syntax-case
                                      ((top)
@@ -12317,9 +11434,9 @@
                                       #(ribcage () () ())
                                       #(ribcage #(x) #((top)) #("i")))
                                      (hygiene guile))
-                                  #{in\ 1634}#
+                                  #{in\ 1726}#
                                   '()
-                                  (list #{out\ 1633}#
+                                  (list #{out\ 1725}#
                                         (cons '#(syntax-object
                                                  begin
                                                  ((top)
@@ -12337,16 +11454,16 @@
                                                     #((top))
                                                     #("i")))
                                                  (hygiene guile))
-                                              (cons #{e1\ 1635}#
-                                                    #{e2\ 1636}#)))))
-                          #{tmp\ 1631}#)
-                   ((lambda (#{tmp\ 1638}#)
-                      (if #{tmp\ 1638}#
-                        (apply (lambda (#{_\ 1639}#
-                                        #{out\ 1640}#
-                                        #{in\ 1641}#
-                                        #{e1\ 1642}#
-                                        #{e2\ 1643}#)
+                                              (cons #{e1\ 1727}#
+                                                    #{e2\ 1728}#)))))
+                          #{tmp\ 1723}#)
+                   ((lambda (#{tmp\ 1730}#)
+                      (if #{tmp\ 1730}#
+                        (apply (lambda (#{_\ 1731}#
+                                        #{out\ 1732}#
+                                        #{in\ 1733}#
+                                        #{e1\ 1734}#
+                                        #{e2\ 1735}#)
                                  (list '#(syntax-object
                                           syntax-case
                                           ((top)
@@ -12374,9 +11491,9 @@
                                                    #((top))
                                                    #("i")))
                                                 (hygiene guile))
-                                             #{in\ 1641}#)
+                                             #{in\ 1733}#)
                                        '()
-                                       (list #{out\ 1640}#
+                                       (list #{out\ 1732}#
                                              (cons '#(syntax-object
                                                       begin
                                                       ((top)
@@ -12398,36 +11515,36 @@
                                                          #((top))
                                                          #("i")))
                                                       (hygiene guile))
-                                                   (cons #{e1\ 1642}#
-                                                         #{e2\ 1643}#)))))
-                               #{tmp\ 1638}#)
+                                                   (cons #{e1\ 1734}#
+                                                         #{e2\ 1735}#)))))
+                               #{tmp\ 1730}#)
                         (syntax-violation
                           #f
                           "source expression failed to match any pattern"
-                          #{tmp\ 1625}#)))
+                          #{tmp\ 1717}#)))
                     ($sc-dispatch
-                      #{tmp\ 1625}#
+                      #{tmp\ 1717}#
                       '(any #(each (any any)) any . each-any)))))
                ($sc-dispatch
-                 #{tmp\ 1625}#
+                 #{tmp\ 1717}#
                  '(any ((any any)) any . each-any)))))
           ($sc-dispatch
-            #{tmp\ 1625}#
+            #{tmp\ 1717}#
             '(any () any . each-any))))
-       #{x\ 1624}#))))
+       #{x\ 1716}#))))
 
 (define syntax-rules
   (make-syncase-macro
     'macro
-    (lambda (#{x\ 1647}#)
-      ((lambda (#{tmp\ 1648}#)
-         ((lambda (#{tmp\ 1649}#)
-            (if #{tmp\ 1649}#
-              (apply (lambda (#{_\ 1650}#
-                              #{k\ 1651}#
-                              #{keyword\ 1652}#
-                              #{pattern\ 1653}#
-                              #{template\ 1654}#)
+    (lambda (#{x\ 1739}#)
+      ((lambda (#{tmp\ 1740}#)
+         ((lambda (#{tmp\ 1741}#)
+            (if #{tmp\ 1741}#
+              (apply (lambda (#{_\ 1742}#
+                              #{k\ 1743}#
+                              #{keyword\ 1744}#
+                              #{pattern\ 1745}#
+                              #{template\ 1746}#)
                        (list '#(syntax-object
                                 lambda
                                 ((top)
@@ -12468,9 +11585,9 @@
                                              #(ribcage () () ())
                                              #(ribcage #(x) #((top)) #("i")))
                                             (hygiene guile))
-                                         (cons #{k\ 1651}#
-                                               (map (lambda (#{tmp\ 1657}#
-                                                             #{tmp\ 1656}#)
+                                         (cons #{k\ 1743}#
+                                               (map (lambda (#{tmp\ 1749}#
+                                                             #{tmp\ 1748}#)
                                                       (list (cons 
'#(syntax-object
                                                                      dummy
                                                                      ((top)
@@ -12500,7 +11617,7 @@
                                                                         
#("i")))
                                                                      (hygiene
                                                                        guile))
-                                                                  #{tmp\ 
1656}#)
+                                                                  #{tmp\ 
1748}#)
                                                             (list 
'#(syntax-object
                                                                      syntax
                                                                      ((top)
@@ -12530,43 +11647,43 @@
                                                                         
#("i")))
                                                                      (hygiene
                                                                        guile))
-                                                                  #{tmp\ 
1657}#)))
-                                                    #{template\ 1654}#
-                                                    #{pattern\ 1653}#))))))
-                     #{tmp\ 1649}#)
+                                                                  #{tmp\ 
1749}#)))
+                                                    #{template\ 1746}#
+                                                    #{pattern\ 1745}#))))))
+                     #{tmp\ 1741}#)
               (syntax-violation
                 #f
                 "source expression failed to match any pattern"
-                #{tmp\ 1648}#)))
+                #{tmp\ 1740}#)))
           ($sc-dispatch
-            #{tmp\ 1648}#
+            #{tmp\ 1740}#
             '(any each-any . #(each ((any . any) any))))))
-       #{x\ 1647}#))))
+       #{x\ 1739}#))))
 
 (define let*
   (make-extended-syncase-macro
     (module-ref (current-module) (quote let*))
     'macro
-    (lambda (#{x\ 1658}#)
-      ((lambda (#{tmp\ 1659}#)
-         ((lambda (#{tmp\ 1660}#)
-            (if (if #{tmp\ 1660}#
-                  (apply (lambda (#{let*\ 1661}#
-                                  #{x\ 1662}#
-                                  #{v\ 1663}#
-                                  #{e1\ 1664}#
-                                  #{e2\ 1665}#)
-                           (and-map identifier? #{x\ 1662}#))
-                         #{tmp\ 1660}#)
+    (lambda (#{x\ 1750}#)
+      ((lambda (#{tmp\ 1751}#)
+         ((lambda (#{tmp\ 1752}#)
+            (if (if #{tmp\ 1752}#
+                  (apply (lambda (#{let*\ 1753}#
+                                  #{x\ 1754}#
+                                  #{v\ 1755}#
+                                  #{e1\ 1756}#
+                                  #{e2\ 1757}#)
+                           (and-map identifier? #{x\ 1754}#))
+                         #{tmp\ 1752}#)
                   #f)
-              (apply (lambda (#{let*\ 1667}#
-                              #{x\ 1668}#
-                              #{v\ 1669}#
-                              #{e1\ 1670}#
-                              #{e2\ 1671}#)
-                       (letrec ((#{f\ 1672}#
-                                  (lambda (#{bindings\ 1673}#)
-                                    (if (null? #{bindings\ 1673}#)
+              (apply (lambda (#{let*\ 1759}#
+                              #{x\ 1760}#
+                              #{v\ 1761}#
+                              #{e1\ 1762}#
+                              #{e2\ 1763}#)
+                       (letrec ((#{f\ 1764}#
+                                  (lambda (#{bindings\ 1765}#)
+                                    (if (null? #{bindings\ 1765}#)
                                       (cons '#(syntax-object
                                                let
                                                ((top)
@@ -12590,13 +11707,13 @@
                                                   #("i")))
                                                (hygiene guile))
                                             (cons '()
-                                                  (cons #{e1\ 1670}#
-                                                        #{e2\ 1671}#)))
-                                      ((lambda (#{tmp\ 1677}#)
-                                         ((lambda (#{tmp\ 1678}#)
-                                            (if #{tmp\ 1678}#
-                                              (apply (lambda (#{body\ 1679}#
-                                                              #{binding\ 
1680}#)
+                                                  (cons #{e1\ 1762}#
+                                                        #{e2\ 1763}#)))
+                                      ((lambda (#{tmp\ 1769}#)
+                                         ((lambda (#{tmp\ 1770}#)
+                                            (if #{tmp\ 1770}#
+                                              (apply (lambda (#{body\ 1771}#
+                                                              #{binding\ 
1772}#)
                                                        (list '#(syntax-object
                                                                 let
                                                                 ((top)
@@ -12642,52 +11759,52 @@
                                                                    #("i")))
                                                                 (hygiene
                                                                   guile))
-                                                             (list #{binding\ 
1680}#)
-                                                             #{body\ 1679}#))
-                                                     #{tmp\ 1678}#)
+                                                             (list #{binding\ 
1772}#)
+                                                             #{body\ 1771}#))
+                                                     #{tmp\ 1770}#)
                                               (syntax-violation
                                                 #f
                                                 "source expression failed to 
match any pattern"
-                                                #{tmp\ 1677}#)))
+                                                #{tmp\ 1769}#)))
                                           ($sc-dispatch
-                                            #{tmp\ 1677}#
+                                            #{tmp\ 1769}#
                                             '(any any))))
-                                       (list (#{f\ 1672}#
-                                               (cdr #{bindings\ 1673}#))
-                                             (car #{bindings\ 1673}#)))))))
-                         (#{f\ 1672}# (map list #{x\ 1668}# #{v\ 1669}#))))
-                     #{tmp\ 1660}#)
+                                       (list (#{f\ 1764}#
+                                               (cdr #{bindings\ 1765}#))
+                                             (car #{bindings\ 1765}#)))))))
+                         (#{f\ 1764}# (map list #{x\ 1760}# #{v\ 1761}#))))
+                     #{tmp\ 1752}#)
               (syntax-violation
                 #f
                 "source expression failed to match any pattern"
-                #{tmp\ 1659}#)))
+                #{tmp\ 1751}#)))
           ($sc-dispatch
-            #{tmp\ 1659}#
+            #{tmp\ 1751}#
             '(any #(each (any any)) any . each-any))))
-       #{x\ 1658}#))))
+       #{x\ 1750}#))))
 
 (define do
   (make-extended-syncase-macro
     (module-ref (current-module) (quote do))
     'macro
-    (lambda (#{orig-x\ 1681}#)
-      ((lambda (#{tmp\ 1682}#)
-         ((lambda (#{tmp\ 1683}#)
-            (if #{tmp\ 1683}#
-              (apply (lambda (#{_\ 1684}#
-                              #{var\ 1685}#
-                              #{init\ 1686}#
-                              #{step\ 1687}#
-                              #{e0\ 1688}#
-                              #{e1\ 1689}#
-                              #{c\ 1690}#)
-                       ((lambda (#{tmp\ 1691}#)
-                          ((lambda (#{tmp\ 1692}#)
-                             (if #{tmp\ 1692}#
-                               (apply (lambda (#{step\ 1693}#)
-                                        ((lambda (#{tmp\ 1694}#)
-                                           ((lambda (#{tmp\ 1695}#)
-                                              (if #{tmp\ 1695}#
+    (lambda (#{orig-x\ 1773}#)
+      ((lambda (#{tmp\ 1774}#)
+         ((lambda (#{tmp\ 1775}#)
+            (if #{tmp\ 1775}#
+              (apply (lambda (#{_\ 1776}#
+                              #{var\ 1777}#
+                              #{init\ 1778}#
+                              #{step\ 1779}#
+                              #{e0\ 1780}#
+                              #{e1\ 1781}#
+                              #{c\ 1782}#)
+                       ((lambda (#{tmp\ 1783}#)
+                          ((lambda (#{tmp\ 1784}#)
+                             (if #{tmp\ 1784}#
+                               (apply (lambda (#{step\ 1785}#)
+                                        ((lambda (#{tmp\ 1786}#)
+                                           ((lambda (#{tmp\ 1787}#)
+                                              (if #{tmp\ 1787}#
                                                 (apply (lambda ()
                                                          (list '#(syntax-object
                                                                   let
@@ -12768,8 +11885,8 @@
                                                                   (hygiene
                                                                     guile))
                                                                (map list
-                                                                    #{var\ 
1685}#
-                                                                    #{init\ 
1686}#)
+                                                                    #{var\ 
1777}#
+                                                                    #{init\ 
1778}#)
                                                                (list 
'#(syntax-object
                                                                         if
                                                                         ((top)
@@ -12848,7 +11965,7 @@
                                                                                
  #("i")))
                                                                               
(hygiene
                                                                                
 guile))
-                                                                           
#{e0\ 1688}#)
+                                                                           
#{e0\ 1780}#)
                                                                      (cons 
'#(syntax-object
                                                                               
begin
                                                                               
((top)
@@ -12889,7 +12006,7 @@
                                                                               
(hygiene
                                                                                
 guile))
                                                                            
(append
-                                                                             
#{c\ 1690}#
+                                                                             
#{c\ 1782}#
                                                                              
(list (cons '#(syntax-object
                                                                                
             doloop
                                                                                
             ((top)
@@ -12929,12 +12046,12 @@
                                                                                
                #("i")))
                                                                                
             (hygiene
                                                                                
               guile))
-                                                                               
          #{step\ 1693}#)))))))
-                                                       #{tmp\ 1695}#)
-                                                ((lambda (#{tmp\ 1700}#)
-                                                   (if #{tmp\ 1700}#
-                                                     (apply (lambda (#{e1\ 
1701}#
-                                                                     #{e2\ 
1702}#)
+                                                                               
          #{step\ 1785}#)))))))
+                                                       #{tmp\ 1787}#)
+                                                ((lambda (#{tmp\ 1792}#)
+                                                   (if #{tmp\ 1792}#
+                                                     (apply (lambda (#{e1\ 
1793}#
+                                                                     #{e2\ 
1794}#)
                                                               (list 
'#(syntax-object
                                                                        let
                                                                        ((top)
@@ -13028,8 +12145,8 @@
                                                                        (hygiene
                                                                          
guile))
                                                                     (map list
-                                                                         
#{var\ 1685}#
-                                                                         
#{init\ 1686}#)
+                                                                         
#{var\ 1777}#
+                                                                         
#{init\ 1778}#)
                                                                     (list 
'#(syntax-object
                                                                              if
                                                                              
((top)
@@ -13076,7 +12193,7 @@
                                                                                
 #("i")))
                                                                              
(hygiene
                                                                                
guile))
-                                                                          
#{e0\ 1688}#
+                                                                          
#{e0\ 1780}#
                                                                           
(cons '#(syntax-object
                                                                                
    begin
                                                                                
    ((top)
@@ -13123,8 +12240,8 @@
                                                                                
       #("i")))
                                                                                
    (hygiene
                                                                                
      guile))
-                                                                               
 (cons #{e1\ 1701}#
-                                                                               
       #{e2\ 1702}#))
+                                                                               
 (cons #{e1\ 1793}#
+                                                                               
       #{e2\ 1794}#))
                                                                           
(cons '#(syntax-object
                                                                                
    begin
                                                                                
    ((top)
@@ -13172,7 +12289,7 @@
                                                                                
    (hygiene
                                                                                
      guile))
                                                                                
 (append
-                                                                               
   #{c\ 1690}#
+                                                                               
   #{c\ 1782}#
                                                                                
   (list (cons '#(syntax-object
                                                                                
                  doloop
                                                                                
                  ((top)
@@ -13219,81 +12336,81 @@
                                                                                
                     #("i")))
                                                                                
                  (hygiene
                                                                                
                    guile))
-                                                                               
               #{step\ 1693}#)))))))
-                                                            #{tmp\ 1700}#)
+                                                                               
               #{step\ 1785}#)))))))
+                                                            #{tmp\ 1792}#)
                                                      (syntax-violation
                                                        #f
                                                        "source expression 
failed to match any pattern"
-                                                       #{tmp\ 1694}#)))
+                                                       #{tmp\ 1786}#)))
                                                  ($sc-dispatch
-                                                   #{tmp\ 1694}#
+                                                   #{tmp\ 1786}#
                                                    '(any . each-any)))))
                                             ($sc-dispatch
-                                              #{tmp\ 1694}#
+                                              #{tmp\ 1786}#
                                               '())))
-                                         #{e1\ 1689}#))
-                                      #{tmp\ 1692}#)
+                                         #{e1\ 1781}#))
+                                      #{tmp\ 1784}#)
                                (syntax-violation
                                  #f
                                  "source expression failed to match any 
pattern"
-                                 #{tmp\ 1691}#)))
-                           ($sc-dispatch #{tmp\ 1691}# (quote each-any))))
-                        (map (lambda (#{v\ 1709}# #{s\ 1710}#)
-                               ((lambda (#{tmp\ 1711}#)
-                                  ((lambda (#{tmp\ 1712}#)
-                                     (if #{tmp\ 1712}#
-                                       (apply (lambda () #{v\ 1709}#)
-                                              #{tmp\ 1712}#)
-                                       ((lambda (#{tmp\ 1713}#)
-                                          (if #{tmp\ 1713}#
-                                            (apply (lambda (#{e\ 1714}#)
-                                                     #{e\ 1714}#)
-                                                   #{tmp\ 1713}#)
-                                            ((lambda (#{_\ 1715}#)
+                                 #{tmp\ 1783}#)))
+                           ($sc-dispatch #{tmp\ 1783}# (quote each-any))))
+                        (map (lambda (#{v\ 1801}# #{s\ 1802}#)
+                               ((lambda (#{tmp\ 1803}#)
+                                  ((lambda (#{tmp\ 1804}#)
+                                     (if #{tmp\ 1804}#
+                                       (apply (lambda () #{v\ 1801}#)
+                                              #{tmp\ 1804}#)
+                                       ((lambda (#{tmp\ 1805}#)
+                                          (if #{tmp\ 1805}#
+                                            (apply (lambda (#{e\ 1806}#)
+                                                     #{e\ 1806}#)
+                                                   #{tmp\ 1805}#)
+                                            ((lambda (#{_\ 1807}#)
                                                (syntax-violation
                                                  'do
                                                  "bad step expression"
-                                                 #{orig-x\ 1681}#
-                                                 #{s\ 1710}#))
-                                             #{tmp\ 1711}#)))
+                                                 #{orig-x\ 1773}#
+                                                 #{s\ 1802}#))
+                                             #{tmp\ 1803}#)))
                                         ($sc-dispatch
-                                          #{tmp\ 1711}#
+                                          #{tmp\ 1803}#
                                           '(any)))))
-                                   ($sc-dispatch #{tmp\ 1711}# (quote ()))))
-                                #{s\ 1710}#))
-                             #{var\ 1685}#
-                             #{step\ 1687}#)))
-                     #{tmp\ 1683}#)
+                                   ($sc-dispatch #{tmp\ 1803}# (quote ()))))
+                                #{s\ 1802}#))
+                             #{var\ 1777}#
+                             #{step\ 1779}#)))
+                     #{tmp\ 1775}#)
               (syntax-violation
                 #f
                 "source expression failed to match any pattern"
-                #{tmp\ 1682}#)))
+                #{tmp\ 1774}#)))
           ($sc-dispatch
-            #{tmp\ 1682}#
+            #{tmp\ 1774}#
             '(any #(each (any any . any))
                   (any . each-any)
                   .
                   each-any))))
-       #{orig-x\ 1681}#))))
+       #{orig-x\ 1773}#))))
 
 (define quasiquote
   (make-extended-syncase-macro
     (module-ref (current-module) (quote quasiquote))
     'macro
-    (letrec ((#{quasicons\ 1718}#
-               (lambda (#{x\ 1722}# #{y\ 1723}#)
-                 ((lambda (#{tmp\ 1724}#)
-                    ((lambda (#{tmp\ 1725}#)
-                       (if #{tmp\ 1725}#
-                         (apply (lambda (#{x\ 1726}# #{y\ 1727}#)
-                                  ((lambda (#{tmp\ 1728}#)
-                                     ((lambda (#{tmp\ 1729}#)
-                                        (if #{tmp\ 1729}#
-                                          (apply (lambda (#{dy\ 1730}#)
-                                                   ((lambda (#{tmp\ 1731}#)
-                                                      ((lambda (#{tmp\ 1732}#)
-                                                         (if #{tmp\ 1732}#
-                                                           (apply (lambda 
(#{dx\ 1733}#)
+    (letrec ((#{quasicons\ 1810}#
+               (lambda (#{x\ 1814}# #{y\ 1815}#)
+                 ((lambda (#{tmp\ 1816}#)
+                    ((lambda (#{tmp\ 1817}#)
+                       (if #{tmp\ 1817}#
+                         (apply (lambda (#{x\ 1818}# #{y\ 1819}#)
+                                  ((lambda (#{tmp\ 1820}#)
+                                     ((lambda (#{tmp\ 1821}#)
+                                        (if #{tmp\ 1821}#
+                                          (apply (lambda (#{dy\ 1822}#)
+                                                   ((lambda (#{tmp\ 1823}#)
+                                                      ((lambda (#{tmp\ 1824}#)
+                                                         (if #{tmp\ 1824}#
+                                                           (apply (lambda 
(#{dx\ 1825}#)
                                                                     (list 
'#(syntax-object
                                                                              
quote
                                                                              
((top)
@@ -13342,11 +12459,11 @@
                                                                                
   "i")))
                                                                              
(hygiene
                                                                                
guile))
-                                                                          
(cons #{dx\ 1733}#
-                                                                               
 #{dy\ 1730}#)))
-                                                                  #{tmp\ 
1732}#)
-                                                           ((lambda (#{_\ 
1734}#)
-                                                              (if (null? #{dy\ 
1730}#)
+                                                                          
(cons #{dx\ 1825}#
+                                                                               
 #{dy\ 1822}#)))
+                                                                  #{tmp\ 
1824}#)
+                                                           ((lambda (#{_\ 
1826}#)
+                                                              (if (null? #{dy\ 
1822}#)
                                                                 (list 
'#(syntax-object
                                                                          list
                                                                          ((top)
@@ -13395,7 +12512,7 @@
                                                                               
"i")))
                                                                          
(hygiene
                                                                            
guile))
-                                                                      #{x\ 
1726}#)
+                                                                      #{x\ 
1818}#)
                                                                 (list 
'#(syntax-object
                                                                          cons
                                                                          ((top)
@@ -13444,11 +12561,11 @@
                                                                               
"i")))
                                                                          
(hygiene
                                                                            
guile))
-                                                                      #{x\ 
1726}#
-                                                                      #{y\ 
1727}#)))
-                                                            #{tmp\ 1731}#)))
+                                                                      #{x\ 
1818}#
+                                                                      #{y\ 
1819}#)))
+                                                            #{tmp\ 1823}#)))
                                                        ($sc-dispatch
-                                                         #{tmp\ 1731}#
+                                                         #{tmp\ 1823}#
                                                          '(#(free-id
                                                              #(syntax-object
                                                                quote
@@ -13491,11 +12608,11 @@
                                                                (hygiene
                                                                  guile)))
                                                            any))))
-                                                    #{x\ 1726}#))
-                                                 #{tmp\ 1729}#)
-                                          ((lambda (#{tmp\ 1735}#)
-                                             (if #{tmp\ 1735}#
-                                               (apply (lambda (#{stuff\ 1736}#)
+                                                    #{x\ 1818}#))
+                                                 #{tmp\ 1821}#)
+                                          ((lambda (#{tmp\ 1827}#)
+                                             (if #{tmp\ 1827}#
+                                               (apply (lambda (#{stuff\ 1828}#)
                                                         (cons '#(syntax-object
                                                                  list
                                                                  ((top)
@@ -13536,10 +12653,10 @@
                                                                       "i")))
                                                                  (hygiene
                                                                    guile))
-                                                              (cons #{x\ 1726}#
-                                                                    #{stuff\ 
1736}#)))
-                                                      #{tmp\ 1735}#)
-                                               ((lambda (#{else\ 1737}#)
+                                                              (cons #{x\ 1818}#
+                                                                    #{stuff\ 
1828}#)))
+                                                      #{tmp\ 1827}#)
+                                               ((lambda (#{else\ 1829}#)
                                                   (list '#(syntax-object
                                                            cons
                                                            ((top)
@@ -13571,11 +12688,11 @@
                                                                 "i"
                                                                 "i")))
                                                            (hygiene guile))
-                                                        #{x\ 1726}#
-                                                        #{y\ 1727}#))
-                                                #{tmp\ 1728}#)))
+                                                        #{x\ 1818}#
+                                                        #{y\ 1819}#))
+                                                #{tmp\ 1820}#)))
                                            ($sc-dispatch
-                                             #{tmp\ 1728}#
+                                             #{tmp\ 1820}#
                                              '(#(free-id
                                                  #(syntax-object
                                                    list
@@ -13604,7 +12721,7 @@
                                                .
                                                any)))))
                                       ($sc-dispatch
-                                        #{tmp\ 1728}#
+                                        #{tmp\ 1820}#
                                         '(#(free-id
                                             #(syntax-object
                                               quote
@@ -13628,26 +12745,26 @@
                                                  #("i" "i" "i" "i")))
                                               (hygiene guile)))
                                           any))))
-                                   #{y\ 1727}#))
-                                #{tmp\ 1725}#)
+                                   #{y\ 1819}#))
+                                #{tmp\ 1817}#)
                          (syntax-violation
                            #f
                            "source expression failed to match any pattern"
-                           #{tmp\ 1724}#)))
-                     ($sc-dispatch #{tmp\ 1724}# (quote (any any)))))
-                  (list #{x\ 1722}# #{y\ 1723}#))))
-             (#{quasiappend\ 1719}#
-               (lambda (#{x\ 1738}# #{y\ 1739}#)
-                 ((lambda (#{tmp\ 1740}#)
-                    ((lambda (#{tmp\ 1741}#)
-                       (if #{tmp\ 1741}#
-                         (apply (lambda (#{x\ 1742}# #{y\ 1743}#)
-                                  ((lambda (#{tmp\ 1744}#)
-                                     ((lambda (#{tmp\ 1745}#)
-                                        (if #{tmp\ 1745}#
-                                          (apply (lambda () #{x\ 1742}#)
-                                                 #{tmp\ 1745}#)
-                                          ((lambda (#{_\ 1746}#)
+                           #{tmp\ 1816}#)))
+                     ($sc-dispatch #{tmp\ 1816}# (quote (any any)))))
+                  (list #{x\ 1814}# #{y\ 1815}#))))
+             (#{quasiappend\ 1811}#
+               (lambda (#{x\ 1830}# #{y\ 1831}#)
+                 ((lambda (#{tmp\ 1832}#)
+                    ((lambda (#{tmp\ 1833}#)
+                       (if #{tmp\ 1833}#
+                         (apply (lambda (#{x\ 1834}# #{y\ 1835}#)
+                                  ((lambda (#{tmp\ 1836}#)
+                                     ((lambda (#{tmp\ 1837}#)
+                                        (if #{tmp\ 1837}#
+                                          (apply (lambda () #{x\ 1834}#)
+                                                 #{tmp\ 1837}#)
+                                          ((lambda (#{_\ 1838}#)
                                              (list '#(syntax-object
                                                       append
                                                       ((top)
@@ -13676,11 +12793,11 @@
                                                            (top))
                                                          #("i" "i" "i" "i")))
                                                       (hygiene guile))
-                                                   #{x\ 1742}#
-                                                   #{y\ 1743}#))
-                                           #{tmp\ 1744}#)))
+                                                   #{x\ 1834}#
+                                                   #{y\ 1835}#))
+                                           #{tmp\ 1836}#)))
                                       ($sc-dispatch
-                                        #{tmp\ 1744}#
+                                        #{tmp\ 1836}#
                                         '(#(free-id
                                             #(syntax-object
                                               quote
@@ -13704,22 +12821,22 @@
                                                  #("i" "i" "i" "i")))
                                               (hygiene guile)))
                                           ()))))
-                                   #{y\ 1743}#))
-                                #{tmp\ 1741}#)
+                                   #{y\ 1835}#))
+                                #{tmp\ 1833}#)
                          (syntax-violation
                            #f
                            "source expression failed to match any pattern"
-                           #{tmp\ 1740}#)))
-                     ($sc-dispatch #{tmp\ 1740}# (quote (any any)))))
-                  (list #{x\ 1738}# #{y\ 1739}#))))
-             (#{quasivector\ 1720}#
-               (lambda (#{x\ 1747}#)
-                 ((lambda (#{tmp\ 1748}#)
-                    ((lambda (#{x\ 1749}#)
-                       ((lambda (#{tmp\ 1750}#)
-                          ((lambda (#{tmp\ 1751}#)
-                             (if #{tmp\ 1751}#
-                               (apply (lambda (#{x\ 1752}#)
+                           #{tmp\ 1832}#)))
+                     ($sc-dispatch #{tmp\ 1832}# (quote (any any)))))
+                  (list #{x\ 1830}# #{y\ 1831}#))))
+             (#{quasivector\ 1812}#
+               (lambda (#{x\ 1839}#)
+                 ((lambda (#{tmp\ 1840}#)
+                    ((lambda (#{x\ 1841}#)
+                       ((lambda (#{tmp\ 1842}#)
+                          ((lambda (#{tmp\ 1843}#)
+                             (if #{tmp\ 1843}#
+                               (apply (lambda (#{x\ 1844}#)
                                         (list '#(syntax-object
                                                  quote
                                                  ((top)
@@ -13745,11 +12862,11 @@
                                                     #((top) (top) (top) (top))
                                                     #("i" "i" "i" "i")))
                                                  (hygiene guile))
-                                              (list->vector #{x\ 1752}#)))
-                                      #{tmp\ 1751}#)
-                               ((lambda (#{tmp\ 1754}#)
-                                  (if #{tmp\ 1754}#
-                                    (apply (lambda (#{x\ 1755}#)
+                                              (list->vector #{x\ 1844}#)))
+                                      #{tmp\ 1843}#)
+                               ((lambda (#{tmp\ 1846}#)
+                                  (if #{tmp\ 1846}#
+                                    (apply (lambda (#{x\ 1847}#)
                                              (cons '#(syntax-object
                                                       vector
                                                       ((top)
@@ -13778,9 +12895,9 @@
                                                            (top))
                                                          #("i" "i" "i" "i")))
                                                       (hygiene guile))
-                                                   #{x\ 1755}#))
-                                           #{tmp\ 1754}#)
-                                    ((lambda (#{_\ 1757}#)
+                                                   #{x\ 1847}#))
+                                           #{tmp\ 1846}#)
+                                    ((lambda (#{_\ 1849}#)
                                        (list '#(syntax-object
                                                 list->vector
                                                 ((top)
@@ -13806,10 +12923,10 @@
                                                    #((top) (top) (top) (top))
                                                    #("i" "i" "i" "i")))
                                                 (hygiene guile))
-                                             #{x\ 1749}#))
-                                     #{tmp\ 1750}#)))
+                                             #{x\ 1841}#))
+                                     #{tmp\ 1842}#)))
                                 ($sc-dispatch
-                                  #{tmp\ 1750}#
+                                  #{tmp\ 1842}#
                                   '(#(free-id
                                       #(syntax-object
                                         list
@@ -13829,7 +12946,7 @@
                                     .
                                     each-any)))))
                            ($sc-dispatch
-                             #{tmp\ 1750}#
+                             #{tmp\ 1842}#
                              '(#(free-id
                                  #(syntax-object
                                    quote
@@ -13847,18 +12964,18 @@
                                       #("i" "i" "i" "i")))
                                    (hygiene guile)))
                                each-any))))
-                        #{x\ 1749}#))
-                     #{tmp\ 1748}#))
-                  #{x\ 1747}#)))
-             (#{quasi\ 1721}#
-               (lambda (#{p\ 1758}# #{lev\ 1759}#)
-                 ((lambda (#{tmp\ 1760}#)
-                    ((lambda (#{tmp\ 1761}#)
-                       (if #{tmp\ 1761}#
-                         (apply (lambda (#{p\ 1762}#)
-                                  (if (= #{lev\ 1759}# 0)
-                                    #{p\ 1762}#
-                                    (#{quasicons\ 1718}#
+                        #{x\ 1841}#))
+                     #{tmp\ 1840}#))
+                  #{x\ 1839}#)))
+             (#{quasi\ 1813}#
+               (lambda (#{p\ 1850}# #{lev\ 1851}#)
+                 ((lambda (#{tmp\ 1852}#)
+                    ((lambda (#{tmp\ 1853}#)
+                       (if #{tmp\ 1853}#
+                         (apply (lambda (#{p\ 1854}#)
+                                  (if (= #{lev\ 1851}# 0)
+                                    #{p\ 1854}#
+                                    (#{quasicons\ 1810}#
                                       '(#(syntax-object
                                           quote
                                           ((top)
@@ -13893,21 +13010,21 @@
                                              #((top) (top) (top) (top))
                                              #("i" "i" "i" "i")))
                                           (hygiene guile)))
-                                      (#{quasi\ 1721}#
-                                        (list #{p\ 1762}#)
-                                        (- #{lev\ 1759}# 1)))))
-                                #{tmp\ 1761}#)
-                         ((lambda (#{tmp\ 1763}#)
-                            (if (if #{tmp\ 1763}#
-                                  (apply (lambda (#{args\ 1764}#)
-                                           (= #{lev\ 1759}# 0))
-                                         #{tmp\ 1763}#)
+                                      (#{quasi\ 1813}#
+                                        (list #{p\ 1854}#)
+                                        (- #{lev\ 1851}# 1)))))
+                                #{tmp\ 1853}#)
+                         ((lambda (#{tmp\ 1855}#)
+                            (if (if #{tmp\ 1855}#
+                                  (apply (lambda (#{args\ 1856}#)
+                                           (= #{lev\ 1851}# 0))
+                                         #{tmp\ 1855}#)
                                   #f)
-                              (apply (lambda (#{args\ 1765}#)
+                              (apply (lambda (#{args\ 1857}#)
                                        (syntax-violation
                                          'unquote
                                          "unquote takes exactly one argument"
-                                         #{p\ 1758}#
+                                         #{p\ 1850}#
                                          (cons '#(syntax-object
                                                   unquote
                                                   ((top)
@@ -13928,19 +13045,19 @@
                                                      #((top) (top) (top) (top))
                                                      #("i" "i" "i" "i")))
                                                   (hygiene guile))
-                                               #{args\ 1765}#)))
-                                     #{tmp\ 1763}#)
-                              ((lambda (#{tmp\ 1766}#)
-                                 (if #{tmp\ 1766}#
-                                   (apply (lambda (#{p\ 1767}# #{q\ 1768}#)
-                                            (if (= #{lev\ 1759}# 0)
-                                              (#{quasiappend\ 1719}#
-                                                #{p\ 1767}#
-                                                (#{quasi\ 1721}#
-                                                  #{q\ 1768}#
-                                                  #{lev\ 1759}#))
-                                              (#{quasicons\ 1718}#
-                                                (#{quasicons\ 1718}#
+                                               #{args\ 1857}#)))
+                                     #{tmp\ 1855}#)
+                              ((lambda (#{tmp\ 1858}#)
+                                 (if #{tmp\ 1858}#
+                                   (apply (lambda (#{p\ 1859}# #{q\ 1860}#)
+                                            (if (= #{lev\ 1851}# 0)
+                                              (#{quasiappend\ 1811}#
+                                                #{p\ 1859}#
+                                                (#{quasi\ 1813}#
+                                                  #{q\ 1860}#
+                                                  #{lev\ 1851}#))
+                                              (#{quasicons\ 1810}#
+                                                (#{quasicons\ 1810}#
                                                   '(#(syntax-object
                                                       quote
                                                       ((top)
@@ -13987,26 +13104,26 @@
                                                            (top))
                                                          #("i" "i" "i" "i")))
                                                       (hygiene guile)))
-                                                  (#{quasi\ 1721}#
-                                                    (list #{p\ 1767}#)
-                                                    (- #{lev\ 1759}# 1)))
-                                                (#{quasi\ 1721}#
-                                                  #{q\ 1768}#
-                                                  #{lev\ 1759}#))))
-                                          #{tmp\ 1766}#)
-                                   ((lambda (#{tmp\ 1769}#)
-                                      (if (if #{tmp\ 1769}#
-                                            (apply (lambda (#{args\ 1770}#
-                                                            #{q\ 1771}#)
-                                                     (= #{lev\ 1759}# 0))
-                                                   #{tmp\ 1769}#)
+                                                  (#{quasi\ 1813}#
+                                                    (list #{p\ 1859}#)
+                                                    (- #{lev\ 1851}# 1)))
+                                                (#{quasi\ 1813}#
+                                                  #{q\ 1860}#
+                                                  #{lev\ 1851}#))))
+                                          #{tmp\ 1858}#)
+                                   ((lambda (#{tmp\ 1861}#)
+                                      (if (if #{tmp\ 1861}#
+                                            (apply (lambda (#{args\ 1862}#
+                                                            #{q\ 1863}#)
+                                                     (= #{lev\ 1851}# 0))
+                                                   #{tmp\ 1861}#)
                                             #f)
-                                        (apply (lambda (#{args\ 1772}#
-                                                        #{q\ 1773}#)
+                                        (apply (lambda (#{args\ 1864}#
+                                                        #{q\ 1865}#)
                                                  (syntax-violation
                                                    'unquote-splicing
                                                    "unquote-splicing takes 
exactly one argument"
-                                                   #{p\ 1758}#
+                                                   #{p\ 1850}#
                                                    (cons '#(syntax-object
                                                             unquote-splicing
                                                             ((top)
@@ -14036,12 +13153,12 @@
                                                                  "i"
                                                                  "i")))
                                                             (hygiene guile))
-                                                         #{args\ 1772}#)))
-                                               #{tmp\ 1769}#)
-                                        ((lambda (#{tmp\ 1774}#)
-                                           (if #{tmp\ 1774}#
-                                             (apply (lambda (#{p\ 1775}#)
-                                                      (#{quasicons\ 1718}#
+                                                         #{args\ 1864}#)))
+                                               #{tmp\ 1861}#)
+                                        ((lambda (#{tmp\ 1866}#)
+                                           (if #{tmp\ 1866}#
+                                             (apply (lambda (#{p\ 1867}#)
+                                                      (#{quasicons\ 1810}#
                                                         '(#(syntax-object
                                                             quote
                                                             ((top)
@@ -14100,32 +13217,32 @@
                                                                  "i"
                                                                  "i")))
                                                             (hygiene guile)))
-                                                        (#{quasi\ 1721}#
-                                                          (list #{p\ 1775}#)
-                                                          (+ #{lev\ 1759}#
+                                                        (#{quasi\ 1813}#
+                                                          (list #{p\ 1867}#)
+                                                          (+ #{lev\ 1851}#
                                                              1))))
-                                                    #{tmp\ 1774}#)
-                                             ((lambda (#{tmp\ 1776}#)
-                                                (if #{tmp\ 1776}#
-                                                  (apply (lambda (#{p\ 1777}#
-                                                                  #{q\ 1778}#)
-                                                           (#{quasicons\ 1718}#
-                                                             (#{quasi\ 1721}#
-                                                               #{p\ 1777}#
-                                                               #{lev\ 1759}#)
-                                                             (#{quasi\ 1721}#
-                                                               #{q\ 1778}#
-                                                               #{lev\ 1759}#)))
-                                                         #{tmp\ 1776}#)
-                                                  ((lambda (#{tmp\ 1779}#)
-                                                     (if #{tmp\ 1779}#
-                                                       (apply (lambda (#{x\ 
1780}#)
-                                                                
(#{quasivector\ 1720}#
-                                                                  (#{quasi\ 
1721}#
-                                                                    #{x\ 1780}#
-                                                                    #{lev\ 
1759}#)))
-                                                              #{tmp\ 1779}#)
-                                                       ((lambda (#{p\ 1782}#)
+                                                    #{tmp\ 1866}#)
+                                             ((lambda (#{tmp\ 1868}#)
+                                                (if #{tmp\ 1868}#
+                                                  (apply (lambda (#{p\ 1869}#
+                                                                  #{q\ 1870}#)
+                                                           (#{quasicons\ 1810}#
+                                                             (#{quasi\ 1813}#
+                                                               #{p\ 1869}#
+                                                               #{lev\ 1851}#)
+                                                             (#{quasi\ 1813}#
+                                                               #{q\ 1870}#
+                                                               #{lev\ 1851}#)))
+                                                         #{tmp\ 1868}#)
+                                                  ((lambda (#{tmp\ 1871}#)
+                                                     (if #{tmp\ 1871}#
+                                                       (apply (lambda (#{x\ 
1872}#)
+                                                                
(#{quasivector\ 1812}#
+                                                                  (#{quasi\ 
1813}#
+                                                                    #{x\ 1872}#
+                                                                    #{lev\ 
1851}#)))
+                                                              #{tmp\ 1871}#)
+                                                       ((lambda (#{p\ 1874}#)
                                                           (list 
'#(syntax-object
                                                                    quote
                                                                    ((top)
@@ -14158,16 +13275,16 @@
                                                                         "i")))
                                                                    (hygiene
                                                                      guile))
-                                                                #{p\ 1782}#))
-                                                        #{tmp\ 1760}#)))
+                                                                #{p\ 1874}#))
+                                                        #{tmp\ 1852}#)))
                                                    ($sc-dispatch
-                                                     #{tmp\ 1760}#
+                                                     #{tmp\ 1852}#
                                                      '#(vector each-any)))))
                                               ($sc-dispatch
-                                                #{tmp\ 1760}#
+                                                #{tmp\ 1852}#
                                                 '(any . any)))))
                                          ($sc-dispatch
-                                           #{tmp\ 1760}#
+                                           #{tmp\ 1852}#
                                            '(#(free-id
                                                #(syntax-object
                                                  quasiquote
@@ -14187,7 +13304,7 @@
                                                  (hygiene guile)))
                                              any)))))
                                     ($sc-dispatch
-                                      #{tmp\ 1760}#
+                                      #{tmp\ 1852}#
                                       '((#(free-id
                                            #(syntax-object
                                              unquote-splicing
@@ -14210,7 +13327,7 @@
                                         .
                                         any)))))
                                ($sc-dispatch
-                                 #{tmp\ 1760}#
+                                 #{tmp\ 1852}#
                                  '((#(free-id
                                       #(syntax-object
                                         unquote-splicing
@@ -14232,7 +13349,7 @@
                                    .
                                    any)))))
                           ($sc-dispatch
-                            #{tmp\ 1760}#
+                            #{tmp\ 1852}#
                             '(#(free-id
                                 #(syntax-object
                                   unquote
@@ -14250,7 +13367,7 @@
                               .
                               any)))))
                      ($sc-dispatch
-                       #{tmp\ 1760}#
+                       #{tmp\ 1852}#
                        '(#(free-id
                            #(syntax-object
                              unquote
@@ -14263,49 +13380,49 @@
                                 #("i" "i" "i" "i")))
                              (hygiene guile)))
                          any))))
-                  #{p\ 1758}#))))
-      (lambda (#{x\ 1783}#)
-        ((lambda (#{tmp\ 1784}#)
-           ((lambda (#{tmp\ 1785}#)
-              (if #{tmp\ 1785}#
-                (apply (lambda (#{_\ 1786}# #{e\ 1787}#)
-                         (#{quasi\ 1721}# #{e\ 1787}# 0))
-                       #{tmp\ 1785}#)
+                  #{p\ 1850}#))))
+      (lambda (#{x\ 1875}#)
+        ((lambda (#{tmp\ 1876}#)
+           ((lambda (#{tmp\ 1877}#)
+              (if #{tmp\ 1877}#
+                (apply (lambda (#{_\ 1878}# #{e\ 1879}#)
+                         (#{quasi\ 1813}# #{e\ 1879}# 0))
+                       #{tmp\ 1877}#)
                 (syntax-violation
                   #f
                   "source expression failed to match any pattern"
-                  #{tmp\ 1784}#)))
-            ($sc-dispatch #{tmp\ 1784}# (quote (any any)))))
-         #{x\ 1783}#)))))
+                  #{tmp\ 1876}#)))
+            ($sc-dispatch #{tmp\ 1876}# (quote (any any)))))
+         #{x\ 1875}#)))))
 
 (define include
   (make-syncase-macro
     'macro
-    (lambda (#{x\ 1788}#)
-      (letrec ((#{read-file\ 1789}#
-                 (lambda (#{fn\ 1790}# #{k\ 1791}#)
-                   (let ((#{p\ 1792}# (open-input-file #{fn\ 1790}#)))
-                     (letrec ((#{f\ 1793}#
-                                (lambda (#{x\ 1794}#)
-                                  (if (eof-object? #{x\ 1794}#)
+    (lambda (#{x\ 1880}#)
+      (letrec ((#{read-file\ 1881}#
+                 (lambda (#{fn\ 1882}# #{k\ 1883}#)
+                   (let ((#{p\ 1884}# (open-input-file #{fn\ 1882}#)))
+                     (letrec ((#{f\ 1885}#
+                                (lambda (#{x\ 1886}#)
+                                  (if (eof-object? #{x\ 1886}#)
                                     (begin
-                                      (close-input-port #{p\ 1792}#)
+                                      (close-input-port #{p\ 1884}#)
                                       '())
                                     (cons (datum->syntax
-                                            #{k\ 1791}#
-                                            #{x\ 1794}#)
-                                          (#{f\ 1793}# (read #{p\ 1792}#)))))))
-                       (#{f\ 1793}# (read #{p\ 1792}#)))))))
-        ((lambda (#{tmp\ 1795}#)
-           ((lambda (#{tmp\ 1796}#)
-              (if #{tmp\ 1796}#
-                (apply (lambda (#{k\ 1797}# #{filename\ 1798}#)
-                         (let ((#{fn\ 1799}#
-                                 (syntax->datum #{filename\ 1798}#)))
-                           ((lambda (#{tmp\ 1800}#)
-                              ((lambda (#{tmp\ 1801}#)
-                                 (if #{tmp\ 1801}#
-                                   (apply (lambda (#{exp\ 1802}#)
+                                            #{k\ 1883}#
+                                            #{x\ 1886}#)
+                                          (#{f\ 1885}# (read #{p\ 1884}#)))))))
+                       (#{f\ 1885}# (read #{p\ 1884}#)))))))
+        ((lambda (#{tmp\ 1887}#)
+           ((lambda (#{tmp\ 1888}#)
+              (if #{tmp\ 1888}#
+                (apply (lambda (#{k\ 1889}# #{filename\ 1890}#)
+                         (let ((#{fn\ 1891}#
+                                 (syntax->datum #{filename\ 1890}#)))
+                           ((lambda (#{tmp\ 1892}#)
+                              ((lambda (#{tmp\ 1893}#)
+                                 (if #{tmp\ 1893}#
+                                   (apply (lambda (#{exp\ 1894}#)
                                             (cons '#(syntax-object
                                                      begin
                                                      ((top)
@@ -14332,76 +13449,76 @@
                                                         #((top))
                                                         #("i")))
                                                      (hygiene guile))
-                                                  #{exp\ 1802}#))
-                                          #{tmp\ 1801}#)
+                                                  #{exp\ 1894}#))
+                                          #{tmp\ 1893}#)
                                    (syntax-violation
                                      #f
                                      "source expression failed to match any 
pattern"
-                                     #{tmp\ 1800}#)))
-                               ($sc-dispatch #{tmp\ 1800}# (quote each-any))))
-                            (#{read-file\ 1789}# #{fn\ 1799}# #{k\ 1797}#))))
-                       #{tmp\ 1796}#)
+                                     #{tmp\ 1892}#)))
+                               ($sc-dispatch #{tmp\ 1892}# (quote each-any))))
+                            (#{read-file\ 1881}# #{fn\ 1891}# #{k\ 1889}#))))
+                       #{tmp\ 1888}#)
                 (syntax-violation
                   #f
                   "source expression failed to match any pattern"
-                  #{tmp\ 1795}#)))
-            ($sc-dispatch #{tmp\ 1795}# (quote (any any)))))
-         #{x\ 1788}#)))))
+                  #{tmp\ 1887}#)))
+            ($sc-dispatch #{tmp\ 1887}# (quote (any any)))))
+         #{x\ 1880}#)))))
 
 (define unquote
   (make-syncase-macro
     'macro
-    (lambda (#{x\ 1804}#)
-      ((lambda (#{tmp\ 1805}#)
-         ((lambda (#{tmp\ 1806}#)
-            (if #{tmp\ 1806}#
-              (apply (lambda (#{_\ 1807}# #{e\ 1808}#)
+    (lambda (#{x\ 1896}#)
+      ((lambda (#{tmp\ 1897}#)
+         ((lambda (#{tmp\ 1898}#)
+            (if #{tmp\ 1898}#
+              (apply (lambda (#{_\ 1899}# #{e\ 1900}#)
                        (syntax-violation
                          'unquote
                          "expression not valid outside of quasiquote"
-                         #{x\ 1804}#))
-                     #{tmp\ 1806}#)
+                         #{x\ 1896}#))
+                     #{tmp\ 1898}#)
               (syntax-violation
                 #f
                 "source expression failed to match any pattern"
-                #{tmp\ 1805}#)))
-          ($sc-dispatch #{tmp\ 1805}# (quote (any any)))))
-       #{x\ 1804}#))))
+                #{tmp\ 1897}#)))
+          ($sc-dispatch #{tmp\ 1897}# (quote (any any)))))
+       #{x\ 1896}#))))
 
 (define unquote-splicing
   (make-syncase-macro
     'macro
-    (lambda (#{x\ 1809}#)
-      ((lambda (#{tmp\ 1810}#)
-         ((lambda (#{tmp\ 1811}#)
-            (if #{tmp\ 1811}#
-              (apply (lambda (#{_\ 1812}# #{e\ 1813}#)
+    (lambda (#{x\ 1901}#)
+      ((lambda (#{tmp\ 1902}#)
+         ((lambda (#{tmp\ 1903}#)
+            (if #{tmp\ 1903}#
+              (apply (lambda (#{_\ 1904}# #{e\ 1905}#)
                        (syntax-violation
                          'unquote-splicing
                          "expression not valid outside of quasiquote"
-                         #{x\ 1809}#))
-                     #{tmp\ 1811}#)
+                         #{x\ 1901}#))
+                     #{tmp\ 1903}#)
               (syntax-violation
                 #f
                 "source expression failed to match any pattern"
-                #{tmp\ 1810}#)))
-          ($sc-dispatch #{tmp\ 1810}# (quote (any any)))))
-       #{x\ 1809}#))))
+                #{tmp\ 1902}#)))
+          ($sc-dispatch #{tmp\ 1902}# (quote (any any)))))
+       #{x\ 1901}#))))
 
 (define case
   (make-extended-syncase-macro
     (module-ref (current-module) (quote case))
     'macro
-    (lambda (#{x\ 1814}#)
-      ((lambda (#{tmp\ 1815}#)
-         ((lambda (#{tmp\ 1816}#)
-            (if #{tmp\ 1816}#
-              (apply (lambda (#{_\ 1817}#
-                              #{e\ 1818}#
-                              #{m1\ 1819}#
-                              #{m2\ 1820}#)
-                       ((lambda (#{tmp\ 1821}#)
-                          ((lambda (#{body\ 1822}#)
+    (lambda (#{x\ 1906}#)
+      ((lambda (#{tmp\ 1907}#)
+         ((lambda (#{tmp\ 1908}#)
+            (if #{tmp\ 1908}#
+              (apply (lambda (#{_\ 1909}#
+                              #{e\ 1910}#
+                              #{m1\ 1911}#
+                              #{m2\ 1912}#)
+                       ((lambda (#{tmp\ 1913}#)
+                          ((lambda (#{body\ 1914}#)
                              (list '#(syntax-object
                                       let
                                       ((top)
@@ -14430,17 +13547,17 @@
                                                      #((top))
                                                      #("i")))
                                                   (hygiene guile))
-                                               #{e\ 1818}#))
-                                   #{body\ 1822}#))
-                           #{tmp\ 1821}#))
-                        (letrec ((#{f\ 1823}#
-                                   (lambda (#{clause\ 1824}# #{clauses\ 1825}#)
-                                     (if (null? #{clauses\ 1825}#)
-                                       ((lambda (#{tmp\ 1827}#)
-                                          ((lambda (#{tmp\ 1828}#)
-                                             (if #{tmp\ 1828}#
-                                               (apply (lambda (#{e1\ 1829}#
-                                                               #{e2\ 1830}#)
+                                               #{e\ 1910}#))
+                                   #{body\ 1914}#))
+                           #{tmp\ 1913}#))
+                        (letrec ((#{f\ 1915}#
+                                   (lambda (#{clause\ 1916}# #{clauses\ 1917}#)
+                                     (if (null? #{clauses\ 1917}#)
+                                       ((lambda (#{tmp\ 1919}#)
+                                          ((lambda (#{tmp\ 1920}#)
+                                             (if #{tmp\ 1920}#
+                                               (apply (lambda (#{e1\ 1921}#
+                                                               #{e2\ 1922}#)
                                                         (cons '#(syntax-object
                                                                  begin
                                                                  ((top)
@@ -14486,14 +13603,14 @@
                                                                     #("i")))
                                                                  (hygiene
                                                                    guile))
-                                                              (cons #{e1\ 
1829}#
-                                                                    #{e2\ 
1830}#)))
-                                                      #{tmp\ 1828}#)
-                                               ((lambda (#{tmp\ 1832}#)
-                                                  (if #{tmp\ 1832}#
-                                                    (apply (lambda (#{k\ 1833}#
-                                                                    #{e1\ 
1834}#
-                                                                    #{e2\ 
1835}#)
+                                                              (cons #{e1\ 
1921}#
+                                                                    #{e2\ 
1922}#)))
+                                                      #{tmp\ 1920}#)
+                                               ((lambda (#{tmp\ 1924}#)
+                                                  (if #{tmp\ 1924}#
+                                                    (apply (lambda (#{k\ 1925}#
+                                                                    #{e1\ 
1926}#
+                                                                    #{e2\ 
1927}#)
                                                              (list 
'#(syntax-object
                                                                       if
                                                                       ((top)
@@ -14694,7 +13811,7 @@
                                                                                
      #("i")))
                                                                                
   (hygiene
                                                                                
     guile))
-                                                                               
#{k\ 1833}#))
+                                                                               
#{k\ 1925}#))
                                                                    (cons 
'#(syntax-object
                                                                             
begin
                                                                             
((top)
@@ -14745,24 +13862,24 @@
                                                                                
#("i")))
                                                                             
(hygiene
                                                                               
guile))
-                                                                         (cons 
#{e1\ 1834}#
-                                                                               
#{e2\ 1835}#))))
-                                                           #{tmp\ 1832}#)
-                                                    ((lambda (#{_\ 1838}#)
+                                                                         (cons 
#{e1\ 1926}#
+                                                                               
#{e2\ 1927}#))))
+                                                           #{tmp\ 1924}#)
+                                                    ((lambda (#{_\ 1930}#)
                                                        (syntax-violation
                                                          'case
                                                          "bad clause"
-                                                         #{x\ 1814}#
-                                                         #{clause\ 1824}#))
-                                                     #{tmp\ 1827}#)))
+                                                         #{x\ 1906}#
+                                                         #{clause\ 1916}#))
+                                                     #{tmp\ 1919}#)))
                                                 ($sc-dispatch
-                                                  #{tmp\ 1827}#
+                                                  #{tmp\ 1919}#
                                                   '(each-any
                                                      any
                                                      .
                                                      each-any)))))
                                            ($sc-dispatch
-                                             #{tmp\ 1827}#
+                                             #{tmp\ 1919}#
                                              '(#(free-id
                                                  #(syntax-object
                                                    else
@@ -14788,15 +13905,15 @@
                                                any
                                                .
                                                each-any))))
-                                        #{clause\ 1824}#)
-                                       ((lambda (#{tmp\ 1839}#)
-                                          ((lambda (#{rest\ 1840}#)
-                                             ((lambda (#{tmp\ 1841}#)
-                                                ((lambda (#{tmp\ 1842}#)
-                                                   (if #{tmp\ 1842}#
-                                                     (apply (lambda (#{k\ 
1843}#
-                                                                     #{e1\ 
1844}#
-                                                                     #{e2\ 
1845}#)
+                                        #{clause\ 1916}#)
+                                       ((lambda (#{tmp\ 1931}#)
+                                          ((lambda (#{rest\ 1932}#)
+                                             ((lambda (#{tmp\ 1933}#)
+                                                ((lambda (#{tmp\ 1934}#)
+                                                   (if #{tmp\ 1934}#
+                                                     (apply (lambda (#{k\ 
1935}#
+                                                                     #{e1\ 
1936}#
+                                                                     #{e2\ 
1937}#)
                                                               (list 
'#(syntax-object
                                                                        if
                                                                        ((top)
@@ -15013,7 +14130,7 @@
                                                                                
       #("i")))
                                                                                
    (hygiene
                                                                                
      guile))
-                                                                               
 #{k\ 1843}#))
+                                                                               
 #{k\ 1935}#))
                                                                     (cons 
'#(syntax-object
                                                                              
begin
                                                                              
((top)
@@ -15068,47 +14185,47 @@
                                                                                
 #("i")))
                                                                              
(hygiene
                                                                                
guile))
-                                                                          
(cons #{e1\ 1844}#
-                                                                               
 #{e2\ 1845}#))
-                                                                    #{rest\ 
1840}#))
-                                                            #{tmp\ 1842}#)
-                                                     ((lambda (#{_\ 1848}#)
+                                                                          
(cons #{e1\ 1936}#
+                                                                               
 #{e2\ 1937}#))
+                                                                    #{rest\ 
1932}#))
+                                                            #{tmp\ 1934}#)
+                                                     ((lambda (#{_\ 1940}#)
                                                         (syntax-violation
                                                           'case
                                                           "bad clause"
-                                                          #{x\ 1814}#
-                                                          #{clause\ 1824}#))
-                                                      #{tmp\ 1841}#)))
+                                                          #{x\ 1906}#
+                                                          #{clause\ 1916}#))
+                                                      #{tmp\ 1933}#)))
                                                  ($sc-dispatch
-                                                   #{tmp\ 1841}#
+                                                   #{tmp\ 1933}#
                                                    '(each-any
                                                       any
                                                       .
                                                       each-any))))
-                                              #{clause\ 1824}#))
-                                           #{tmp\ 1839}#))
-                                        (#{f\ 1823}#
-                                          (car #{clauses\ 1825}#)
-                                          (cdr #{clauses\ 1825}#)))))))
-                          (#{f\ 1823}# #{m1\ 1819}# #{m2\ 1820}#))))
-                     #{tmp\ 1816}#)
+                                              #{clause\ 1916}#))
+                                           #{tmp\ 1931}#))
+                                        (#{f\ 1915}#
+                                          (car #{clauses\ 1917}#)
+                                          (cdr #{clauses\ 1917}#)))))))
+                          (#{f\ 1915}# #{m1\ 1911}# #{m2\ 1912}#))))
+                     #{tmp\ 1908}#)
               (syntax-violation
                 #f
                 "source expression failed to match any pattern"
-                #{tmp\ 1815}#)))
+                #{tmp\ 1907}#)))
           ($sc-dispatch
-            #{tmp\ 1815}#
+            #{tmp\ 1907}#
             '(any any any . each-any))))
-       #{x\ 1814}#))))
+       #{x\ 1906}#))))
 
 (define identifier-syntax
   (make-syncase-macro
     'macro
-    (lambda (#{x\ 1849}#)
-      ((lambda (#{tmp\ 1850}#)
-         ((lambda (#{tmp\ 1851}#)
-            (if #{tmp\ 1851}#
-              (apply (lambda (#{_\ 1852}# #{e\ 1853}#)
+    (lambda (#{x\ 1941}#)
+      ((lambda (#{tmp\ 1942}#)
+         ((lambda (#{tmp\ 1943}#)
+            (if #{tmp\ 1943}#
+              (apply (lambda (#{_\ 1944}# #{e\ 1945}#)
                        (list '#(syntax-object
                                 lambda
                                 ((top)
@@ -15197,8 +14314,8 @@
                                                      #((top))
                                                      #("i")))
                                                   (hygiene guile))
-                                               #{e\ 1853}#))
-                                   (list (cons #{_\ 1852}#
+                                               #{e\ 1945}#))
+                                   (list (cons #{_\ 1944}#
                                                '(#(syntax-object
                                                    x
                                                    ((top)
@@ -15238,7 +14355,7 @@
                                                      #((top))
                                                      #("i")))
                                                   (hygiene guile))
-                                               (cons #{e\ 1853}#
+                                               (cons #{e\ 1945}#
                                                      '(#(syntax-object
                                                          x
                                                          ((top)
@@ -15266,11 +14383,56 @@
                                                             #("i")))
                                                          (hygiene
                                                            guile)))))))))
-                     #{tmp\ 1851}#)
+                     #{tmp\ 1943}#)
+              (syntax-violation
+                #f
+                "source expression failed to match any pattern"
+                #{tmp\ 1942}#)))
+          ($sc-dispatch #{tmp\ 1942}# (quote (any any)))))
+       #{x\ 1941}#))))
+
+(define define*
+  (make-syncase-macro
+    'macro
+    (lambda (#{x\ 1946}#)
+      ((lambda (#{tmp\ 1947}#)
+         ((lambda (#{tmp\ 1948}#)
+            (if #{tmp\ 1948}#
+              (apply (lambda (#{dummy\ 1949}#
+                              #{id\ 1950}#
+                              #{args\ 1951}#
+                              #{b0\ 1952}#
+                              #{b1\ 1953}#)
+                       (list '#(syntax-object
+                                define
+                                ((top)
+                                 #(ribcage
+                                   #(dummy id args b0 b1)
+                                   #(("m" top) (top) (top) (top) (top))
+                                   #("i" "i" "i" "i" "i"))
+                                 #(ribcage () () ())
+                                 #(ribcage #(x) #(("m" top)) #("i")))
+                                (hygiene guile))
+                             #{id\ 1950}#
+                             (cons '#(syntax-object
+                                      lambda*
+                                      ((top)
+                                       #(ribcage
+                                         #(dummy id args b0 b1)
+                                         #(("m" top) (top) (top) (top) (top))
+                                         #("i" "i" "i" "i" "i"))
+                                       #(ribcage () () ())
+                                       #(ribcage #(x) #(("m" top)) #("i")))
+                                      (hygiene guile))
+                                   (cons #{args\ 1951}#
+                                         (cons #{b0\ 1952}# #{b1\ 1953}#)))))
+                     #{tmp\ 1948}#)
               (syntax-violation
                 #f
                 "source expression failed to match any pattern"
-                #{tmp\ 1850}#)))
-          ($sc-dispatch #{tmp\ 1850}# (quote (any any)))))
-       #{x\ 1849}#))))
+                #{tmp\ 1947}#)))
+          ($sc-dispatch
+            #{tmp\ 1947}#
+            '(any (any . any) any . each-any))))
+       #{x\ 1946}#))))
 
diff --git a/module/ice-9/psyntax.scm b/module/ice-9/psyntax.scm
index c2bebe0..05d2ba0 100644
--- a/module/ice-9/psyntax.scm
+++ b/module/ice-9/psyntax.scm
@@ -1570,6 +1570,209 @@
     (and (nonsymbol-id? x)
          (free-id=? x (syntax (... ...))))))
 
+(define lambda-formals
+  (lambda (orig-args)
+    (define (req args rreq)
+      (syntax-case args ()
+        (()
+         (check (reverse rreq) #f))
+        ((a . b) (id? #'a)
+         (req #'b (cons #'a rreq)))
+        (r (id? #'r)
+           (check (reverse rreq) #'r))
+        (else
+         (syntax-violation 'lambda "invalid argument list" orig-args args))))
+    (define (check req rest)
+      (cond
+       ((distinct-bound-ids? (if rest (cons rest req) req))
+        (values req #f rest #f))
+       (else
+        (syntax-violation 'lambda "duplicate identifier in argument list"
+                          orig-args))))
+    (req orig-args '())))
+
+(define chi-simple-lambda
+  (lambda (e r w s mod req rest docstring body)
+    (let* ((ids (if rest (append req (list rest)) req))
+           (vars (map gen-var ids))
+           (labels (gen-labels ids)))
+      (build-simple-lambda
+       s
+       (map syntax->datum req) (and rest (syntax->datum rest)) vars
+       docstring
+       (chi-body body (source-wrap e w s mod)
+                 (extend-var-env labels vars r)
+                 (make-binding-wrap ids labels w)
+                 mod)))))
+
+(define lambda*-formals
+  (lambda (orig-args)
+    (define (req args rreq)
+      (syntax-case args ()
+        (()
+         (check (reverse rreq) '() #f '()))
+        ((a . b) (id? #'a)
+         (req #'b (cons #'a rreq)))
+        ((a . b) (eq? (syntax->datum #'a) #:optional)
+         (opt #'b (reverse rreq) '()))
+        ((a . b) (eq? (syntax->datum #'a) #:key)
+         (key #'b (reverse rreq) '() '()))
+        ((a b) (eq? (syntax->datum #'a) #:rest)
+         (rest #'b (reverse rreq) '() '()))
+        (r (id? #'r)
+           (rest #'r (reverse rreq) '() '()))
+        (else
+         (syntax-violation 'lambda* "invalid argument list" orig-args args))))
+    (define (opt args req ropt)
+      (syntax-case args ()
+        (()
+         (check req (reverse ropt) #f '()))
+        ((a . b) (id? #'a)
+         (opt #'b req (cons #'(a #f) ropt)))
+        (((a init) . b) (id? #'a)
+         (opt #'b req (cons #'(a init) ropt)))
+        ((a . b) (eq? (syntax->datum #'a) #:key)
+         (key #'b req (reverse ropt) '()))
+        ((a b) (eq? (syntax->datum #'a) #:rest)
+         (rest #'b req (reverse ropt) '()))
+        (r (id? #'r)
+           (rest #'r req (reverse ropt) '()))
+        (else
+         (syntax-violation 'lambda* "invalid optional argument list"
+                           orig-args args))))
+    (define (key args req opt rkey)
+      (syntax-case args ()
+        (()
+         (check req opt #f (cons #f (reverse rkey))))
+        ((a . b) (id? #'a)
+         (with-syntax ((k (symbol->keyword (syntax->datum #'a))))
+           (key #'b req opt (cons #'(k a #f) rkey))))
+        (((a init) . b) (id? #'a)
+         (with-syntax ((k (symbol->keyword (syntax->datum #'a))))
+           (key #'b req opt (cons #'(k a init) rkey))))
+        (((a init k) . b) (and (id? #'a)
+                               (keyword? (syntax->datum #'k)))
+         (key #'b req opt (cons #'(k a init) rkey)))
+        ((aok) (eq? (syntax->datum #'aok) #:allow-other-keys)
+         (check req opt #f (cons #t (reverse rkey))))
+        ((aok a b) (and (eq? (syntax->datum #'aok) #:allow-other-keys)
+                        (eq? (syntax->datum #'a) #:rest))
+         (rest #'b req opt (cons #t (reverse rkey))))
+        ((aok . r) (and (eq? (syntax->datum #'aok) #:allow-other-keys)
+                        (id? #'r))
+         (rest #'r req opt (cons #t (reverse rkey))))
+        ((a b) (eq? (syntax->datum #'a) #:rest)
+         (rest #'b req opt (cons #f (reverse rkey))))
+        (r (id? #'r)
+           (rest #'r req opt (cons #f (reverse rkey))))
+        (else
+         (syntax-violation 'lambda* "invalid keyword argument list"
+                           orig-args args))))
+    (define (rest args req opt kw)
+      (syntax-case args ()
+        (r (id? #'r)
+           (check req opt #'r kw))
+        (else
+         (syntax-violation 'lambda* "invalid rest argument"
+                           orig-args args))))
+    (define (check req opt rest kw)
+      (cond
+       ((distinct-bound-ids?
+         (append req (map car opt) (if rest (list rest) '())
+                 (if (pair? kw) (map cadr (cdr kw)) '())))
+        (values req opt rest kw))
+       (else
+        (syntax-violation 'lambda* "duplicate identifier in argument list"
+                          orig-args))))
+    (req orig-args '())))
+
+(define chi-lambda-case
+  (lambda (e r w s mod get-formals clauses)
+    (define (expand-req req opt rest kw body)
+      (let ((vars (map gen-var req))
+            (labels (gen-labels req)))
+        (let ((r* (extend-var-env labels vars r))
+              (w* (make-binding-wrap req labels w)))
+          (expand-opt (map syntax->datum req)
+                      opt rest kw body (reverse vars) r* w* '() '()))))
+    (define (expand-opt req opt rest kw body vars r* w* out inits)
+      (cond
+       ((pair? opt)
+        (syntax-case (car opt) ()
+          ((id i)
+           (let* ((v (gen-var #'id))
+                  (l (gen-labels (list v)))
+                  (r** (extend-var-env l (list v) r*))
+                  (w** (make-binding-wrap (list #'id) l w*)))
+             (expand-opt req (cdr opt) rest kw body (cons v vars)
+                         r** w** (cons (syntax->datum #'id) out)
+                         (cons (chi #'i r* w* mod) inits))))))
+       (rest
+        (let* ((v (gen-var rest))
+               (l (gen-labels (list v)))
+               (r* (extend-var-env l (list v) r*))
+               (w* (make-binding-wrap (list rest) l w*)))
+          (expand-kw req (if (pair? out) (reverse out) #f)
+                     (syntax->datum rest)
+                     (if (pair? kw) (cdr kw) kw)
+                     body (cons v vars) r* w* 
+                     (if (pair? kw) (car kw) #f)
+                     '() inits)))
+       (else
+        (expand-kw req (if (pair? out) (reverse out) #f) #f
+                   (if (pair? kw) (cdr kw) kw)
+                   body vars r* w*
+                   (if (pair? kw) (car kw) #f)
+                   '() inits))))
+    (define (expand-kw req opt rest kw body vars r* w* aok out inits)
+      (cond
+       ((pair? kw)
+        (syntax-case (car kw) ()
+          ((k id i)
+           (let* ((v (gen-var #'id))
+                  (l (gen-labels (list v)))
+                  (r** (extend-var-env l (list v) r*))
+                  (w** (make-binding-wrap (list #'id) l w*)))
+             (expand-kw req opt rest (cdr kw) body (cons v vars)
+                        r** w** aok
+                        (cons (list (syntax->datum #'k)
+                                    (syntax->datum #'id)
+                                    v)
+                              out)
+                        (cons (chi #'i r* w* mod) inits))))))
+       (else
+        (expand-body req opt rest
+                     (if (or aok (pair? out)) (cons aok (reverse out)) #f)
+                     body (reverse vars) r* w* (reverse inits)))))
+    (define (expand-body req opt rest kw body vars r* w* inits)
+      (syntax-case body ()
+        ((docstring e1 e2 ...) (string? (syntax->datum #'docstring))
+         (values (syntax->datum #'docstring) req opt rest kw inits vars #f
+                 (chi-body #'(e1 e2 ...) (source-wrap e w s mod)
+                           r* w* mod)))
+        ((e1 e2 ...)
+         (values #f req opt rest kw inits vars #f
+                 (chi-body #'(e1 e2 ...) (source-wrap e w s mod)
+                           r* w* mod)))))
+
+    (syntax-case clauses ()
+      (() (values #f #f))
+      (((args e1 e2 ...) (args* e1* e2* ...) ...)
+       (call-with-values (lambda () (get-formals #'args))
+          (lambda (req opt rest kw)
+            (call-with-values (lambda ()
+                                (expand-req req opt rest kw #'(e1 e2 ...)))
+              (lambda (docstring req opt rest kw inits vars pred body)
+                (call-with-values
+                    (lambda ()
+                      (chi-lambda-case e r w s mod get-formals
+                                       #'((args* e1* e2* ...) ...)))
+                  (lambda (docstring* else*)
+                    (values
+                     (or docstring docstring*)
+                     (build-lambda-case s req opt rest kw inits vars
+                                        pred body else*))))))))))))
+
 ;;; data
 
 ;;; strips syntax-objects down to top-wrap
@@ -1825,212 +2028,58 @@
              (lambda (e maps) (regen e))))
           (_ (syntax-violation 'syntax "bad `syntax' form" e)))))))
 
-
 (global-extend 'core 'lambda
    (lambda (e r w s mod)
-     (define (docstring&body ids vars labels c)
-       (syntax-case c ()
-         ((docstring e1 e2 ...)
-          (string? (syntax->datum (syntax docstring)))
-          (values (syntax->datum (syntax docstring))
-                  (chi-body (syntax (e1 e2 ...))
-                            (source-wrap e w s mod)
-                            (extend-var-env labels vars r)
-                            (make-binding-wrap ids labels w)
-                            mod)))
-         ((e1 e2 ...)
-          (values #f
-                  (chi-body (syntax (e1 e2 ...))
-                            (source-wrap e w s mod)
-                            (extend-var-env labels vars r)
-                            (make-binding-wrap ids labels w)
-                            mod)))))
      (syntax-case e ()
-       ((_ (id ...) e1 e2 ...)
-        (let ((ids (syntax (id ...))))
-          (if (not (valid-bound-ids? ids))
-              (syntax-violation 'lambda "invalid parameter list" e)
-              (let ((vars (map gen-var ids))
-                    (labels (gen-labels ids)))
-                (call-with-values
-                    (lambda ()
-                      (docstring&body ids vars labels
-                                      (syntax (e1 e2 ...))))
-                  (lambda (docstring body)
-                    (build-simple-lambda s (map syntax->datum ids) #f
-                                         vars docstring body)))))))
-       ((_ ids e1 e2 ...)
-        (let ((rids (lambda-var-list (syntax ids))))
-          (if (not (valid-bound-ids? rids))
-              (syntax-violation 'lambda "invalid parameter list" e)
-              (let* ((req (reverse (cdr rids)))
-                     (rest (car rids))
-                     (rrids (reverse rids))
-                     (vars (map gen-var rrids))
-                     (labels (gen-labels rrids)))
-                (call-with-values
-                    (lambda ()
-                      (docstring&body rrids vars labels
-                                      (syntax (e1 e2 ...))))
-                  (lambda (docstring body)
-                    (build-simple-lambda s (map syntax->datum req)
-                                         (syntax->datum rest)
-                                         vars docstring body)))))))
+       ((_ args docstring e1 e2 ...) (string? (syntax->datum #'docstring))
+        (call-with-values (lambda () (lambda-formals #'args))
+          (lambda (req opt rest kw)
+            (chi-simple-lambda e r w s mod req rest (syntax->datum #'docstring)
+                               #'(e1 e2 ...)))))
+       ((_ args e1 e2 ...)
+        (call-with-values (lambda () (lambda-formals #'args))
+          (lambda (req opt rest kw)
+            (chi-simple-lambda e r w s mod req rest #f #'(e1 e2 ...)))))
        (_ (syntax-violation 'lambda "bad lambda" e)))))
 
-
 (global-extend 'core 'lambda*
    (lambda (e r w s mod)
-     ;; arg parsing state machine
-     (define (req args rreq)
-       (syntax-case args ()
-         (()
-          (values (reverse rreq) '() #f '()))
-         ((a . b) (symbol? (syntax->datum #'a))
-          (req #'b (cons #'a rreq)))
-         ((a . b) (eq? (syntax->datum #'a) #:optional)
-          (opt #'b (reverse rreq) '()))
-         ((a . b) (eq? (syntax->datum #'a) #:key)
-          (key #'b (reverse rreq) '() '()))
-         ((a b) (eq? (syntax->datum #'a) #:rest)
-          (rest #'b (reverse rreq) '() '()))
-         (r (symbol? (syntax->datum #'a))
-          (rest #'r (reverse rreq) '() '()))
-         (else
-          (syntax-violation 'lambda* "invalid argument list" e args))))
-     (define (opt args req ropt)
-       (syntax-case args ()
-         (()
-          (values req (reverse ropt) #f '()))
-         ((a . b) (symbol? (syntax->datum #'a))
-          (opt #'b req (cons #'(a #f) ropt)))
-         (((a init) . b) (symbol? (syntax->datum #'a))
-          (opt #'b req (cons #'(a init) ropt)))
-         ((a . b) (eq? (syntax->datum #'a) #:key)
-          (key #'b req (reverse ropt) '()))
-         ((a b) (eq? (syntax->datum #'a) #:rest)
-          (rest #'b req (reverse ropt) '()))
-         (r (symbol? (syntax->datum #'a))
-          (rest #'r req (reverse ropt) '()))
-         (else
-          (syntax-violation 'lambda* "invalid argument list" e args))))
-     (define (key args req opt rkey)
-       (syntax-case args ()
-         (()
-          (values req opt #f (cons #f (reverse rkey))))
-         ((a . b) (symbol? (syntax->datum #'a))
-          (with-syntax ((k (symbol->keyword (syntax->datum #'a))))
-            (key #'b req opt (cons #'(k a #f) rkey))))
-         (((a init) . b) (symbol? (syntax->datum #'a))
-          (with-syntax ((k (symbol->keyword (syntax->datum #'a))))
-            (key #'b req opt (cons #'(k a init) rkey))))
-         (((a init k) . b) (and (symbol? (syntax->datum #'a))
-                                (keyword? (syntax->datum #'k)))
-          (key #'b req opt (cons #'(k a init) rkey)))
-         ((aok) (eq? (syntax->datum #'aok) #:allow-other-keys)
-          (values req opt #f (cons #t (reverse rkey))))
-         ((aok a b) (and (eq? (syntax->datum #'aok) #:allow-other-keys)
-                         (eq? (syntax->datum #'a) #:rest))
-          (rest #'b req opt (cons #t (reverse rkey))))
-         ((aok . r) (and (eq? (syntax->datum #'aok) #:allow-other-keys)
-                         (symbol? (syntax->datum #'r)))
-          (rest #'r req opt (cons #t (reverse rkey))))
-         ((a b) (eq? (syntax->datum #'a) #:rest)
-          (rest #'b req opt (cons #f (reverse rkey))))
-         (r (symbol? (syntax->datum #'a))
-          (rest #'r req opt (cons #f (reverse rkey))))
-         (else
-          (syntax-violation 'lambda* "invalid argument list" e args))))
-     (define (rest args req opt kw)
-       (syntax-case args ()
-         (r (symbol? (syntax->datum #'r))
-          (values req opt #'r kw))
-         (else
-          (syntax-violation 'lambda* "invalid rest argument" e args))))
-     (define (expand-req req opt rest kw body)
-       (let ((vars (map gen-var req))
-             (labels (gen-labels req)))
-         (let ((r* (extend-var-env labels vars r))
-               (w* (make-binding-wrap req labels w)))
-           (expand-opt (map syntax->datum req)
-                       opt rest kw body (reverse vars) r* w* '() '()))))
-     (define (expand-opt req opt rest kw body vars r* w* out inits)
-       (cond
-        ((pair? opt)
-         (syntax-case (car opt) ()
-           ((id i)
-            (let* ((v (gen-var #'id))
-                   (l (gen-labels (list v)))
-                   (r** (extend-var-env l (list v) r*))
-                   (w** (make-binding-wrap (list #'id) l w*)))
-              (expand-opt req (cdr opt) rest kw body (cons v vars)
-                          r** w** (cons (syntax->datum #'id) out)
-                          (cons (chi #'i r* w* mod) inits))))))
-        (rest
-         (let* ((v (gen-var rest))
-                (l (gen-labels (list v)))
-                (r* (extend-var-env l (list v) r*))
-                (w* (make-binding-wrap (list rest) l w*)))
-           (expand-kw req (if (pair? out) (reverse out) #f)
-                      (syntax->datum rest)
-                      (if (pair? kw) (cdr kw) kw)
-                      body (cons v vars) r* w* 
-                      (if (pair? kw) (car kw) #f)
-                      '() inits)))
-        (else
-         (expand-kw req (if (pair? out) (reverse out) #f) #f
-                    (if (pair? kw) (cdr kw) kw)
-                    body vars r* w*
-                    (if (pair? kw) (car kw) #f)
-                    '() inits))))
-     (define (expand-kw req opt rest kw body vars r* w* aok out inits)
-       (cond
-        ((pair? kw)
-         (syntax-case (car kw) ()
-           ((k id i)
-            (let* ((v (gen-var #'id))
-                   (l (gen-labels (list v)))
-                   (r** (extend-var-env l (list v) r*))
-                   (w** (make-binding-wrap (list #'id) l w*)))
-              (expand-kw req opt rest (cdr kw) body (cons v vars)
-                         r** w** aok
-                         (cons (list (syntax->datum #'k)
-                                     (syntax->datum #'id)
-                                     v)
-                               out)
-                         (cons (chi #'i r* w* mod) inits))))))
-        (else
-         (expand-body req opt rest
-                      (if (or aok (pair? out)) (cons aok (reverse out)) #f)
-                      body (reverse vars) r* w* (reverse inits)))))
-     (define (expand-body req opt rest kw body vars r* w* inits)
-       (syntax-case body ()
-         ((docstring e1 e2 ...) (string? (syntax->datum #'docstring))
-          (values (syntax->datum #'docstring) req opt rest kw inits vars #f
-                  (chi-body #'(e1 e2 ...) (source-wrap e w s mod)
-                            r* w* mod)))
-         ((e1 e2 ...)
-          (values #f req opt rest kw inits vars #f
-                  (chi-body #'(e1 e2 ...) (source-wrap e w s mod)
-                             r* w* mod)))))
-     ;; whew. 
-
      (syntax-case e ()
        ((_ args e1 e2 ...)
-        (call-with-values (lambda () (req #'args '()))
-          (lambda (req opt rest kw)
-            (if (not (valid-bound-ids?
-                      (append req (map car opt) (if rest (list rest) '())
-                              (if (pair? kw) (map cadr (cdr kw)) '()))))
-                (syntax-violation 'lambda "invalid parameter list" e #'args)
-                (call-with-values (lambda ()
-                                    (expand-req req opt rest kw #'(e1 e2 ...)))
-                  (lambda (docstring req opt rest kw inits vars pred body)
-                    (build-case-lambda
-                     s docstring
-                     (build-lambda-case s req opt rest kw inits vars pred body 
#f))))))))
+        (call-with-values
+            (lambda ()
+              (chi-lambda-case e r w s mod
+                               lambda*-formals #'((args e1 e2 ...))))
+          (lambda (docstring lcase)
+            (build-case-lambda s docstring lcase))))
        (_ (syntax-violation 'lambda "bad lambda*" e)))))
 
+(global-extend 'core 'case-lambda
+   (lambda (e r w s mod)
+     (syntax-case e ()
+       ((_ (args e1 e2 ...) (args* e1* e2* ...) ...)
+        (call-with-values
+            (lambda ()
+              (chi-lambda-case e r w s mod
+                               lambda-formals
+                               #'((args e1 e2 ...) (args* e1* e2* ...) ...)))
+          (lambda (docstring lcase)
+            (build-case-lambda s docstring lcase))))
+       (_ (syntax-violation 'case-lambda "bad case-lambda" e)))))
+
+(global-extend 'core 'case-lambda*
+   (lambda (e r w s mod)
+     (syntax-case e ()
+       ((_ (args e1 e2 ...) (args* e1* e2* ...) ...)
+        (call-with-values
+            (lambda ()
+              (chi-lambda-case e r w s mod
+                               lambda*-formals
+                               #'((args e1 e2 ...) (args* e1* e2* ...) ...)))
+          (lambda (docstring lcase)
+            (build-case-lambda s docstring lcase))))
+       (_ (syntax-violation 'case-lambda "bad case-lambda*" e)))))
+
 (global-extend 'core 'let
   (let ()
     (define (chi-let e r w s mod constructor ids vals exps)
@@ -2678,3 +2727,8 @@
               (syntax e))
              ((_ x (... ...))
               (syntax (e x (... ...)))))))))))
+
+(define-syntax define*
+  (syntax-rules ()
+    ((_ (id . args) b0 b1 ...)
+     (define id (lambda* args b0 b1 ...)))))
diff --git a/module/language/assembly/compile-bytecode.scm 
b/module/language/assembly/compile-bytecode.scm
index d92821c..e6fc5bc 100644
--- a/module/language/assembly/compile-bytecode.scm
+++ b/module/language/assembly/compile-bytecode.scm
@@ -137,6 +137,9 @@
         ((br-if-not-eq ,l) (write-break l))
         ((br-if-null ,l) (write-break l))
         ((br-if-not-null ,l) (write-break l))
+        ((br-if-nargs-ne ,hi ,lo ,l) (write-byte hi) (write-byte lo) 
(write-break l))
+        ((br-if-nargs-lt ,hi ,lo ,l) (write-byte hi) (write-byte lo) 
(write-break l))
+        ((br-if-nargs-gt ,hi ,lo ,l) (write-byte hi) (write-byte lo) 
(write-break l))
         ((mv-call ,n ,l) (write-byte n) (write-break l))
         (else
          (cond
diff --git a/module/language/assembly/decompile-bytecode.scm 
b/module/language/assembly/decompile-bytecode.scm
index 6c929cb..555ee12 100644
--- a/module/language/assembly/decompile-bytecode.scm
+++ b/module/language/assembly/decompile-bytecode.scm
@@ -42,6 +42,8 @@
 
 (define (br-instruction? x)
   (memq x '(br br-if br-if-not br-if-eq br-if-not-eq br-if-null 
br-if-not-null)))
+(define (br-nargs-instruction? x)
+  (memq x '(br-if-nargs-ne br-if-nargs-lt br-if-nargs-gt)))
 
 (define (bytes->s24 a b c)
   (let ((x (+ (ash a 16) (ash b 8) c)))
@@ -84,6 +86,8 @@
                (pmatch exp
                  ((,br ,rel1 ,rel2 ,rel3) (guard (br-instruction? br))
                   (lp (cons `(,br ,(ensure-label rel1 rel2 rel3)) out)))
+                 ((,br ,hi ,lo ,rel1 ,rel2 ,rel3) (guard 
(br-nargs-instruction? br))
+                  (lp (cons `(,br ,hi ,lo ,(ensure-label rel1 rel2 rel3)) 
out)))
                  ((mv-call ,n ,rel1 ,rel2 ,rel3)
                   (lp (cons `(mv-call ,n ,(ensure-label rel1 rel2 rel3)) out)))
                  (else 
diff --git a/module/language/assembly/disassemble.scm 
b/module/language/assembly/disassemble.scm
index ae2d327..2c0ad4f 100644
--- a/module/language/assembly/disassemble.scm
+++ b/module/language/assembly/disassemble.scm
@@ -132,6 +132,8 @@
        (list "~a element~:p" (apply make-int16 args)))
       ((br br-if br-if-eq br-if-not br-if-not-eq br-if-not-null br-if-null)
        (list "-> ~A" (assq-ref labels (car args))))
+      ((br-if-nargs-ne br-if-nargs-lt br-if-nargs-gt)
+       (list "-> ~A" (assq-ref labels (caddr args))))
       ((object-ref)
        (and objs (list "~s" (vector-ref objs (car args)))))
       ((local-ref local-boxed-ref local-set local-boxed-set)
diff --git a/module/language/glil/compile-assembly.scm 
b/module/language/glil/compile-assembly.scm
index 171032b..490d1a4 100644
--- a/module/language/glil/compile-assembly.scm
+++ b/module/language/glil/compile-assembly.scm
@@ -125,17 +125,13 @@
   (assoc-ref-or-acons alist x
                       (lambda (x alist)
                         (+ (length alist) *module*))))
-
-(define (compile-assembly glil)
-  (receive (code . _)
-      (glil->assembly glil #t '(()) '() '() #f '() -1)
-    (car code)))
 (define (make-object-table objects)
   (and (not (null? objects))
        (list->vector (cons #f objects))))
 
+;; A functional arities thingamajiggy.
 ;; arities := ((ip nreq [[nopt] [[rest] [kw]]]]) ...)
-(define (begin-arity addr nreq nopt rest kw arities)
+(define (open-arity addr nreq nopt rest kw arities)
   (cons
    (cond
     (kw (list addr nreq nopt rest kw))
@@ -144,6 +140,19 @@
     (nreq (list addr nreq))
     (else (list addr)))
    arities))
+(define (close-arity addr arities)
+  (pmatch arities
+    (() '())
+    (((,start . ,tail) . ,rest)
+     `((,start ,addr . ,tail) . ,rest))
+    (else (error "bad arities" arities))))
+(define (begin-arity end start nreq nopt rest kw arities)
+  (open-arity start nreq nopt rest kw (close-arity end arities)))
+
+(define (compile-assembly glil)
+  (receive (code . _)
+      (glil->assembly glil #t '(()) '() '() #f '() -1)
+    (car code)))
 
 (define (glil->assembly glil toplevel? bindings
                         source-alist label-alist object-alist arities addr)
@@ -153,7 +162,7 @@
     (values x bindings source-alist label-alist object-alist arities))
   (define (emit-code/arity x nreq nopt rest kw)
     (values x bindings source-alist label-alist object-alist
-            (begin-arity (addr+ addr x) nreq nopt rest kw arities)))
+            (begin-arity addr (addr+ addr x) nreq nopt rest kw arities)))
   
   (record-case glil
     ((<glil-program> meta body)
@@ -168,7 +177,7 @@
                    (limn-sources (reverse! source-alist))
                    (reverse label-alist)
                    (and object-alist (map car (reverse object-alist)))
-                   (reverse arities)
+                   (reverse (close-arity addr arities))
                    addr))
           (else
            (receive (subcode bindings source-alist label-alist object-alist
@@ -309,7 +318,7 @@
                        (reserve-locals ,(quotient nlocs 256)
                                        ,(modulo nlocs 256)))))
            (values code bindings source-alist label-alist object-alist
-                   (begin-arity (addr+ addr code) nreq nopt rest
+                   (begin-arity addr (addr+ addr code) nreq nopt rest
                                 (and kw (cons allow-other-keys? kw))
                                 arities))))))
     
diff --git a/module/srfi/srfi-16.scm b/module/srfi/srfi-16.scm
index dc3c709..caec784 100644
--- a/module/srfi/srfi-16.scm
+++ b/module/srfi/srfi-16.scm
@@ -1,6 +1,6 @@
 ;;; srfi-16.scm --- case-lambda
 
-;; Copyright (C) 2001, 2002, 2006 Free Software Foundation, Inc.
+;; Copyright (C) 2001, 2002, 2006, 2009 Free Software Foundation, Inc.
 ;;
 ;; This library is free software; you can redistribute it and/or
 ;; modify it under the terms of the GNU Lesser General Public
@@ -46,81 +46,8 @@
 ;;; Code:
 
 (define-module (srfi srfi-16)
-  :export-syntax (case-lambda))
+  #:re-export (case-lambda))
 
-(cond-expand-provide (current-module) '(srfi-16))
-
-(define-macro (case-lambda . clauses)
-
-  ;; Return the length of the list @var{l}, but allow dotted list.
-  ;;
-  (define (alength l)
-    (cond ((null? l) 0)
-         ((pair? l) (+ 1 (alength (cdr l))))
-         (else 0)))
-
-  ;; Return @code{#t} if @var{l} is a dotted list, @code{#f} if it is
-  ;; a normal list.
-  ;;
-  (define (dotted? l)
-    (cond ((null? l) #f)
-         ((pair? l) (dotted? (cdr l)))
-         (else #t)))
-
-  ;; Return the expression for accessing the @var{index}th element of
-  ;; the list called @var{args-name}.  If @var{tail?} is true, code
-  ;; for accessing the list-tail is generated, otherwise for accessing
-  ;; the list element itself.
-  ;;
-  (define (accessor args-name index tail?)
-    (if tail?
-       (case index
-         ((0) `,args-name)
-         ((1) `(cdr ,args-name))
-         ((2) `(cddr ,args-name))
-         ((3) `(cdddr ,args-name))
-         ((4) `(cddddr ,args-name))
-         (else `(list-tail ,args-name ,index)))
-       (case index
-         ((0) `(car ,args-name))
-         ((1) `(cadr ,args-name))
-         ((2) `(caddr ,args-name))
-         ((3) `(cadddr ,args-name))
-         (else `(list-ref ,args-name ,index)))))
+;; Case-lambda is now provided by code psyntax.
 
-  ;; Generate the binding lists of the variables of one case-lambda
-  ;; clause.  @var{vars} is the (possibly dotted) list of variables
-  ;; and @var{args-name} is the generated name used for the argument
-  ;; list.
-  ;;
-  (define (gen-temps vars args-name)
-    (let lp ((v vars) (i 0))
-      (cond ((null? v) '())
-           ((pair? v)
-            (cons `(,(car v) ,(accessor args-name i #f))
-                  (lp (cdr v) (+ i 1))))
-           (else `((,v ,(accessor args-name i #t)))))))
-
-  ;; Generate the cond clauses for each of the clauses of case-lambda,
-  ;; including the parameter count check, binding of the parameters
-  ;; and the code of the corresponding body.
-  ;;
-  (define (gen-clauses l length-name args-name)
-    (cond ((null? l) (list '(else (error "too few arguments"))))
-         (else
-          (cons
-           `((,(if (dotted? (caar l)) '>= '=)
-              ,length-name ,(alength (caar l)))
-             (let ,(gen-temps (caar l) args-name)
-             ,@(cdar l)))
-           (gen-clauses (cdr l) length-name args-name)))))
-
-  (let ((args-name (gensym))
-       (length-name (gensym)))
-    (let ((proc
-          `(lambda ,args-name
-             (let ((,length-name (length ,args-name)))
-               (cond ,@(gen-clauses clauses length-name args-name))))))
-      proc)))
-
-;;; srfi-16.scm ends here
+(cond-expand-provide (current-module) '(srfi-16))
diff --git a/module/system/vm/frame.scm b/module/system/vm/frame.scm
index 2f1da97..ace7d59 100644
--- a/module/system/vm/frame.scm
+++ b/module/system/vm/frame.scm
@@ -96,7 +96,9 @@
               (cons x (lp rest)))
              (,rest (guard (symbol? rest))
               (vm-frame-binding-ref frame rest))
-             (else (error "bad formals" formals))))))
+             ;; let's not error here, as we are called during
+             ;; backtraces...
+             (else '???)))))
    (else
     ;; case 2
     (map (lambda (i)
diff --git a/module/system/vm/program.scm b/module/system/vm/program.scm
index 823b2a0..68ebb84 100644
--- a/module/system/vm/program.scm
+++ b/module/system/vm/program.scm
@@ -97,13 +97,30 @@
                      (cons (car binds) out))
                     (else (inner (cdr binds)))))))))
 
+(define (arity:start a)
+  (pmatch a ((,start ,end . _) start) (else (error "bad arity" a))))
+(define (arity:end a)
+  (pmatch a ((,start ,end . _) end) (else (error "bad arity" a))))
+(define (arity:nreq a)
+  (pmatch a ((_ _ ,nreq . _) nreq) (else 0)))
+(define (arity:nopt a)
+  (pmatch a ((_ _ ,nreq ,nopt . _) nopt) (else 0)))
+(define (arity:rest? a)
+  (pmatch a ((_ _ ,nreq ,nopt ,rest? . _) rest?) (else #f)))
+(define (arity:kw a)
+  (pmatch a ((_ _ ,nreq ,nopt ,rest? (_ . ,kw)) kw) (else '())))
+(define (arity:allow-other-keys? a)
+  (pmatch a ((_ _ ,nreq ,nopt ,rest? (,aok . ,kw)) aok) (else #f)))
+
 ;; not exported; should it be?
 (define (program-arity prog ip)
   (let ((arities (program-arities prog)))
     (and arities
          (let lp ((arities arities))
            (cond ((null? arities) #f)
-                 ((<= (caar arities) ip) (car arities))
+                 ((and (< (arity:start (car arities)) ip)
+                       (<= ip (arity:end (car arities))))
+                  (car arities))
                  (else (lp (cdr arities))))))))
 
 (define (arglist->arguments arglist)
@@ -117,19 +134,6 @@
        (extents . ,extents)))
     (else #f)))
 
-(define (arity:start a)
-  (pmatch a ((,ip . _) ip) (else (error "bad arity" a))))
-(define (arity:nreq a)
-  (pmatch a ((_ ,nreq . _) nreq) (else 0)))
-(define (arity:nopt a)
-  (pmatch a ((_ ,nreq ,nopt . _) nopt) (else 0)))
-(define (arity:rest? a)
-  (pmatch a ((_ ,nreq ,nopt ,rest? . _) rest?) (else #f)))
-(define (arity:kw a)
-  (pmatch a ((_ ,nreq ,nopt ,rest? (_ . ,kw)) kw) (else '())))
-(define (arity:allow-other-keys? a)
-  (pmatch a ((_ ,nreq ,nopt ,rest? (,aok . ,kw)) aok) (else #f)))
-
 (define (arity->arguments prog arity)
   (define var-by-index
     (let ((rbinds (map (lambda (x)
diff --git a/test-suite/tests/syntax.test b/test-suite/tests/syntax.test
index 282072b..ec55280 100644
--- a/test-suite/tests/syntax.test
+++ b/test-suite/tests/syntax.test
@@ -58,11 +58,11 @@
 (define exception:bad-body
   (cons 'misc-error "^bad body"))
 (define exception:bad-formals
-  '(syntax-error . "invalid parameter list"))
+  '(syntax-error . "invalid argument list"))
 (define exception:bad-formal
   (cons 'syntax-error "Bad formal"))
-(define exception:duplicate-formal
-  (cons 'syntax-error "Duplicate formal"))
+(define exception:duplicate-formals
+  (cons 'syntax-error "duplicate identifier in argument list"))
 
 (define exception:missing-clauses
   (cons 'syntax-error "Missing clauses"))
@@ -228,13 +228,13 @@
 
     ;; Fixed on 2001-3-3
     (pass-if-exception "(lambda (x x) 1)"
-      exception:bad-formals
+      exception:duplicate-formals
       (eval '(lambda (x x) 1)
            (interaction-environment)))
 
     ;; Fixed on 2001-3-3
     (pass-if-exception "(lambda (x x x) 1)"
-      exception:bad-formals
+      exception:duplicate-formals
       (eval '(lambda (x x x) 1)
            (interaction-environment))))
 


hooks/post-receive
-- 
GNU Guile




reply via email to

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