1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-30 00:40:20 +02:00
guile/module/ice-9/psyntax-pp.scm
Andy Wingo f42d8bd8ff simplify macro representation in the wake of module hygiene changes
* module/ice-9/psyntax.scm (chi-install-global, chi-macro)
  (eval-local-transformer): Now that we handle module hygiene through
  syntax objects, there is no more need to record the current module
  when installing syntax transformers.

* module/ice-9/psyntax-pp.scm: Regenerated (trickily).

* libguile/_scm.h: Bump objcode version for macro representation change.

* libguile/macros.c (scm_macro_transformer): Adapt to change in macro
  representation.
2010-06-06 13:39:44 +02:00

16359 lines
1 MiB

(eval-when (compile) (set-current-module (resolve-module (quote (guile)))))
(if #f #f)
(letrec ((#{and-map*\ 20}#
(lambda (#{f\ 192}# #{first\ 193}# . #{rest\ 194}#)
(let ((#{t\ 200}# (null? #{first\ 193}#)))
(if #{t\ 200}#
#{t\ 200}#
(if (null? #{rest\ 194}#)
(letrec ((#{andmap\ 204}#
(lambda (#{first\ 205}#)
(let ((#{x\ 208}# (car #{first\ 205}#))
(#{first\ 209}# (cdr #{first\ 205}#)))
(if (null? #{first\ 209}#)
(#{f\ 192}# #{x\ 208}#)
(if (#{f\ 192}# #{x\ 208}#)
(#{andmap\ 204}# #{first\ 209}#)
#f))))))
(#{andmap\ 204}# #{first\ 193}#))
(letrec ((#{andmap\ 215}#
(lambda (#{first\ 216}# #{rest\ 217}#)
(let ((#{x\ 222}# (car #{first\ 216}#))
(#{xr\ 223}# (map car #{rest\ 217}#))
(#{first\ 224}# (cdr #{first\ 216}#))
(#{rest\ 225}# (map cdr #{rest\ 217}#)))
(if (null? #{first\ 224}#)
(apply #{f\ 192}#
(cons #{x\ 222}# #{xr\ 223}#))
(if (apply #{f\ 192}#
(cons #{x\ 222}# #{xr\ 223}#))
(#{andmap\ 215}#
#{first\ 224}#
#{rest\ 225}#)
#f))))))
(#{andmap\ 215}# #{first\ 193}# #{rest\ 194}#))))))))
(letrec ((#{lambda-var-list\ 487}#
(lambda (#{vars\ 702}#)
(letrec ((#{lvl\ 708}#
(lambda (#{vars\ 709}# #{ls\ 710}# #{w\ 711}#)
(if (pair? #{vars\ 709}#)
(#{lvl\ 708}#
(cdr #{vars\ 709}#)
(cons (#{wrap\ 441}#
(car #{vars\ 709}#)
#{w\ 711}#
#f)
#{ls\ 710}#)
#{w\ 711}#)
(if (#{id?\ 372}# #{vars\ 709}#)
(cons (#{wrap\ 441}#
#{vars\ 709}#
#{w\ 711}#
#f)
#{ls\ 710}#)
(if (null? #{vars\ 709}#)
#{ls\ 710}#
(if (#{syntax-object?\ 336}# #{vars\ 709}#)
(#{lvl\ 708}#
(#{syntax-object-expression\ 338}#
#{vars\ 709}#)
#{ls\ 710}#
(#{join-wraps\ 423}#
#{w\ 711}#
(#{syntax-object-wrap\ 340}#
#{vars\ 709}#)))
(cons #{vars\ 709}# #{ls\ 710}#))))))))
(#{lvl\ 708}#
#{vars\ 702}#
'()
'(())))))
(#{gen-var\ 485}#
(lambda (#{id\ 722}#)
(let ((#{id\ 725}#
(if (#{syntax-object?\ 336}# #{id\ 722}#)
(#{syntax-object-expression\ 338}# #{id\ 722}#)
#{id\ 722}#)))
(gensym
(string-append (symbol->string #{id\ 725}#) " ")))))
(#{strip\ 483}#
(lambda (#{x\ 727}# #{w\ 728}#)
(if (memq 'top
(#{wrap-marks\ 379}# #{w\ 728}#))
#{x\ 727}#
(letrec ((#{f\ 734}# (lambda (#{x\ 735}#)
(if (#{syntax-object?\ 336}#
#{x\ 735}#)
(#{strip\ 483}#
(#{syntax-object-expression\ 338}#
#{x\ 735}#)
(#{syntax-object-wrap\ 340}#
#{x\ 735}#))
(if (pair? #{x\ 735}#)
(let ((#{a\ 742}# (#{f\ 734}# (car #{x\ 735}#)))
(#{d\ 743}# (#{f\ 734}# (cdr #{x\ 735}#))))
(if (if (eq? #{a\ 742}#
(car #{x\ 735}#))
(eq? #{d\ 743}#
(cdr #{x\ 735}#))
#f)
#{x\ 735}#
(cons #{a\ 742}# #{d\ 743}#)))
(if (vector? #{x\ 735}#)
(let ((#{old\ 749}#
(vector->list
#{x\ 735}#)))
(let ((#{new\ 751}#
(map #{f\ 734}#
#{old\ 749}#)))
(if (#{and-map*\ 20}#
eq?
#{old\ 749}#
#{new\ 751}#)
#{x\ 735}#
(list->vector
#{new\ 751}#))))
#{x\ 735}#))))))
(#{f\ 734}# #{x\ 727}#)))))
(#{chi-lambda-case\ 481}#
(lambda (#{e\ 753}#
#{r\ 754}#
#{w\ 755}#
#{s\ 756}#
#{mod\ 757}#
#{get-formals\ 758}#
#{clauses\ 759}#)
(letrec ((#{expand-body\ 774}#
(lambda (#{req\ 775}#
#{opt\ 776}#
#{rest\ 777}#
#{kw\ 778}#
#{body\ 779}#
#{vars\ 780}#
#{r*\ 781}#
#{w*\ 782}#
#{inits\ 783}#
#{meta\ 784}#)
((lambda (#{tmp\ 795}#)
((lambda (#{tmp\ 796}#)
(if (if #{tmp\ 796}#
(apply (lambda (#{docstring\ 800}#
#{e1\ 801}#
#{e2\ 802}#)
(string?
(syntax->datum
#{docstring\ 800}#)))
#{tmp\ 796}#)
#f)
(apply (lambda (#{docstring\ 806}#
#{e1\ 807}#
#{e2\ 808}#)
(#{expand-body\ 774}#
#{req\ 775}#
#{opt\ 776}#
#{rest\ 777}#
#{kw\ 778}#
(cons #{e1\ 807}# #{e2\ 808}#)
#{vars\ 780}#
#{r*\ 781}#
#{w*\ 782}#
#{inits\ 783}#
(append
#{meta\ 784}#
(list (cons 'documentation
(syntax->datum
#{docstring\ 806}#))))))
#{tmp\ 796}#)
((lambda (#{tmp\ 811}#)
(if #{tmp\ 811}#
(apply (lambda (#{k\ 816}#
#{v\ 817}#
#{e1\ 818}#
#{e2\ 819}#)
(#{expand-body\ 774}#
#{req\ 775}#
#{opt\ 776}#
#{rest\ 777}#
#{kw\ 778}#
(cons #{e1\ 818}#
#{e2\ 819}#)
#{vars\ 780}#
#{r*\ 781}#
#{w*\ 782}#
#{inits\ 783}#
(append
#{meta\ 784}#
(syntax->datum
(map cons
#{k\ 816}#
#{v\ 817}#)))))
#{tmp\ 811}#)
((lambda (#{tmp\ 823}#)
(if #{tmp\ 823}#
(apply (lambda (#{e1\ 826}#
#{e2\ 827}#)
(values
#{meta\ 784}#
#{req\ 775}#
#{opt\ 776}#
#{rest\ 777}#
#{kw\ 778}#
#{inits\ 783}#
#{vars\ 780}#
(#{chi-body\ 465}#
(cons #{e1\ 826}#
#{e2\ 827}#)
(#{source-wrap\ 443}#
#{e\ 753}#
#{w\ 755}#
#{s\ 756}#
#{mod\ 757}#)
#{r*\ 781}#
#{w*\ 782}#
#{mod\ 757}#)))
#{tmp\ 823}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 795}#)))
($sc-dispatch
#{tmp\ 795}#
'(any . each-any)))))
($sc-dispatch
#{tmp\ 795}#
'(#(vector #(each (any . any)))
any
.
each-any)))))
($sc-dispatch
#{tmp\ 795}#
'(any any . each-any))))
#{body\ 779}#)))
(#{expand-kw\ 772}#
(lambda (#{req\ 829}#
#{opt\ 830}#
#{rest\ 831}#
#{kw\ 832}#
#{body\ 833}#
#{vars\ 834}#
#{r*\ 835}#
#{w*\ 836}#
#{aok\ 837}#
#{out\ 838}#
#{inits\ 839}#)
(if (pair? #{kw\ 832}#)
((lambda (#{tmp\ 853}#)
((lambda (#{tmp\ 854}#)
(if #{tmp\ 854}#
(apply (lambda (#{k\ 858}#
#{id\ 859}#
#{i\ 860}#)
(let ((#{v\ 863}# (#{gen-var\ 485}#
#{id\ 859}#)))
(let ((#{l\ 865}# (#{gen-labels\ 390}#
(list #{v\ 863}#))))
(let ((#{r**\ 867}#
(#{extend-var-env\ 362}#
#{l\ 865}#
(list #{v\ 863}#)
#{r*\ 835}#)))
(let ((#{w**\ 869}#
(#{make-binding-wrap\ 419}#
(list #{id\ 859}#)
#{l\ 865}#
#{w*\ 836}#)))
(#{expand-kw\ 772}#
#{req\ 829}#
#{opt\ 830}#
#{rest\ 831}#
(cdr #{kw\ 832}#)
#{body\ 833}#
(cons #{v\ 863}#
#{vars\ 834}#)
#{r**\ 867}#
#{w**\ 869}#
#{aok\ 837}#
(cons (list (syntax->datum
#{k\ 858}#)
(syntax->datum
#{id\ 859}#)
#{v\ 863}#)
#{out\ 838}#)
(cons (#{chi\ 457}#
#{i\ 860}#
#{r*\ 835}#
#{w*\ 836}#
#{mod\ 757}#)
#{inits\ 839}#)))))))
#{tmp\ 854}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 853}#)))
($sc-dispatch
#{tmp\ 853}#
'(any any any))))
(car #{kw\ 832}#))
(#{expand-body\ 774}#
#{req\ 829}#
#{opt\ 830}#
#{rest\ 831}#
(if (let ((#{t\ 873}# #{aok\ 837}#))
(if #{t\ 873}#
#{t\ 873}#
(pair? #{out\ 838}#)))
(cons #{aok\ 837}# (reverse #{out\ 838}#))
#f)
#{body\ 833}#
(reverse #{vars\ 834}#)
#{r*\ 835}#
#{w*\ 836}#
(reverse #{inits\ 839}#)
'()))))
(#{expand-opt\ 770}#
(lambda (#{req\ 875}#
#{opt\ 876}#
#{rest\ 877}#
#{kw\ 878}#
#{body\ 879}#
#{vars\ 880}#
#{r*\ 881}#
#{w*\ 882}#
#{out\ 883}#
#{inits\ 884}#)
(if (pair? #{opt\ 876}#)
((lambda (#{tmp\ 897}#)
((lambda (#{tmp\ 898}#)
(if #{tmp\ 898}#
(apply (lambda (#{id\ 901}# #{i\ 902}#)
(let ((#{v\ 905}# (#{gen-var\ 485}#
#{id\ 901}#)))
(let ((#{l\ 907}# (#{gen-labels\ 390}#
(list #{v\ 905}#))))
(let ((#{r**\ 909}#
(#{extend-var-env\ 362}#
#{l\ 907}#
(list #{v\ 905}#)
#{r*\ 881}#)))
(let ((#{w**\ 911}#
(#{make-binding-wrap\ 419}#
(list #{id\ 901}#)
#{l\ 907}#
#{w*\ 882}#)))
(#{expand-opt\ 770}#
#{req\ 875}#
(cdr #{opt\ 876}#)
#{rest\ 877}#
#{kw\ 878}#
#{body\ 879}#
(cons #{v\ 905}#
#{vars\ 880}#)
#{r**\ 909}#
#{w**\ 911}#
(cons (syntax->datum
#{id\ 901}#)
#{out\ 883}#)
(cons (#{chi\ 457}#
#{i\ 902}#
#{r*\ 881}#
#{w*\ 882}#
#{mod\ 757}#)
#{inits\ 884}#)))))))
#{tmp\ 898}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 897}#)))
($sc-dispatch
#{tmp\ 897}#
'(any any))))
(car #{opt\ 876}#))
(if #{rest\ 877}#
(let ((#{v\ 916}# (#{gen-var\ 485}#
#{rest\ 877}#)))
(let ((#{l\ 918}# (#{gen-labels\ 390}#
(list #{v\ 916}#))))
(let ((#{r*\ 920}#
(#{extend-var-env\ 362}#
#{l\ 918}#
(list #{v\ 916}#)
#{r*\ 881}#)))
(let ((#{w*\ 922}#
(#{make-binding-wrap\ 419}#
(list #{rest\ 877}#)
#{l\ 918}#
#{w*\ 882}#)))
(#{expand-kw\ 772}#
#{req\ 875}#
(if (pair? #{out\ 883}#)
(reverse #{out\ 883}#)
#f)
(syntax->datum #{rest\ 877}#)
(if (pair? #{kw\ 878}#)
(cdr #{kw\ 878}#)
#{kw\ 878}#)
#{body\ 879}#
(cons #{v\ 916}# #{vars\ 880}#)
#{r*\ 920}#
#{w*\ 922}#
(if (pair? #{kw\ 878}#)
(car #{kw\ 878}#)
#f)
'()
#{inits\ 884}#)))))
(#{expand-kw\ 772}#
#{req\ 875}#
(if (pair? #{out\ 883}#)
(reverse #{out\ 883}#)
#f)
#f
(if (pair? #{kw\ 878}#)
(cdr #{kw\ 878}#)
#{kw\ 878}#)
#{body\ 879}#
#{vars\ 880}#
#{r*\ 881}#
#{w*\ 882}#
(if (pair? #{kw\ 878}#) (car #{kw\ 878}#) #f)
'()
#{inits\ 884}#)))))
(#{expand-req\ 768}#
(lambda (#{req\ 924}#
#{opt\ 925}#
#{rest\ 926}#
#{kw\ 927}#
#{body\ 928}#)
(let ((#{vars\ 936}#
(map #{gen-var\ 485}# #{req\ 924}#))
(#{labels\ 937}#
(#{gen-labels\ 390}# #{req\ 924}#)))
(let ((#{r*\ 940}#
(#{extend-var-env\ 362}#
#{labels\ 937}#
#{vars\ 936}#
#{r\ 754}#))
(#{w*\ 941}#
(#{make-binding-wrap\ 419}#
#{req\ 924}#
#{labels\ 937}#
#{w\ 755}#)))
(#{expand-opt\ 770}#
(map syntax->datum #{req\ 924}#)
#{opt\ 925}#
#{rest\ 926}#
#{kw\ 927}#
#{body\ 928}#
(reverse #{vars\ 936}#)
#{r*\ 940}#
#{w*\ 941}#
'()
'()))))))
((lambda (#{tmp\ 942}#)
((lambda (#{tmp\ 943}#)
(if #{tmp\ 943}#
(apply (lambda () (values (quote ()) #f))
#{tmp\ 943}#)
((lambda (#{tmp\ 944}#)
(if #{tmp\ 944}#
(apply (lambda (#{args\ 951}#
#{e1\ 952}#
#{e2\ 953}#
#{args*\ 954}#
#{e1*\ 955}#
#{e2*\ 956}#)
(call-with-values
(lambda ()
(#{get-formals\ 758}#
#{args\ 951}#))
(lambda (#{req\ 957}#
#{opt\ 958}#
#{rest\ 959}#
#{kw\ 960}#)
(call-with-values
(lambda ()
(#{expand-req\ 768}#
#{req\ 957}#
#{opt\ 958}#
#{rest\ 959}#
#{kw\ 960}#
(cons #{e1\ 952}#
#{e2\ 953}#)))
(lambda (#{meta\ 966}#
#{req\ 967}#
#{opt\ 968}#
#{rest\ 969}#
#{kw\ 970}#
#{inits\ 971}#
#{vars\ 972}#
#{body\ 973}#)
(call-with-values
(lambda ()
(#{chi-lambda-case\ 481}#
#{e\ 753}#
#{r\ 754}#
#{w\ 755}#
#{s\ 756}#
#{mod\ 757}#
#{get-formals\ 758}#
(map (lambda (#{tmp\ 984}#
#{tmp\ 983}#
#{tmp\ 982}#)
(cons #{tmp\ 982}#
(cons #{tmp\ 983}#
#{tmp\ 984}#)))
#{e2*\ 956}#
#{e1*\ 955}#
#{args*\ 954}#)))
(lambda (#{meta*\ 986}#
#{else*\ 987}#)
(values
(append
#{meta\ 966}#
#{meta*\ 986}#)
(#{build-lambda-case\ 318}#
#{s\ 756}#
#{req\ 967}#
#{opt\ 968}#
#{rest\ 969}#
#{kw\ 970}#
#{inits\ 971}#
#{vars\ 972}#
#{body\ 973}#
#{else*\ 987}#)))))))))
#{tmp\ 944}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 942}#)))
($sc-dispatch
#{tmp\ 942}#
'((any any . each-any)
.
#(each (any any . each-any)))))))
($sc-dispatch #{tmp\ 942}# (quote ()))))
#{clauses\ 759}#))))
(#{lambda*-formals\ 479}#
(lambda (#{orig-args\ 990}#)
(letrec ((#{check\ 1001}#
(lambda (#{req\ 1002}#
#{opt\ 1003}#
#{rest\ 1004}#
#{kw\ 1005}#)
(if (#{distinct-bound-ids?\ 437}#
(append
#{req\ 1002}#
(map car #{opt\ 1003}#)
(if #{rest\ 1004}#
(list #{rest\ 1004}#)
'())
(if (pair? #{kw\ 1005}#)
(map cadr (cdr #{kw\ 1005}#))
'())))
(values
#{req\ 1002}#
#{opt\ 1003}#
#{rest\ 1004}#
#{kw\ 1005}#)
(syntax-violation
'lambda*
"duplicate identifier in argument list"
#{orig-args\ 990}#))))
(#{rest\ 999}#
(lambda (#{args\ 1013}#
#{req\ 1014}#
#{opt\ 1015}#
#{kw\ 1016}#)
((lambda (#{tmp\ 1021}#)
((lambda (#{tmp\ 1022}#)
(if (if #{tmp\ 1022}#
(apply (lambda (#{r\ 1024}#)
(#{id?\ 372}# #{r\ 1024}#))
#{tmp\ 1022}#)
#f)
(apply (lambda (#{r\ 1026}#)
(#{check\ 1001}#
#{req\ 1014}#
#{opt\ 1015}#
#{r\ 1026}#
#{kw\ 1016}#))
#{tmp\ 1022}#)
((lambda (#{else\ 1028}#)
(syntax-violation
'lambda*
"invalid rest argument"
#{orig-args\ 990}#
#{args\ 1013}#))
#{tmp\ 1021}#)))
(list #{tmp\ 1021}#)))
#{args\ 1013}#)))
(#{key\ 997}#
(lambda (#{args\ 1029}#
#{req\ 1030}#
#{opt\ 1031}#
#{rkey\ 1032}#)
((lambda (#{tmp\ 1037}#)
((lambda (#{tmp\ 1038}#)
(if #{tmp\ 1038}#
(apply (lambda ()
(#{check\ 1001}#
#{req\ 1030}#
#{opt\ 1031}#
#f
(cons #f
(reverse
#{rkey\ 1032}#))))
#{tmp\ 1038}#)
((lambda (#{tmp\ 1039}#)
(if (if #{tmp\ 1039}#
(apply (lambda (#{a\ 1042}#
#{b\ 1043}#)
(#{id?\ 372}#
#{a\ 1042}#))
#{tmp\ 1039}#)
#f)
(apply (lambda (#{a\ 1046}#
#{b\ 1047}#)
((lambda (#{tmp\ 1049}#)
((lambda (#{k\ 1051}#)
(#{key\ 997}#
#{b\ 1047}#
#{req\ 1030}#
#{opt\ 1031}#
(cons (cons #{k\ 1051}#
(cons #{a\ 1046}#
'(#(syntax-object
#f
((top)
#(ribcage
#(k)
#((top))
#("i1050"))
#(ribcage
#(a
b)
#((top)
(top))
#("i1044"
"i1045"))
#(ribcage
()
()
())
#(ribcage
#(args
req
opt
rkey)
#((top)
(top)
(top)
(top))
#("i1033"
"i1034"
"i1035"
"i1036"))
#(ribcage
(check rest
key
opt
req)
((top)
(top)
(top)
(top)
(top))
("i1000"
"i998"
"i996"
"i994"
"i992"))
#(ribcage
#(orig-args)
#((top))
#("i991"))
#(ribcage
(lambda-var-list
gen-var
strip
chi-lambda-case
lambda*-formals
chi-simple-lambda
lambda-formals
ellipsis?
chi-void
eval-local-transformer
chi-local-syntax
chi-body
chi-macro
chi-application
chi-expr
chi
chi-top
syntax-type
chi-when-list
chi-install-global
chi-top-sequence
chi-sequence
source-wrap
wrap
bound-id-member?
distinct-bound-ids?
valid-bound-ids?
bound-id=?
free-id=?
id-var-name
same-marks?
join-marks
join-wraps
smart-append
make-binding-wrap
extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
set-ribcage-symnames!
ribcage-labels
ribcage-marks
ribcage-symnames
ribcage?
make-ribcage
gen-labels
gen-label
make-rename
rename-marks
rename-new
rename-old
subst-rename?
wrap-subst
wrap-marks
make-wrap
id-sym-name&marks
id-sym-name
id?
nonsymbol-id?
global-extend
lookup
macros-only-env
extend-var-env
extend-env
null-env
binding-value
binding-type
make-binding
arg-check
source-annotation
no-source
set-syntax-object-module!
set-syntax-object-wrap!
set-syntax-object-expression!
syntax-object-module
syntax-object-wrap
syntax-object-expression
syntax-object?
make-syntax-object
build-lexical-var
build-letrec
build-named-let
build-let
build-sequence
build-data
build-primref
build-lambda-case
build-case-lambda
build-simple-lambda
build-global-definition
maybe-name-value!
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
decorate-source
get-global-definition-hook
put-global-definition-hook
gensym-hook
local-eval-hook
top-level-eval-hook
fx<
fx=
fx-
fx+
set-lambda-meta!
lambda-meta
lambda?
make-dynlet
make-letrec
make-let
make-lambda-case
make-lambda
make-sequence
make-application
make-conditional
make-toplevel-define
make-toplevel-set
make-toplevel-ref
make-module-set
make-module-ref
make-lexical-set
make-lexical-ref
make-primitive-ref
make-const
make-void)
((top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top))
("i486"
"i484"
"i482"
"i480"
"i478"
"i476"
"i474"
"i472"
"i470"
"i468"
"i466"
"i464"
"i462"
"i460"
"i458"
"i456"
"i454"
"i452"
"i450"
"i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i415"
"i414"
"i412"
"i411"
"i410"
"i409"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i389"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i373"
"i371"
"i369"
"i367"
"i365"
"i363"
"i361"
"i359"
"i358"
"i356"
"i354"
"i353"
"i352"
"i350"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"
"i235"
"i233"
"i231"
"i229"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top)
(top)
(top)
(top))
("i23"
"i22"
"i21"
"i19")))
(hygiene
guile)))))
#{rkey\ 1032}#)))
#{tmp\ 1049}#))
(symbol->keyword
(syntax->datum
#{a\ 1046}#))))
#{tmp\ 1039}#)
((lambda (#{tmp\ 1052}#)
(if (if #{tmp\ 1052}#
(apply (lambda (#{a\ 1056}#
#{init\ 1057}#
#{b\ 1058}#)
(#{id?\ 372}#
#{a\ 1056}#))
#{tmp\ 1052}#)
#f)
(apply (lambda (#{a\ 1062}#
#{init\ 1063}#
#{b\ 1064}#)
((lambda (#{tmp\ 1066}#)
((lambda (#{k\ 1068}#)
(#{key\ 997}#
#{b\ 1064}#
#{req\ 1030}#
#{opt\ 1031}#
(cons (list #{k\ 1068}#
#{a\ 1062}#
#{init\ 1063}#)
#{rkey\ 1032}#)))
#{tmp\ 1066}#))
(symbol->keyword
(syntax->datum
#{a\ 1062}#))))
#{tmp\ 1052}#)
((lambda (#{tmp\ 1069}#)
(if (if #{tmp\ 1069}#
(apply (lambda (#{a\ 1074}#
#{init\ 1075}#
#{k\ 1076}#
#{b\ 1077}#)
(if (#{id?\ 372}#
#{a\ 1074}#)
(keyword?
(syntax->datum
#{k\ 1076}#))
#f))
#{tmp\ 1069}#)
#f)
(apply (lambda (#{a\ 1084}#
#{init\ 1085}#
#{k\ 1086}#
#{b\ 1087}#)
(#{key\ 997}#
#{b\ 1087}#
#{req\ 1030}#
#{opt\ 1031}#
(cons (list #{k\ 1086}#
#{a\ 1084}#
#{init\ 1085}#)
#{rkey\ 1032}#)))
#{tmp\ 1069}#)
((lambda (#{tmp\ 1088}#)
(if (if #{tmp\ 1088}#
(apply (lambda (#{aok\ 1090}#)
(eq? (syntax->datum
#{aok\ 1090}#)
#:allow-other-keys))
#{tmp\ 1088}#)
#f)
(apply (lambda (#{aok\ 1092}#)
(#{check\ 1001}#
#{req\ 1030}#
#{opt\ 1031}#
#f
(cons #t
(reverse
#{rkey\ 1032}#))))
#{tmp\ 1088}#)
((lambda (#{tmp\ 1093}#)
(if (if #{tmp\ 1093}#
(apply (lambda (#{aok\ 1097}#
#{a\ 1098}#
#{b\ 1099}#)
(if (eq? (syntax->datum
#{aok\ 1097}#)
#:allow-other-keys)
(eq? (syntax->datum
#{a\ 1098}#)
#:rest)
#f))
#{tmp\ 1093}#)
#f)
(apply (lambda (#{aok\ 1105}#
#{a\ 1106}#
#{b\ 1107}#)
(#{rest\ 999}#
#{b\ 1107}#
#{req\ 1030}#
#{opt\ 1031}#
(cons #t
(reverse
#{rkey\ 1032}#))))
#{tmp\ 1093}#)
((lambda (#{tmp\ 1108}#)
(if (if #{tmp\ 1108}#
(apply (lambda (#{aok\ 1111}#
#{r\ 1112}#)
(if (eq? (syntax->datum
#{aok\ 1111}#)
#:allow-other-keys)
(#{id?\ 372}#
#{r\ 1112}#)
#f))
#{tmp\ 1108}#)
#f)
(apply (lambda (#{aok\ 1117}#
#{r\ 1118}#)
(#{rest\ 999}#
#{r\ 1118}#
#{req\ 1030}#
#{opt\ 1031}#
(cons #t
(reverse
#{rkey\ 1032}#))))
#{tmp\ 1108}#)
((lambda (#{tmp\ 1119}#)
(if (if #{tmp\ 1119}#
(apply (lambda (#{a\ 1122}#
#{b\ 1123}#)
(eq? (syntax->datum
#{a\ 1122}#)
#:rest))
#{tmp\ 1119}#)
#f)
(apply (lambda (#{a\ 1126}#
#{b\ 1127}#)
(#{rest\ 999}#
#{b\ 1127}#
#{req\ 1030}#
#{opt\ 1031}#
(cons #f
(reverse
#{rkey\ 1032}#))))
#{tmp\ 1119}#)
((lambda (#{tmp\ 1128}#)
(if (if #{tmp\ 1128}#
(apply (lambda (#{r\ 1130}#)
(#{id?\ 372}#
#{r\ 1130}#))
#{tmp\ 1128}#)
#f)
(apply (lambda (#{r\ 1132}#)
(#{rest\ 999}#
#{r\ 1132}#
#{req\ 1030}#
#{opt\ 1031}#
(cons #f
(reverse
#{rkey\ 1032}#))))
#{tmp\ 1128}#)
((lambda (#{else\ 1134}#)
(syntax-violation
'lambda*
"invalid keyword argument list"
#{orig-args\ 990}#
#{args\ 1029}#))
#{tmp\ 1037}#)))
(list #{tmp\ 1037}#))))
($sc-dispatch
#{tmp\ 1037}#
'(any any)))))
($sc-dispatch
#{tmp\ 1037}#
'(any .
any)))))
($sc-dispatch
#{tmp\ 1037}#
'(any any any)))))
($sc-dispatch
#{tmp\ 1037}#
'(any)))))
($sc-dispatch
#{tmp\ 1037}#
'((any any any) . any)))))
($sc-dispatch
#{tmp\ 1037}#
'((any any) . any)))))
($sc-dispatch
#{tmp\ 1037}#
'(any . any)))))
($sc-dispatch #{tmp\ 1037}# (quote ()))))
#{args\ 1029}#)))
(#{opt\ 995}#
(lambda (#{args\ 1135}# #{req\ 1136}# #{ropt\ 1137}#)
((lambda (#{tmp\ 1141}#)
((lambda (#{tmp\ 1142}#)
(if #{tmp\ 1142}#
(apply (lambda ()
(#{check\ 1001}#
#{req\ 1136}#
(reverse #{ropt\ 1137}#)
#f
'()))
#{tmp\ 1142}#)
((lambda (#{tmp\ 1143}#)
(if (if #{tmp\ 1143}#
(apply (lambda (#{a\ 1146}#
#{b\ 1147}#)
(#{id?\ 372}#
#{a\ 1146}#))
#{tmp\ 1143}#)
#f)
(apply (lambda (#{a\ 1150}#
#{b\ 1151}#)
(#{opt\ 995}#
#{b\ 1151}#
#{req\ 1136}#
(cons (cons #{a\ 1150}#
'(#(syntax-object
#f
((top)
#(ribcage
#(a b)
#((top)
(top))
#("i1148"
"i1149"))
#(ribcage
()
()
())
#(ribcage
#(args
req
ropt)
#((top)
(top)
(top))
#("i1138"
"i1139"
"i1140"))
#(ribcage
(check rest
key
opt
req)
((top)
(top)
(top)
(top)
(top))
("i1000"
"i998"
"i996"
"i994"
"i992"))
#(ribcage
#(orig-args)
#((top))
#("i991"))
#(ribcage
(lambda-var-list
gen-var
strip
chi-lambda-case
lambda*-formals
chi-simple-lambda
lambda-formals
ellipsis?
chi-void
eval-local-transformer
chi-local-syntax
chi-body
chi-macro
chi-application
chi-expr
chi
chi-top
syntax-type
chi-when-list
chi-install-global
chi-top-sequence
chi-sequence
source-wrap
wrap
bound-id-member?
distinct-bound-ids?
valid-bound-ids?
bound-id=?
free-id=?
id-var-name
same-marks?
join-marks
join-wraps
smart-append
make-binding-wrap
extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
set-ribcage-symnames!
ribcage-labels
ribcage-marks
ribcage-symnames
ribcage?
make-ribcage
gen-labels
gen-label
make-rename
rename-marks
rename-new
rename-old
subst-rename?
wrap-subst
wrap-marks
make-wrap
id-sym-name&marks
id-sym-name
id?
nonsymbol-id?
global-extend
lookup
macros-only-env
extend-var-env
extend-env
null-env
binding-value
binding-type
make-binding
arg-check
source-annotation
no-source
set-syntax-object-module!
set-syntax-object-wrap!
set-syntax-object-expression!
syntax-object-module
syntax-object-wrap
syntax-object-expression
syntax-object?
make-syntax-object
build-lexical-var
build-letrec
build-named-let
build-let
build-sequence
build-data
build-primref
build-lambda-case
build-case-lambda
build-simple-lambda
build-global-definition
maybe-name-value!
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
decorate-source
get-global-definition-hook
put-global-definition-hook
gensym-hook
local-eval-hook
top-level-eval-hook
fx<
fx=
fx-
fx+
set-lambda-meta!
lambda-meta
lambda?
make-dynlet
make-letrec
make-let
make-lambda-case
make-lambda
make-sequence
make-application
make-conditional
make-toplevel-define
make-toplevel-set
make-toplevel-ref
make-module-set
make-module-ref
make-lexical-set
make-lexical-ref
make-primitive-ref
make-const
make-void)
((top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top))
("i486"
"i484"
"i482"
"i480"
"i478"
"i476"
"i474"
"i472"
"i470"
"i468"
"i466"
"i464"
"i462"
"i460"
"i458"
"i456"
"i454"
"i452"
"i450"
"i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i415"
"i414"
"i412"
"i411"
"i410"
"i409"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i389"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i373"
"i371"
"i369"
"i367"
"i365"
"i363"
"i361"
"i359"
"i358"
"i356"
"i354"
"i353"
"i352"
"i350"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"
"i235"
"i233"
"i231"
"i229"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top)
(top)
(top)
(top))
("i23"
"i22"
"i21"
"i19")))
(hygiene
guile))))
#{ropt\ 1137}#)))
#{tmp\ 1143}#)
((lambda (#{tmp\ 1152}#)
(if (if #{tmp\ 1152}#
(apply (lambda (#{a\ 1156}#
#{init\ 1157}#
#{b\ 1158}#)
(#{id?\ 372}#
#{a\ 1156}#))
#{tmp\ 1152}#)
#f)
(apply (lambda (#{a\ 1162}#
#{init\ 1163}#
#{b\ 1164}#)
(#{opt\ 995}#
#{b\ 1164}#
#{req\ 1136}#
(cons (list #{a\ 1162}#
#{init\ 1163}#)
#{ropt\ 1137}#)))
#{tmp\ 1152}#)
((lambda (#{tmp\ 1165}#)
(if (if #{tmp\ 1165}#
(apply (lambda (#{a\ 1168}#
#{b\ 1169}#)
(eq? (syntax->datum
#{a\ 1168}#)
#:key))
#{tmp\ 1165}#)
#f)
(apply (lambda (#{a\ 1172}#
#{b\ 1173}#)
(#{key\ 997}#
#{b\ 1173}#
#{req\ 1136}#
(reverse
#{ropt\ 1137}#)
'()))
#{tmp\ 1165}#)
((lambda (#{tmp\ 1174}#)
(if (if #{tmp\ 1174}#
(apply (lambda (#{a\ 1177}#
#{b\ 1178}#)
(eq? (syntax->datum
#{a\ 1177}#)
#:rest))
#{tmp\ 1174}#)
#f)
(apply (lambda (#{a\ 1181}#
#{b\ 1182}#)
(#{rest\ 999}#
#{b\ 1182}#
#{req\ 1136}#
(reverse
#{ropt\ 1137}#)
'()))
#{tmp\ 1174}#)
((lambda (#{tmp\ 1183}#)
(if (if #{tmp\ 1183}#
(apply (lambda (#{r\ 1185}#)
(#{id?\ 372}#
#{r\ 1185}#))
#{tmp\ 1183}#)
#f)
(apply (lambda (#{r\ 1187}#)
(#{rest\ 999}#
#{r\ 1187}#
#{req\ 1136}#
(reverse
#{ropt\ 1137}#)
'()))
#{tmp\ 1183}#)
((lambda (#{else\ 1189}#)
(syntax-violation
'lambda*
"invalid optional argument list"
#{orig-args\ 990}#
#{args\ 1135}#))
#{tmp\ 1141}#)))
(list #{tmp\ 1141}#))))
($sc-dispatch
#{tmp\ 1141}#
'(any any)))))
($sc-dispatch
#{tmp\ 1141}#
'(any . any)))))
($sc-dispatch
#{tmp\ 1141}#
'((any any) . any)))))
($sc-dispatch
#{tmp\ 1141}#
'(any . any)))))
($sc-dispatch #{tmp\ 1141}# (quote ()))))
#{args\ 1135}#)))
(#{req\ 993}#
(lambda (#{args\ 1190}# #{rreq\ 1191}#)
((lambda (#{tmp\ 1194}#)
((lambda (#{tmp\ 1195}#)
(if #{tmp\ 1195}#
(apply (lambda ()
(#{check\ 1001}#
(reverse #{rreq\ 1191}#)
'()
#f
'()))
#{tmp\ 1195}#)
((lambda (#{tmp\ 1196}#)
(if (if #{tmp\ 1196}#
(apply (lambda (#{a\ 1199}#
#{b\ 1200}#)
(#{id?\ 372}#
#{a\ 1199}#))
#{tmp\ 1196}#)
#f)
(apply (lambda (#{a\ 1203}#
#{b\ 1204}#)
(#{req\ 993}#
#{b\ 1204}#
(cons #{a\ 1203}#
#{rreq\ 1191}#)))
#{tmp\ 1196}#)
((lambda (#{tmp\ 1205}#)
(if (if #{tmp\ 1205}#
(apply (lambda (#{a\ 1208}#
#{b\ 1209}#)
(eq? (syntax->datum
#{a\ 1208}#)
#:optional))
#{tmp\ 1205}#)
#f)
(apply (lambda (#{a\ 1212}#
#{b\ 1213}#)
(#{opt\ 995}#
#{b\ 1213}#
(reverse
#{rreq\ 1191}#)
'()))
#{tmp\ 1205}#)
((lambda (#{tmp\ 1214}#)
(if (if #{tmp\ 1214}#
(apply (lambda (#{a\ 1217}#
#{b\ 1218}#)
(eq? (syntax->datum
#{a\ 1217}#)
#:key))
#{tmp\ 1214}#)
#f)
(apply (lambda (#{a\ 1221}#
#{b\ 1222}#)
(#{key\ 997}#
#{b\ 1222}#
(reverse
#{rreq\ 1191}#)
'()
'()))
#{tmp\ 1214}#)
((lambda (#{tmp\ 1223}#)
(if (if #{tmp\ 1223}#
(apply (lambda (#{a\ 1226}#
#{b\ 1227}#)
(eq? (syntax->datum
#{a\ 1226}#)
#:rest))
#{tmp\ 1223}#)
#f)
(apply (lambda (#{a\ 1230}#
#{b\ 1231}#)
(#{rest\ 999}#
#{b\ 1231}#
(reverse
#{rreq\ 1191}#)
'()
'()))
#{tmp\ 1223}#)
((lambda (#{tmp\ 1232}#)
(if (if #{tmp\ 1232}#
(apply (lambda (#{r\ 1234}#)
(#{id?\ 372}#
#{r\ 1234}#))
#{tmp\ 1232}#)
#f)
(apply (lambda (#{r\ 1236}#)
(#{rest\ 999}#
#{r\ 1236}#
(reverse
#{rreq\ 1191}#)
'()
'()))
#{tmp\ 1232}#)
((lambda (#{else\ 1238}#)
(syntax-violation
'lambda*
"invalid argument list"
#{orig-args\ 990}#
#{args\ 1190}#))
#{tmp\ 1194}#)))
(list #{tmp\ 1194}#))))
($sc-dispatch
#{tmp\ 1194}#
'(any any)))))
($sc-dispatch
#{tmp\ 1194}#
'(any . any)))))
($sc-dispatch
#{tmp\ 1194}#
'(any . any)))))
($sc-dispatch
#{tmp\ 1194}#
'(any . any)))))
($sc-dispatch #{tmp\ 1194}# (quote ()))))
#{args\ 1190}#))))
(#{req\ 993}# #{orig-args\ 990}# (quote ())))))
(#{chi-simple-lambda\ 477}#
(lambda (#{e\ 1239}#
#{r\ 1240}#
#{w\ 1241}#
#{s\ 1242}#
#{mod\ 1243}#
#{req\ 1244}#
#{rest\ 1245}#
#{meta\ 1246}#
#{body\ 1247}#)
(let ((#{ids\ 1259}#
(if #{rest\ 1245}#
(append #{req\ 1244}# (list #{rest\ 1245}#))
#{req\ 1244}#)))
(let ((#{vars\ 1261}#
(map #{gen-var\ 485}# #{ids\ 1259}#)))
(let ((#{labels\ 1263}#
(#{gen-labels\ 390}# #{ids\ 1259}#)))
(#{build-simple-lambda\ 314}#
#{s\ 1242}#
(map syntax->datum #{req\ 1244}#)
(if #{rest\ 1245}#
(syntax->datum #{rest\ 1245}#)
#f)
#{vars\ 1261}#
#{meta\ 1246}#
(#{chi-body\ 465}#
#{body\ 1247}#
(#{source-wrap\ 443}#
#{e\ 1239}#
#{w\ 1241}#
#{s\ 1242}#
#{mod\ 1243}#)
(#{extend-var-env\ 362}#
#{labels\ 1263}#
#{vars\ 1261}#
#{r\ 1240}#)
(#{make-binding-wrap\ 419}#
#{ids\ 1259}#
#{labels\ 1263}#
#{w\ 1241}#)
#{mod\ 1243}#)))))))
(#{lambda-formals\ 475}#
(lambda (#{orig-args\ 1266}#)
(letrec ((#{check\ 1271}#
(lambda (#{req\ 1272}# #{rest\ 1273}#)
(if (#{distinct-bound-ids?\ 437}#
(if #{rest\ 1273}#
(cons #{rest\ 1273}# #{req\ 1272}#)
#{req\ 1272}#))
(values #{req\ 1272}# #f #{rest\ 1273}# #f)
(syntax-violation
'lambda
"duplicate identifier in argument list"
#{orig-args\ 1266}#))))
(#{req\ 1269}#
(lambda (#{args\ 1279}# #{rreq\ 1280}#)
((lambda (#{tmp\ 1283}#)
((lambda (#{tmp\ 1284}#)
(if #{tmp\ 1284}#
(apply (lambda ()
(#{check\ 1271}#
(reverse #{rreq\ 1280}#)
#f))
#{tmp\ 1284}#)
((lambda (#{tmp\ 1285}#)
(if (if #{tmp\ 1285}#
(apply (lambda (#{a\ 1288}#
#{b\ 1289}#)
(#{id?\ 372}#
#{a\ 1288}#))
#{tmp\ 1285}#)
#f)
(apply (lambda (#{a\ 1292}#
#{b\ 1293}#)
(#{req\ 1269}#
#{b\ 1293}#
(cons #{a\ 1292}#
#{rreq\ 1280}#)))
#{tmp\ 1285}#)
((lambda (#{tmp\ 1294}#)
(if (if #{tmp\ 1294}#
(apply (lambda (#{r\ 1296}#)
(#{id?\ 372}#
#{r\ 1296}#))
#{tmp\ 1294}#)
#f)
(apply (lambda (#{r\ 1298}#)
(#{check\ 1271}#
(reverse
#{rreq\ 1280}#)
#{r\ 1298}#))
#{tmp\ 1294}#)
((lambda (#{else\ 1300}#)
(syntax-violation
'lambda
"invalid argument list"
#{orig-args\ 1266}#
#{args\ 1279}#))
#{tmp\ 1283}#)))
(list #{tmp\ 1283}#))))
($sc-dispatch
#{tmp\ 1283}#
'(any . any)))))
($sc-dispatch #{tmp\ 1283}# (quote ()))))
#{args\ 1279}#))))
(#{req\ 1269}# #{orig-args\ 1266}# (quote ())))))
(#{ellipsis?\ 473}#
(lambda (#{x\ 1301}#)
(if (#{nonsymbol-id?\ 370}# #{x\ 1301}#)
(#{free-id=?\ 431}#
#{x\ 1301}#
'#(syntax-object
...
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i1302"))
#(ribcage
(lambda-var-list
gen-var
strip
chi-lambda-case
lambda*-formals
chi-simple-lambda
lambda-formals
ellipsis?
chi-void
eval-local-transformer
chi-local-syntax
chi-body
chi-macro
chi-application
chi-expr
chi
chi-top
syntax-type
chi-when-list
chi-install-global
chi-top-sequence
chi-sequence
source-wrap
wrap
bound-id-member?
distinct-bound-ids?
valid-bound-ids?
bound-id=?
free-id=?
id-var-name
same-marks?
join-marks
join-wraps
smart-append
make-binding-wrap
extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
set-ribcage-symnames!
ribcage-labels
ribcage-marks
ribcage-symnames
ribcage?
make-ribcage
gen-labels
gen-label
make-rename
rename-marks
rename-new
rename-old
subst-rename?
wrap-subst
wrap-marks
make-wrap
id-sym-name&marks
id-sym-name
id?
nonsymbol-id?
global-extend
lookup
macros-only-env
extend-var-env
extend-env
null-env
binding-value
binding-type
make-binding
arg-check
source-annotation
no-source
set-syntax-object-module!
set-syntax-object-wrap!
set-syntax-object-expression!
syntax-object-module
syntax-object-wrap
syntax-object-expression
syntax-object?
make-syntax-object
build-lexical-var
build-letrec
build-named-let
build-let
build-sequence
build-data
build-primref
build-lambda-case
build-case-lambda
build-simple-lambda
build-global-definition
maybe-name-value!
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
decorate-source
get-global-definition-hook
put-global-definition-hook
gensym-hook
local-eval-hook
top-level-eval-hook
fx<
fx=
fx-
fx+
set-lambda-meta!
lambda-meta
lambda?
make-dynlet
make-letrec
make-let
make-lambda-case
make-lambda
make-sequence
make-application
make-conditional
make-toplevel-define
make-toplevel-set
make-toplevel-ref
make-module-set
make-module-ref
make-lexical-set
make-lexical-ref
make-primitive-ref
make-const
make-void)
((top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top))
("i486"
"i484"
"i482"
"i480"
"i478"
"i476"
"i474"
"i472"
"i470"
"i468"
"i466"
"i464"
"i462"
"i460"
"i458"
"i456"
"i454"
"i452"
"i450"
"i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i415"
"i414"
"i412"
"i411"
"i410"
"i409"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i389"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i373"
"i371"
"i369"
"i367"
"i365"
"i363"
"i361"
"i359"
"i358"
"i356"
"i354"
"i353"
"i352"
"i350"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"
"i235"
"i233"
"i231"
"i229"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i23" "i22" "i21" "i19")))
(hygiene guile)))
#f)))
(#{chi-void\ 471}#
(lambda () (#{build-void\ 292}# #f)))
(#{eval-local-transformer\ 469}#
(lambda (#{expanded\ 1306}# #{mod\ 1307}#)
(let ((#{p\ 1311}#
(#{local-eval-hook\ 283}#
#{expanded\ 1306}#
#{mod\ 1307}#)))
(if (procedure? #{p\ 1311}#)
#{p\ 1311}#
(syntax-violation
#f
"nonprocedure transformer"
#{p\ 1311}#)))))
(#{chi-local-syntax\ 467}#
(lambda (#{rec?\ 1312}#
#{e\ 1313}#
#{r\ 1314}#
#{w\ 1315}#
#{s\ 1316}#
#{mod\ 1317}#
#{k\ 1318}#)
((lambda (#{tmp\ 1326}#)
((lambda (#{tmp\ 1327}#)
(if #{tmp\ 1327}#
(apply (lambda (#{_\ 1333}#
#{id\ 1334}#
#{val\ 1335}#
#{e1\ 1336}#
#{e2\ 1337}#)
(let ((#{ids\ 1339}# #{id\ 1334}#))
(if (not (#{valid-bound-ids?\ 435}#
#{ids\ 1339}#))
(syntax-violation
#f
"duplicate bound keyword"
#{e\ 1313}#)
(let ((#{labels\ 1342}#
(#{gen-labels\ 390}#
#{ids\ 1339}#)))
(let ((#{new-w\ 1344}#
(#{make-binding-wrap\ 419}#
#{ids\ 1339}#
#{labels\ 1342}#
#{w\ 1315}#)))
(#{k\ 1318}#
(cons #{e1\ 1336}# #{e2\ 1337}#)
(#{extend-env\ 360}#
#{labels\ 1342}#
(let ((#{w\ 1348}#
(if #{rec?\ 1312}#
#{new-w\ 1344}#
#{w\ 1315}#))
(#{trans-r\ 1349}#
(#{macros-only-env\ 364}#
#{r\ 1314}#)))
(map (lambda (#{x\ 1350}#)
(cons 'macro
(#{eval-local-transformer\ 469}#
(#{chi\ 457}#
#{x\ 1350}#
#{trans-r\ 1349}#
#{w\ 1348}#
#{mod\ 1317}#)
#{mod\ 1317}#)))
#{val\ 1335}#))
#{r\ 1314}#)
#{new-w\ 1344}#
#{s\ 1316}#
#{mod\ 1317}#))))))
#{tmp\ 1327}#)
((lambda (#{_\ 1355}#)
(syntax-violation
#f
"bad local syntax definition"
(#{source-wrap\ 443}#
#{e\ 1313}#
#{w\ 1315}#
#{s\ 1316}#
#{mod\ 1317}#)))
#{tmp\ 1326}#)))
($sc-dispatch
#{tmp\ 1326}#
'(any #(each (any any)) any . each-any))))
#{e\ 1313}#)))
(#{chi-body\ 465}#
(lambda (#{body\ 1356}#
#{outer-form\ 1357}#
#{r\ 1358}#
#{w\ 1359}#
#{mod\ 1360}#)
(let ((#{r\ 1368}#
(cons '("placeholder" placeholder)
#{r\ 1358}#)))
(let ((#{ribcage\ 1370}#
(#{make-ribcage\ 393}#
'()
'()
'())))
(let ((#{w\ 1373}#
(#{make-wrap\ 377}#
(#{wrap-marks\ 379}# #{w\ 1359}#)
(cons #{ribcage\ 1370}#
(#{wrap-subst\ 381}# #{w\ 1359}#)))))
(letrec ((#{parse\ 1382}#
(lambda (#{body\ 1383}#
#{ids\ 1384}#
#{labels\ 1385}#
#{var-ids\ 1386}#
#{vars\ 1387}#
#{vals\ 1388}#
#{bindings\ 1389}#)
(if (null? #{body\ 1383}#)
(syntax-violation
#f
"no expressions in body"
#{outer-form\ 1357}#)
(let ((#{e\ 1394}# (cdar #{body\ 1383}#))
(#{er\ 1395}# (caar #{body\ 1383}#)))
(call-with-values
(lambda ()
(#{syntax-type\ 453}#
#{e\ 1394}#
#{er\ 1395}#
'(())
(#{source-annotation\ 351}#
#{er\ 1395}#)
#{ribcage\ 1370}#
#{mod\ 1360}#
#f))
(lambda (#{type\ 1397}#
#{value\ 1398}#
#{e\ 1399}#
#{w\ 1400}#
#{s\ 1401}#
#{mod\ 1402}#)
(if (memv #{type\ 1397}#
'(define-form))
(let ((#{id\ 1412}#
(#{wrap\ 441}#
#{value\ 1398}#
#{w\ 1400}#
#{mod\ 1402}#))
(#{label\ 1413}#
(#{gen-label\ 388}#)))
(let ((#{var\ 1415}#
(#{gen-var\ 485}#
#{id\ 1412}#)))
(begin
(#{extend-ribcage!\ 417}#
#{ribcage\ 1370}#
#{id\ 1412}#
#{label\ 1413}#)
(#{parse\ 1382}#
(cdr #{body\ 1383}#)
(cons #{id\ 1412}#
#{ids\ 1384}#)
(cons #{label\ 1413}#
#{labels\ 1385}#)
(cons #{id\ 1412}#
#{var-ids\ 1386}#)
(cons #{var\ 1415}#
#{vars\ 1387}#)
(cons (cons #{er\ 1395}#
(#{wrap\ 441}#
#{e\ 1399}#
#{w\ 1400}#
#{mod\ 1402}#))
#{vals\ 1388}#)
(cons (cons 'lexical
#{var\ 1415}#)
#{bindings\ 1389}#)))))
(if (memv #{type\ 1397}#
'(define-syntax-form))
(let ((#{id\ 1420}#
(#{wrap\ 441}#
#{value\ 1398}#
#{w\ 1400}#
#{mod\ 1402}#))
(#{label\ 1421}#
(#{gen-label\ 388}#)))
(begin
(#{extend-ribcage!\ 417}#
#{ribcage\ 1370}#
#{id\ 1420}#
#{label\ 1421}#)
(#{parse\ 1382}#
(cdr #{body\ 1383}#)
(cons #{id\ 1420}#
#{ids\ 1384}#)
(cons #{label\ 1421}#
#{labels\ 1385}#)
#{var-ids\ 1386}#
#{vars\ 1387}#
#{vals\ 1388}#
(cons (cons 'macro
(cons #{er\ 1395}#
(#{wrap\ 441}#
#{e\ 1399}#
#{w\ 1400}#
#{mod\ 1402}#)))
#{bindings\ 1389}#))))
(if (memv #{type\ 1397}#
'(begin-form))
((lambda (#{tmp\ 1424}#)
((lambda (#{tmp\ 1425}#)
(if #{tmp\ 1425}#
(apply (lambda (#{_\ 1428}#
#{e1\ 1429}#)
(#{parse\ 1382}#
(letrec ((#{f\ 1432}#
(lambda (#{forms\ 1433}#)
(if (null? #{forms\ 1433}#)
(cdr #{body\ 1383}#)
(cons (cons #{er\ 1395}#
(#{wrap\ 441}#
(car #{forms\ 1433}#)
#{w\ 1400}#
#{mod\ 1402}#))
(#{f\ 1432}#
(cdr #{forms\ 1433}#)))))))
(#{f\ 1432}#
#{e1\ 1429}#))
#{ids\ 1384}#
#{labels\ 1385}#
#{var-ids\ 1386}#
#{vars\ 1387}#
#{vals\ 1388}#
#{bindings\ 1389}#))
#{tmp\ 1425}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 1424}#)))
($sc-dispatch
#{tmp\ 1424}#
'(any . each-any))))
#{e\ 1399}#)
(if (memv #{type\ 1397}#
'(local-syntax-form))
(#{chi-local-syntax\ 467}#
#{value\ 1398}#
#{e\ 1399}#
#{er\ 1395}#
#{w\ 1400}#
#{s\ 1401}#
#{mod\ 1402}#
(lambda (#{forms\ 1436}#
#{er\ 1437}#
#{w\ 1438}#
#{s\ 1439}#
#{mod\ 1440}#)
(#{parse\ 1382}#
(letrec ((#{f\ 1448}#
(lambda (#{forms\ 1449}#)
(if (null? #{forms\ 1449}#)
(cdr #{body\ 1383}#)
(cons (cons #{er\ 1437}#
(#{wrap\ 441}#
(car #{forms\ 1449}#)
#{w\ 1438}#
#{mod\ 1440}#))
(#{f\ 1448}#
(cdr #{forms\ 1449}#)))))))
(#{f\ 1448}#
#{forms\ 1436}#))
#{ids\ 1384}#
#{labels\ 1385}#
#{var-ids\ 1386}#
#{vars\ 1387}#
#{vals\ 1388}#
#{bindings\ 1389}#)))
(if (null? #{ids\ 1384}#)
(#{build-sequence\ 324}#
#f
(map (lambda (#{x\ 1452}#)
(#{chi\ 457}#
(cdr #{x\ 1452}#)
(car #{x\ 1452}#)
'(())
#{mod\ 1402}#))
(cons (cons #{er\ 1395}#
(#{source-wrap\ 443}#
#{e\ 1399}#
#{w\ 1400}#
#{s\ 1401}#
#{mod\ 1402}#))
(cdr #{body\ 1383}#))))
(begin
(if (not (#{valid-bound-ids?\ 435}#
#{ids\ 1384}#))
(syntax-violation
#f
"invalid or duplicate identifier in definition"
#{outer-form\ 1357}#))
(letrec ((#{loop\ 1459}#
(lambda (#{bs\ 1460}#
#{er-cache\ 1461}#
#{r-cache\ 1462}#)
(if (not (null? #{bs\ 1460}#))
(let ((#{b\ 1465}#
(car #{bs\ 1460}#)))
(if (eq? (car #{b\ 1465}#)
'macro)
(let ((#{er\ 1468}#
(cadr #{b\ 1465}#)))
(let ((#{r-cache\ 1470}#
(if (eq? #{er\ 1468}#
#{er-cache\ 1461}#)
#{r-cache\ 1462}#
(#{macros-only-env\ 364}#
#{er\ 1468}#))))
(begin
(set-cdr!
#{b\ 1465}#
(#{eval-local-transformer\ 469}#
(#{chi\ 457}#
(cddr #{b\ 1465}#)
#{r-cache\ 1470}#
'(())
#{mod\ 1402}#)
#{mod\ 1402}#))
(#{loop\ 1459}#
(cdr #{bs\ 1460}#)
#{er\ 1468}#
#{r-cache\ 1470}#))))
(#{loop\ 1459}#
(cdr #{bs\ 1460}#)
#{er-cache\ 1461}#
#{r-cache\ 1462}#)))))))
(#{loop\ 1459}#
#{bindings\ 1389}#
#f
#f))
(set-cdr!
#{r\ 1368}#
(#{extend-env\ 360}#
#{labels\ 1385}#
#{bindings\ 1389}#
(cdr #{r\ 1368}#)))
(#{build-letrec\ 330}#
#f
(map syntax->datum
#{var-ids\ 1386}#)
#{vars\ 1387}#
(map (lambda (#{x\ 1473}#)
(#{chi\ 457}#
(cdr #{x\ 1473}#)
(car #{x\ 1473}#)
'(())
#{mod\ 1402}#))
#{vals\ 1388}#)
(#{build-sequence\ 324}#
#f
(map (lambda (#{x\ 1477}#)
(#{chi\ 457}#
(cdr #{x\ 1477}#)
(car #{x\ 1477}#)
'(())
#{mod\ 1402}#))
(cons (cons #{er\ 1395}#
(#{source-wrap\ 443}#
#{e\ 1399}#
#{w\ 1400}#
#{s\ 1401}#
#{mod\ 1402}#))
(cdr #{body\ 1383}#))))))))))))))))))
(#{parse\ 1382}#
(map (lambda (#{x\ 1390}#)
(cons #{r\ 1368}#
(#{wrap\ 441}#
#{x\ 1390}#
#{w\ 1373}#
#{mod\ 1360}#)))
#{body\ 1356}#)
'()
'()
'()
'()
'()
'())))))))
(#{chi-macro\ 463}#
(lambda (#{p\ 1480}#
#{e\ 1481}#
#{r\ 1482}#
#{w\ 1483}#
#{s\ 1484}#
#{rib\ 1485}#
#{mod\ 1486}#)
(letrec ((#{rebuild-macro-output\ 1495}#
(lambda (#{x\ 1496}# #{m\ 1497}#)
(if (pair? #{x\ 1496}#)
(#{decorate-source\ 290}#
(cons (#{rebuild-macro-output\ 1495}#
(car #{x\ 1496}#)
#{m\ 1497}#)
(#{rebuild-macro-output\ 1495}#
(cdr #{x\ 1496}#)
#{m\ 1497}#))
#{s\ 1484}#)
(if (#{syntax-object?\ 336}# #{x\ 1496}#)
(let ((#{w\ 1505}#
(#{syntax-object-wrap\ 340}#
#{x\ 1496}#)))
(let ((#{ms\ 1508}#
(#{wrap-marks\ 379}# #{w\ 1505}#))
(#{s\ 1509}#
(#{wrap-subst\ 381}# #{w\ 1505}#)))
(if (if (pair? #{ms\ 1508}#)
(eq? (car #{ms\ 1508}#) #f)
#f)
(#{make-syntax-object\ 334}#
(#{syntax-object-expression\ 338}#
#{x\ 1496}#)
(#{make-wrap\ 377}#
(cdr #{ms\ 1508}#)
(if #{rib\ 1485}#
(cons #{rib\ 1485}#
(cdr #{s\ 1509}#))
(cdr #{s\ 1509}#)))
(#{syntax-object-module\ 342}#
#{x\ 1496}#))
(#{make-syntax-object\ 334}#
(#{decorate-source\ 290}#
(#{syntax-object-expression\ 338}#
#{x\ 1496}#)
#{s\ 1509}#)
(#{make-wrap\ 377}#
(cons #{m\ 1497}# #{ms\ 1508}#)
(if #{rib\ 1485}#
(cons #{rib\ 1485}#
(cons 'shift
#{s\ 1509}#))
(cons (quote shift) #{s\ 1509}#)))
(#{syntax-object-module\ 342}#
#{x\ 1496}#)))))
(if (vector? #{x\ 1496}#)
(let ((#{n\ 1517}#
(vector-length #{x\ 1496}#)))
(let ((#{v\ 1519}#
(#{decorate-source\ 290}#
(make-vector #{n\ 1517}#)
#{x\ 1496}#)))
(letrec ((#{loop\ 1522}#
(lambda (#{i\ 1523}#)
(if (#{fx=\ 277}#
#{i\ 1523}#
#{n\ 1517}#)
(begin
(if #f #f)
#{v\ 1519}#)
(begin
(vector-set!
#{v\ 1519}#
#{i\ 1523}#
(#{rebuild-macro-output\ 1495}#
(vector-ref
#{x\ 1496}#
#{i\ 1523}#)
#{m\ 1497}#))
(#{loop\ 1522}#
(#{fx+\ 273}#
#{i\ 1523}#
1)))))))
(#{loop\ 1522}# 0))))
(if (symbol? #{x\ 1496}#)
(syntax-violation
#f
"encountered raw symbol in macro output"
(#{source-wrap\ 443}#
#{e\ 1481}#
#{w\ 1483}#
(#{wrap-subst\ 381}# #{w\ 1483}#)
#{mod\ 1486}#)
#{x\ 1496}#)
(#{decorate-source\ 290}#
#{x\ 1496}#
#{s\ 1484}#))))))))
(#{rebuild-macro-output\ 1495}#
(#{p\ 1480}#
(#{source-wrap\ 443}#
#{e\ 1481}#
(#{anti-mark\ 413}# #{w\ 1483}#)
#{s\ 1484}#
#{mod\ 1486}#))
(gensym "m")))))
(#{chi-application\ 461}#
(lambda (#{x\ 1530}#
#{e\ 1531}#
#{r\ 1532}#
#{w\ 1533}#
#{s\ 1534}#
#{mod\ 1535}#)
((lambda (#{tmp\ 1542}#)
((lambda (#{tmp\ 1543}#)
(if #{tmp\ 1543}#
(apply (lambda (#{e0\ 1546}# #{e1\ 1547}#)
(#{build-application\ 294}#
#{s\ 1534}#
#{x\ 1530}#
(map (lambda (#{e\ 1548}#)
(#{chi\ 457}#
#{e\ 1548}#
#{r\ 1532}#
#{w\ 1533}#
#{mod\ 1535}#))
#{e1\ 1547}#)))
#{tmp\ 1543}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 1542}#)))
($sc-dispatch
#{tmp\ 1542}#
'(any . each-any))))
#{e\ 1531}#)))
(#{chi-expr\ 459}#
(lambda (#{type\ 1551}#
#{value\ 1552}#
#{e\ 1553}#
#{r\ 1554}#
#{w\ 1555}#
#{s\ 1556}#
#{mod\ 1557}#)
(if (memv #{type\ 1551}# (quote (lexical)))
(#{build-lexical-reference\ 300}#
'value
#{s\ 1556}#
#{e\ 1553}#
#{value\ 1552}#)
(if (memv #{type\ 1551}# (quote (core core-form)))
(#{value\ 1552}#
#{e\ 1553}#
#{r\ 1554}#
#{w\ 1555}#
#{s\ 1556}#
#{mod\ 1557}#)
(if (memv #{type\ 1551}# (quote (module-ref)))
(call-with-values
(lambda ()
(#{value\ 1552}#
#{e\ 1553}#
#{r\ 1554}#
#{w\ 1555}#))
(lambda (#{e\ 1568}#
#{r\ 1569}#
#{w\ 1570}#
#{s\ 1571}#
#{mod\ 1572}#)
(#{chi\ 457}#
#{e\ 1568}#
#{r\ 1569}#
#{w\ 1570}#
#{mod\ 1572}#)))
(if (memv #{type\ 1551}# (quote (lexical-call)))
(#{chi-application\ 461}#
(#{build-lexical-reference\ 300}#
'fun
(#{source-annotation\ 351}# (car #{e\ 1553}#))
(car #{e\ 1553}#)
#{value\ 1552}#)
#{e\ 1553}#
#{r\ 1554}#
#{w\ 1555}#
#{s\ 1556}#
#{mod\ 1557}#)
(if (memv #{type\ 1551}# (quote (global-call)))
(#{chi-application\ 461}#
(#{build-global-reference\ 306}#
(#{source-annotation\ 351}# (car #{e\ 1553}#))
(if (#{syntax-object?\ 336}# #{value\ 1552}#)
(#{syntax-object-expression\ 338}#
#{value\ 1552}#)
#{value\ 1552}#)
(if (#{syntax-object?\ 336}# #{value\ 1552}#)
(#{syntax-object-module\ 342}# #{value\ 1552}#)
#{mod\ 1557}#))
#{e\ 1553}#
#{r\ 1554}#
#{w\ 1555}#
#{s\ 1556}#
#{mod\ 1557}#)
(if (memv #{type\ 1551}# (quote (constant)))
(#{build-data\ 322}#
#{s\ 1556}#
(#{strip\ 483}#
(#{source-wrap\ 443}#
#{e\ 1553}#
#{w\ 1555}#
#{s\ 1556}#
#{mod\ 1557}#)
'(())))
(if (memv #{type\ 1551}# (quote (global)))
(#{build-global-reference\ 306}#
#{s\ 1556}#
#{value\ 1552}#
#{mod\ 1557}#)
(if (memv #{type\ 1551}# (quote (call)))
(#{chi-application\ 461}#
(#{chi\ 457}#
(car #{e\ 1553}#)
#{r\ 1554}#
#{w\ 1555}#
#{mod\ 1557}#)
#{e\ 1553}#
#{r\ 1554}#
#{w\ 1555}#
#{s\ 1556}#
#{mod\ 1557}#)
(if (memv #{type\ 1551}# (quote (begin-form)))
((lambda (#{tmp\ 1585}#)
((lambda (#{tmp\ 1586}#)
(if #{tmp\ 1586}#
(apply (lambda (#{_\ 1590}#
#{e1\ 1591}#
#{e2\ 1592}#)
(#{chi-sequence\ 445}#
(cons #{e1\ 1591}#
#{e2\ 1592}#)
#{r\ 1554}#
#{w\ 1555}#
#{s\ 1556}#
#{mod\ 1557}#))
#{tmp\ 1586}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 1585}#)))
($sc-dispatch
#{tmp\ 1585}#
'(any any . each-any))))
#{e\ 1553}#)
(if (memv #{type\ 1551}#
'(local-syntax-form))
(#{chi-local-syntax\ 467}#
#{value\ 1552}#
#{e\ 1553}#
#{r\ 1554}#
#{w\ 1555}#
#{s\ 1556}#
#{mod\ 1557}#
#{chi-sequence\ 445}#)
(if (memv #{type\ 1551}#
'(eval-when-form))
((lambda (#{tmp\ 1596}#)
((lambda (#{tmp\ 1597}#)
(if #{tmp\ 1597}#
(apply (lambda (#{_\ 1602}#
#{x\ 1603}#
#{e1\ 1604}#
#{e2\ 1605}#)
(let ((#{when-list\ 1607}#
(#{chi-when-list\ 451}#
#{e\ 1553}#
#{x\ 1603}#
#{w\ 1555}#)))
(if (memq 'eval
#{when-list\ 1607}#)
(#{chi-sequence\ 445}#
(cons #{e1\ 1604}#
#{e2\ 1605}#)
#{r\ 1554}#
#{w\ 1555}#
#{s\ 1556}#
#{mod\ 1557}#)
(#{chi-void\ 471}#))))
#{tmp\ 1597}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 1596}#)))
($sc-dispatch
#{tmp\ 1596}#
'(any each-any any . each-any))))
#{e\ 1553}#)
(if (memv #{type\ 1551}#
'(define-form
define-syntax-form))
(syntax-violation
#f
"definition in expression context"
#{e\ 1553}#
(#{wrap\ 441}#
#{value\ 1552}#
#{w\ 1555}#
#{mod\ 1557}#))
(if (memv #{type\ 1551}#
'(syntax))
(syntax-violation
#f
"reference to pattern variable outside syntax form"
(#{source-wrap\ 443}#
#{e\ 1553}#
#{w\ 1555}#
#{s\ 1556}#
#{mod\ 1557}#))
(if (memv #{type\ 1551}#
'(displaced-lexical))
(syntax-violation
#f
"reference to identifier outside its scope"
(#{source-wrap\ 443}#
#{e\ 1553}#
#{w\ 1555}#
#{s\ 1556}#
#{mod\ 1557}#))
(syntax-violation
#f
"unexpected syntax"
(#{source-wrap\ 443}#
#{e\ 1553}#
#{w\ 1555}#
#{s\ 1556}#
#{mod\ 1557}#))))))))))))))))))
(#{chi\ 457}#
(lambda (#{e\ 1614}#
#{r\ 1615}#
#{w\ 1616}#
#{mod\ 1617}#)
(call-with-values
(lambda ()
(#{syntax-type\ 453}#
#{e\ 1614}#
#{r\ 1615}#
#{w\ 1616}#
(#{source-annotation\ 351}# #{e\ 1614}#)
#f
#{mod\ 1617}#
#f))
(lambda (#{type\ 1622}#
#{value\ 1623}#
#{e\ 1624}#
#{w\ 1625}#
#{s\ 1626}#
#{mod\ 1627}#)
(#{chi-expr\ 459}#
#{type\ 1622}#
#{value\ 1623}#
#{e\ 1624}#
#{r\ 1615}#
#{w\ 1625}#
#{s\ 1626}#
#{mod\ 1627}#)))))
(#{chi-top\ 455}#
(lambda (#{e\ 1634}#
#{r\ 1635}#
#{w\ 1636}#
#{m\ 1637}#
#{esew\ 1638}#
#{mod\ 1639}#)
(call-with-values
(lambda ()
(#{syntax-type\ 453}#
#{e\ 1634}#
#{r\ 1635}#
#{w\ 1636}#
(#{source-annotation\ 351}# #{e\ 1634}#)
#f
#{mod\ 1639}#
#f))
(lambda (#{type\ 1660}#
#{value\ 1661}#
#{e\ 1662}#
#{w\ 1663}#
#{s\ 1664}#
#{mod\ 1665}#)
(if (memv #{type\ 1660}# (quote (begin-form)))
((lambda (#{tmp\ 1673}#)
((lambda (#{tmp\ 1674}#)
(if #{tmp\ 1674}#
(apply (lambda (#{_\ 1676}#) (#{chi-void\ 471}#))
#{tmp\ 1674}#)
((lambda (#{tmp\ 1677}#)
(if #{tmp\ 1677}#
(apply (lambda (#{_\ 1681}#
#{e1\ 1682}#
#{e2\ 1683}#)
(#{chi-top-sequence\ 447}#
(cons #{e1\ 1682}# #{e2\ 1683}#)
#{r\ 1635}#
#{w\ 1663}#
#{s\ 1664}#
#{m\ 1637}#
#{esew\ 1638}#
#{mod\ 1665}#))
#{tmp\ 1677}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 1673}#)))
($sc-dispatch
#{tmp\ 1673}#
'(any any . each-any)))))
($sc-dispatch #{tmp\ 1673}# (quote (any)))))
#{e\ 1662}#)
(if (memv #{type\ 1660}# (quote (local-syntax-form)))
(#{chi-local-syntax\ 467}#
#{value\ 1661}#
#{e\ 1662}#
#{r\ 1635}#
#{w\ 1663}#
#{s\ 1664}#
#{mod\ 1665}#
(lambda (#{body\ 1686}#
#{r\ 1687}#
#{w\ 1688}#
#{s\ 1689}#
#{mod\ 1690}#)
(#{chi-top-sequence\ 447}#
#{body\ 1686}#
#{r\ 1687}#
#{w\ 1688}#
#{s\ 1689}#
#{m\ 1637}#
#{esew\ 1638}#
#{mod\ 1690}#)))
(if (memv #{type\ 1660}# (quote (eval-when-form)))
((lambda (#{tmp\ 1697}#)
((lambda (#{tmp\ 1698}#)
(if #{tmp\ 1698}#
(apply (lambda (#{_\ 1703}#
#{x\ 1704}#
#{e1\ 1705}#
#{e2\ 1706}#)
(let ((#{when-list\ 1709}#
(#{chi-when-list\ 451}#
#{e\ 1662}#
#{x\ 1704}#
#{w\ 1663}#))
(#{body\ 1710}#
(cons #{e1\ 1705}#
#{e2\ 1706}#)))
(if (eq? #{m\ 1637}# (quote e))
(if (memq 'eval
#{when-list\ 1709}#)
(#{chi-top-sequence\ 447}#
#{body\ 1710}#
#{r\ 1635}#
#{w\ 1663}#
#{s\ 1664}#
(if (memq 'expand
#{when-list\ 1709}#)
'c&e
'e)
'(eval)
#{mod\ 1665}#)
(begin
(if (memq 'expand
#{when-list\ 1709}#)
(#{top-level-eval-hook\ 281}#
(#{chi-top-sequence\ 447}#
#{body\ 1710}#
#{r\ 1635}#
#{w\ 1663}#
#{s\ 1664}#
'e
'(eval)
#{mod\ 1665}#)
#{mod\ 1665}#))
(#{chi-void\ 471}#)))
(if (memq 'load
#{when-list\ 1709}#)
(if (let ((#{t\ 1719}#
(memq 'compile
#{when-list\ 1709}#)))
(if #{t\ 1719}#
#{t\ 1719}#
(let ((#{t\ 1722}#
(memq 'expand
#{when-list\ 1709}#)))
(if #{t\ 1722}#
#{t\ 1722}#
(if (eq? #{m\ 1637}#
'c&e)
(memq 'eval
#{when-list\ 1709}#)
#f)))))
(#{chi-top-sequence\ 447}#
#{body\ 1710}#
#{r\ 1635}#
#{w\ 1663}#
#{s\ 1664}#
'c&e
'(compile load)
#{mod\ 1665}#)
(if (memq #{m\ 1637}#
'(c c&e))
(#{chi-top-sequence\ 447}#
#{body\ 1710}#
#{r\ 1635}#
#{w\ 1663}#
#{s\ 1664}#
'c
'(load)
#{mod\ 1665}#)
(#{chi-void\ 471}#)))
(if (let ((#{t\ 1730}#
(memq 'compile
#{when-list\ 1709}#)))
(if #{t\ 1730}#
#{t\ 1730}#
(let ((#{t\ 1733}#
(memq 'expand
#{when-list\ 1709}#)))
(if #{t\ 1733}#
#{t\ 1733}#
(if (eq? #{m\ 1637}#
'c&e)
(memq 'eval
#{when-list\ 1709}#)
#f)))))
(begin
(#{top-level-eval-hook\ 281}#
(#{chi-top-sequence\ 447}#
#{body\ 1710}#
#{r\ 1635}#
#{w\ 1663}#
#{s\ 1664}#
'e
'(eval)
#{mod\ 1665}#)
#{mod\ 1665}#)
(#{chi-void\ 471}#))
(#{chi-void\ 471}#))))))
#{tmp\ 1698}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 1697}#)))
($sc-dispatch
#{tmp\ 1697}#
'(any each-any any . each-any))))
#{e\ 1662}#)
(if (memv #{type\ 1660}#
'(define-syntax-form))
(let ((#{n\ 1741}#
(#{id-var-name\ 429}#
#{value\ 1661}#
#{w\ 1663}#))
(#{r\ 1742}#
(#{macros-only-env\ 364}# #{r\ 1635}#)))
(if (memv #{m\ 1637}# (quote (c)))
(if (memq (quote compile) #{esew\ 1638}#)
(let ((#{e\ 1745}#
(#{chi-install-global\ 449}#
#{n\ 1741}#
(#{chi\ 457}#
#{e\ 1662}#
#{r\ 1742}#
#{w\ 1663}#
#{mod\ 1665}#))))
(begin
(#{top-level-eval-hook\ 281}#
#{e\ 1745}#
#{mod\ 1665}#)
(if (memq (quote load) #{esew\ 1638}#)
#{e\ 1745}#
(#{chi-void\ 471}#))))
(if (memq (quote load) #{esew\ 1638}#)
(#{chi-install-global\ 449}#
#{n\ 1741}#
(#{chi\ 457}#
#{e\ 1662}#
#{r\ 1742}#
#{w\ 1663}#
#{mod\ 1665}#))
(#{chi-void\ 471}#)))
(if (memv #{m\ 1637}# (quote (c&e)))
(let ((#{e\ 1748}#
(#{chi-install-global\ 449}#
#{n\ 1741}#
(#{chi\ 457}#
#{e\ 1662}#
#{r\ 1742}#
#{w\ 1663}#
#{mod\ 1665}#))))
(begin
(#{top-level-eval-hook\ 281}#
#{e\ 1748}#
#{mod\ 1665}#)
#{e\ 1748}#))
(begin
(if (memq (quote eval) #{esew\ 1638}#)
(#{top-level-eval-hook\ 281}#
(#{chi-install-global\ 449}#
#{n\ 1741}#
(#{chi\ 457}#
#{e\ 1662}#
#{r\ 1742}#
#{w\ 1663}#
#{mod\ 1665}#))
#{mod\ 1665}#))
(#{chi-void\ 471}#)))))
(if (memv #{type\ 1660}# (quote (define-form)))
(let ((#{n\ 1753}#
(#{id-var-name\ 429}#
#{value\ 1661}#
#{w\ 1663}#)))
(let ((#{type\ 1755}#
(#{binding-type\ 355}#
(#{lookup\ 366}#
#{n\ 1753}#
#{r\ 1635}#
#{mod\ 1665}#))))
(if (memv #{type\ 1755}#
'(global core macro module-ref))
(begin
(if (if (memq #{m\ 1637}# (quote (c c&e)))
(if (not (module-local-variable
(current-module)
#{n\ 1753}#))
(current-module)
#f)
#f)
(let ((#{old\ 1761}#
(module-variable
(current-module)
#{n\ 1753}#)))
(module-define!
(current-module)
#{n\ 1753}#
(if (variable? #{old\ 1761}#)
(variable-ref #{old\ 1761}#)
#f))))
(let ((#{x\ 1764}#
(#{build-global-definition\ 312}#
#{s\ 1664}#
#{n\ 1753}#
(#{chi\ 457}#
#{e\ 1662}#
#{r\ 1635}#
#{w\ 1663}#
#{mod\ 1665}#))))
(begin
(if (eq? #{m\ 1637}# (quote c&e))
(#{top-level-eval-hook\ 281}#
#{x\ 1764}#
#{mod\ 1665}#))
#{x\ 1764}#)))
(if (memv #{type\ 1755}#
'(displaced-lexical))
(syntax-violation
#f
"identifier out of context"
#{e\ 1662}#
(#{wrap\ 441}#
#{value\ 1661}#
#{w\ 1663}#
#{mod\ 1665}#))
(syntax-violation
#f
"cannot define keyword at top level"
#{e\ 1662}#
(#{wrap\ 441}#
#{value\ 1661}#
#{w\ 1663}#
#{mod\ 1665}#))))))
(let ((#{x\ 1770}#
(#{chi-expr\ 459}#
#{type\ 1660}#
#{value\ 1661}#
#{e\ 1662}#
#{r\ 1635}#
#{w\ 1663}#
#{s\ 1664}#
#{mod\ 1665}#)))
(begin
(if (eq? #{m\ 1637}# (quote c&e))
(#{top-level-eval-hook\ 281}#
#{x\ 1770}#
#{mod\ 1665}#))
#{x\ 1770}#)))))))))))
(#{syntax-type\ 453}#
(lambda (#{e\ 1771}#
#{r\ 1772}#
#{w\ 1773}#
#{s\ 1774}#
#{rib\ 1775}#
#{mod\ 1776}#
#{for-car?\ 1777}#)
(if (symbol? #{e\ 1771}#)
(let ((#{n\ 1789}#
(#{id-var-name\ 429}# #{e\ 1771}# #{w\ 1773}#)))
(let ((#{b\ 1791}#
(#{lookup\ 366}#
#{n\ 1789}#
#{r\ 1772}#
#{mod\ 1776}#)))
(let ((#{type\ 1793}#
(#{binding-type\ 355}# #{b\ 1791}#)))
(if (memv #{type\ 1793}# (quote (lexical)))
(values
#{type\ 1793}#
(#{binding-value\ 357}# #{b\ 1791}#)
#{e\ 1771}#
#{w\ 1773}#
#{s\ 1774}#
#{mod\ 1776}#)
(if (memv #{type\ 1793}# (quote (global)))
(values
#{type\ 1793}#
#{n\ 1789}#
#{e\ 1771}#
#{w\ 1773}#
#{s\ 1774}#
#{mod\ 1776}#)
(if (memv #{type\ 1793}# (quote (macro)))
(if #{for-car?\ 1777}#
(values
#{type\ 1793}#
(#{binding-value\ 357}# #{b\ 1791}#)
#{e\ 1771}#
#{w\ 1773}#
#{s\ 1774}#
#{mod\ 1776}#)
(#{syntax-type\ 453}#
(#{chi-macro\ 463}#
(#{binding-value\ 357}# #{b\ 1791}#)
#{e\ 1771}#
#{r\ 1772}#
#{w\ 1773}#
#{s\ 1774}#
#{rib\ 1775}#
#{mod\ 1776}#)
#{r\ 1772}#
'(())
#{s\ 1774}#
#{rib\ 1775}#
#{mod\ 1776}#
#f))
(values
#{type\ 1793}#
(#{binding-value\ 357}# #{b\ 1791}#)
#{e\ 1771}#
#{w\ 1773}#
#{s\ 1774}#
#{mod\ 1776}#)))))))
(if (pair? #{e\ 1771}#)
(let ((#{first\ 1802}# (car #{e\ 1771}#)))
(call-with-values
(lambda ()
(#{syntax-type\ 453}#
#{first\ 1802}#
#{r\ 1772}#
#{w\ 1773}#
#{s\ 1774}#
#{rib\ 1775}#
#{mod\ 1776}#
#t))
(lambda (#{ftype\ 1803}#
#{fval\ 1804}#
#{fe\ 1805}#
#{fw\ 1806}#
#{fs\ 1807}#
#{fmod\ 1808}#)
(if (memv #{ftype\ 1803}# (quote (lexical)))
(values
'lexical-call
#{fval\ 1804}#
#{e\ 1771}#
#{w\ 1773}#
#{s\ 1774}#
#{mod\ 1776}#)
(if (memv #{ftype\ 1803}# (quote (global)))
(values
'global-call
(#{make-syntax-object\ 334}#
#{fval\ 1804}#
#{w\ 1773}#
#{fmod\ 1808}#)
#{e\ 1771}#
#{w\ 1773}#
#{s\ 1774}#
#{mod\ 1776}#)
(if (memv #{ftype\ 1803}# (quote (macro)))
(#{syntax-type\ 453}#
(#{chi-macro\ 463}#
#{fval\ 1804}#
#{e\ 1771}#
#{r\ 1772}#
#{w\ 1773}#
#{s\ 1774}#
#{rib\ 1775}#
#{mod\ 1776}#)
#{r\ 1772}#
'(())
#{s\ 1774}#
#{rib\ 1775}#
#{mod\ 1776}#
#{for-car?\ 1777}#)
(if (memv #{ftype\ 1803}# (quote (module-ref)))
(call-with-values
(lambda ()
(#{fval\ 1804}#
#{e\ 1771}#
#{r\ 1772}#
#{w\ 1773}#))
(lambda (#{e\ 1820}#
#{r\ 1821}#
#{w\ 1822}#
#{s\ 1823}#
#{mod\ 1824}#)
(#{syntax-type\ 453}#
#{e\ 1820}#
#{r\ 1821}#
#{w\ 1822}#
#{s\ 1823}#
#{rib\ 1775}#
#{mod\ 1824}#
#{for-car?\ 1777}#)))
(if (memv #{ftype\ 1803}# (quote (core)))
(values
'core-form
#{fval\ 1804}#
#{e\ 1771}#
#{w\ 1773}#
#{s\ 1774}#
#{mod\ 1776}#)
(if (memv #{ftype\ 1803}#
'(local-syntax))
(values
'local-syntax-form
#{fval\ 1804}#
#{e\ 1771}#
#{w\ 1773}#
#{s\ 1774}#
#{mod\ 1776}#)
(if (memv #{ftype\ 1803}# (quote (begin)))
(values
'begin-form
#f
#{e\ 1771}#
#{w\ 1773}#
#{s\ 1774}#
#{mod\ 1776}#)
(if (memv #{ftype\ 1803}#
'(eval-when))
(values
'eval-when-form
#f
#{e\ 1771}#
#{w\ 1773}#
#{s\ 1774}#
#{mod\ 1776}#)
(if (memv #{ftype\ 1803}#
'(define))
((lambda (#{tmp\ 1835}#)
((lambda (#{tmp\ 1836}#)
(if (if #{tmp\ 1836}#
(apply (lambda (#{_\ 1840}#
#{name\ 1841}#
#{val\ 1842}#)
(#{id?\ 372}#
#{name\ 1841}#))
#{tmp\ 1836}#)
#f)
(apply (lambda (#{_\ 1846}#
#{name\ 1847}#
#{val\ 1848}#)
(values
'define-form
#{name\ 1847}#
#{val\ 1848}#
#{w\ 1773}#
#{s\ 1774}#
#{mod\ 1776}#))
#{tmp\ 1836}#)
((lambda (#{tmp\ 1849}#)
(if (if #{tmp\ 1849}#
(apply (lambda (#{_\ 1855}#
#{name\ 1856}#
#{args\ 1857}#
#{e1\ 1858}#
#{e2\ 1859}#)
(if (#{id?\ 372}#
#{name\ 1856}#)
(#{valid-bound-ids?\ 435}#
(#{lambda-var-list\ 487}#
#{args\ 1857}#))
#f))
#{tmp\ 1849}#)
#f)
(apply (lambda (#{_\ 1867}#
#{name\ 1868}#
#{args\ 1869}#
#{e1\ 1870}#
#{e2\ 1871}#)
(values
'define-form
(#{wrap\ 441}#
#{name\ 1868}#
#{w\ 1773}#
#{mod\ 1776}#)
(#{decorate-source\ 290}#
(cons '#(syntax-object
lambda
((top)
#(ribcage
#(_
name
args
e1
e2)
#((top)
(top)
(top)
(top)
(top))
#("i1862"
"i1863"
"i1864"
"i1865"
"i1866"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(ftype
fval
fe
fw
fs
fmod)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i1809"
"i1810"
"i1811"
"i1812"
"i1813"
"i1814"))
#(ribcage
()
()
())
#(ribcage
#(first)
#((top))
#("i1801"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(e
r
w
s
rib
mod
for-car?)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i1778"
"i1779"
"i1780"
"i1781"
"i1782"
"i1783"
"i1784"))
#(ribcage
(lambda-var-list
gen-var
strip
chi-lambda-case
lambda*-formals
chi-simple-lambda
lambda-formals
ellipsis?
chi-void
eval-local-transformer
chi-local-syntax
chi-body
chi-macro
chi-application
chi-expr
chi
chi-top
syntax-type
chi-when-list
chi-install-global
chi-top-sequence
chi-sequence
source-wrap
wrap
bound-id-member?
distinct-bound-ids?
valid-bound-ids?
bound-id=?
free-id=?
id-var-name
same-marks?
join-marks
join-wraps
smart-append
make-binding-wrap
extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
set-ribcage-symnames!
ribcage-labels
ribcage-marks
ribcage-symnames
ribcage?
make-ribcage
gen-labels
gen-label
make-rename
rename-marks
rename-new
rename-old
subst-rename?
wrap-subst
wrap-marks
make-wrap
id-sym-name&marks
id-sym-name
id?
nonsymbol-id?
global-extend
lookup
macros-only-env
extend-var-env
extend-env
null-env
binding-value
binding-type
make-binding
arg-check
source-annotation
no-source
set-syntax-object-module!
set-syntax-object-wrap!
set-syntax-object-expression!
syntax-object-module
syntax-object-wrap
syntax-object-expression
syntax-object?
make-syntax-object
build-lexical-var
build-letrec
build-named-let
build-let
build-sequence
build-data
build-primref
build-lambda-case
build-case-lambda
build-simple-lambda
build-global-definition
maybe-name-value!
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
decorate-source
get-global-definition-hook
put-global-definition-hook
gensym-hook
local-eval-hook
top-level-eval-hook
fx<
fx=
fx-
fx+
set-lambda-meta!
lambda-meta
lambda?
make-dynlet
make-letrec
make-let
make-lambda-case
make-lambda
make-sequence
make-application
make-conditional
make-toplevel-define
make-toplevel-set
make-toplevel-ref
make-module-set
make-module-ref
make-lexical-set
make-lexical-ref
make-primitive-ref
make-const
make-void)
((top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top))
("i486"
"i484"
"i482"
"i480"
"i478"
"i476"
"i474"
"i472"
"i470"
"i468"
"i466"
"i464"
"i462"
"i460"
"i458"
"i456"
"i454"
"i452"
"i450"
"i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i415"
"i414"
"i412"
"i411"
"i410"
"i409"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i389"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i373"
"i371"
"i369"
"i367"
"i365"
"i363"
"i361"
"i359"
"i358"
"i356"
"i354"
"i353"
"i352"
"i350"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"
"i235"
"i233"
"i231"
"i229"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top)
(top)
(top)
(top))
("i23"
"i22"
"i21"
"i19")))
(hygiene
guile))
(#{wrap\ 441}#
(cons #{args\ 1869}#
(cons #{e1\ 1870}#
#{e2\ 1871}#))
#{w\ 1773}#
#{mod\ 1776}#))
#{s\ 1774}#)
'(())
#{s\ 1774}#
#{mod\ 1776}#))
#{tmp\ 1849}#)
((lambda (#{tmp\ 1874}#)
(if (if #{tmp\ 1874}#
(apply (lambda (#{_\ 1877}#
#{name\ 1878}#)
(#{id?\ 372}#
#{name\ 1878}#))
#{tmp\ 1874}#)
#f)
(apply (lambda (#{_\ 1881}#
#{name\ 1882}#)
(values
'define-form
(#{wrap\ 441}#
#{name\ 1882}#
#{w\ 1773}#
#{mod\ 1776}#)
'(#(syntax-object
if
((top)
#(ribcage
#(_
name)
#((top)
(top))
#("i1879"
"i1880"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(ftype
fval
fe
fw
fs
fmod)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i1809"
"i1810"
"i1811"
"i1812"
"i1813"
"i1814"))
#(ribcage
()
()
())
#(ribcage
#(first)
#((top))
#("i1801"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(e
r
w
s
rib
mod
for-car?)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i1778"
"i1779"
"i1780"
"i1781"
"i1782"
"i1783"
"i1784"))
#(ribcage
(lambda-var-list
gen-var
strip
chi-lambda-case
lambda*-formals
chi-simple-lambda
lambda-formals
ellipsis?
chi-void
eval-local-transformer
chi-local-syntax
chi-body
chi-macro
chi-application
chi-expr
chi
chi-top
syntax-type
chi-when-list
chi-install-global
chi-top-sequence
chi-sequence
source-wrap
wrap
bound-id-member?
distinct-bound-ids?
valid-bound-ids?
bound-id=?
free-id=?
id-var-name
same-marks?
join-marks
join-wraps
smart-append
make-binding-wrap
extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
set-ribcage-symnames!
ribcage-labels
ribcage-marks
ribcage-symnames
ribcage?
make-ribcage
gen-labels
gen-label
make-rename
rename-marks
rename-new
rename-old
subst-rename?
wrap-subst
wrap-marks
make-wrap
id-sym-name&marks
id-sym-name
id?
nonsymbol-id?
global-extend
lookup
macros-only-env
extend-var-env
extend-env
null-env
binding-value
binding-type
make-binding
arg-check
source-annotation
no-source
set-syntax-object-module!
set-syntax-object-wrap!
set-syntax-object-expression!
syntax-object-module
syntax-object-wrap
syntax-object-expression
syntax-object?
make-syntax-object
build-lexical-var
build-letrec
build-named-let
build-let
build-sequence
build-data
build-primref
build-lambda-case
build-case-lambda
build-simple-lambda
build-global-definition
maybe-name-value!
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
decorate-source
get-global-definition-hook
put-global-definition-hook
gensym-hook
local-eval-hook
top-level-eval-hook
fx<
fx=
fx-
fx+
set-lambda-meta!
lambda-meta
lambda?
make-dynlet
make-letrec
make-let
make-lambda-case
make-lambda
make-sequence
make-application
make-conditional
make-toplevel-define
make-toplevel-set
make-toplevel-ref
make-module-set
make-module-ref
make-lexical-set
make-lexical-ref
make-primitive-ref
make-const
make-void)
((top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top))
("i486"
"i484"
"i482"
"i480"
"i478"
"i476"
"i474"
"i472"
"i470"
"i468"
"i466"
"i464"
"i462"
"i460"
"i458"
"i456"
"i454"
"i452"
"i450"
"i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i415"
"i414"
"i412"
"i411"
"i410"
"i409"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i389"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i373"
"i371"
"i369"
"i367"
"i365"
"i363"
"i361"
"i359"
"i358"
"i356"
"i354"
"i353"
"i352"
"i350"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"
"i235"
"i233"
"i231"
"i229"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top)
(top)
(top)
(top))
("i23"
"i22"
"i21"
"i19")))
(hygiene
guile))
#(syntax-object
#f
((top)
#(ribcage
#(_
name)
#((top)
(top))
#("i1879"
"i1880"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(ftype
fval
fe
fw
fs
fmod)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i1809"
"i1810"
"i1811"
"i1812"
"i1813"
"i1814"))
#(ribcage
()
()
())
#(ribcage
#(first)
#((top))
#("i1801"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(e
r
w
s
rib
mod
for-car?)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i1778"
"i1779"
"i1780"
"i1781"
"i1782"
"i1783"
"i1784"))
#(ribcage
(lambda-var-list
gen-var
strip
chi-lambda-case
lambda*-formals
chi-simple-lambda
lambda-formals
ellipsis?
chi-void
eval-local-transformer
chi-local-syntax
chi-body
chi-macro
chi-application
chi-expr
chi
chi-top
syntax-type
chi-when-list
chi-install-global
chi-top-sequence
chi-sequence
source-wrap
wrap
bound-id-member?
distinct-bound-ids?
valid-bound-ids?
bound-id=?
free-id=?
id-var-name
same-marks?
join-marks
join-wraps
smart-append
make-binding-wrap
extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
set-ribcage-symnames!
ribcage-labels
ribcage-marks
ribcage-symnames
ribcage?
make-ribcage
gen-labels
gen-label
make-rename
rename-marks
rename-new
rename-old
subst-rename?
wrap-subst
wrap-marks
make-wrap
id-sym-name&marks
id-sym-name
id?
nonsymbol-id?
global-extend
lookup
macros-only-env
extend-var-env
extend-env
null-env
binding-value
binding-type
make-binding
arg-check
source-annotation
no-source
set-syntax-object-module!
set-syntax-object-wrap!
set-syntax-object-expression!
syntax-object-module
syntax-object-wrap
syntax-object-expression
syntax-object?
make-syntax-object
build-lexical-var
build-letrec
build-named-let
build-let
build-sequence
build-data
build-primref
build-lambda-case
build-case-lambda
build-simple-lambda
build-global-definition
maybe-name-value!
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
decorate-source
get-global-definition-hook
put-global-definition-hook
gensym-hook
local-eval-hook
top-level-eval-hook
fx<
fx=
fx-
fx+
set-lambda-meta!
lambda-meta
lambda?
make-dynlet
make-letrec
make-let
make-lambda-case
make-lambda
make-sequence
make-application
make-conditional
make-toplevel-define
make-toplevel-set
make-toplevel-ref
make-module-set
make-module-ref
make-lexical-set
make-lexical-ref
make-primitive-ref
make-const
make-void)
((top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top))
("i486"
"i484"
"i482"
"i480"
"i478"
"i476"
"i474"
"i472"
"i470"
"i468"
"i466"
"i464"
"i462"
"i460"
"i458"
"i456"
"i454"
"i452"
"i450"
"i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i415"
"i414"
"i412"
"i411"
"i410"
"i409"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i389"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i373"
"i371"
"i369"
"i367"
"i365"
"i363"
"i361"
"i359"
"i358"
"i356"
"i354"
"i353"
"i352"
"i350"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"
"i235"
"i233"
"i231"
"i229"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top)
(top)
(top)
(top))
("i23"
"i22"
"i21"
"i19")))
(hygiene
guile))
#(syntax-object
#f
((top)
#(ribcage
#(_
name)
#((top)
(top))
#("i1879"
"i1880"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(ftype
fval
fe
fw
fs
fmod)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i1809"
"i1810"
"i1811"
"i1812"
"i1813"
"i1814"))
#(ribcage
()
()
())
#(ribcage
#(first)
#((top))
#("i1801"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(e
r
w
s
rib
mod
for-car?)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i1778"
"i1779"
"i1780"
"i1781"
"i1782"
"i1783"
"i1784"))
#(ribcage
(lambda-var-list
gen-var
strip
chi-lambda-case
lambda*-formals
chi-simple-lambda
lambda-formals
ellipsis?
chi-void
eval-local-transformer
chi-local-syntax
chi-body
chi-macro
chi-application
chi-expr
chi
chi-top
syntax-type
chi-when-list
chi-install-global
chi-top-sequence
chi-sequence
source-wrap
wrap
bound-id-member?
distinct-bound-ids?
valid-bound-ids?
bound-id=?
free-id=?
id-var-name
same-marks?
join-marks
join-wraps
smart-append
make-binding-wrap
extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
set-ribcage-symnames!
ribcage-labels
ribcage-marks
ribcage-symnames
ribcage?
make-ribcage
gen-labels
gen-label
make-rename
rename-marks
rename-new
rename-old
subst-rename?
wrap-subst
wrap-marks
make-wrap
id-sym-name&marks
id-sym-name
id?
nonsymbol-id?
global-extend
lookup
macros-only-env
extend-var-env
extend-env
null-env
binding-value
binding-type
make-binding
arg-check
source-annotation
no-source
set-syntax-object-module!
set-syntax-object-wrap!
set-syntax-object-expression!
syntax-object-module
syntax-object-wrap
syntax-object-expression
syntax-object?
make-syntax-object
build-lexical-var
build-letrec
build-named-let
build-let
build-sequence
build-data
build-primref
build-lambda-case
build-case-lambda
build-simple-lambda
build-global-definition
maybe-name-value!
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
decorate-source
get-global-definition-hook
put-global-definition-hook
gensym-hook
local-eval-hook
top-level-eval-hook
fx<
fx=
fx-
fx+
set-lambda-meta!
lambda-meta
lambda?
make-dynlet
make-letrec
make-let
make-lambda-case
make-lambda
make-sequence
make-application
make-conditional
make-toplevel-define
make-toplevel-set
make-toplevel-ref
make-module-set
make-module-ref
make-lexical-set
make-lexical-ref
make-primitive-ref
make-const
make-void)
((top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top))
("i486"
"i484"
"i482"
"i480"
"i478"
"i476"
"i474"
"i472"
"i470"
"i468"
"i466"
"i464"
"i462"
"i460"
"i458"
"i456"
"i454"
"i452"
"i450"
"i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i415"
"i414"
"i412"
"i411"
"i410"
"i409"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i389"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i373"
"i371"
"i369"
"i367"
"i365"
"i363"
"i361"
"i359"
"i358"
"i356"
"i354"
"i353"
"i352"
"i350"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"
"i235"
"i233"
"i231"
"i229"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top)
(top)
(top)
(top))
("i23"
"i22"
"i21"
"i19")))
(hygiene
guile)))
'(())
#{s\ 1774}#
#{mod\ 1776}#))
#{tmp\ 1874}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 1835}#)))
($sc-dispatch
#{tmp\ 1835}#
'(any any)))))
($sc-dispatch
#{tmp\ 1835}#
'(any (any . any)
any
.
each-any)))))
($sc-dispatch
#{tmp\ 1835}#
'(any any any))))
#{e\ 1771}#)
(if (memv #{ftype\ 1803}#
'(define-syntax))
((lambda (#{tmp\ 1885}#)
((lambda (#{tmp\ 1886}#)
(if (if #{tmp\ 1886}#
(apply (lambda (#{_\ 1890}#
#{name\ 1891}#
#{val\ 1892}#)
(#{id?\ 372}#
#{name\ 1891}#))
#{tmp\ 1886}#)
#f)
(apply (lambda (#{_\ 1896}#
#{name\ 1897}#
#{val\ 1898}#)
(values
'define-syntax-form
#{name\ 1897}#
#{val\ 1898}#
#{w\ 1773}#
#{s\ 1774}#
#{mod\ 1776}#))
#{tmp\ 1886}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 1885}#)))
($sc-dispatch
#{tmp\ 1885}#
'(any any any))))
#{e\ 1771}#)
(values
'call
#f
#{e\ 1771}#
#{w\ 1773}#
#{s\ 1774}#
#{mod\ 1776}#))))))))))))))
(if (#{syntax-object?\ 336}# #{e\ 1771}#)
(#{syntax-type\ 453}#
(#{syntax-object-expression\ 338}# #{e\ 1771}#)
#{r\ 1772}#
(#{join-wraps\ 423}#
#{w\ 1773}#
(#{syntax-object-wrap\ 340}# #{e\ 1771}#))
(let ((#{t\ 1904}#
(#{source-annotation\ 351}# #{e\ 1771}#)))
(if #{t\ 1904}# #{t\ 1904}# #{s\ 1774}#))
#{rib\ 1775}#
(let ((#{t\ 1908}#
(#{syntax-object-module\ 342}# #{e\ 1771}#)))
(if #{t\ 1908}# #{t\ 1908}# #{mod\ 1776}#))
#{for-car?\ 1777}#)
(if (self-evaluating? #{e\ 1771}#)
(values
'constant
#f
#{e\ 1771}#
#{w\ 1773}#
#{s\ 1774}#
#{mod\ 1776}#)
(values
'other
#f
#{e\ 1771}#
#{w\ 1773}#
#{s\ 1774}#
#{mod\ 1776}#)))))))
(#{chi-when-list\ 451}#
(lambda (#{e\ 1913}# #{when-list\ 1914}# #{w\ 1915}#)
(letrec ((#{f\ 1922}#
(lambda (#{when-list\ 1923}# #{situations\ 1924}#)
(if (null? #{when-list\ 1923}#)
#{situations\ 1924}#
(#{f\ 1922}#
(cdr #{when-list\ 1923}#)
(cons (let ((#{x\ 1926}#
(car #{when-list\ 1923}#)))
(if (#{free-id=?\ 431}#
#{x\ 1926}#
'#(syntax-object
compile
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i1925"))
#(ribcage () () ())
#(ribcage
#(f when-list situations)
#((top) (top) (top))
#("i1919" "i1920" "i1921"))
#(ribcage () () ())
#(ribcage
#(e when-list w)
#((top) (top) (top))
#("i1916" "i1917" "i1918"))
#(ribcage
(lambda-var-list
gen-var
strip
chi-lambda-case
lambda*-formals
chi-simple-lambda
lambda-formals
ellipsis?
chi-void
eval-local-transformer
chi-local-syntax
chi-body
chi-macro
chi-application
chi-expr
chi
chi-top
syntax-type
chi-when-list
chi-install-global
chi-top-sequence
chi-sequence
source-wrap
wrap
bound-id-member?
distinct-bound-ids?
valid-bound-ids?
bound-id=?
free-id=?
id-var-name
same-marks?
join-marks
join-wraps
smart-append
make-binding-wrap
extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
set-ribcage-symnames!
ribcage-labels
ribcage-marks
ribcage-symnames
ribcage?
make-ribcage
gen-labels
gen-label
make-rename
rename-marks
rename-new
rename-old
subst-rename?
wrap-subst
wrap-marks
make-wrap
id-sym-name&marks
id-sym-name
id?
nonsymbol-id?
global-extend
lookup
macros-only-env
extend-var-env
extend-env
null-env
binding-value
binding-type
make-binding
arg-check
source-annotation
no-source
set-syntax-object-module!
set-syntax-object-wrap!
set-syntax-object-expression!
syntax-object-module
syntax-object-wrap
syntax-object-expression
syntax-object?
make-syntax-object
build-lexical-var
build-letrec
build-named-let
build-let
build-sequence
build-data
build-primref
build-lambda-case
build-case-lambda
build-simple-lambda
build-global-definition
maybe-name-value!
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
decorate-source
get-global-definition-hook
put-global-definition-hook
gensym-hook
local-eval-hook
top-level-eval-hook
fx<
fx=
fx-
fx+
set-lambda-meta!
lambda-meta
lambda?
make-dynlet
make-letrec
make-let
make-lambda-case
make-lambda
make-sequence
make-application
make-conditional
make-toplevel-define
make-toplevel-set
make-toplevel-ref
make-module-set
make-module-ref
make-lexical-set
make-lexical-ref
make-primitive-ref
make-const
make-void)
((top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top))
("i486"
"i484"
"i482"
"i480"
"i478"
"i476"
"i474"
"i472"
"i470"
"i468"
"i466"
"i464"
"i462"
"i460"
"i458"
"i456"
"i454"
"i452"
"i450"
"i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i415"
"i414"
"i412"
"i411"
"i410"
"i409"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i389"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i373"
"i371"
"i369"
"i367"
"i365"
"i363"
"i361"
"i359"
"i358"
"i356"
"i354"
"i353"
"i352"
"i350"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"
"i235"
"i233"
"i231"
"i229"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i23" "i22" "i21" "i19")))
(hygiene guile)))
'compile
(if (#{free-id=?\ 431}#
#{x\ 1926}#
'#(syntax-object
load
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i1925"))
#(ribcage () () ())
#(ribcage
#(f when-list situations)
#((top) (top) (top))
#("i1919"
"i1920"
"i1921"))
#(ribcage () () ())
#(ribcage
#(e when-list w)
#((top) (top) (top))
#("i1916"
"i1917"
"i1918"))
#(ribcage
(lambda-var-list
gen-var
strip
chi-lambda-case
lambda*-formals
chi-simple-lambda
lambda-formals
ellipsis?
chi-void
eval-local-transformer
chi-local-syntax
chi-body
chi-macro
chi-application
chi-expr
chi
chi-top
syntax-type
chi-when-list
chi-install-global
chi-top-sequence
chi-sequence
source-wrap
wrap
bound-id-member?
distinct-bound-ids?
valid-bound-ids?
bound-id=?
free-id=?
id-var-name
same-marks?
join-marks
join-wraps
smart-append
make-binding-wrap
extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
set-ribcage-symnames!
ribcage-labels
ribcage-marks
ribcage-symnames
ribcage?
make-ribcage
gen-labels
gen-label
make-rename
rename-marks
rename-new
rename-old
subst-rename?
wrap-subst
wrap-marks
make-wrap
id-sym-name&marks
id-sym-name
id?
nonsymbol-id?
global-extend
lookup
macros-only-env
extend-var-env
extend-env
null-env
binding-value
binding-type
make-binding
arg-check
source-annotation
no-source
set-syntax-object-module!
set-syntax-object-wrap!
set-syntax-object-expression!
syntax-object-module
syntax-object-wrap
syntax-object-expression
syntax-object?
make-syntax-object
build-lexical-var
build-letrec
build-named-let
build-let
build-sequence
build-data
build-primref
build-lambda-case
build-case-lambda
build-simple-lambda
build-global-definition
maybe-name-value!
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
decorate-source
get-global-definition-hook
put-global-definition-hook
gensym-hook
local-eval-hook
top-level-eval-hook
fx<
fx=
fx-
fx+
set-lambda-meta!
lambda-meta
lambda?
make-dynlet
make-letrec
make-let
make-lambda-case
make-lambda
make-sequence
make-application
make-conditional
make-toplevel-define
make-toplevel-set
make-toplevel-ref
make-module-set
make-module-ref
make-lexical-set
make-lexical-ref
make-primitive-ref
make-const
make-void)
((top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top))
("i486"
"i484"
"i482"
"i480"
"i478"
"i476"
"i474"
"i472"
"i470"
"i468"
"i466"
"i464"
"i462"
"i460"
"i458"
"i456"
"i454"
"i452"
"i450"
"i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i415"
"i414"
"i412"
"i411"
"i410"
"i409"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i389"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i373"
"i371"
"i369"
"i367"
"i365"
"i363"
"i361"
"i359"
"i358"
"i356"
"i354"
"i353"
"i352"
"i350"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"
"i235"
"i233"
"i231"
"i229"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i23"
"i22"
"i21"
"i19")))
(hygiene guile)))
'load
(if (#{free-id=?\ 431}#
#{x\ 1926}#
'#(syntax-object
eval
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i1925"))
#(ribcage () () ())
#(ribcage
#(f
when-list
situations)
#((top) (top) (top))
#("i1919"
"i1920"
"i1921"))
#(ribcage () () ())
#(ribcage
#(e when-list w)
#((top) (top) (top))
#("i1916"
"i1917"
"i1918"))
#(ribcage
(lambda-var-list
gen-var
strip
chi-lambda-case
lambda*-formals
chi-simple-lambda
lambda-formals
ellipsis?
chi-void
eval-local-transformer
chi-local-syntax
chi-body
chi-macro
chi-application
chi-expr
chi
chi-top
syntax-type
chi-when-list
chi-install-global
chi-top-sequence
chi-sequence
source-wrap
wrap
bound-id-member?
distinct-bound-ids?
valid-bound-ids?
bound-id=?
free-id=?
id-var-name
same-marks?
join-marks
join-wraps
smart-append
make-binding-wrap
extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
set-ribcage-symnames!
ribcage-labels
ribcage-marks
ribcage-symnames
ribcage?
make-ribcage
gen-labels
gen-label
make-rename
rename-marks
rename-new
rename-old
subst-rename?
wrap-subst
wrap-marks
make-wrap
id-sym-name&marks
id-sym-name
id?
nonsymbol-id?
global-extend
lookup
macros-only-env
extend-var-env
extend-env
null-env
binding-value
binding-type
make-binding
arg-check
source-annotation
no-source
set-syntax-object-module!
set-syntax-object-wrap!
set-syntax-object-expression!
syntax-object-module
syntax-object-wrap
syntax-object-expression
syntax-object?
make-syntax-object
build-lexical-var
build-letrec
build-named-let
build-let
build-sequence
build-data
build-primref
build-lambda-case
build-case-lambda
build-simple-lambda
build-global-definition
maybe-name-value!
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
decorate-source
get-global-definition-hook
put-global-definition-hook
gensym-hook
local-eval-hook
top-level-eval-hook
fx<
fx=
fx-
fx+
set-lambda-meta!
lambda-meta
lambda?
make-dynlet
make-letrec
make-let
make-lambda-case
make-lambda
make-sequence
make-application
make-conditional
make-toplevel-define
make-toplevel-set
make-toplevel-ref
make-module-set
make-module-ref
make-lexical-set
make-lexical-ref
make-primitive-ref
make-const
make-void)
((top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top))
("i486"
"i484"
"i482"
"i480"
"i478"
"i476"
"i474"
"i472"
"i470"
"i468"
"i466"
"i464"
"i462"
"i460"
"i458"
"i456"
"i454"
"i452"
"i450"
"i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i415"
"i414"
"i412"
"i411"
"i410"
"i409"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i389"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i373"
"i371"
"i369"
"i367"
"i365"
"i363"
"i361"
"i359"
"i358"
"i356"
"i354"
"i353"
"i352"
"i350"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"
"i235"
"i233"
"i231"
"i229"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top)
(top)
(top)
(top))
("i23"
"i22"
"i21"
"i19")))
(hygiene guile)))
'eval
(if (#{free-id=?\ 431}#
#{x\ 1926}#
'#(syntax-object
expand
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i1925"))
#(ribcage () () ())
#(ribcage
#(f
when-list
situations)
#((top) (top) (top))
#("i1919"
"i1920"
"i1921"))
#(ribcage () () ())
#(ribcage
#(e when-list w)
#((top) (top) (top))
#("i1916"
"i1917"
"i1918"))
#(ribcage
(lambda-var-list
gen-var
strip
chi-lambda-case
lambda*-formals
chi-simple-lambda
lambda-formals
ellipsis?
chi-void
eval-local-transformer
chi-local-syntax
chi-body
chi-macro
chi-application
chi-expr
chi
chi-top
syntax-type
chi-when-list
chi-install-global
chi-top-sequence
chi-sequence
source-wrap
wrap
bound-id-member?
distinct-bound-ids?
valid-bound-ids?
bound-id=?
free-id=?
id-var-name
same-marks?
join-marks
join-wraps
smart-append
make-binding-wrap
extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
set-ribcage-symnames!
ribcage-labels
ribcage-marks
ribcage-symnames
ribcage?
make-ribcage
gen-labels
gen-label
make-rename
rename-marks
rename-new
rename-old
subst-rename?
wrap-subst
wrap-marks
make-wrap
id-sym-name&marks
id-sym-name
id?
nonsymbol-id?
global-extend
lookup
macros-only-env
extend-var-env
extend-env
null-env
binding-value
binding-type
make-binding
arg-check
source-annotation
no-source
set-syntax-object-module!
set-syntax-object-wrap!
set-syntax-object-expression!
syntax-object-module
syntax-object-wrap
syntax-object-expression
syntax-object?
make-syntax-object
build-lexical-var
build-letrec
build-named-let
build-let
build-sequence
build-data
build-primref
build-lambda-case
build-case-lambda
build-simple-lambda
build-global-definition
maybe-name-value!
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
decorate-source
get-global-definition-hook
put-global-definition-hook
gensym-hook
local-eval-hook
top-level-eval-hook
fx<
fx=
fx-
fx+
set-lambda-meta!
lambda-meta
lambda?
make-dynlet
make-letrec
make-let
make-lambda-case
make-lambda
make-sequence
make-application
make-conditional
make-toplevel-define
make-toplevel-set
make-toplevel-ref
make-module-set
make-module-ref
make-lexical-set
make-lexical-ref
make-primitive-ref
make-const
make-void)
((top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top))
("i486"
"i484"
"i482"
"i480"
"i478"
"i476"
"i474"
"i472"
"i470"
"i468"
"i466"
"i464"
"i462"
"i460"
"i458"
"i456"
"i454"
"i452"
"i450"
"i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i415"
"i414"
"i412"
"i411"
"i410"
"i409"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i389"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i373"
"i371"
"i369"
"i367"
"i365"
"i363"
"i361"
"i359"
"i358"
"i356"
"i354"
"i353"
"i352"
"i350"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"
"i235"
"i233"
"i231"
"i229"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top)
(top)
(top)
(top))
("i23"
"i22"
"i21"
"i19")))
(hygiene guile)))
'expand
(syntax-violation
'eval-when
"invalid situation"
#{e\ 1913}#
(#{wrap\ 441}#
#{x\ 1926}#
#{w\ 1915}#
#f)))))))
#{situations\ 1924}#))))))
(#{f\ 1922}# #{when-list\ 1914}# (quote ())))))
(#{chi-install-global\ 449}#
(lambda (#{name\ 1936}# #{e\ 1937}#)
(#{build-global-definition\ 312}#
#f
#{name\ 1936}#
(#{build-application\ 294}#
#f
(#{build-primref\ 320}#
#f
'make-syntax-transformer)
(list (#{build-data\ 322}# #f #{name\ 1936}#)
(#{build-data\ 322}# #f (quote macro))
#{e\ 1937}#)))))
(#{chi-top-sequence\ 447}#
(lambda (#{body\ 1945}#
#{r\ 1946}#
#{w\ 1947}#
#{s\ 1948}#
#{m\ 1949}#
#{esew\ 1950}#
#{mod\ 1951}#)
(#{build-sequence\ 324}#
#{s\ 1948}#
(letrec ((#{dobody\ 1967}#
(lambda (#{body\ 1968}#
#{r\ 1969}#
#{w\ 1970}#
#{m\ 1971}#
#{esew\ 1972}#
#{mod\ 1973}#
#{out\ 1974}#)
(if (null? #{body\ 1968}#)
(reverse #{out\ 1974}#)
(#{dobody\ 1967}#
(cdr #{body\ 1968}#)
#{r\ 1969}#
#{w\ 1970}#
#{m\ 1971}#
#{esew\ 1972}#
#{mod\ 1973}#
(cons (#{chi-top\ 455}#
(car #{body\ 1968}#)
#{r\ 1969}#
#{w\ 1970}#
#{m\ 1971}#
#{esew\ 1972}#
#{mod\ 1973}#)
#{out\ 1974}#))))))
(#{dobody\ 1967}#
#{body\ 1945}#
#{r\ 1946}#
#{w\ 1947}#
#{m\ 1949}#
#{esew\ 1950}#
#{mod\ 1951}#
'())))))
(#{chi-sequence\ 445}#
(lambda (#{body\ 1975}#
#{r\ 1976}#
#{w\ 1977}#
#{s\ 1978}#
#{mod\ 1979}#)
(#{build-sequence\ 324}#
#{s\ 1978}#
(letrec ((#{dobody\ 1990}#
(lambda (#{body\ 1991}#
#{r\ 1992}#
#{w\ 1993}#
#{mod\ 1994}#)
(if (null? #{body\ 1991}#)
'()
(let ((#{first\ 1996}#
(#{chi\ 457}#
(car #{body\ 1991}#)
#{r\ 1992}#
#{w\ 1993}#
#{mod\ 1994}#)))
(cons #{first\ 1996}#
(#{dobody\ 1990}#
(cdr #{body\ 1991}#)
#{r\ 1992}#
#{w\ 1993}#
#{mod\ 1994}#)))))))
(#{dobody\ 1990}#
#{body\ 1975}#
#{r\ 1976}#
#{w\ 1977}#
#{mod\ 1979}#)))))
(#{source-wrap\ 443}#
(lambda (#{x\ 1997}#
#{w\ 1998}#
#{s\ 1999}#
#{defmod\ 2000}#)
(#{wrap\ 441}#
(#{decorate-source\ 290}#
#{x\ 1997}#
#{s\ 1999}#)
#{w\ 1998}#
#{defmod\ 2000}#)))
(#{wrap\ 441}#
(lambda (#{x\ 2005}# #{w\ 2006}# #{defmod\ 2007}#)
(if (if (null? (#{wrap-marks\ 379}# #{w\ 2006}#))
(null? (#{wrap-subst\ 381}# #{w\ 2006}#))
#f)
#{x\ 2005}#
(if (#{syntax-object?\ 336}# #{x\ 2005}#)
(#{make-syntax-object\ 334}#
(#{syntax-object-expression\ 338}# #{x\ 2005}#)
(#{join-wraps\ 423}#
#{w\ 2006}#
(#{syntax-object-wrap\ 340}# #{x\ 2005}#))
(#{syntax-object-module\ 342}# #{x\ 2005}#))
(if (null? #{x\ 2005}#)
#{x\ 2005}#
(#{make-syntax-object\ 334}#
#{x\ 2005}#
#{w\ 2006}#
#{defmod\ 2007}#))))))
(#{bound-id-member?\ 439}#
(lambda (#{x\ 2020}# #{list\ 2021}#)
(if (not (null? #{list\ 2021}#))
(let ((#{t\ 2028}#
(#{bound-id=?\ 433}#
#{x\ 2020}#
(car #{list\ 2021}#))))
(if #{t\ 2028}#
#{t\ 2028}#
(#{bound-id-member?\ 439}#
#{x\ 2020}#
(cdr #{list\ 2021}#))))
#f)))
(#{distinct-bound-ids?\ 437}#
(lambda (#{ids\ 2030}#)
(letrec ((#{distinct?\ 2034}#
(lambda (#{ids\ 2035}#)
(let ((#{t\ 2038}# (null? #{ids\ 2035}#)))
(if #{t\ 2038}#
#{t\ 2038}#
(if (not (#{bound-id-member?\ 439}#
(car #{ids\ 2035}#)
(cdr #{ids\ 2035}#)))
(#{distinct?\ 2034}# (cdr #{ids\ 2035}#))
#f))))))
(#{distinct?\ 2034}# #{ids\ 2030}#))))
(#{valid-bound-ids?\ 435}#
(lambda (#{ids\ 2042}#)
(if (letrec ((#{all-ids?\ 2047}#
(lambda (#{ids\ 2048}#)
(let ((#{t\ 2051}# (null? #{ids\ 2048}#)))
(if #{t\ 2051}#
#{t\ 2051}#
(if (#{id?\ 372}# (car #{ids\ 2048}#))
(#{all-ids?\ 2047}# (cdr #{ids\ 2048}#))
#f))))))
(#{all-ids?\ 2047}# #{ids\ 2042}#))
(#{distinct-bound-ids?\ 437}# #{ids\ 2042}#)
#f)))
(#{bound-id=?\ 433}#
(lambda (#{i\ 2056}# #{j\ 2057}#)
(if (if (#{syntax-object?\ 336}# #{i\ 2056}#)
(#{syntax-object?\ 336}# #{j\ 2057}#)
#f)
(if (eq? (#{syntax-object-expression\ 338}# #{i\ 2056}#)
(#{syntax-object-expression\ 338}# #{j\ 2057}#))
(#{same-marks?\ 427}#
(#{wrap-marks\ 379}#
(#{syntax-object-wrap\ 340}# #{i\ 2056}#))
(#{wrap-marks\ 379}#
(#{syntax-object-wrap\ 340}# #{j\ 2057}#)))
#f)
(eq? #{i\ 2056}# #{j\ 2057}#))))
(#{free-id=?\ 431}#
(lambda (#{i\ 2064}# #{j\ 2065}#)
(if (eq? (let ((#{x\ 2071}# #{i\ 2064}#))
(if (#{syntax-object?\ 336}# #{x\ 2071}#)
(#{syntax-object-expression\ 338}# #{x\ 2071}#)
#{x\ 2071}#))
(let ((#{x\ 2074}# #{j\ 2065}#))
(if (#{syntax-object?\ 336}# #{x\ 2074}#)
(#{syntax-object-expression\ 338}# #{x\ 2074}#)
#{x\ 2074}#)))
(eq? (#{id-var-name\ 429}# #{i\ 2064}# (quote (())))
(#{id-var-name\ 429}# #{j\ 2065}# (quote (()))))
#f)))
(#{id-var-name\ 429}#
(lambda (#{id\ 2078}# #{w\ 2079}#)
(letrec ((#{search-vector-rib\ 2088}#
(lambda (#{sym\ 2100}#
#{subst\ 2101}#
#{marks\ 2102}#
#{symnames\ 2103}#
#{ribcage\ 2104}#)
(let ((#{n\ 2111}#
(vector-length #{symnames\ 2103}#)))
(letrec ((#{f\ 2114}#
(lambda (#{i\ 2115}#)
(if (#{fx=\ 277}#
#{i\ 2115}#
#{n\ 2111}#)
(#{search\ 2084}#
#{sym\ 2100}#
(cdr #{subst\ 2101}#)
#{marks\ 2102}#)
(if (if (eq? (vector-ref
#{symnames\ 2103}#
#{i\ 2115}#)
#{sym\ 2100}#)
(#{same-marks?\ 427}#
#{marks\ 2102}#
(vector-ref
(#{ribcage-marks\ 399}#
#{ribcage\ 2104}#)
#{i\ 2115}#))
#f)
(values
(vector-ref
(#{ribcage-labels\ 401}#
#{ribcage\ 2104}#)
#{i\ 2115}#)
#{marks\ 2102}#)
(#{f\ 2114}#
(#{fx+\ 273}#
#{i\ 2115}#
1)))))))
(#{f\ 2114}# 0)))))
(#{search-list-rib\ 2086}#
(lambda (#{sym\ 2123}#
#{subst\ 2124}#
#{marks\ 2125}#
#{symnames\ 2126}#
#{ribcage\ 2127}#)
(letrec ((#{f\ 2136}#
(lambda (#{symnames\ 2137}# #{i\ 2138}#)
(if (null? #{symnames\ 2137}#)
(#{search\ 2084}#
#{sym\ 2123}#
(cdr #{subst\ 2124}#)
#{marks\ 2125}#)
(if (if (eq? (car #{symnames\ 2137}#)
#{sym\ 2123}#)
(#{same-marks?\ 427}#
#{marks\ 2125}#
(list-ref
(#{ribcage-marks\ 399}#
#{ribcage\ 2127}#)
#{i\ 2138}#))
#f)
(values
(list-ref
(#{ribcage-labels\ 401}#
#{ribcage\ 2127}#)
#{i\ 2138}#)
#{marks\ 2125}#)
(#{f\ 2136}#
(cdr #{symnames\ 2137}#)
(#{fx+\ 273}#
#{i\ 2138}#
1)))))))
(#{f\ 2136}# #{symnames\ 2126}# 0))))
(#{search\ 2084}#
(lambda (#{sym\ 2146}#
#{subst\ 2147}#
#{marks\ 2148}#)
(if (null? #{subst\ 2147}#)
(values #f #{marks\ 2148}#)
(let ((#{fst\ 2153}# (car #{subst\ 2147}#)))
(if (eq? #{fst\ 2153}# (quote shift))
(#{search\ 2084}#
#{sym\ 2146}#
(cdr #{subst\ 2147}#)
(cdr #{marks\ 2148}#))
(let ((#{symnames\ 2155}#
(#{ribcage-symnames\ 397}#
#{fst\ 2153}#)))
(if (vector? #{symnames\ 2155}#)
(#{search-vector-rib\ 2088}#
#{sym\ 2146}#
#{subst\ 2147}#
#{marks\ 2148}#
#{symnames\ 2155}#
#{fst\ 2153}#)
(#{search-list-rib\ 2086}#
#{sym\ 2146}#
#{subst\ 2147}#
#{marks\ 2148}#
#{symnames\ 2155}#
#{fst\ 2153}#)))))))))
(if (symbol? #{id\ 2078}#)
(let ((#{t\ 2158}#
(call-with-values
(lambda ()
(#{search\ 2084}#
#{id\ 2078}#
(#{wrap-subst\ 381}# #{w\ 2079}#)
(#{wrap-marks\ 379}# #{w\ 2079}#)))
(lambda (#{x\ 2160}# . #{ignore\ 2161}#)
#{x\ 2160}#))))
(if #{t\ 2158}# #{t\ 2158}# #{id\ 2078}#))
(if (#{syntax-object?\ 336}# #{id\ 2078}#)
(let ((#{id\ 2169}#
(#{syntax-object-expression\ 338}# #{id\ 2078}#))
(#{w1\ 2170}#
(#{syntax-object-wrap\ 340}# #{id\ 2078}#)))
(let ((#{marks\ 2172}#
(#{join-marks\ 425}#
(#{wrap-marks\ 379}# #{w\ 2079}#)
(#{wrap-marks\ 379}# #{w1\ 2170}#))))
(call-with-values
(lambda ()
(#{search\ 2084}#
#{id\ 2169}#
(#{wrap-subst\ 381}# #{w\ 2079}#)
#{marks\ 2172}#))
(lambda (#{new-id\ 2173}# #{marks\ 2174}#)
(let ((#{t\ 2179}# #{new-id\ 2173}#))
(if #{t\ 2179}#
#{t\ 2179}#
(let ((#{t\ 2182}#
(call-with-values
(lambda ()
(#{search\ 2084}#
#{id\ 2169}#
(#{wrap-subst\ 381}#
#{w1\ 2170}#)
#{marks\ 2174}#))
(lambda (#{x\ 2184}#
.
#{ignore\ 2185}#)
#{x\ 2184}#))))
(if #{t\ 2182}#
#{t\ 2182}#
#{id\ 2169}#))))))))
(syntax-violation
'id-var-name
"invalid id"
#{id\ 2078}#))))))
(#{same-marks?\ 427}#
(lambda (#{x\ 2190}# #{y\ 2191}#)
(let ((#{t\ 2196}# (eq? #{x\ 2190}# #{y\ 2191}#)))
(if #{t\ 2196}#
#{t\ 2196}#
(if (not (null? #{x\ 2190}#))
(if (not (null? #{y\ 2191}#))
(if (eq? (car #{x\ 2190}#) (car #{y\ 2191}#))
(#{same-marks?\ 427}#
(cdr #{x\ 2190}#)
(cdr #{y\ 2191}#))
#f)
#f)
#f)))))
(#{join-marks\ 425}#
(lambda (#{m1\ 2202}# #{m2\ 2203}#)
(#{smart-append\ 421}# #{m1\ 2202}# #{m2\ 2203}#)))
(#{join-wraps\ 423}#
(lambda (#{w1\ 2206}# #{w2\ 2207}#)
(let ((#{m1\ 2212}# (#{wrap-marks\ 379}# #{w1\ 2206}#))
(#{s1\ 2213}# (#{wrap-subst\ 381}# #{w1\ 2206}#)))
(if (null? #{m1\ 2212}#)
(if (null? #{s1\ 2213}#)
#{w2\ 2207}#
(#{make-wrap\ 377}#
(#{wrap-marks\ 379}# #{w2\ 2207}#)
(#{smart-append\ 421}#
#{s1\ 2213}#
(#{wrap-subst\ 381}# #{w2\ 2207}#))))
(#{make-wrap\ 377}#
(#{smart-append\ 421}#
#{m1\ 2212}#
(#{wrap-marks\ 379}# #{w2\ 2207}#))
(#{smart-append\ 421}#
#{s1\ 2213}#
(#{wrap-subst\ 381}# #{w2\ 2207}#)))))))
(#{smart-append\ 421}#
(lambda (#{m1\ 2214}# #{m2\ 2215}#)
(if (null? #{m2\ 2215}#)
#{m1\ 2214}#
(append #{m1\ 2214}# #{m2\ 2215}#))))
(#{make-binding-wrap\ 419}#
(lambda (#{ids\ 2218}# #{labels\ 2219}# #{w\ 2220}#)
(if (null? #{ids\ 2218}#)
#{w\ 2220}#
(#{make-wrap\ 377}#
(#{wrap-marks\ 379}# #{w\ 2220}#)
(cons (let ((#{labelvec\ 2225}#
(list->vector #{labels\ 2219}#)))
(let ((#{n\ 2227}#
(vector-length #{labelvec\ 2225}#)))
(let ((#{symnamevec\ 2230}#
(make-vector #{n\ 2227}#))
(#{marksvec\ 2231}#
(make-vector #{n\ 2227}#)))
(begin
(letrec ((#{f\ 2235}#
(lambda (#{ids\ 2236}# #{i\ 2237}#)
(if (not (null? #{ids\ 2236}#))
(call-with-values
(lambda ()
(#{id-sym-name&marks\ 375}#
(car #{ids\ 2236}#)
#{w\ 2220}#))
(lambda (#{symname\ 2238}#
#{marks\ 2239}#)
(begin
(vector-set!
#{symnamevec\ 2230}#
#{i\ 2237}#
#{symname\ 2238}#)
(vector-set!
#{marksvec\ 2231}#
#{i\ 2237}#
#{marks\ 2239}#)
(#{f\ 2235}#
(cdr #{ids\ 2236}#)
(#{fx+\ 273}#
#{i\ 2237}#
1)))))))))
(#{f\ 2235}# #{ids\ 2218}# 0))
(#{make-ribcage\ 393}#
#{symnamevec\ 2230}#
#{marksvec\ 2231}#
#{labelvec\ 2225}#)))))
(#{wrap-subst\ 381}# #{w\ 2220}#))))))
(#{extend-ribcage!\ 417}#
(lambda (#{ribcage\ 2242}# #{id\ 2243}# #{label\ 2244}#)
(begin
(#{set-ribcage-symnames!\ 403}#
#{ribcage\ 2242}#
(cons (#{syntax-object-expression\ 338}# #{id\ 2243}#)
(#{ribcage-symnames\ 397}# #{ribcage\ 2242}#)))
(#{set-ribcage-marks!\ 405}#
#{ribcage\ 2242}#
(cons (#{wrap-marks\ 379}#
(#{syntax-object-wrap\ 340}# #{id\ 2243}#))
(#{ribcage-marks\ 399}# #{ribcage\ 2242}#)))
(#{set-ribcage-labels!\ 407}#
#{ribcage\ 2242}#
(cons #{label\ 2244}#
(#{ribcage-labels\ 401}# #{ribcage\ 2242}#))))))
(#{anti-mark\ 413}#
(lambda (#{w\ 2248}#)
(#{make-wrap\ 377}#
(cons #f (#{wrap-marks\ 379}# #{w\ 2248}#))
(cons 'shift
(#{wrap-subst\ 381}# #{w\ 2248}#)))))
(#{set-ribcage-labels!\ 407}#
(lambda (#{x\ 2251}# #{update\ 2252}#)
(vector-set! #{x\ 2251}# 3 #{update\ 2252}#)))
(#{set-ribcage-marks!\ 405}#
(lambda (#{x\ 2255}# #{update\ 2256}#)
(vector-set! #{x\ 2255}# 2 #{update\ 2256}#)))
(#{set-ribcage-symnames!\ 403}#
(lambda (#{x\ 2259}# #{update\ 2260}#)
(vector-set! #{x\ 2259}# 1 #{update\ 2260}#)))
(#{ribcage-labels\ 401}#
(lambda (#{x\ 2263}#) (vector-ref #{x\ 2263}# 3)))
(#{ribcage-marks\ 399}#
(lambda (#{x\ 2265}#) (vector-ref #{x\ 2265}# 2)))
(#{ribcage-symnames\ 397}#
(lambda (#{x\ 2267}#) (vector-ref #{x\ 2267}# 1)))
(#{ribcage?\ 395}#
(lambda (#{x\ 2269}#)
(if (vector? #{x\ 2269}#)
(if (= (vector-length #{x\ 2269}#) 4)
(eq? (vector-ref #{x\ 2269}# 0) (quote ribcage))
#f)
#f)))
(#{make-ribcage\ 393}#
(lambda (#{symnames\ 2274}#
#{marks\ 2275}#
#{labels\ 2276}#)
(vector
'ribcage
#{symnames\ 2274}#
#{marks\ 2275}#
#{labels\ 2276}#)))
(#{gen-labels\ 390}#
(lambda (#{ls\ 2280}#)
(if (null? #{ls\ 2280}#)
'()
(cons (#{gen-label\ 388}#)
(#{gen-labels\ 390}# (cdr #{ls\ 2280}#))))))
(#{gen-label\ 388}#
(lambda () (symbol->string (gensym "i"))))
(#{wrap-subst\ 381}# cdr)
(#{wrap-marks\ 379}# car)
(#{make-wrap\ 377}# cons)
(#{id-sym-name&marks\ 375}#
(lambda (#{x\ 2282}# #{w\ 2283}#)
(if (#{syntax-object?\ 336}# #{x\ 2282}#)
(values
(#{syntax-object-expression\ 338}# #{x\ 2282}#)
(#{join-marks\ 425}#
(#{wrap-marks\ 379}# #{w\ 2283}#)
(#{wrap-marks\ 379}#
(#{syntax-object-wrap\ 340}# #{x\ 2282}#))))
(values
#{x\ 2282}#
(#{wrap-marks\ 379}# #{w\ 2283}#)))))
(#{id?\ 372}#
(lambda (#{x\ 2286}#)
(if (symbol? #{x\ 2286}#)
#t
(if (#{syntax-object?\ 336}# #{x\ 2286}#)
(symbol?
(#{syntax-object-expression\ 338}# #{x\ 2286}#))
#f))))
(#{nonsymbol-id?\ 370}#
(lambda (#{x\ 2293}#)
(if (#{syntax-object?\ 336}# #{x\ 2293}#)
(symbol?
(#{syntax-object-expression\ 338}# #{x\ 2293}#))
#f)))
(#{global-extend\ 368}#
(lambda (#{type\ 2297}# #{sym\ 2298}# #{val\ 2299}#)
(#{put-global-definition-hook\ 286}#
#{sym\ 2298}#
#{type\ 2297}#
#{val\ 2299}#)))
(#{lookup\ 366}#
(lambda (#{x\ 2303}# #{r\ 2304}# #{mod\ 2305}#)
(let ((#{t\ 2311}# (assq #{x\ 2303}# #{r\ 2304}#)))
(if #{t\ 2311}#
(cdr #{t\ 2311}#)
(if (symbol? #{x\ 2303}#)
(let ((#{t\ 2317}#
(#{get-global-definition-hook\ 288}#
#{x\ 2303}#
#{mod\ 2305}#)))
(if #{t\ 2317}# #{t\ 2317}# (quote (global))))
'(displaced-lexical))))))
(#{macros-only-env\ 364}#
(lambda (#{r\ 2322}#)
(if (null? #{r\ 2322}#)
'()
(let ((#{a\ 2325}# (car #{r\ 2322}#)))
(if (eq? (cadr #{a\ 2325}#) (quote macro))
(cons #{a\ 2325}#
(#{macros-only-env\ 364}# (cdr #{r\ 2322}#)))
(#{macros-only-env\ 364}# (cdr #{r\ 2322}#)))))))
(#{extend-var-env\ 362}#
(lambda (#{labels\ 2326}# #{vars\ 2327}# #{r\ 2328}#)
(if (null? #{labels\ 2326}#)
#{r\ 2328}#
(#{extend-var-env\ 362}#
(cdr #{labels\ 2326}#)
(cdr #{vars\ 2327}#)
(cons (cons (car #{labels\ 2326}#)
(cons (quote lexical) (car #{vars\ 2327}#)))
#{r\ 2328}#)))))
(#{extend-env\ 360}#
(lambda (#{labels\ 2333}# #{bindings\ 2334}# #{r\ 2335}#)
(if (null? #{labels\ 2333}#)
#{r\ 2335}#
(#{extend-env\ 360}#
(cdr #{labels\ 2333}#)
(cdr #{bindings\ 2334}#)
(cons (cons (car #{labels\ 2333}#)
(car #{bindings\ 2334}#))
#{r\ 2335}#)))))
(#{binding-value\ 357}# cdr)
(#{binding-type\ 355}# car)
(#{source-annotation\ 351}#
(lambda (#{x\ 2339}#)
(if (#{syntax-object?\ 336}# #{x\ 2339}#)
(#{source-annotation\ 351}#
(#{syntax-object-expression\ 338}# #{x\ 2339}#))
(if (pair? #{x\ 2339}#)
(let ((#{props\ 2346}# (source-properties #{x\ 2339}#)))
(if (pair? #{props\ 2346}#) #{props\ 2346}# #f))
#f))))
(#{set-syntax-object-module!\ 348}#
(lambda (#{x\ 2348}# #{update\ 2349}#)
(vector-set! #{x\ 2348}# 3 #{update\ 2349}#)))
(#{set-syntax-object-wrap!\ 346}#
(lambda (#{x\ 2352}# #{update\ 2353}#)
(vector-set! #{x\ 2352}# 2 #{update\ 2353}#)))
(#{set-syntax-object-expression!\ 344}#
(lambda (#{x\ 2356}# #{update\ 2357}#)
(vector-set! #{x\ 2356}# 1 #{update\ 2357}#)))
(#{syntax-object-module\ 342}#
(lambda (#{x\ 2360}#) (vector-ref #{x\ 2360}# 3)))
(#{syntax-object-wrap\ 340}#
(lambda (#{x\ 2362}#) (vector-ref #{x\ 2362}# 2)))
(#{syntax-object-expression\ 338}#
(lambda (#{x\ 2364}#) (vector-ref #{x\ 2364}# 1)))
(#{syntax-object?\ 336}#
(lambda (#{x\ 2366}#)
(if (vector? #{x\ 2366}#)
(if (= (vector-length #{x\ 2366}#) 4)
(eq? (vector-ref #{x\ 2366}# 0)
'syntax-object)
#f)
#f)))
(#{make-syntax-object\ 334}#
(lambda (#{expression\ 2371}#
#{wrap\ 2372}#
#{module\ 2373}#)
(vector
'syntax-object
#{expression\ 2371}#
#{wrap\ 2372}#
#{module\ 2373}#)))
(#{build-letrec\ 330}#
(lambda (#{src\ 2377}#
#{ids\ 2378}#
#{vars\ 2379}#
#{val-exps\ 2380}#
#{body-exp\ 2381}#)
(if (null? #{vars\ 2379}#)
#{body-exp\ 2381}#
(begin
(for-each
#{maybe-name-value!\ 310}#
#{ids\ 2378}#
#{val-exps\ 2380}#)
(#{make-letrec\ 262}#
#{src\ 2377}#
#{ids\ 2378}#
#{vars\ 2379}#
#{val-exps\ 2380}#
#{body-exp\ 2381}#)))))
(#{build-named-let\ 328}#
(lambda (#{src\ 2387}#
#{ids\ 2388}#
#{vars\ 2389}#
#{val-exps\ 2390}#
#{body-exp\ 2391}#)
(let ((#{f\ 2401}# (car #{vars\ 2389}#))
(#{f-name\ 2402}# (car #{ids\ 2388}#))
(#{vars\ 2403}# (cdr #{vars\ 2389}#))
(#{ids\ 2404}# (cdr #{ids\ 2388}#)))
(let ((#{proc\ 2406}#
(#{build-simple-lambda\ 314}#
#{src\ 2387}#
#{ids\ 2404}#
#f
#{vars\ 2403}#
'()
#{body-exp\ 2391}#)))
(begin
(#{maybe-name-value!\ 310}#
#{f-name\ 2402}#
#{proc\ 2406}#)
(for-each
#{maybe-name-value!\ 310}#
#{ids\ 2404}#
#{val-exps\ 2390}#)
(#{make-letrec\ 262}#
#{src\ 2387}#
(list #{f-name\ 2402}#)
(list #{f\ 2401}#)
(list #{proc\ 2406}#)
(#{build-application\ 294}#
#{src\ 2387}#
(#{build-lexical-reference\ 300}#
'fun
#{src\ 2387}#
#{f-name\ 2402}#
#{f\ 2401}#)
#{val-exps\ 2390}#)))))))
(#{build-let\ 326}#
(lambda (#{src\ 2407}#
#{ids\ 2408}#
#{vars\ 2409}#
#{val-exps\ 2410}#
#{body-exp\ 2411}#)
(begin
(for-each
#{maybe-name-value!\ 310}#
#{ids\ 2408}#
#{val-exps\ 2410}#)
(if (null? #{vars\ 2409}#)
#{body-exp\ 2411}#
(#{make-let\ 260}#
#{src\ 2407}#
#{ids\ 2408}#
#{vars\ 2409}#
#{val-exps\ 2410}#
#{body-exp\ 2411}#)))))
(#{build-sequence\ 324}#
(lambda (#{src\ 2417}# #{exps\ 2418}#)
(if (null? (cdr #{exps\ 2418}#))
(car #{exps\ 2418}#)
(#{make-sequence\ 254}#
#{src\ 2417}#
#{exps\ 2418}#))))
(#{build-data\ 322}#
(lambda (#{src\ 2421}# #{exp\ 2422}#)
(#{make-const\ 232}# #{src\ 2421}# #{exp\ 2422}#)))
(#{build-primref\ 320}#
(lambda (#{src\ 2425}# #{name\ 2426}#)
(if (equal?
(module-name (current-module))
'(guile))
(#{make-toplevel-ref\ 244}#
#{src\ 2425}#
#{name\ 2426}#)
(#{make-module-ref\ 240}#
#{src\ 2425}#
'(guile)
#{name\ 2426}#
#f))))
(#{build-lambda-case\ 318}#
(lambda (#{src\ 2429}#
#{req\ 2430}#
#{opt\ 2431}#
#{rest\ 2432}#
#{kw\ 2433}#
#{inits\ 2434}#
#{vars\ 2435}#
#{body\ 2436}#
#{else-case\ 2437}#)
(#{make-lambda-case\ 258}#
#{src\ 2429}#
#{req\ 2430}#
#{opt\ 2431}#
#{rest\ 2432}#
#{kw\ 2433}#
#{inits\ 2434}#
#{vars\ 2435}#
#{body\ 2436}#
#{else-case\ 2437}#)))
(#{build-case-lambda\ 316}#
(lambda (#{src\ 2447}# #{meta\ 2448}# #{body\ 2449}#)
(#{make-lambda\ 256}#
#{src\ 2447}#
#{meta\ 2448}#
#{body\ 2449}#)))
(#{build-simple-lambda\ 314}#
(lambda (#{src\ 2453}#
#{req\ 2454}#
#{rest\ 2455}#
#{vars\ 2456}#
#{meta\ 2457}#
#{exp\ 2458}#)
(#{make-lambda\ 256}#
#{src\ 2453}#
#{meta\ 2457}#
(#{make-lambda-case\ 258}#
#{src\ 2453}#
#{req\ 2454}#
#f
#{rest\ 2455}#
#f
'()
#{vars\ 2456}#
#{exp\ 2458}#
#f))))
(#{build-global-definition\ 312}#
(lambda (#{source\ 2465}# #{var\ 2466}# #{exp\ 2467}#)
(begin
(#{maybe-name-value!\ 310}#
#{var\ 2466}#
#{exp\ 2467}#)
(#{make-toplevel-define\ 248}#
#{source\ 2465}#
#{var\ 2466}#
#{exp\ 2467}#))))
(#{maybe-name-value!\ 310}#
(lambda (#{name\ 2471}# #{val\ 2472}#)
(if (#{lambda?\ 267}# #{val\ 2472}#)
(let ((#{meta\ 2476}#
(#{lambda-meta\ 269}# #{val\ 2472}#)))
(if (not (assq (quote name) #{meta\ 2476}#))
(#{set-lambda-meta!\ 271}#
#{val\ 2472}#
(acons 'name
#{name\ 2471}#
#{meta\ 2476}#)))))))
(#{build-global-assignment\ 308}#
(lambda (#{source\ 2477}#
#{var\ 2478}#
#{exp\ 2479}#
#{mod\ 2480}#)
(#{analyze-variable\ 304}#
#{mod\ 2480}#
#{var\ 2478}#
(lambda (#{mod\ 2485}# #{var\ 2486}# #{public?\ 2487}#)
(#{make-module-set\ 242}#
#{source\ 2477}#
#{mod\ 2485}#
#{var\ 2486}#
#{public?\ 2487}#
#{exp\ 2479}#))
(lambda (#{var\ 2491}#)
(#{make-toplevel-set\ 246}#
#{source\ 2477}#
#{var\ 2491}#
#{exp\ 2479}#)))))
(#{build-global-reference\ 306}#
(lambda (#{source\ 2493}# #{var\ 2494}# #{mod\ 2495}#)
(#{analyze-variable\ 304}#
#{mod\ 2495}#
#{var\ 2494}#
(lambda (#{mod\ 2499}# #{var\ 2500}# #{public?\ 2501}#)
(#{make-module-ref\ 240}#
#{source\ 2493}#
#{mod\ 2499}#
#{var\ 2500}#
#{public?\ 2501}#))
(lambda (#{var\ 2505}#)
(#{make-toplevel-ref\ 244}#
#{source\ 2493}#
#{var\ 2505}#)))))
(#{analyze-variable\ 304}#
(lambda (#{mod\ 2507}#
#{var\ 2508}#
#{modref-cont\ 2509}#
#{bare-cont\ 2510}#)
(if (not #{mod\ 2507}#)
(#{bare-cont\ 2510}# #{var\ 2508}#)
(let ((#{kind\ 2517}# (car #{mod\ 2507}#))
(#{mod\ 2518}# (cdr #{mod\ 2507}#)))
(if (memv #{kind\ 2517}# (quote (public)))
(#{modref-cont\ 2509}#
#{mod\ 2518}#
#{var\ 2508}#
#t)
(if (memv #{kind\ 2517}# (quote (private)))
(if (not (equal?
#{mod\ 2518}#
(module-name (current-module))))
(#{modref-cont\ 2509}#
#{mod\ 2518}#
#{var\ 2508}#
#f)
(#{bare-cont\ 2510}# #{var\ 2508}#))
(if (memv #{kind\ 2517}# (quote (bare)))
(#{bare-cont\ 2510}# #{var\ 2508}#)
(if (memv #{kind\ 2517}# (quote (hygiene)))
(if (if (not (equal?
#{mod\ 2518}#
(module-name (current-module))))
(module-variable
(resolve-module #{mod\ 2518}#)
#{var\ 2508}#)
#f)
(#{modref-cont\ 2509}#
#{mod\ 2518}#
#{var\ 2508}#
#f)
(#{bare-cont\ 2510}# #{var\ 2508}#))
(syntax-violation
#f
"bad module kind"
#{var\ 2508}#
#{mod\ 2518}#)))))))))
(#{build-lexical-assignment\ 302}#
(lambda (#{source\ 2526}#
#{name\ 2527}#
#{var\ 2528}#
#{exp\ 2529}#)
(#{make-lexical-set\ 238}#
#{source\ 2526}#
#{name\ 2527}#
#{var\ 2528}#
#{exp\ 2529}#)))
(#{build-lexical-reference\ 300}#
(lambda (#{type\ 2534}#
#{source\ 2535}#
#{name\ 2536}#
#{var\ 2537}#)
(#{make-lexical-ref\ 236}#
#{source\ 2535}#
#{name\ 2536}#
#{var\ 2537}#)))
(#{build-dynlet\ 298}#
(lambda (#{source\ 2542}#
#{fluids\ 2543}#
#{vals\ 2544}#
#{body\ 2545}#)
(#{make-dynlet\ 264}#
#{source\ 2542}#
#{fluids\ 2543}#
#{vals\ 2544}#
#{body\ 2545}#)))
(#{build-conditional\ 296}#
(lambda (#{source\ 2550}#
#{test-exp\ 2551}#
#{then-exp\ 2552}#
#{else-exp\ 2553}#)
(#{make-conditional\ 250}#
#{source\ 2550}#
#{test-exp\ 2551}#
#{then-exp\ 2552}#
#{else-exp\ 2553}#)))
(#{build-application\ 294}#
(lambda (#{source\ 2558}#
#{fun-exp\ 2559}#
#{arg-exps\ 2560}#)
(#{make-application\ 252}#
#{source\ 2558}#
#{fun-exp\ 2559}#
#{arg-exps\ 2560}#)))
(#{build-void\ 292}#
(lambda (#{source\ 2564}#)
(#{make-void\ 230}# #{source\ 2564}#)))
(#{decorate-source\ 290}#
(lambda (#{e\ 2566}# #{s\ 2567}#)
(begin
(if (if (pair? #{e\ 2566}#) #{s\ 2567}# #f)
(set-source-properties! #{e\ 2566}# #{s\ 2567}#))
#{e\ 2566}#)))
(#{get-global-definition-hook\ 288}#
(lambda (#{symbol\ 2572}# #{module\ 2573}#)
(begin
(if (if (not #{module\ 2573}#) (current-module) #f)
(warn "module system is booted, we should have a module"
#{symbol\ 2572}#))
(let ((#{v\ 2579}#
(module-variable
(if #{module\ 2573}#
(resolve-module (cdr #{module\ 2573}#))
(current-module))
#{symbol\ 2572}#)))
(if #{v\ 2579}#
(if (variable-bound? #{v\ 2579}#)
(let ((#{val\ 2584}# (variable-ref #{v\ 2579}#)))
(if (macro? #{val\ 2584}#)
(if (macro-type #{val\ 2584}#)
(cons (macro-type #{val\ 2584}#)
(macro-binding #{val\ 2584}#))
#f)
#f))
#f)
#f)))))
(#{put-global-definition-hook\ 286}#
(lambda (#{symbol\ 2588}# #{type\ 2589}# #{val\ 2590}#)
(module-define!
(current-module)
#{symbol\ 2588}#
(make-syntax-transformer
#{symbol\ 2588}#
#{type\ 2589}#
#{val\ 2590}#))))
(#{local-eval-hook\ 283}#
(lambda (#{x\ 2594}# #{mod\ 2595}#)
(primitive-eval #{x\ 2594}#)))
(#{top-level-eval-hook\ 281}#
(lambda (#{x\ 2598}# #{mod\ 2599}#)
(primitive-eval #{x\ 2598}#)))
(#{fx<\ 279}# <)
(#{fx=\ 277}# =)
(#{fx-\ 275}# -)
(#{fx+\ 273}# +)
(#{set-lambda-meta!\ 271}#
(lambda (#{x\ 2602}# #{v\ 2603}#)
(struct-set! #{x\ 2602}# 1 #{v\ 2603}#)))
(#{lambda-meta\ 269}#
(lambda (#{x\ 2606}#) (struct-ref #{x\ 2606}# 1)))
(#{lambda?\ 267}#
(lambda (#{x\ 2608}#)
(if (struct? #{x\ 2608}#)
(eq? (struct-vtable #{x\ 2608}#)
(vector-ref %expanded-vtables 13))
#f)))
(#{make-dynlet\ 264}#
(lambda (#{src\ 2612}#
#{fluids\ 2613}#
#{vals\ 2614}#
#{body\ 2615}#)
(make-struct
(vector-ref %expanded-vtables 17)
0
#{src\ 2612}#
#{fluids\ 2613}#
#{vals\ 2614}#
#{body\ 2615}#)))
(#{make-letrec\ 262}#
(lambda (#{src\ 2620}#
#{names\ 2621}#
#{gensyms\ 2622}#
#{vals\ 2623}#
#{body\ 2624}#)
(make-struct
(vector-ref %expanded-vtables 16)
0
#{src\ 2620}#
#{names\ 2621}#
#{gensyms\ 2622}#
#{vals\ 2623}#
#{body\ 2624}#)))
(#{make-let\ 260}#
(lambda (#{src\ 2630}#
#{names\ 2631}#
#{gensyms\ 2632}#
#{vals\ 2633}#
#{body\ 2634}#)
(make-struct
(vector-ref %expanded-vtables 15)
0
#{src\ 2630}#
#{names\ 2631}#
#{gensyms\ 2632}#
#{vals\ 2633}#
#{body\ 2634}#)))
(#{make-lambda-case\ 258}#
(lambda (#{src\ 2640}#
#{req\ 2641}#
#{opt\ 2642}#
#{rest\ 2643}#
#{kw\ 2644}#
#{inits\ 2645}#
#{gensyms\ 2646}#
#{body\ 2647}#
#{alternate\ 2648}#)
(make-struct
(vector-ref %expanded-vtables 14)
0
#{src\ 2640}#
#{req\ 2641}#
#{opt\ 2642}#
#{rest\ 2643}#
#{kw\ 2644}#
#{inits\ 2645}#
#{gensyms\ 2646}#
#{body\ 2647}#
#{alternate\ 2648}#)))
(#{make-lambda\ 256}#
(lambda (#{src\ 2658}# #{meta\ 2659}# #{body\ 2660}#)
(make-struct
(vector-ref %expanded-vtables 13)
0
#{src\ 2658}#
#{meta\ 2659}#
#{body\ 2660}#)))
(#{make-sequence\ 254}#
(lambda (#{src\ 2664}# #{exps\ 2665}#)
(make-struct
(vector-ref %expanded-vtables 12)
0
#{src\ 2664}#
#{exps\ 2665}#)))
(#{make-application\ 252}#
(lambda (#{src\ 2668}# #{proc\ 2669}# #{args\ 2670}#)
(make-struct
(vector-ref %expanded-vtables 11)
0
#{src\ 2668}#
#{proc\ 2669}#
#{args\ 2670}#)))
(#{make-conditional\ 250}#
(lambda (#{src\ 2674}#
#{test\ 2675}#
#{consequent\ 2676}#
#{alternate\ 2677}#)
(make-struct
(vector-ref %expanded-vtables 10)
0
#{src\ 2674}#
#{test\ 2675}#
#{consequent\ 2676}#
#{alternate\ 2677}#)))
(#{make-toplevel-define\ 248}#
(lambda (#{src\ 2682}# #{name\ 2683}# #{exp\ 2684}#)
(make-struct
(vector-ref %expanded-vtables 9)
0
#{src\ 2682}#
#{name\ 2683}#
#{exp\ 2684}#)))
(#{make-toplevel-set\ 246}#
(lambda (#{src\ 2688}# #{name\ 2689}# #{exp\ 2690}#)
(make-struct
(vector-ref %expanded-vtables 8)
0
#{src\ 2688}#
#{name\ 2689}#
#{exp\ 2690}#)))
(#{make-toplevel-ref\ 244}#
(lambda (#{src\ 2694}# #{name\ 2695}#)
(make-struct
(vector-ref %expanded-vtables 7)
0
#{src\ 2694}#
#{name\ 2695}#)))
(#{make-module-set\ 242}#
(lambda (#{src\ 2698}#
#{mod\ 2699}#
#{name\ 2700}#
#{public?\ 2701}#
#{exp\ 2702}#)
(make-struct
(vector-ref %expanded-vtables 6)
0
#{src\ 2698}#
#{mod\ 2699}#
#{name\ 2700}#
#{public?\ 2701}#
#{exp\ 2702}#)))
(#{make-module-ref\ 240}#
(lambda (#{src\ 2708}#
#{mod\ 2709}#
#{name\ 2710}#
#{public?\ 2711}#)
(make-struct
(vector-ref %expanded-vtables 5)
0
#{src\ 2708}#
#{mod\ 2709}#
#{name\ 2710}#
#{public?\ 2711}#)))
(#{make-lexical-set\ 238}#
(lambda (#{src\ 2716}#
#{name\ 2717}#
#{gensym\ 2718}#
#{exp\ 2719}#)
(make-struct
(vector-ref %expanded-vtables 4)
0
#{src\ 2716}#
#{name\ 2717}#
#{gensym\ 2718}#
#{exp\ 2719}#)))
(#{make-lexical-ref\ 236}#
(lambda (#{src\ 2724}# #{name\ 2725}# #{gensym\ 2726}#)
(make-struct
(vector-ref %expanded-vtables 3)
0
#{src\ 2724}#
#{name\ 2725}#
#{gensym\ 2726}#)))
(#{make-primitive-ref\ 234}#
(lambda (#{src\ 2730}# #{name\ 2731}#)
(make-struct
(vector-ref %expanded-vtables 2)
0
#{src\ 2730}#
#{name\ 2731}#)))
(#{make-const\ 232}#
(lambda (#{src\ 2734}# #{exp\ 2735}#)
(make-struct
(vector-ref %expanded-vtables 1)
0
#{src\ 2734}#
#{exp\ 2735}#)))
(#{make-void\ 230}#
(lambda (#{src\ 2738}#)
(make-struct
(vector-ref %expanded-vtables 0)
0
#{src\ 2738}#))))
(begin
(#{global-extend\ 368}#
'local-syntax
'letrec-syntax
#t)
(#{global-extend\ 368}#
'local-syntax
'let-syntax
#f)
(#{global-extend\ 368}#
'core
'fluid-let-syntax
(lambda (#{e\ 2740}#
#{r\ 2741}#
#{w\ 2742}#
#{s\ 2743}#
#{mod\ 2744}#)
((lambda (#{tmp\ 2750}#)
((lambda (#{tmp\ 2751}#)
(if (if #{tmp\ 2751}#
(apply (lambda (#{_\ 2757}#
#{var\ 2758}#
#{val\ 2759}#
#{e1\ 2760}#
#{e2\ 2761}#)
(#{valid-bound-ids?\ 435}# #{var\ 2758}#))
#{tmp\ 2751}#)
#f)
(apply (lambda (#{_\ 2768}#
#{var\ 2769}#
#{val\ 2770}#
#{e1\ 2771}#
#{e2\ 2772}#)
(let ((#{names\ 2774}#
(map (lambda (#{x\ 2775}#)
(#{id-var-name\ 429}#
#{x\ 2775}#
#{w\ 2742}#))
#{var\ 2769}#)))
(begin
(for-each
(lambda (#{id\ 2778}# #{n\ 2779}#)
(let ((#{atom-key\ 2784}#
(#{binding-type\ 355}#
(#{lookup\ 366}#
#{n\ 2779}#
#{r\ 2741}#
#{mod\ 2744}#))))
(if (memv #{atom-key\ 2784}#
'(displaced-lexical))
(syntax-violation
'fluid-let-syntax
"identifier out of context"
#{e\ 2740}#
(#{source-wrap\ 443}#
#{id\ 2778}#
#{w\ 2742}#
#{s\ 2743}#
#{mod\ 2744}#)))))
#{var\ 2769}#
#{names\ 2774}#)
(#{chi-body\ 465}#
(cons #{e1\ 2771}# #{e2\ 2772}#)
(#{source-wrap\ 443}#
#{e\ 2740}#
#{w\ 2742}#
#{s\ 2743}#
#{mod\ 2744}#)
(#{extend-env\ 360}#
#{names\ 2774}#
(let ((#{trans-r\ 2789}#
(#{macros-only-env\ 364}#
#{r\ 2741}#)))
(map (lambda (#{x\ 2790}#)
(cons 'macro
(#{eval-local-transformer\ 469}#
(#{chi\ 457}#
#{x\ 2790}#
#{trans-r\ 2789}#
#{w\ 2742}#
#{mod\ 2744}#)
#{mod\ 2744}#)))
#{val\ 2770}#))
#{r\ 2741}#)
#{w\ 2742}#
#{mod\ 2744}#))))
#{tmp\ 2751}#)
((lambda (#{_\ 2795}#)
(syntax-violation
'fluid-let-syntax
"bad syntax"
(#{source-wrap\ 443}#
#{e\ 2740}#
#{w\ 2742}#
#{s\ 2743}#
#{mod\ 2744}#)))
#{tmp\ 2750}#)))
($sc-dispatch
#{tmp\ 2750}#
'(any #(each (any any)) any . each-any))))
#{e\ 2740}#)))
(#{global-extend\ 368}#
'core
'quote
(lambda (#{e\ 2796}#
#{r\ 2797}#
#{w\ 2798}#
#{s\ 2799}#
#{mod\ 2800}#)
((lambda (#{tmp\ 2806}#)
((lambda (#{tmp\ 2807}#)
(if #{tmp\ 2807}#
(apply (lambda (#{_\ 2810}# #{e\ 2811}#)
(#{build-data\ 322}#
#{s\ 2799}#
(#{strip\ 483}# #{e\ 2811}# #{w\ 2798}#)))
#{tmp\ 2807}#)
((lambda (#{_\ 2813}#)
(syntax-violation
'quote
"bad syntax"
(#{source-wrap\ 443}#
#{e\ 2796}#
#{w\ 2798}#
#{s\ 2799}#
#{mod\ 2800}#)))
#{tmp\ 2806}#)))
($sc-dispatch #{tmp\ 2806}# (quote (any any)))))
#{e\ 2796}#)))
(#{global-extend\ 368}#
'core
'syntax
(letrec ((#{regen\ 2829}#
(lambda (#{x\ 2830}#)
(let ((#{atom-key\ 2834}# (car #{x\ 2830}#)))
(if (memv #{atom-key\ 2834}# (quote (ref)))
(#{build-lexical-reference\ 300}#
'value
#f
(cadr #{x\ 2830}#)
(cadr #{x\ 2830}#))
(if (memv #{atom-key\ 2834}# (quote (primitive)))
(#{build-primref\ 320}# #f (cadr #{x\ 2830}#))
(if (memv #{atom-key\ 2834}# (quote (quote)))
(#{build-data\ 322}# #f (cadr #{x\ 2830}#))
(if (memv #{atom-key\ 2834}# (quote (lambda)))
(if (list? (cadr #{x\ 2830}#))
(#{build-simple-lambda\ 314}#
#f
(cadr #{x\ 2830}#)
#f
(cadr #{x\ 2830}#)
'()
(#{regen\ 2829}# (caddr #{x\ 2830}#)))
(error "how did we get here" #{x\ 2830}#))
(#{build-application\ 294}#
#f
(#{build-primref\ 320}# #f (car #{x\ 2830}#))
(map #{regen\ 2829}#
(cdr #{x\ 2830}#))))))))))
(#{gen-vector\ 2827}#
(lambda (#{x\ 2846}#)
(if (eq? (car #{x\ 2846}#) (quote list))
(cons (quote vector) (cdr #{x\ 2846}#))
(if (eq? (car #{x\ 2846}#) (quote quote))
(list 'quote
(list->vector (cadr #{x\ 2846}#)))
(list (quote list->vector) #{x\ 2846}#)))))
(#{gen-append\ 2825}#
(lambda (#{x\ 2856}# #{y\ 2857}#)
(if (equal? #{y\ 2857}# (quote (quote ())))
#{x\ 2856}#
(list (quote append) #{x\ 2856}# #{y\ 2857}#))))
(#{gen-cons\ 2823}#
(lambda (#{x\ 2861}# #{y\ 2862}#)
(let ((#{atom-key\ 2867}# (car #{y\ 2862}#)))
(if (memv #{atom-key\ 2867}# (quote (quote)))
(if (eq? (car #{x\ 2861}#) (quote quote))
(list 'quote
(cons (cadr #{x\ 2861}#) (cadr #{y\ 2862}#)))
(if (eq? (cadr #{y\ 2862}#) (quote ()))
(list (quote list) #{x\ 2861}#)
(list (quote cons) #{x\ 2861}# #{y\ 2862}#)))
(if (memv #{atom-key\ 2867}# (quote (list)))
(cons 'list
(cons #{x\ 2861}# (cdr #{y\ 2862}#)))
(list (quote cons) #{x\ 2861}# #{y\ 2862}#))))))
(#{gen-map\ 2821}#
(lambda (#{e\ 2876}# #{map-env\ 2877}#)
(let ((#{formals\ 2882}# (map cdr #{map-env\ 2877}#))
(#{actuals\ 2883}#
(map (lambda (#{x\ 2884}#)
(list (quote ref) (car #{x\ 2884}#)))
#{map-env\ 2877}#)))
(if (eq? (car #{e\ 2876}#) (quote ref))
(car #{actuals\ 2883}#)
(if (and-map
(lambda (#{x\ 2891}#)
(if (eq? (car #{x\ 2891}#) (quote ref))
(memq (cadr #{x\ 2891}#) #{formals\ 2882}#)
#f))
(cdr #{e\ 2876}#))
(cons 'map
(cons (list 'primitive
(car #{e\ 2876}#))
(map (let ((#{r\ 2897}#
(map cons
#{formals\ 2882}#
#{actuals\ 2883}#)))
(lambda (#{x\ 2898}#)
(cdr (assq (cadr #{x\ 2898}#)
#{r\ 2897}#))))
(cdr #{e\ 2876}#))))
(cons 'map
(cons (list 'lambda
#{formals\ 2882}#
#{e\ 2876}#)
#{actuals\ 2883}#)))))))
(#{gen-mappend\ 2819}#
(lambda (#{e\ 2902}# #{map-env\ 2903}#)
(list 'apply
'(primitive append)
(#{gen-map\ 2821}# #{e\ 2902}# #{map-env\ 2903}#))))
(#{gen-ref\ 2817}#
(lambda (#{src\ 2907}#
#{var\ 2908}#
#{level\ 2909}#
#{maps\ 2910}#)
(if (#{fx=\ 277}# #{level\ 2909}# 0)
(values #{var\ 2908}# #{maps\ 2910}#)
(if (null? #{maps\ 2910}#)
(syntax-violation
'syntax
"missing ellipsis"
#{src\ 2907}#)
(call-with-values
(lambda ()
(#{gen-ref\ 2817}#
#{src\ 2907}#
#{var\ 2908}#
(#{fx-\ 275}# #{level\ 2909}# 1)
(cdr #{maps\ 2910}#)))
(lambda (#{outer-var\ 2915}# #{outer-maps\ 2916}#)
(let ((#{b\ 2920}#
(assq #{outer-var\ 2915}#
(car #{maps\ 2910}#))))
(if #{b\ 2920}#
(values (cdr #{b\ 2920}#) #{maps\ 2910}#)
(let ((#{inner-var\ 2922}#
(#{gen-var\ 485}# (quote tmp))))
(values
#{inner-var\ 2922}#
(cons (cons (cons #{outer-var\ 2915}#
#{inner-var\ 2922}#)
(car #{maps\ 2910}#))
#{outer-maps\ 2916}#)))))))))))
(#{gen-syntax\ 2815}#
(lambda (#{src\ 2923}#
#{e\ 2924}#
#{r\ 2925}#
#{maps\ 2926}#
#{ellipsis?\ 2927}#
#{mod\ 2928}#)
(if (#{id?\ 372}# #{e\ 2924}#)
(let ((#{label\ 2936}#
(#{id-var-name\ 429}#
#{e\ 2924}#
'(()))))
(let ((#{b\ 2939}#
(#{lookup\ 366}#
#{label\ 2936}#
#{r\ 2925}#
#{mod\ 2928}#)))
(if (eq? (#{binding-type\ 355}# #{b\ 2939}#)
'syntax)
(call-with-values
(lambda ()
(let ((#{var.lev\ 2941}#
(#{binding-value\ 357}# #{b\ 2939}#)))
(#{gen-ref\ 2817}#
#{src\ 2923}#
(car #{var.lev\ 2941}#)
(cdr #{var.lev\ 2941}#)
#{maps\ 2926}#)))
(lambda (#{var\ 2942}# #{maps\ 2943}#)
(values
(list (quote ref) #{var\ 2942}#)
#{maps\ 2943}#)))
(if (#{ellipsis?\ 2927}# #{e\ 2924}#)
(syntax-violation
'syntax
"misplaced ellipsis"
#{src\ 2923}#)
(values
(list (quote quote) #{e\ 2924}#)
#{maps\ 2926}#)))))
((lambda (#{tmp\ 2948}#)
((lambda (#{tmp\ 2949}#)
(if (if #{tmp\ 2949}#
(apply (lambda (#{dots\ 2952}# #{e\ 2953}#)
(#{ellipsis?\ 2927}#
#{dots\ 2952}#))
#{tmp\ 2949}#)
#f)
(apply (lambda (#{dots\ 2956}# #{e\ 2957}#)
(#{gen-syntax\ 2815}#
#{src\ 2923}#
#{e\ 2957}#
#{r\ 2925}#
#{maps\ 2926}#
(lambda (#{x\ 2958}#) #f)
#{mod\ 2928}#))
#{tmp\ 2949}#)
((lambda (#{tmp\ 2960}#)
(if (if #{tmp\ 2960}#
(apply (lambda (#{x\ 2964}#
#{dots\ 2965}#
#{y\ 2966}#)
(#{ellipsis?\ 2927}#
#{dots\ 2965}#))
#{tmp\ 2960}#)
#f)
(apply (lambda (#{x\ 2970}#
#{dots\ 2971}#
#{y\ 2972}#)
(letrec ((#{f\ 2976}#
(lambda (#{y\ 2977}#
#{k\ 2978}#)
((lambda (#{tmp\ 2985}#)
((lambda (#{tmp\ 2986}#)
(if (if #{tmp\ 2986}#
(apply (lambda (#{dots\ 2989}#
#{y\ 2990}#)
(#{ellipsis?\ 2927}#
#{dots\ 2989}#))
#{tmp\ 2986}#)
#f)
(apply (lambda (#{dots\ 2993}#
#{y\ 2994}#)
(#{f\ 2976}#
#{y\ 2994}#
(lambda (#{maps\ 2995}#)
(call-with-values
(lambda ()
(#{k\ 2978}#
(cons '()
#{maps\ 2995}#)))
(lambda (#{x\ 2997}#
#{maps\ 2998}#)
(if (null? (car #{maps\ 2998}#))
(syntax-violation
'syntax
"extra ellipsis"
#{src\ 2923}#)
(values
(#{gen-mappend\ 2819}#
#{x\ 2997}#
(car #{maps\ 2998}#))
(cdr #{maps\ 2998}#))))))))
#{tmp\ 2986}#)
((lambda (#{_\ 3002}#)
(call-with-values
(lambda ()
(#{gen-syntax\ 2815}#
#{src\ 2923}#
#{y\ 2977}#
#{r\ 2925}#
#{maps\ 2926}#
#{ellipsis?\ 2927}#
#{mod\ 2928}#))
(lambda (#{y\ 3003}#
#{maps\ 3004}#)
(call-with-values
(lambda ()
(#{k\ 2978}#
#{maps\ 3004}#))
(lambda (#{x\ 3007}#
#{maps\ 3008}#)
(values
(#{gen-append\ 2825}#
#{x\ 3007}#
#{y\ 3003}#)
#{maps\ 3008}#))))))
#{tmp\ 2985}#)))
($sc-dispatch
#{tmp\ 2985}#
'(any . any))))
#{y\ 2977}#))))
(#{f\ 2976}#
#{y\ 2972}#
(lambda (#{maps\ 2979}#)
(call-with-values
(lambda ()
(#{gen-syntax\ 2815}#
#{src\ 2923}#
#{x\ 2970}#
#{r\ 2925}#
(cons '()
#{maps\ 2979}#)
#{ellipsis?\ 2927}#
#{mod\ 2928}#))
(lambda (#{x\ 2981}#
#{maps\ 2982}#)
(if (null? (car #{maps\ 2982}#))
(syntax-violation
'syntax
"extra ellipsis"
#{src\ 2923}#)
(values
(#{gen-map\ 2821}#
#{x\ 2981}#
(car #{maps\ 2982}#))
(cdr #{maps\ 2982}#)))))))))
#{tmp\ 2960}#)
((lambda (#{tmp\ 3011}#)
(if #{tmp\ 3011}#
(apply (lambda (#{x\ 3014}#
#{y\ 3015}#)
(call-with-values
(lambda ()
(#{gen-syntax\ 2815}#
#{src\ 2923}#
#{x\ 3014}#
#{r\ 2925}#
#{maps\ 2926}#
#{ellipsis?\ 2927}#
#{mod\ 2928}#))
(lambda (#{x\ 3016}#
#{maps\ 3017}#)
(call-with-values
(lambda ()
(#{gen-syntax\ 2815}#
#{src\ 2923}#
#{y\ 3015}#
#{r\ 2925}#
#{maps\ 3017}#
#{ellipsis?\ 2927}#
#{mod\ 2928}#))
(lambda (#{y\ 3020}#
#{maps\ 3021}#)
(values
(#{gen-cons\ 2823}#
#{x\ 3016}#
#{y\ 3020}#)
#{maps\ 3021}#))))))
#{tmp\ 3011}#)
((lambda (#{tmp\ 3024}#)
(if #{tmp\ 3024}#
(apply (lambda (#{e1\ 3027}#
#{e2\ 3028}#)
(call-with-values
(lambda ()
(#{gen-syntax\ 2815}#
#{src\ 2923}#
(cons #{e1\ 3027}#
#{e2\ 3028}#)
#{r\ 2925}#
#{maps\ 2926}#
#{ellipsis?\ 2927}#
#{mod\ 2928}#))
(lambda (#{e\ 3030}#
#{maps\ 3031}#)
(values
(#{gen-vector\ 2827}#
#{e\ 3030}#)
#{maps\ 3031}#))))
#{tmp\ 3024}#)
((lambda (#{_\ 3035}#)
(values
(list 'quote
#{e\ 2924}#)
#{maps\ 2926}#))
#{tmp\ 2948}#)))
($sc-dispatch
#{tmp\ 2948}#
'#(vector (any . each-any))))))
($sc-dispatch
#{tmp\ 2948}#
'(any . any)))))
($sc-dispatch
#{tmp\ 2948}#
'(any any . any)))))
($sc-dispatch #{tmp\ 2948}# (quote (any any)))))
#{e\ 2924}#)))))
(lambda (#{e\ 3037}#
#{r\ 3038}#
#{w\ 3039}#
#{s\ 3040}#
#{mod\ 3041}#)
(let ((#{e\ 3048}#
(#{source-wrap\ 443}#
#{e\ 3037}#
#{w\ 3039}#
#{s\ 3040}#
#{mod\ 3041}#)))
((lambda (#{tmp\ 3049}#)
((lambda (#{tmp\ 3050}#)
(if #{tmp\ 3050}#
(apply (lambda (#{_\ 3053}# #{x\ 3054}#)
(call-with-values
(lambda ()
(#{gen-syntax\ 2815}#
#{e\ 3048}#
#{x\ 3054}#
#{r\ 3038}#
'()
#{ellipsis?\ 473}#
#{mod\ 3041}#))
(lambda (#{e\ 3055}# #{maps\ 3056}#)
(#{regen\ 2829}# #{e\ 3055}#))))
#{tmp\ 3050}#)
((lambda (#{_\ 3060}#)
(syntax-violation
'syntax
"bad `syntax' form"
#{e\ 3048}#))
#{tmp\ 3049}#)))
($sc-dispatch #{tmp\ 3049}# (quote (any any)))))
#{e\ 3048}#)))))
(#{global-extend\ 368}#
'core
'lambda
(lambda (#{e\ 3061}#
#{r\ 3062}#
#{w\ 3063}#
#{s\ 3064}#
#{mod\ 3065}#)
((lambda (#{tmp\ 3071}#)
((lambda (#{tmp\ 3072}#)
(if #{tmp\ 3072}#
(apply (lambda (#{_\ 3077}#
#{args\ 3078}#
#{e1\ 3079}#
#{e2\ 3080}#)
(call-with-values
(lambda ()
(#{lambda-formals\ 475}# #{args\ 3078}#))
(lambda (#{req\ 3081}#
#{opt\ 3082}#
#{rest\ 3083}#
#{kw\ 3084}#)
(letrec ((#{lp\ 3092}#
(lambda (#{body\ 3093}#
#{meta\ 3094}#)
((lambda (#{tmp\ 3096}#)
((lambda (#{tmp\ 3097}#)
(if (if #{tmp\ 3097}#
(apply (lambda (#{docstring\ 3101}#
#{e1\ 3102}#
#{e2\ 3103}#)
(string?
(syntax->datum
#{docstring\ 3101}#)))
#{tmp\ 3097}#)
#f)
(apply (lambda (#{docstring\ 3107}#
#{e1\ 3108}#
#{e2\ 3109}#)
(#{lp\ 3092}#
(cons #{e1\ 3108}#
#{e2\ 3109}#)
(append
#{meta\ 3094}#
(list (cons 'documentation
(syntax->datum
#{docstring\ 3107}#))))))
#{tmp\ 3097}#)
((lambda (#{tmp\ 3112}#)
(if #{tmp\ 3112}#
(apply (lambda (#{k\ 3117}#
#{v\ 3118}#
#{e1\ 3119}#
#{e2\ 3120}#)
(#{lp\ 3092}#
(cons #{e1\ 3119}#
#{e2\ 3120}#)
(append
#{meta\ 3094}#
(syntax->datum
(map cons
#{k\ 3117}#
#{v\ 3118}#)))))
#{tmp\ 3112}#)
((lambda (#{_\ 3125}#)
(#{chi-simple-lambda\ 477}#
#{e\ 3061}#
#{r\ 3062}#
#{w\ 3063}#
#{s\ 3064}#
#{mod\ 3065}#
#{req\ 3081}#
#{rest\ 3083}#
#{meta\ 3094}#
#{body\ 3093}#))
#{tmp\ 3096}#)))
($sc-dispatch
#{tmp\ 3096}#
'(#(vector
#(each (any . any)))
any
.
each-any)))))
($sc-dispatch
#{tmp\ 3096}#
'(any any . each-any))))
#{body\ 3093}#))))
(#{lp\ 3092}#
(cons #{e1\ 3079}# #{e2\ 3080}#)
'())))))
#{tmp\ 3072}#)
((lambda (#{_\ 3127}#)
(syntax-violation
'lambda
"bad lambda"
#{e\ 3061}#))
#{tmp\ 3071}#)))
($sc-dispatch
#{tmp\ 3071}#
'(any any any . each-any))))
#{e\ 3061}#)))
(#{global-extend\ 368}#
'core
'lambda*
(lambda (#{e\ 3128}#
#{r\ 3129}#
#{w\ 3130}#
#{s\ 3131}#
#{mod\ 3132}#)
((lambda (#{tmp\ 3138}#)
((lambda (#{tmp\ 3139}#)
(if #{tmp\ 3139}#
(apply (lambda (#{_\ 3144}#
#{args\ 3145}#
#{e1\ 3146}#
#{e2\ 3147}#)
(call-with-values
(lambda ()
(#{chi-lambda-case\ 481}#
#{e\ 3128}#
#{r\ 3129}#
#{w\ 3130}#
#{s\ 3131}#
#{mod\ 3132}#
#{lambda*-formals\ 479}#
(list (cons #{args\ 3145}#
(cons #{e1\ 3146}#
#{e2\ 3147}#)))))
(lambda (#{meta\ 3149}# #{lcase\ 3150}#)
(#{build-case-lambda\ 316}#
#{s\ 3131}#
#{meta\ 3149}#
#{lcase\ 3150}#))))
#{tmp\ 3139}#)
((lambda (#{_\ 3154}#)
(syntax-violation
'lambda
"bad lambda*"
#{e\ 3128}#))
#{tmp\ 3138}#)))
($sc-dispatch
#{tmp\ 3138}#
'(any any any . each-any))))
#{e\ 3128}#)))
(#{global-extend\ 368}#
'core
'case-lambda
(lambda (#{e\ 3155}#
#{r\ 3156}#
#{w\ 3157}#
#{s\ 3158}#
#{mod\ 3159}#)
((lambda (#{tmp\ 3165}#)
((lambda (#{tmp\ 3166}#)
(if #{tmp\ 3166}#
(apply (lambda (#{_\ 3174}#
#{args\ 3175}#
#{e1\ 3176}#
#{e2\ 3177}#
#{args*\ 3178}#
#{e1*\ 3179}#
#{e2*\ 3180}#)
(call-with-values
(lambda ()
(#{chi-lambda-case\ 481}#
#{e\ 3155}#
#{r\ 3156}#
#{w\ 3157}#
#{s\ 3158}#
#{mod\ 3159}#
#{lambda-formals\ 475}#
(cons (cons #{args\ 3175}#
(cons #{e1\ 3176}# #{e2\ 3177}#))
(map (lambda (#{tmp\ 3184}#
#{tmp\ 3183}#
#{tmp\ 3182}#)
(cons #{tmp\ 3182}#
(cons #{tmp\ 3183}#
#{tmp\ 3184}#)))
#{e2*\ 3180}#
#{e1*\ 3179}#
#{args*\ 3178}#))))
(lambda (#{meta\ 3186}# #{lcase\ 3187}#)
(#{build-case-lambda\ 316}#
#{s\ 3158}#
#{meta\ 3186}#
#{lcase\ 3187}#))))
#{tmp\ 3166}#)
((lambda (#{_\ 3191}#)
(syntax-violation
'case-lambda
"bad case-lambda"
#{e\ 3155}#))
#{tmp\ 3165}#)))
($sc-dispatch
#{tmp\ 3165}#
'(any (any any . each-any)
.
#(each (any any . each-any))))))
#{e\ 3155}#)))
(#{global-extend\ 368}#
'core
'case-lambda*
(lambda (#{e\ 3192}#
#{r\ 3193}#
#{w\ 3194}#
#{s\ 3195}#
#{mod\ 3196}#)
((lambda (#{tmp\ 3202}#)
((lambda (#{tmp\ 3203}#)
(if #{tmp\ 3203}#
(apply (lambda (#{_\ 3211}#
#{args\ 3212}#
#{e1\ 3213}#
#{e2\ 3214}#
#{args*\ 3215}#
#{e1*\ 3216}#
#{e2*\ 3217}#)
(call-with-values
(lambda ()
(#{chi-lambda-case\ 481}#
#{e\ 3192}#
#{r\ 3193}#
#{w\ 3194}#
#{s\ 3195}#
#{mod\ 3196}#
#{lambda*-formals\ 479}#
(cons (cons #{args\ 3212}#
(cons #{e1\ 3213}# #{e2\ 3214}#))
(map (lambda (#{tmp\ 3221}#
#{tmp\ 3220}#
#{tmp\ 3219}#)
(cons #{tmp\ 3219}#
(cons #{tmp\ 3220}#
#{tmp\ 3221}#)))
#{e2*\ 3217}#
#{e1*\ 3216}#
#{args*\ 3215}#))))
(lambda (#{meta\ 3223}# #{lcase\ 3224}#)
(#{build-case-lambda\ 316}#
#{s\ 3195}#
#{meta\ 3223}#
#{lcase\ 3224}#))))
#{tmp\ 3203}#)
((lambda (#{_\ 3228}#)
(syntax-violation
'case-lambda
"bad case-lambda*"
#{e\ 3192}#))
#{tmp\ 3202}#)))
($sc-dispatch
#{tmp\ 3202}#
'(any (any any . each-any)
.
#(each (any any . each-any))))))
#{e\ 3192}#)))
(#{global-extend\ 368}#
'core
'let
(letrec ((#{chi-let\ 3230}#
(lambda (#{e\ 3231}#
#{r\ 3232}#
#{w\ 3233}#
#{s\ 3234}#
#{mod\ 3235}#
#{constructor\ 3236}#
#{ids\ 3237}#
#{vals\ 3238}#
#{exps\ 3239}#)
(if (not (#{valid-bound-ids?\ 435}# #{ids\ 3237}#))
(syntax-violation
'let
"duplicate bound variable"
#{e\ 3231}#)
(let ((#{labels\ 3251}#
(#{gen-labels\ 390}# #{ids\ 3237}#))
(#{new-vars\ 3252}#
(map #{gen-var\ 485}# #{ids\ 3237}#)))
(let ((#{nw\ 3255}#
(#{make-binding-wrap\ 419}#
#{ids\ 3237}#
#{labels\ 3251}#
#{w\ 3233}#))
(#{nr\ 3256}#
(#{extend-var-env\ 362}#
#{labels\ 3251}#
#{new-vars\ 3252}#
#{r\ 3232}#)))
(#{constructor\ 3236}#
#{s\ 3234}#
(map syntax->datum #{ids\ 3237}#)
#{new-vars\ 3252}#
(map (lambda (#{x\ 3257}#)
(#{chi\ 457}#
#{x\ 3257}#
#{r\ 3232}#
#{w\ 3233}#
#{mod\ 3235}#))
#{vals\ 3238}#)
(#{chi-body\ 465}#
#{exps\ 3239}#
(#{source-wrap\ 443}#
#{e\ 3231}#
#{nw\ 3255}#
#{s\ 3234}#
#{mod\ 3235}#)
#{nr\ 3256}#
#{nw\ 3255}#
#{mod\ 3235}#))))))))
(lambda (#{e\ 3259}#
#{r\ 3260}#
#{w\ 3261}#
#{s\ 3262}#
#{mod\ 3263}#)
((lambda (#{tmp\ 3269}#)
((lambda (#{tmp\ 3270}#)
(if (if #{tmp\ 3270}#
(apply (lambda (#{_\ 3276}#
#{id\ 3277}#
#{val\ 3278}#
#{e1\ 3279}#
#{e2\ 3280}#)
(and-map #{id?\ 372}# #{id\ 3277}#))
#{tmp\ 3270}#)
#f)
(apply (lambda (#{_\ 3287}#
#{id\ 3288}#
#{val\ 3289}#
#{e1\ 3290}#
#{e2\ 3291}#)
(#{chi-let\ 3230}#
#{e\ 3259}#
#{r\ 3260}#
#{w\ 3261}#
#{s\ 3262}#
#{mod\ 3263}#
#{build-let\ 326}#
#{id\ 3288}#
#{val\ 3289}#
(cons #{e1\ 3290}# #{e2\ 3291}#)))
#{tmp\ 3270}#)
((lambda (#{tmp\ 3295}#)
(if (if #{tmp\ 3295}#
(apply (lambda (#{_\ 3302}#
#{f\ 3303}#
#{id\ 3304}#
#{val\ 3305}#
#{e1\ 3306}#
#{e2\ 3307}#)
(if (#{id?\ 372}# #{f\ 3303}#)
(and-map #{id?\ 372}# #{id\ 3304}#)
#f))
#{tmp\ 3295}#)
#f)
(apply (lambda (#{_\ 3317}#
#{f\ 3318}#
#{id\ 3319}#
#{val\ 3320}#
#{e1\ 3321}#
#{e2\ 3322}#)
(#{chi-let\ 3230}#
#{e\ 3259}#
#{r\ 3260}#
#{w\ 3261}#
#{s\ 3262}#
#{mod\ 3263}#
#{build-named-let\ 328}#
(cons #{f\ 3318}# #{id\ 3319}#)
#{val\ 3320}#
(cons #{e1\ 3321}# #{e2\ 3322}#)))
#{tmp\ 3295}#)
((lambda (#{_\ 3327}#)
(syntax-violation
'let
"bad let"
(#{source-wrap\ 443}#
#{e\ 3259}#
#{w\ 3261}#
#{s\ 3262}#
#{mod\ 3263}#)))
#{tmp\ 3269}#)))
($sc-dispatch
#{tmp\ 3269}#
'(any any #(each (any any)) any . each-any)))))
($sc-dispatch
#{tmp\ 3269}#
'(any #(each (any any)) any . each-any))))
#{e\ 3259}#))))
(#{global-extend\ 368}#
'core
'letrec
(lambda (#{e\ 3328}#
#{r\ 3329}#
#{w\ 3330}#
#{s\ 3331}#
#{mod\ 3332}#)
((lambda (#{tmp\ 3338}#)
((lambda (#{tmp\ 3339}#)
(if (if #{tmp\ 3339}#
(apply (lambda (#{_\ 3345}#
#{id\ 3346}#
#{val\ 3347}#
#{e1\ 3348}#
#{e2\ 3349}#)
(and-map #{id?\ 372}# #{id\ 3346}#))
#{tmp\ 3339}#)
#f)
(apply (lambda (#{_\ 3356}#
#{id\ 3357}#
#{val\ 3358}#
#{e1\ 3359}#
#{e2\ 3360}#)
(let ((#{ids\ 3362}# #{id\ 3357}#))
(if (not (#{valid-bound-ids?\ 435}#
#{ids\ 3362}#))
(syntax-violation
'letrec
"duplicate bound variable"
#{e\ 3328}#)
(let ((#{labels\ 3366}#
(#{gen-labels\ 390}# #{ids\ 3362}#))
(#{new-vars\ 3367}#
(map #{gen-var\ 485}# #{ids\ 3362}#)))
(let ((#{w\ 3370}#
(#{make-binding-wrap\ 419}#
#{ids\ 3362}#
#{labels\ 3366}#
#{w\ 3330}#))
(#{r\ 3371}#
(#{extend-var-env\ 362}#
#{labels\ 3366}#
#{new-vars\ 3367}#
#{r\ 3329}#)))
(#{build-letrec\ 330}#
#{s\ 3331}#
(map syntax->datum #{ids\ 3362}#)
#{new-vars\ 3367}#
(map (lambda (#{x\ 3372}#)
(#{chi\ 457}#
#{x\ 3372}#
#{r\ 3371}#
#{w\ 3370}#
#{mod\ 3332}#))
#{val\ 3358}#)
(#{chi-body\ 465}#
(cons #{e1\ 3359}# #{e2\ 3360}#)
(#{source-wrap\ 443}#
#{e\ 3328}#
#{w\ 3370}#
#{s\ 3331}#
#{mod\ 3332}#)
#{r\ 3371}#
#{w\ 3370}#
#{mod\ 3332}#)))))))
#{tmp\ 3339}#)
((lambda (#{_\ 3377}#)
(syntax-violation
'letrec
"bad letrec"
(#{source-wrap\ 443}#
#{e\ 3328}#
#{w\ 3330}#
#{s\ 3331}#
#{mod\ 3332}#)))
#{tmp\ 3338}#)))
($sc-dispatch
#{tmp\ 3338}#
'(any #(each (any any)) any . each-any))))
#{e\ 3328}#)))
(#{global-extend\ 368}#
'core
'set!
(lambda (#{e\ 3378}#
#{r\ 3379}#
#{w\ 3380}#
#{s\ 3381}#
#{mod\ 3382}#)
((lambda (#{tmp\ 3388}#)
((lambda (#{tmp\ 3389}#)
(if (if #{tmp\ 3389}#
(apply (lambda (#{_\ 3393}# #{id\ 3394}# #{val\ 3395}#)
(#{id?\ 372}# #{id\ 3394}#))
#{tmp\ 3389}#)
#f)
(apply (lambda (#{_\ 3399}# #{id\ 3400}# #{val\ 3401}#)
(let ((#{val\ 3404}#
(#{chi\ 457}#
#{val\ 3401}#
#{r\ 3379}#
#{w\ 3380}#
#{mod\ 3382}#))
(#{n\ 3405}#
(#{id-var-name\ 429}#
#{id\ 3400}#
#{w\ 3380}#)))
(let ((#{b\ 3407}#
(#{lookup\ 366}#
#{n\ 3405}#
#{r\ 3379}#
#{mod\ 3382}#)))
(let ((#{atom-key\ 3410}#
(#{binding-type\ 355}# #{b\ 3407}#)))
(if (memv #{atom-key\ 3410}#
'(lexical))
(#{build-lexical-assignment\ 302}#
#{s\ 3381}#
(syntax->datum #{id\ 3400}#)
(#{binding-value\ 357}# #{b\ 3407}#)
#{val\ 3404}#)
(if (memv #{atom-key\ 3410}#
'(global))
(#{build-global-assignment\ 308}#
#{s\ 3381}#
#{n\ 3405}#
#{val\ 3404}#
#{mod\ 3382}#)
(if (memv #{atom-key\ 3410}#
'(displaced-lexical))
(syntax-violation
'set!
"identifier out of context"
(#{wrap\ 441}#
#{id\ 3400}#
#{w\ 3380}#
#{mod\ 3382}#))
(syntax-violation
'set!
"bad set!"
(#{source-wrap\ 443}#
#{e\ 3378}#
#{w\ 3380}#
#{s\ 3381}#
#{mod\ 3382}#)))))))))
#{tmp\ 3389}#)
((lambda (#{tmp\ 3415}#)
(if #{tmp\ 3415}#
(apply (lambda (#{_\ 3420}#
#{head\ 3421}#
#{tail\ 3422}#
#{val\ 3423}#)
(call-with-values
(lambda ()
(#{syntax-type\ 453}#
#{head\ 3421}#
#{r\ 3379}#
'(())
#f
#f
#{mod\ 3382}#
#t))
(lambda (#{type\ 3426}#
#{value\ 3427}#
#{ee\ 3428}#
#{ww\ 3429}#
#{ss\ 3430}#
#{modmod\ 3431}#)
(if (memv #{type\ 3426}#
'(module-ref))
(let ((#{val\ 3440}#
(#{chi\ 457}#
#{val\ 3423}#
#{r\ 3379}#
#{w\ 3380}#
#{mod\ 3382}#)))
(call-with-values
(lambda ()
(#{value\ 3427}#
(cons #{head\ 3421}#
#{tail\ 3422}#)
#{r\ 3379}#
#{w\ 3380}#))
(lambda (#{e\ 3442}#
#{r\ 3443}#
#{w\ 3444}#
#{s*\ 3445}#
#{mod\ 3446}#)
((lambda (#{tmp\ 3452}#)
((lambda (#{tmp\ 3453}#)
(if (if #{tmp\ 3453}#
(apply (lambda (#{e\ 3455}#)
(#{id?\ 372}#
#{e\ 3455}#))
#{tmp\ 3453}#)
#f)
(apply (lambda (#{e\ 3457}#)
(#{build-global-assignment\ 308}#
#{s\ 3381}#
(syntax->datum
#{e\ 3457}#)
#{val\ 3440}#
#{mod\ 3446}#))
#{tmp\ 3453}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 3452}#)))
(list #{tmp\ 3452}#)))
#{e\ 3442}#))))
(#{build-application\ 294}#
#{s\ 3381}#
(#{chi\ 457}#
(list '#(syntax-object
setter
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(type
value
ee
ww
ss
modmod)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i3432"
"i3433"
"i3434"
"i3435"
"i3436"
"i3437"))
#(ribcage
#(_ head tail val)
#((top)
(top)
(top)
(top))
#("i3416"
"i3417"
"i3418"
"i3419"))
#(ribcage () () ())
#(ribcage
#(e r w s mod)
#((top)
(top)
(top)
(top)
(top))
#("i3383"
"i3384"
"i3385"
"i3386"
"i3387"))
#(ribcage
(lambda-var-list
gen-var
strip
chi-lambda-case
lambda*-formals
chi-simple-lambda
lambda-formals
ellipsis?
chi-void
eval-local-transformer
chi-local-syntax
chi-body
chi-macro
chi-application
chi-expr
chi
chi-top
syntax-type
chi-when-list
chi-install-global
chi-top-sequence
chi-sequence
source-wrap
wrap
bound-id-member?
distinct-bound-ids?
valid-bound-ids?
bound-id=?
free-id=?
id-var-name
same-marks?
join-marks
join-wraps
smart-append
make-binding-wrap
extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
set-ribcage-symnames!
ribcage-labels
ribcage-marks
ribcage-symnames
ribcage?
make-ribcage
gen-labels
gen-label
make-rename
rename-marks
rename-new
rename-old
subst-rename?
wrap-subst
wrap-marks
make-wrap
id-sym-name&marks
id-sym-name
id?
nonsymbol-id?
global-extend
lookup
macros-only-env
extend-var-env
extend-env
null-env
binding-value
binding-type
make-binding
arg-check
source-annotation
no-source
set-syntax-object-module!
set-syntax-object-wrap!
set-syntax-object-expression!
syntax-object-module
syntax-object-wrap
syntax-object-expression
syntax-object?
make-syntax-object
build-lexical-var
build-letrec
build-named-let
build-let
build-sequence
build-data
build-primref
build-lambda-case
build-case-lambda
build-simple-lambda
build-global-definition
maybe-name-value!
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
decorate-source
get-global-definition-hook
put-global-definition-hook
gensym-hook
local-eval-hook
top-level-eval-hook
fx<
fx=
fx-
fx+
set-lambda-meta!
lambda-meta
lambda?
make-dynlet
make-letrec
make-let
make-lambda-case
make-lambda
make-sequence
make-application
make-conditional
make-toplevel-define
make-toplevel-set
make-toplevel-ref
make-module-set
make-module-ref
make-lexical-set
make-lexical-ref
make-primitive-ref
make-const
make-void)
((top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top))
("i486"
"i484"
"i482"
"i480"
"i478"
"i476"
"i474"
"i472"
"i470"
"i468"
"i466"
"i464"
"i462"
"i460"
"i458"
"i456"
"i454"
"i452"
"i450"
"i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i415"
"i414"
"i412"
"i411"
"i410"
"i409"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i389"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i373"
"i371"
"i369"
"i367"
"i365"
"i363"
"i361"
"i359"
"i358"
"i356"
"i354"
"i353"
"i352"
"i350"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"
"i235"
"i233"
"i231"
"i229"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i23"
"i22"
"i21"
"i19")))
(hygiene guile))
#{head\ 3421}#)
#{r\ 3379}#
#{w\ 3380}#
#{mod\ 3382}#)
(map (lambda (#{e\ 3459}#)
(#{chi\ 457}#
#{e\ 3459}#
#{r\ 3379}#
#{w\ 3380}#
#{mod\ 3382}#))
(append
#{tail\ 3422}#
(list #{val\ 3423}#))))))))
#{tmp\ 3415}#)
((lambda (#{_\ 3463}#)
(syntax-violation
'set!
"bad set!"
(#{source-wrap\ 443}#
#{e\ 3378}#
#{w\ 3380}#
#{s\ 3381}#
#{mod\ 3382}#)))
#{tmp\ 3388}#)))
($sc-dispatch
#{tmp\ 3388}#
'(any (any . each-any) any)))))
($sc-dispatch
#{tmp\ 3388}#
'(any any any))))
#{e\ 3378}#)))
(#{global-extend\ 368}#
'module-ref
'@
(lambda (#{e\ 3464}# #{r\ 3465}# #{w\ 3466}#)
((lambda (#{tmp\ 3470}#)
((lambda (#{tmp\ 3471}#)
(if (if #{tmp\ 3471}#
(apply (lambda (#{_\ 3475}# #{mod\ 3476}# #{id\ 3477}#)
(if (and-map #{id?\ 372}# #{mod\ 3476}#)
(#{id?\ 372}# #{id\ 3477}#)
#f))
#{tmp\ 3471}#)
#f)
(apply (lambda (#{_\ 3484}# #{mod\ 3485}# #{id\ 3486}#)
(values
(syntax->datum #{id\ 3486}#)
#{r\ 3465}#
#{w\ 3466}#
#f
(syntax->datum
(cons '#(syntax-object
public
((top)
#(ribcage
#(_ mod id)
#((top) (top) (top))
#("i3481" "i3482" "i3483"))
#(ribcage () () ())
#(ribcage
#(e r w)
#((top) (top) (top))
#("i3467" "i3468" "i3469"))
#(ribcage
(lambda-var-list
gen-var
strip
chi-lambda-case
lambda*-formals
chi-simple-lambda
lambda-formals
ellipsis?
chi-void
eval-local-transformer
chi-local-syntax
chi-body
chi-macro
chi-application
chi-expr
chi
chi-top
syntax-type
chi-when-list
chi-install-global
chi-top-sequence
chi-sequence
source-wrap
wrap
bound-id-member?
distinct-bound-ids?
valid-bound-ids?
bound-id=?
free-id=?
id-var-name
same-marks?
join-marks
join-wraps
smart-append
make-binding-wrap
extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
set-ribcage-symnames!
ribcage-labels
ribcage-marks
ribcage-symnames
ribcage?
make-ribcage
gen-labels
gen-label
make-rename
rename-marks
rename-new
rename-old
subst-rename?
wrap-subst
wrap-marks
make-wrap
id-sym-name&marks
id-sym-name
id?
nonsymbol-id?
global-extend
lookup
macros-only-env
extend-var-env
extend-env
null-env
binding-value
binding-type
make-binding
arg-check
source-annotation
no-source
set-syntax-object-module!
set-syntax-object-wrap!
set-syntax-object-expression!
syntax-object-module
syntax-object-wrap
syntax-object-expression
syntax-object?
make-syntax-object
build-lexical-var
build-letrec
build-named-let
build-let
build-sequence
build-data
build-primref
build-lambda-case
build-case-lambda
build-simple-lambda
build-global-definition
maybe-name-value!
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
decorate-source
get-global-definition-hook
put-global-definition-hook
gensym-hook
local-eval-hook
top-level-eval-hook
fx<
fx=
fx-
fx+
set-lambda-meta!
lambda-meta
lambda?
make-dynlet
make-letrec
make-let
make-lambda-case
make-lambda
make-sequence
make-application
make-conditional
make-toplevel-define
make-toplevel-set
make-toplevel-ref
make-module-set
make-module-ref
make-lexical-set
make-lexical-ref
make-primitive-ref
make-const
make-void)
((top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top))
("i486"
"i484"
"i482"
"i480"
"i478"
"i476"
"i474"
"i472"
"i470"
"i468"
"i466"
"i464"
"i462"
"i460"
"i458"
"i456"
"i454"
"i452"
"i450"
"i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i415"
"i414"
"i412"
"i411"
"i410"
"i409"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i389"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i373"
"i371"
"i369"
"i367"
"i365"
"i363"
"i361"
"i359"
"i358"
"i356"
"i354"
"i353"
"i352"
"i350"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"
"i235"
"i233"
"i231"
"i229"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i23" "i22" "i21" "i19")))
(hygiene guile))
#{mod\ 3485}#))))
#{tmp\ 3471}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 3470}#)))
($sc-dispatch
#{tmp\ 3470}#
'(any each-any any))))
#{e\ 3464}#)))
(#{global-extend\ 368}#
'module-ref
'@@
(lambda (#{e\ 3488}# #{r\ 3489}# #{w\ 3490}#)
(letrec ((#{remodulate\ 3495}#
(lambda (#{x\ 3496}# #{mod\ 3497}#)
(if (pair? #{x\ 3496}#)
(cons (#{remodulate\ 3495}#
(car #{x\ 3496}#)
#{mod\ 3497}#)
(#{remodulate\ 3495}#
(cdr #{x\ 3496}#)
#{mod\ 3497}#))
(if (#{syntax-object?\ 336}# #{x\ 3496}#)
(#{make-syntax-object\ 334}#
(#{remodulate\ 3495}#
(#{syntax-object-expression\ 338}# #{x\ 3496}#)
#{mod\ 3497}#)
(#{syntax-object-wrap\ 340}# #{x\ 3496}#)
#{mod\ 3497}#)
(if (vector? #{x\ 3496}#)
(let ((#{n\ 3508}# (vector-length #{x\ 3496}#)))
(let ((#{v\ 3510}# (make-vector #{n\ 3508}#)))
(letrec ((#{loop\ 3513}#
(lambda (#{i\ 3514}#)
(if (#{fx=\ 277}#
#{i\ 3514}#
#{n\ 3508}#)
(begin (if #f #f) #{v\ 3510}#)
(begin
(vector-set!
#{v\ 3510}#
#{i\ 3514}#
(#{remodulate\ 3495}#
(vector-ref
#{x\ 3496}#
#{i\ 3514}#)
#{mod\ 3497}#))
(#{loop\ 3513}#
(#{fx+\ 273}#
#{i\ 3514}#
1)))))))
(#{loop\ 3513}# 0))))
#{x\ 3496}#))))))
((lambda (#{tmp\ 3518}#)
((lambda (#{tmp\ 3519}#)
(if (if #{tmp\ 3519}#
(apply (lambda (#{_\ 3523}#
#{mod\ 3524}#
#{exp\ 3525}#)
(and-map #{id?\ 372}# #{mod\ 3524}#))
#{tmp\ 3519}#)
#f)
(apply (lambda (#{_\ 3530}# #{mod\ 3531}# #{exp\ 3532}#)
(let ((#{mod\ 3534}#
(syntax->datum
(cons '#(syntax-object
private
((top)
#(ribcage
#(_ mod exp)
#((top) (top) (top))
#("i3527" "i3528" "i3529"))
#(ribcage
(remodulate)
((top))
("i3494"))
#(ribcage
#(e r w)
#((top) (top) (top))
#("i3491" "i3492" "i3493"))
#(ribcage
(lambda-var-list
gen-var
strip
chi-lambda-case
lambda*-formals
chi-simple-lambda
lambda-formals
ellipsis?
chi-void
eval-local-transformer
chi-local-syntax
chi-body
chi-macro
chi-application
chi-expr
chi
chi-top
syntax-type
chi-when-list
chi-install-global
chi-top-sequence
chi-sequence
source-wrap
wrap
bound-id-member?
distinct-bound-ids?
valid-bound-ids?
bound-id=?
free-id=?
id-var-name
same-marks?
join-marks
join-wraps
smart-append
make-binding-wrap
extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
set-ribcage-symnames!
ribcage-labels
ribcage-marks
ribcage-symnames
ribcage?
make-ribcage
gen-labels
gen-label
make-rename
rename-marks
rename-new
rename-old
subst-rename?
wrap-subst
wrap-marks
make-wrap
id-sym-name&marks
id-sym-name
id?
nonsymbol-id?
global-extend
lookup
macros-only-env
extend-var-env
extend-env
null-env
binding-value
binding-type
make-binding
arg-check
source-annotation
no-source
set-syntax-object-module!
set-syntax-object-wrap!
set-syntax-object-expression!
syntax-object-module
syntax-object-wrap
syntax-object-expression
syntax-object?
make-syntax-object
build-lexical-var
build-letrec
build-named-let
build-let
build-sequence
build-data
build-primref
build-lambda-case
build-case-lambda
build-simple-lambda
build-global-definition
maybe-name-value!
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
decorate-source
get-global-definition-hook
put-global-definition-hook
gensym-hook
local-eval-hook
top-level-eval-hook
fx<
fx=
fx-
fx+
set-lambda-meta!
lambda-meta
lambda?
make-dynlet
make-letrec
make-let
make-lambda-case
make-lambda
make-sequence
make-application
make-conditional
make-toplevel-define
make-toplevel-set
make-toplevel-ref
make-module-set
make-module-ref
make-lexical-set
make-lexical-ref
make-primitive-ref
make-const
make-void)
((top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top))
("i486"
"i484"
"i482"
"i480"
"i478"
"i476"
"i474"
"i472"
"i470"
"i468"
"i466"
"i464"
"i462"
"i460"
"i458"
"i456"
"i454"
"i452"
"i450"
"i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i415"
"i414"
"i412"
"i411"
"i410"
"i409"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i389"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i373"
"i371"
"i369"
"i367"
"i365"
"i363"
"i361"
"i359"
"i358"
"i356"
"i354"
"i353"
"i352"
"i350"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"
"i235"
"i233"
"i231"
"i229"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i23" "i22" "i21" "i19")))
(hygiene guile))
#{mod\ 3531}#))))
(values
(#{remodulate\ 3495}#
#{exp\ 3532}#
#{mod\ 3534}#)
#{r\ 3489}#
#{w\ 3490}#
(#{source-annotation\ 351}# #{exp\ 3532}#)
#{mod\ 3534}#)))
#{tmp\ 3519}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 3518}#)))
($sc-dispatch
#{tmp\ 3518}#
'(any each-any any))))
#{e\ 3488}#))))
(#{global-extend\ 368}#
'core
'if
(lambda (#{e\ 3536}#
#{r\ 3537}#
#{w\ 3538}#
#{s\ 3539}#
#{mod\ 3540}#)
((lambda (#{tmp\ 3546}#)
((lambda (#{tmp\ 3547}#)
(if #{tmp\ 3547}#
(apply (lambda (#{_\ 3551}# #{test\ 3552}# #{then\ 3553}#)
(#{build-conditional\ 296}#
#{s\ 3539}#
(#{chi\ 457}#
#{test\ 3552}#
#{r\ 3537}#
#{w\ 3538}#
#{mod\ 3540}#)
(#{chi\ 457}#
#{then\ 3553}#
#{r\ 3537}#
#{w\ 3538}#
#{mod\ 3540}#)
(#{build-void\ 292}# #f)))
#{tmp\ 3547}#)
((lambda (#{tmp\ 3555}#)
(if #{tmp\ 3555}#
(apply (lambda (#{_\ 3560}#
#{test\ 3561}#
#{then\ 3562}#
#{else\ 3563}#)
(#{build-conditional\ 296}#
#{s\ 3539}#
(#{chi\ 457}#
#{test\ 3561}#
#{r\ 3537}#
#{w\ 3538}#
#{mod\ 3540}#)
(#{chi\ 457}#
#{then\ 3562}#
#{r\ 3537}#
#{w\ 3538}#
#{mod\ 3540}#)
(#{chi\ 457}#
#{else\ 3563}#
#{r\ 3537}#
#{w\ 3538}#
#{mod\ 3540}#)))
#{tmp\ 3555}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 3546}#)))
($sc-dispatch
#{tmp\ 3546}#
'(any any any any)))))
($sc-dispatch
#{tmp\ 3546}#
'(any any any))))
#{e\ 3536}#)))
(#{global-extend\ 368}#
'core
'with-fluids
(lambda (#{e\ 3564}#
#{r\ 3565}#
#{w\ 3566}#
#{s\ 3567}#
#{mod\ 3568}#)
((lambda (#{tmp\ 3574}#)
((lambda (#{tmp\ 3575}#)
(if #{tmp\ 3575}#
(apply (lambda (#{_\ 3581}#
#{fluid\ 3582}#
#{val\ 3583}#
#{b\ 3584}#
#{b*\ 3585}#)
(#{build-dynlet\ 298}#
#{s\ 3567}#
(map (lambda (#{x\ 3586}#)
(#{chi\ 457}#
#{x\ 3586}#
#{r\ 3565}#
#{w\ 3566}#
#{mod\ 3568}#))
#{fluid\ 3582}#)
(map (lambda (#{x\ 3589}#)
(#{chi\ 457}#
#{x\ 3589}#
#{r\ 3565}#
#{w\ 3566}#
#{mod\ 3568}#))
#{val\ 3583}#)
(#{chi-body\ 465}#
(cons #{b\ 3584}# #{b*\ 3585}#)
(#{source-wrap\ 443}#
#{e\ 3564}#
#{w\ 3566}#
#{s\ 3567}#
#{mod\ 3568}#)
#{r\ 3565}#
#{w\ 3566}#
#{mod\ 3568}#)))
#{tmp\ 3575}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 3574}#)))
($sc-dispatch
#{tmp\ 3574}#
'(any #(each (any any)) any . each-any))))
#{e\ 3564}#)))
(#{global-extend\ 368}#
'begin
'begin
'())
(#{global-extend\ 368}#
'define
'define
'())
(#{global-extend\ 368}#
'define-syntax
'define-syntax
'())
(#{global-extend\ 368}#
'eval-when
'eval-when
'())
(#{global-extend\ 368}#
'core
'syntax-case
(letrec ((#{gen-syntax-case\ 3600}#
(lambda (#{x\ 3601}#
#{keys\ 3602}#
#{clauses\ 3603}#
#{r\ 3604}#
#{mod\ 3605}#)
(if (null? #{clauses\ 3603}#)
(#{build-application\ 294}#
#f
(#{build-primref\ 320}#
#f
'syntax-violation)
(list (#{build-data\ 322}# #f #f)
(#{build-data\ 322}#
#f
"source expression failed to match any pattern")
#{x\ 3601}#))
((lambda (#{tmp\ 3615}#)
((lambda (#{tmp\ 3616}#)
(if #{tmp\ 3616}#
(apply (lambda (#{pat\ 3619}# #{exp\ 3620}#)
(if (if (#{id?\ 372}# #{pat\ 3619}#)
(and-map
(lambda (#{x\ 3623}#)
(not (#{free-id=?\ 431}#
#{pat\ 3619}#
#{x\ 3623}#)))
(cons '#(syntax-object
...
((top)
#(ribcage
#(pat exp)
#((top) (top))
#("i3617" "i3618"))
#(ribcage () () ())
#(ribcage
#(x
keys
clauses
r
mod)
#((top)
(top)
(top)
(top)
(top))
#("i3606"
"i3607"
"i3608"
"i3609"
"i3610"))
#(ribcage
(gen-syntax-case
gen-clause
build-dispatch-call
convert-pattern)
((top)
(top)
(top)
(top))
("i3599"
"i3597"
"i3595"
"i3593"))
#(ribcage
(lambda-var-list
gen-var
strip
chi-lambda-case
lambda*-formals
chi-simple-lambda
lambda-formals
ellipsis?
chi-void
eval-local-transformer
chi-local-syntax
chi-body
chi-macro
chi-application
chi-expr
chi
chi-top
syntax-type
chi-when-list
chi-install-global
chi-top-sequence
chi-sequence
source-wrap
wrap
bound-id-member?
distinct-bound-ids?
valid-bound-ids?
bound-id=?
free-id=?
id-var-name
same-marks?
join-marks
join-wraps
smart-append
make-binding-wrap
extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
set-ribcage-symnames!
ribcage-labels
ribcage-marks
ribcage-symnames
ribcage?
make-ribcage
gen-labels
gen-label
make-rename
rename-marks
rename-new
rename-old
subst-rename?
wrap-subst
wrap-marks
make-wrap
id-sym-name&marks
id-sym-name
id?
nonsymbol-id?
global-extend
lookup
macros-only-env
extend-var-env
extend-env
null-env
binding-value
binding-type
make-binding
arg-check
source-annotation
no-source
set-syntax-object-module!
set-syntax-object-wrap!
set-syntax-object-expression!
syntax-object-module
syntax-object-wrap
syntax-object-expression
syntax-object?
make-syntax-object
build-lexical-var
build-letrec
build-named-let
build-let
build-sequence
build-data
build-primref
build-lambda-case
build-case-lambda
build-simple-lambda
build-global-definition
maybe-name-value!
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
decorate-source
get-global-definition-hook
put-global-definition-hook
gensym-hook
local-eval-hook
top-level-eval-hook
fx<
fx=
fx-
fx+
set-lambda-meta!
lambda-meta
lambda?
make-dynlet
make-letrec
make-let
make-lambda-case
make-lambda
make-sequence
make-application
make-conditional
make-toplevel-define
make-toplevel-set
make-toplevel-ref
make-module-set
make-module-ref
make-lexical-set
make-lexical-ref
make-primitive-ref
make-const
make-void)
((top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top))
("i486"
"i484"
"i482"
"i480"
"i478"
"i476"
"i474"
"i472"
"i470"
"i468"
"i466"
"i464"
"i462"
"i460"
"i458"
"i456"
"i454"
"i452"
"i450"
"i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i415"
"i414"
"i412"
"i411"
"i410"
"i409"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i389"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i373"
"i371"
"i369"
"i367"
"i365"
"i363"
"i361"
"i359"
"i358"
"i356"
"i354"
"i353"
"i352"
"i350"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"
"i235"
"i233"
"i231"
"i229"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top)
(top)
(top)
(top))
("i23"
"i22"
"i21"
"i19")))
(hygiene guile))
#{keys\ 3602}#))
#f)
(let ((#{labels\ 3627}#
(list (#{gen-label\ 388}#)))
(#{var\ 3628}#
(#{gen-var\ 485}#
#{pat\ 3619}#)))
(#{build-application\ 294}#
#f
(#{build-simple-lambda\ 314}#
#f
(list (syntax->datum
#{pat\ 3619}#))
#f
(list #{var\ 3628}#)
'()
(#{chi\ 457}#
#{exp\ 3620}#
(#{extend-env\ 360}#
#{labels\ 3627}#
(list (cons 'syntax
(cons #{var\ 3628}#
0)))
#{r\ 3604}#)
(#{make-binding-wrap\ 419}#
(list #{pat\ 3619}#)
#{labels\ 3627}#
'(()))
#{mod\ 3605}#))
(list #{x\ 3601}#)))
(#{gen-clause\ 3598}#
#{x\ 3601}#
#{keys\ 3602}#
(cdr #{clauses\ 3603}#)
#{r\ 3604}#
#{pat\ 3619}#
#t
#{exp\ 3620}#
#{mod\ 3605}#)))
#{tmp\ 3616}#)
((lambda (#{tmp\ 3634}#)
(if #{tmp\ 3634}#
(apply (lambda (#{pat\ 3638}#
#{fender\ 3639}#
#{exp\ 3640}#)
(#{gen-clause\ 3598}#
#{x\ 3601}#
#{keys\ 3602}#
(cdr #{clauses\ 3603}#)
#{r\ 3604}#
#{pat\ 3638}#
#{fender\ 3639}#
#{exp\ 3640}#
#{mod\ 3605}#))
#{tmp\ 3634}#)
((lambda (#{_\ 3642}#)
(syntax-violation
'syntax-case
"invalid clause"
(car #{clauses\ 3603}#)))
#{tmp\ 3615}#)))
($sc-dispatch
#{tmp\ 3615}#
'(any any any)))))
($sc-dispatch #{tmp\ 3615}# (quote (any any)))))
(car #{clauses\ 3603}#)))))
(#{gen-clause\ 3598}#
(lambda (#{x\ 3643}#
#{keys\ 3644}#
#{clauses\ 3645}#
#{r\ 3646}#
#{pat\ 3647}#
#{fender\ 3648}#
#{exp\ 3649}#
#{mod\ 3650}#)
(call-with-values
(lambda ()
(#{convert-pattern\ 3594}#
#{pat\ 3647}#
#{keys\ 3644}#))
(lambda (#{p\ 3659}# #{pvars\ 3660}#)
(if (not (#{distinct-bound-ids?\ 437}#
(map car #{pvars\ 3660}#)))
(syntax-violation
'syntax-case
"duplicate pattern variable"
#{pat\ 3647}#)
(if (not (and-map
(lambda (#{x\ 3667}#)
(not (#{ellipsis?\ 473}#
(car #{x\ 3667}#))))
#{pvars\ 3660}#))
(syntax-violation
'syntax-case
"misplaced ellipsis"
#{pat\ 3647}#)
(let ((#{y\ 3671}#
(#{gen-var\ 485}# (quote tmp))))
(#{build-application\ 294}#
#f
(#{build-simple-lambda\ 314}#
#f
(list (quote tmp))
#f
(list #{y\ 3671}#)
'()
(let ((#{y\ 3675}#
(#{build-lexical-reference\ 300}#
'value
#f
'tmp
#{y\ 3671}#)))
(#{build-conditional\ 296}#
#f
((lambda (#{tmp\ 3678}#)
((lambda (#{tmp\ 3679}#)
(if #{tmp\ 3679}#
(apply (lambda () #{y\ 3675}#)
#{tmp\ 3679}#)
((lambda (#{_\ 3681}#)
(#{build-conditional\ 296}#
#f
#{y\ 3675}#
(#{build-dispatch-call\ 3596}#
#{pvars\ 3660}#
#{fender\ 3648}#
#{y\ 3675}#
#{r\ 3646}#
#{mod\ 3650}#)
(#{build-data\ 322}#
#f
#f)))
#{tmp\ 3678}#)))
($sc-dispatch
#{tmp\ 3678}#
'#(atom #t))))
#{fender\ 3648}#)
(#{build-dispatch-call\ 3596}#
#{pvars\ 3660}#
#{exp\ 3649}#
#{y\ 3675}#
#{r\ 3646}#
#{mod\ 3650}#)
(#{gen-syntax-case\ 3600}#
#{x\ 3643}#
#{keys\ 3644}#
#{clauses\ 3645}#
#{r\ 3646}#
#{mod\ 3650}#))))
(list (if (eq? #{p\ 3659}# (quote any))
(#{build-application\ 294}#
#f
(#{build-primref\ 320}#
#f
'list)
(list #{x\ 3643}#))
(#{build-application\ 294}#
#f
(#{build-primref\ 320}#
#f
'$sc-dispatch)
(list #{x\ 3643}#
(#{build-data\ 322}#
#f
#{p\ 3659}#)))))))))))))
(#{build-dispatch-call\ 3596}#
(lambda (#{pvars\ 3689}#
#{exp\ 3690}#
#{y\ 3691}#
#{r\ 3692}#
#{mod\ 3693}#)
(let ((#{ids\ 3701}# (map car #{pvars\ 3689}#))
(#{levels\ 3702}# (map cdr #{pvars\ 3689}#)))
(let ((#{labels\ 3705}#
(#{gen-labels\ 390}# #{ids\ 3701}#))
(#{new-vars\ 3706}#
(map #{gen-var\ 485}# #{ids\ 3701}#)))
(#{build-application\ 294}#
#f
(#{build-primref\ 320}# #f (quote apply))
(list (#{build-simple-lambda\ 314}#
#f
(map syntax->datum #{ids\ 3701}#)
#f
#{new-vars\ 3706}#
'()
(#{chi\ 457}#
#{exp\ 3690}#
(#{extend-env\ 360}#
#{labels\ 3705}#
(map (lambda (#{var\ 3710}#
#{level\ 3711}#)
(cons 'syntax
(cons #{var\ 3710}#
#{level\ 3711}#)))
#{new-vars\ 3706}#
(map cdr #{pvars\ 3689}#))
#{r\ 3692}#)
(#{make-binding-wrap\ 419}#
#{ids\ 3701}#
#{labels\ 3705}#
'(()))
#{mod\ 3693}#))
#{y\ 3691}#))))))
(#{convert-pattern\ 3594}#
(lambda (#{pattern\ 3717}# #{keys\ 3718}#)
(letrec ((#{cvt\ 3724}#
(lambda (#{p\ 3725}# #{n\ 3726}# #{ids\ 3727}#)
(if (#{id?\ 372}# #{p\ 3725}#)
(if (#{bound-id-member?\ 439}#
#{p\ 3725}#
#{keys\ 3718}#)
(values
(vector (quote free-id) #{p\ 3725}#)
#{ids\ 3727}#)
(values
'any
(cons (cons #{p\ 3725}# #{n\ 3726}#)
#{ids\ 3727}#)))
((lambda (#{tmp\ 3731}#)
((lambda (#{tmp\ 3732}#)
(if (if #{tmp\ 3732}#
(apply (lambda (#{x\ 3735}#
#{dots\ 3736}#)
(#{ellipsis?\ 473}#
#{dots\ 3736}#))
#{tmp\ 3732}#)
#f)
(apply (lambda (#{x\ 3739}#
#{dots\ 3740}#)
(call-with-values
(lambda ()
(#{cvt\ 3724}#
#{x\ 3739}#
(#{fx+\ 273}#
#{n\ 3726}#
1)
#{ids\ 3727}#))
(lambda (#{p\ 3741}#
#{ids\ 3742}#)
(values
(if (eq? #{p\ 3741}#
'any)
'each-any
(vector
'each
#{p\ 3741}#))
#{ids\ 3742}#))))
#{tmp\ 3732}#)
((lambda (#{tmp\ 3745}#)
(if (if #{tmp\ 3745}#
(apply (lambda (#{x\ 3749}#
#{dots\ 3750}#
#{ys\ 3751}#)
(#{ellipsis?\ 473}#
#{dots\ 3750}#))
#{tmp\ 3745}#)
#f)
(apply (lambda (#{x\ 3755}#
#{dots\ 3756}#
#{ys\ 3757}#)
(call-with-values
(lambda ()
(#{cvt*\ 3722}#
#{ys\ 3757}#
#{n\ 3726}#
#{ids\ 3727}#))
(lambda (#{ys\ 3759}#
#{ids\ 3760}#)
(call-with-values
(lambda ()
(#{cvt\ 3724}#
#{x\ 3755}#
(+ #{n\ 3726}#
1)
#{ids\ 3760}#))
(lambda (#{x\ 3763}#
#{ids\ 3764}#)
(values
(list->vector
(cons 'each+
(cons #{x\ 3763}#
(cons (reverse
#{ys\ 3759}#)
'(())))))
#{ids\ 3764}#))))))
#{tmp\ 3745}#)
((lambda (#{tmp\ 3768}#)
(if #{tmp\ 3768}#
(apply (lambda (#{x\ 3771}#
#{y\ 3772}#)
(call-with-values
(lambda ()
(#{cvt\ 3724}#
#{y\ 3772}#
#{n\ 3726}#
#{ids\ 3727}#))
(lambda (#{y\ 3773}#
#{ids\ 3774}#)
(call-with-values
(lambda ()
(#{cvt\ 3724}#
#{x\ 3771}#
#{n\ 3726}#
#{ids\ 3774}#))
(lambda (#{x\ 3777}#
#{ids\ 3778}#)
(values
(cons #{x\ 3777}#
#{y\ 3773}#)
#{ids\ 3778}#))))))
#{tmp\ 3768}#)
((lambda (#{tmp\ 3781}#)
(if #{tmp\ 3781}#
(apply (lambda ()
(values
'()
#{ids\ 3727}#))
#{tmp\ 3781}#)
((lambda (#{tmp\ 3782}#)
(if #{tmp\ 3782}#
(apply (lambda (#{x\ 3784}#)
(call-with-values
(lambda ()
(#{cvt\ 3724}#
#{x\ 3784}#
#{n\ 3726}#
#{ids\ 3727}#))
(lambda (#{p\ 3786}#
#{ids\ 3787}#)
(values
(vector
'vector
#{p\ 3786}#)
#{ids\ 3787}#))))
#{tmp\ 3782}#)
((lambda (#{x\ 3791}#)
(values
(vector
'atom
(#{strip\ 483}#
#{p\ 3725}#
'(())))
#{ids\ 3727}#))
#{tmp\ 3731}#)))
($sc-dispatch
#{tmp\ 3731}#
'#(vector
each-any)))))
($sc-dispatch
#{tmp\ 3731}#
'()))))
($sc-dispatch
#{tmp\ 3731}#
'(any . any)))))
($sc-dispatch
#{tmp\ 3731}#
'(any any . each-any)))))
($sc-dispatch
#{tmp\ 3731}#
'(any any))))
#{p\ 3725}#))))
(#{cvt*\ 3722}#
(lambda (#{p*\ 3793}#
#{n\ 3794}#
#{ids\ 3795}#)
(if (null? #{p*\ 3793}#)
(values (quote ()) #{ids\ 3795}#)
(call-with-values
(lambda ()
(#{cvt*\ 3722}#
(cdr #{p*\ 3793}#)
#{n\ 3794}#
#{ids\ 3795}#))
(lambda (#{y\ 3799}# #{ids\ 3800}#)
(call-with-values
(lambda ()
(#{cvt\ 3724}#
(car #{p*\ 3793}#)
#{n\ 3794}#
#{ids\ 3800}#))
(lambda (#{x\ 3803}# #{ids\ 3804}#)
(values
(cons #{x\ 3803}# #{y\ 3799}#)
#{ids\ 3804}#)))))))))
(#{cvt\ 3724}# #{pattern\ 3717}# 0 (quote ()))))))
(lambda (#{e\ 3807}#
#{r\ 3808}#
#{w\ 3809}#
#{s\ 3810}#
#{mod\ 3811}#)
(let ((#{e\ 3818}#
(#{source-wrap\ 443}#
#{e\ 3807}#
#{w\ 3809}#
#{s\ 3810}#
#{mod\ 3811}#)))
((lambda (#{tmp\ 3819}#)
((lambda (#{tmp\ 3820}#)
(if #{tmp\ 3820}#
(apply (lambda (#{_\ 3825}#
#{val\ 3826}#
#{key\ 3827}#
#{m\ 3828}#)
(if (and-map
(lambda (#{x\ 3829}#)
(if (#{id?\ 372}# #{x\ 3829}#)
(not (#{ellipsis?\ 473}# #{x\ 3829}#))
#f))
#{key\ 3827}#)
(let ((#{x\ 3835}#
(#{gen-var\ 485}# (quote tmp))))
(#{build-application\ 294}#
#{s\ 3810}#
(#{build-simple-lambda\ 314}#
#f
(list (quote tmp))
#f
(list #{x\ 3835}#)
'()
(#{gen-syntax-case\ 3600}#
(#{build-lexical-reference\ 300}#
'value
#f
'tmp
#{x\ 3835}#)
#{key\ 3827}#
#{m\ 3828}#
#{r\ 3808}#
#{mod\ 3811}#))
(list (#{chi\ 457}#
#{val\ 3826}#
#{r\ 3808}#
'(())
#{mod\ 3811}#))))
(syntax-violation
'syntax-case
"invalid literals list"
#{e\ 3818}#)))
#{tmp\ 3820}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 3819}#)))
($sc-dispatch
#{tmp\ 3819}#
'(any any each-any . each-any))))
#{e\ 3818}#)))))
(set! macroexpand
(lambda*
(#{x\ 3841}#
#:optional
(#{m\ 3843}# (quote e))
(#{esew\ 3845}# (quote (eval))))
(#{chi-top\ 455}#
#{x\ 3841}#
'()
'((top))
#{m\ 3843}#
#{esew\ 3845}#
(cons 'hygiene
(module-name (current-module))))))
(set! identifier?
(lambda (#{x\ 3849}#)
(#{nonsymbol-id?\ 370}# #{x\ 3849}#)))
(set! datum->syntax
(lambda (#{id\ 3851}# #{datum\ 3852}#)
(#{make-syntax-object\ 334}#
#{datum\ 3852}#
(#{syntax-object-wrap\ 340}# #{id\ 3851}#)
(#{syntax-object-module\ 342}# #{id\ 3851}#))))
(set! syntax->datum
(lambda (#{x\ 3855}#)
(#{strip\ 483}# #{x\ 3855}# (quote (())))))
(set! generate-temporaries
(lambda (#{ls\ 3858}#)
(begin
(let ((#{x\ 3862}# #{ls\ 3858}#))
(if (not (list? #{x\ 3862}#))
(syntax-violation
'generate-temporaries
"invalid argument"
#{x\ 3862}#)))
(map (lambda (#{x\ 3863}#)
(#{wrap\ 441}# (gensym) (quote ((top))) #f))
#{ls\ 3858}#))))
(set! free-identifier=?
(lambda (#{x\ 3867}# #{y\ 3868}#)
(begin
(let ((#{x\ 3873}# #{x\ 3867}#))
(if (not (#{nonsymbol-id?\ 370}# #{x\ 3873}#))
(syntax-violation
'free-identifier=?
"invalid argument"
#{x\ 3873}#)))
(let ((#{x\ 3876}# #{y\ 3868}#))
(if (not (#{nonsymbol-id?\ 370}# #{x\ 3876}#))
(syntax-violation
'free-identifier=?
"invalid argument"
#{x\ 3876}#)))
(#{free-id=?\ 431}# #{x\ 3867}# #{y\ 3868}#))))
(set! bound-identifier=?
(lambda (#{x\ 3877}# #{y\ 3878}#)
(begin
(let ((#{x\ 3883}# #{x\ 3877}#))
(if (not (#{nonsymbol-id?\ 370}# #{x\ 3883}#))
(syntax-violation
'bound-identifier=?
"invalid argument"
#{x\ 3883}#)))
(let ((#{x\ 3886}# #{y\ 3878}#))
(if (not (#{nonsymbol-id?\ 370}# #{x\ 3886}#))
(syntax-violation
'bound-identifier=?
"invalid argument"
#{x\ 3886}#)))
(#{bound-id=?\ 433}# #{x\ 3877}# #{y\ 3878}#))))
(set! syntax-violation
(lambda (#{who\ 3887}#
#{message\ 3888}#
#{form\ 3889}#
.
#{subform\ 3890}#)
(begin
(let ((#{x\ 3897}# #{who\ 3887}#))
(if (not ((lambda (#{x\ 3898}#)
(let ((#{t\ 3902}# (not #{x\ 3898}#)))
(if #{t\ 3902}#
#{t\ 3902}#
(let ((#{t\ 3905}# (string? #{x\ 3898}#)))
(if #{t\ 3905}#
#{t\ 3905}#
(symbol? #{x\ 3898}#))))))
#{x\ 3897}#))
(syntax-violation
'syntax-violation
"invalid argument"
#{x\ 3897}#)))
(let ((#{x\ 3909}# #{message\ 3888}#))
(if (not (string? #{x\ 3909}#))
(syntax-violation
'syntax-violation
"invalid argument"
#{x\ 3909}#)))
(scm-error
'syntax-error
'macroexpand
(string-append
(if #{who\ 3887}# "~a: " "")
"~a "
(if (null? #{subform\ 3890}#)
"in ~a"
"in subform `~s' of `~s'"))
(let ((#{tail\ 3911}#
(cons #{message\ 3888}#
(map (lambda (#{x\ 3912}#)
(#{strip\ 483}# #{x\ 3912}# (quote (()))))
(append
#{subform\ 3890}#
(list #{form\ 3889}#))))))
(if #{who\ 3887}#
(cons #{who\ 3887}# #{tail\ 3911}#)
#{tail\ 3911}#))
#f))))
(letrec ((#{match\ 3928}#
(lambda (#{e\ 3929}#
#{p\ 3930}#
#{w\ 3931}#
#{r\ 3932}#
#{mod\ 3933}#)
(if (not #{r\ 3932}#)
#f
(if (eq? #{p\ 3930}# (quote any))
(cons (#{wrap\ 441}#
#{e\ 3929}#
#{w\ 3931}#
#{mod\ 3933}#)
#{r\ 3932}#)
(if (#{syntax-object?\ 336}# #{e\ 3929}#)
(#{match*\ 3926}#
(#{syntax-object-expression\ 338}# #{e\ 3929}#)
#{p\ 3930}#
(#{join-wraps\ 423}#
#{w\ 3931}#
(#{syntax-object-wrap\ 340}# #{e\ 3929}#))
#{r\ 3932}#
(#{syntax-object-module\ 342}# #{e\ 3929}#))
(#{match*\ 3926}#
#{e\ 3929}#
#{p\ 3930}#
#{w\ 3931}#
#{r\ 3932}#
#{mod\ 3933}#))))))
(#{match*\ 3926}#
(lambda (#{e\ 3946}#
#{p\ 3947}#
#{w\ 3948}#
#{r\ 3949}#
#{mod\ 3950}#)
(if (null? #{p\ 3947}#)
(if (null? #{e\ 3946}#) #{r\ 3949}# #f)
(if (pair? #{p\ 3947}#)
(if (pair? #{e\ 3946}#)
(#{match\ 3928}#
(car #{e\ 3946}#)
(car #{p\ 3947}#)
#{w\ 3948}#
(#{match\ 3928}#
(cdr #{e\ 3946}#)
(cdr #{p\ 3947}#)
#{w\ 3948}#
#{r\ 3949}#
#{mod\ 3950}#)
#{mod\ 3950}#)
#f)
(if (eq? #{p\ 3947}# (quote each-any))
(let ((#{l\ 3967}#
(#{match-each-any\ 3920}#
#{e\ 3946}#
#{w\ 3948}#
#{mod\ 3950}#)))
(if #{l\ 3967}#
(cons #{l\ 3967}# #{r\ 3949}#)
#f))
(let ((#{atom-key\ 3973}# (vector-ref #{p\ 3947}# 0)))
(if (memv #{atom-key\ 3973}# (quote (each)))
(if (null? #{e\ 3946}#)
(#{match-empty\ 3922}#
(vector-ref #{p\ 3947}# 1)
#{r\ 3949}#)
(let ((#{l\ 3976}#
(#{match-each\ 3916}#
#{e\ 3946}#
(vector-ref #{p\ 3947}# 1)
#{w\ 3948}#
#{mod\ 3950}#)))
(if #{l\ 3976}#
(letrec ((#{collect\ 3981}#
(lambda (#{l\ 3982}#)
(if (null? (car #{l\ 3982}#))
#{r\ 3949}#
(cons (map car #{l\ 3982}#)
(#{collect\ 3981}#
(map cdr
#{l\ 3982}#)))))))
(#{collect\ 3981}# #{l\ 3976}#))
#f)))
(if (memv #{atom-key\ 3973}# (quote (each+)))
(call-with-values
(lambda ()
(#{match-each+\ 3918}#
#{e\ 3946}#
(vector-ref #{p\ 3947}# 1)
(vector-ref #{p\ 3947}# 2)
(vector-ref #{p\ 3947}# 3)
#{w\ 3948}#
#{r\ 3949}#
#{mod\ 3950}#))
(lambda (#{xr*\ 3984}#
#{y-pat\ 3985}#
#{r\ 3986}#)
(if #{r\ 3986}#
(if (null? #{y-pat\ 3985}#)
(if (null? #{xr*\ 3984}#)
(#{match-empty\ 3922}#
(vector-ref #{p\ 3947}# 1)
#{r\ 3986}#)
(#{combine\ 3924}#
#{xr*\ 3984}#
#{r\ 3986}#))
#f)
#f)))
(if (memv #{atom-key\ 3973}# (quote (free-id)))
(if (#{id?\ 372}# #{e\ 3946}#)
(if (#{free-id=?\ 431}#
(#{wrap\ 441}#
#{e\ 3946}#
#{w\ 3948}#
#{mod\ 3950}#)
(vector-ref #{p\ 3947}# 1))
#{r\ 3949}#
#f)
#f)
(if (memv #{atom-key\ 3973}# (quote (atom)))
(if (equal?
(vector-ref #{p\ 3947}# 1)
(#{strip\ 483}#
#{e\ 3946}#
#{w\ 3948}#))
#{r\ 3949}#
#f)
(if (memv #{atom-key\ 3973}#
'(vector))
(if (vector? #{e\ 3946}#)
(#{match\ 3928}#
(vector->list #{e\ 3946}#)
(vector-ref #{p\ 3947}# 1)
#{w\ 3948}#
#{r\ 3949}#
#{mod\ 3950}#)
#f))))))))))))
(#{combine\ 3924}#
(lambda (#{r*\ 4003}# #{r\ 4004}#)
(if (null? (car #{r*\ 4003}#))
#{r\ 4004}#
(cons (map car #{r*\ 4003}#)
(#{combine\ 3924}#
(map cdr #{r*\ 4003}#)
#{r\ 4004}#)))))
(#{match-empty\ 3922}#
(lambda (#{p\ 4007}# #{r\ 4008}#)
(if (null? #{p\ 4007}#)
#{r\ 4008}#
(if (eq? #{p\ 4007}# (quote any))
(cons (quote ()) #{r\ 4008}#)
(if (pair? #{p\ 4007}#)
(#{match-empty\ 3922}#
(car #{p\ 4007}#)
(#{match-empty\ 3922}#
(cdr #{p\ 4007}#)
#{r\ 4008}#))
(if (eq? #{p\ 4007}# (quote each-any))
(cons (quote ()) #{r\ 4008}#)
(let ((#{atom-key\ 4022}#
(vector-ref #{p\ 4007}# 0)))
(if (memv #{atom-key\ 4022}# (quote (each)))
(#{match-empty\ 3922}#
(vector-ref #{p\ 4007}# 1)
#{r\ 4008}#)
(if (memv #{atom-key\ 4022}# (quote (each+)))
(#{match-empty\ 3922}#
(vector-ref #{p\ 4007}# 1)
(#{match-empty\ 3922}#
(reverse (vector-ref #{p\ 4007}# 2))
(#{match-empty\ 3922}#
(vector-ref #{p\ 4007}# 3)
#{r\ 4008}#)))
(if (memv #{atom-key\ 4022}#
'(free-id atom))
#{r\ 4008}#
(if (memv #{atom-key\ 4022}#
'(vector))
(#{match-empty\ 3922}#
(vector-ref #{p\ 4007}# 1)
#{r\ 4008}#))))))))))))
(#{match-each-any\ 3920}#
(lambda (#{e\ 4027}# #{w\ 4028}# #{mod\ 4029}#)
(if (pair? #{e\ 4027}#)
(let ((#{l\ 4036}#
(#{match-each-any\ 3920}#
(cdr #{e\ 4027}#)
#{w\ 4028}#
#{mod\ 4029}#)))
(if #{l\ 4036}#
(cons (#{wrap\ 441}#
(car #{e\ 4027}#)
#{w\ 4028}#
#{mod\ 4029}#)
#{l\ 4036}#)
#f))
(if (null? #{e\ 4027}#)
'()
(if (#{syntax-object?\ 336}# #{e\ 4027}#)
(#{match-each-any\ 3920}#
(#{syntax-object-expression\ 338}# #{e\ 4027}#)
(#{join-wraps\ 423}#
#{w\ 4028}#
(#{syntax-object-wrap\ 340}# #{e\ 4027}#))
#{mod\ 4029}#)
#f)))))
(#{match-each+\ 3918}#
(lambda (#{e\ 4044}#
#{x-pat\ 4045}#
#{y-pat\ 4046}#
#{z-pat\ 4047}#
#{w\ 4048}#
#{r\ 4049}#
#{mod\ 4050}#)
(letrec ((#{f\ 4061}#
(lambda (#{e\ 4062}# #{w\ 4063}#)
(if (pair? #{e\ 4062}#)
(call-with-values
(lambda ()
(#{f\ 4061}#
(cdr #{e\ 4062}#)
#{w\ 4063}#))
(lambda (#{xr*\ 4066}#
#{y-pat\ 4067}#
#{r\ 4068}#)
(if #{r\ 4068}#
(if (null? #{y-pat\ 4067}#)
(let ((#{xr\ 4073}#
(#{match\ 3928}#
(car #{e\ 4062}#)
#{x-pat\ 4045}#
#{w\ 4063}#
'()
#{mod\ 4050}#)))
(if #{xr\ 4073}#
(values
(cons #{xr\ 4073}#
#{xr*\ 4066}#)
#{y-pat\ 4067}#
#{r\ 4068}#)
(values #f #f #f)))
(values
'()
(cdr #{y-pat\ 4067}#)
(#{match\ 3928}#
(car #{e\ 4062}#)
(car #{y-pat\ 4067}#)
#{w\ 4063}#
#{r\ 4068}#
#{mod\ 4050}#)))
(values #f #f #f))))
(if (#{syntax-object?\ 336}# #{e\ 4062}#)
(#{f\ 4061}#
(#{syntax-object-expression\ 338}#
#{e\ 4062}#)
(#{join-wraps\ 423}#
#{w\ 4063}#
#{e\ 4062}#))
(values
'()
#{y-pat\ 4046}#
(#{match\ 3928}#
#{e\ 4062}#
#{z-pat\ 4047}#
#{w\ 4063}#
#{r\ 4049}#
#{mod\ 4050}#)))))))
(#{f\ 4061}# #{e\ 4044}# #{w\ 4048}#))))
(#{match-each\ 3916}#
(lambda (#{e\ 4077}#
#{p\ 4078}#
#{w\ 4079}#
#{mod\ 4080}#)
(if (pair? #{e\ 4077}#)
(let ((#{first\ 4088}#
(#{match\ 3928}#
(car #{e\ 4077}#)
#{p\ 4078}#
#{w\ 4079}#
'()
#{mod\ 4080}#)))
(if #{first\ 4088}#
(let ((#{rest\ 4092}#
(#{match-each\ 3916}#
(cdr #{e\ 4077}#)
#{p\ 4078}#
#{w\ 4079}#
#{mod\ 4080}#)))
(if #{rest\ 4092}#
(cons #{first\ 4088}# #{rest\ 4092}#)
#f))
#f))
(if (null? #{e\ 4077}#)
'()
(if (#{syntax-object?\ 336}# #{e\ 4077}#)
(#{match-each\ 3916}#
(#{syntax-object-expression\ 338}# #{e\ 4077}#)
#{p\ 4078}#
(#{join-wraps\ 423}#
#{w\ 4079}#
(#{syntax-object-wrap\ 340}# #{e\ 4077}#))
(#{syntax-object-module\ 342}# #{e\ 4077}#))
#f))))))
(set! $sc-dispatch
(lambda (#{e\ 4100}# #{p\ 4101}#)
(if (eq? #{p\ 4101}# (quote any))
(list #{e\ 4100}#)
(if (#{syntax-object?\ 336}# #{e\ 4100}#)
(#{match*\ 3926}#
(#{syntax-object-expression\ 338}# #{e\ 4100}#)
#{p\ 4101}#
(#{syntax-object-wrap\ 340}# #{e\ 4100}#)
'()
(#{syntax-object-module\ 342}# #{e\ 4100}#))
(#{match*\ 3926}#
#{e\ 4100}#
#{p\ 4101}#
'(())
'()
#f)))))))))
(define with-syntax
(make-syntax-transformer
'with-syntax
'macro
(lambda (#{x\ 4110}#)
((lambda (#{tmp\ 4112}#)
((lambda (#{tmp\ 4113}#)
(if #{tmp\ 4113}#
(apply (lambda (#{_\ 4117}# #{e1\ 4118}# #{e2\ 4119}#)
(cons '#(syntax-object
begin
((top)
#(ribcage
#(_ e1 e2)
#((top) (top) (top))
#("i4114" "i4115" "i4116"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4111")))
(hygiene guile))
(cons #{e1\ 4118}# #{e2\ 4119}#)))
#{tmp\ 4113}#)
((lambda (#{tmp\ 4121}#)
(if #{tmp\ 4121}#
(apply (lambda (#{_\ 4127}#
#{out\ 4128}#
#{in\ 4129}#
#{e1\ 4130}#
#{e2\ 4131}#)
(list '#(syntax-object
syntax-case
((top)
#(ribcage
#(_ out in e1 e2)
#((top) (top) (top) (top) (top))
#("i4122"
"i4123"
"i4124"
"i4125"
"i4126"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4111")))
(hygiene guile))
#{in\ 4129}#
'()
(list #{out\ 4128}#
(cons '#(syntax-object
begin
((top)
#(ribcage
#(_ out in e1 e2)
#((top)
(top)
(top)
(top)
(top))
#("i4122"
"i4123"
"i4124"
"i4125"
"i4126"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4111")))
(hygiene guile))
(cons #{e1\ 4130}#
#{e2\ 4131}#)))))
#{tmp\ 4121}#)
((lambda (#{tmp\ 4133}#)
(if #{tmp\ 4133}#
(apply (lambda (#{_\ 4139}#
#{out\ 4140}#
#{in\ 4141}#
#{e1\ 4142}#
#{e2\ 4143}#)
(list '#(syntax-object
syntax-case
((top)
#(ribcage
#(_ out in e1 e2)
#((top) (top) (top) (top) (top))
#("i4134"
"i4135"
"i4136"
"i4137"
"i4138"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4111")))
(hygiene guile))
(cons '#(syntax-object
list
((top)
#(ribcage
#(_ out in e1 e2)
#((top)
(top)
(top)
(top)
(top))
#("i4134"
"i4135"
"i4136"
"i4137"
"i4138"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4111")))
(hygiene guile))
#{in\ 4141}#)
'()
(list #{out\ 4140}#
(cons '#(syntax-object
begin
((top)
#(ribcage
#(_ out in e1 e2)
#((top)
(top)
(top)
(top)
(top))
#("i4134"
"i4135"
"i4136"
"i4137"
"i4138"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4111")))
(hygiene guile))
(cons #{e1\ 4142}#
#{e2\ 4143}#)))))
#{tmp\ 4133}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4112}#)))
($sc-dispatch
#{tmp\ 4112}#
'(any #(each (any any)) any . each-any)))))
($sc-dispatch
#{tmp\ 4112}#
'(any ((any any)) any . each-any)))))
($sc-dispatch
#{tmp\ 4112}#
'(any () any . each-any))))
#{x\ 4110}#))))
(define syntax-rules
(make-syntax-transformer
'syntax-rules
'macro
(lambda (#{x\ 4147}#)
((lambda (#{tmp\ 4149}#)
((lambda (#{tmp\ 4150}#)
(if #{tmp\ 4150}#
(apply (lambda (#{_\ 4156}#
#{k\ 4157}#
#{keyword\ 4158}#
#{pattern\ 4159}#
#{template\ 4160}#)
(list '#(syntax-object
lambda
((top)
#(ribcage
#(_ k keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4151" "i4152" "i4153" "i4154" "i4155"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4148")))
(hygiene guile))
'(#(syntax-object
x
((top)
#(ribcage
#(_ k keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4151" "i4152" "i4153" "i4154" "i4155"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4148")))
(hygiene guile)))
(vector
'(#(syntax-object
macro-type
((top)
#(ribcage
#(_ k keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4151"
"i4152"
"i4153"
"i4154"
"i4155"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4148")))
(hygiene guile))
.
#(syntax-object
syntax-rules
((top)
#(ribcage
#(_ k keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4151"
"i4152"
"i4153"
"i4154"
"i4155"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4148")))
(hygiene guile)))
(cons '#(syntax-object
patterns
((top)
#(ribcage
#(_ k keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4151"
"i4152"
"i4153"
"i4154"
"i4155"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4148")))
(hygiene guile))
#{pattern\ 4159}#))
(cons '#(syntax-object
syntax-case
((top)
#(ribcage
#(_ k keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4151"
"i4152"
"i4153"
"i4154"
"i4155"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4148")))
(hygiene guile))
(cons '#(syntax-object
x
((top)
#(ribcage
#(_ k keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4151"
"i4152"
"i4153"
"i4154"
"i4155"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4148")))
(hygiene guile))
(cons #{k\ 4157}#
(map (lambda (#{tmp\ 4164}#
#{tmp\ 4163}#)
(list (cons '#(syntax-object
dummy
((top)
#(ribcage
#(_
k
keyword
pattern
template)
#((top)
(top)
(top)
(top)
(top))
#("i4151"
"i4152"
"i4153"
"i4154"
"i4155"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4148")))
(hygiene
guile))
#{tmp\ 4163}#)
(list '#(syntax-object
syntax
((top)
#(ribcage
#(_
k
keyword
pattern
template)
#((top)
(top)
(top)
(top)
(top))
#("i4151"
"i4152"
"i4153"
"i4154"
"i4155"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4148")))
(hygiene
guile))
#{tmp\ 4164}#)))
#{template\ 4160}#
#{pattern\ 4159}#))))))
#{tmp\ 4150}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4149}#)))
($sc-dispatch
#{tmp\ 4149}#
'(any each-any . #(each ((any . any) any))))))
#{x\ 4147}#))))
(define let*
(make-syntax-transformer
'let*
'macro
(lambda (#{x\ 4165}#)
((lambda (#{tmp\ 4167}#)
((lambda (#{tmp\ 4168}#)
(if (if #{tmp\ 4168}#
(apply (lambda (#{let*\ 4174}#
#{x\ 4175}#
#{v\ 4176}#
#{e1\ 4177}#
#{e2\ 4178}#)
(and-map identifier? #{x\ 4175}#))
#{tmp\ 4168}#)
#f)
(apply (lambda (#{let*\ 4185}#
#{x\ 4186}#
#{v\ 4187}#
#{e1\ 4188}#
#{e2\ 4189}#)
(letrec ((#{f\ 4192}#
(lambda (#{bindings\ 4193}#)
(if (null? #{bindings\ 4193}#)
(cons '#(syntax-object
let
((top)
#(ribcage () () ())
#(ribcage
#(f bindings)
#((top) (top))
#("i4190" "i4191"))
#(ribcage
#(let* x v e1 e2)
#((top)
(top)
(top)
(top)
(top))
#("i4180"
"i4181"
"i4182"
"i4183"
"i4184"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4166")))
(hygiene guile))
(cons '()
(cons #{e1\ 4188}#
#{e2\ 4189}#)))
((lambda (#{tmp\ 4198}#)
((lambda (#{tmp\ 4199}#)
(if #{tmp\ 4199}#
(apply (lambda (#{body\ 4202}#
#{binding\ 4203}#)
(list '#(syntax-object
let
((top)
#(ribcage
#(body
binding)
#((top)
(top))
#("i4200"
"i4201"))
#(ribcage
()
()
())
#(ribcage
#(f
bindings)
#((top)
(top))
#("i4190"
"i4191"))
#(ribcage
#(let*
x
v
e1
e2)
#((top)
(top)
(top)
(top)
(top))
#("i4180"
"i4181"
"i4182"
"i4183"
"i4184"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4166")))
(hygiene
guile))
(list #{binding\ 4203}#)
#{body\ 4202}#))
#{tmp\ 4199}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4198}#)))
($sc-dispatch
#{tmp\ 4198}#
'(any any))))
(list (#{f\ 4192}#
(cdr #{bindings\ 4193}#))
(car #{bindings\ 4193}#)))))))
(#{f\ 4192}# (map list #{x\ 4186}# #{v\ 4187}#))))
#{tmp\ 4168}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4167}#)))
($sc-dispatch
#{tmp\ 4167}#
'(any #(each (any any)) any . each-any))))
#{x\ 4165}#))))
(define do
(make-syntax-transformer
'do
'macro
(lambda (#{orig-x\ 4204}#)
((lambda (#{tmp\ 4206}#)
((lambda (#{tmp\ 4207}#)
(if #{tmp\ 4207}#
(apply (lambda (#{_\ 4215}#
#{var\ 4216}#
#{init\ 4217}#
#{step\ 4218}#
#{e0\ 4219}#
#{e1\ 4220}#
#{c\ 4221}#)
((lambda (#{tmp\ 4223}#)
((lambda (#{tmp\ 4224}#)
(if #{tmp\ 4224}#
(apply (lambda (#{step\ 4226}#)
((lambda (#{tmp\ 4227}#)
((lambda (#{tmp\ 4228}#)
(if #{tmp\ 4228}#
(apply (lambda ()
(list '#(syntax-object
let
((top)
#(ribcage
#(step)
#((top))
#("i4225"))
#(ribcage
#(_
var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i4208"
"i4209"
"i4210"
"i4211"
"i4212"
"i4213"
"i4214"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4205")))
(hygiene
guile))
'#(syntax-object
doloop
((top)
#(ribcage
#(step)
#((top))
#("i4225"))
#(ribcage
#(_
var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i4208"
"i4209"
"i4210"
"i4211"
"i4212"
"i4213"
"i4214"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4205")))
(hygiene
guile))
(map list
#{var\ 4216}#
#{init\ 4217}#)
(list '#(syntax-object
if
((top)
#(ribcage
#(step)
#((top))
#("i4225"))
#(ribcage
#(_
var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i4208"
"i4209"
"i4210"
"i4211"
"i4212"
"i4213"
"i4214"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4205")))
(hygiene
guile))
(list '#(syntax-object
not
((top)
#(ribcage
#(step)
#((top))
#("i4225"))
#(ribcage
#(_
var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i4208"
"i4209"
"i4210"
"i4211"
"i4212"
"i4213"
"i4214"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4205")))
(hygiene
guile))
#{e0\ 4219}#)
(cons '#(syntax-object
begin
((top)
#(ribcage
#(step)
#((top))
#("i4225"))
#(ribcage
#(_
var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i4208"
"i4209"
"i4210"
"i4211"
"i4212"
"i4213"
"i4214"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4205")))
(hygiene
guile))
(append
#{c\ 4221}#
(list (cons '#(syntax-object
doloop
((top)
#(ribcage
#(step)
#((top))
#("i4225"))
#(ribcage
#(_
var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i4208"
"i4209"
"i4210"
"i4211"
"i4212"
"i4213"
"i4214"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4205")))
(hygiene
guile))
#{step\ 4226}#)))))))
#{tmp\ 4228}#)
((lambda (#{tmp\ 4233}#)
(if #{tmp\ 4233}#
(apply (lambda (#{e1\ 4236}#
#{e2\ 4237}#)
(list '#(syntax-object
let
((top)
#(ribcage
#(e1
e2)
#((top)
(top))
#("i4234"
"i4235"))
#(ribcage
#(step)
#((top))
#("i4225"))
#(ribcage
#(_
var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i4208"
"i4209"
"i4210"
"i4211"
"i4212"
"i4213"
"i4214"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4205")))
(hygiene
guile))
'#(syntax-object
doloop
((top)
#(ribcage
#(e1
e2)
#((top)
(top))
#("i4234"
"i4235"))
#(ribcage
#(step)
#((top))
#("i4225"))
#(ribcage
#(_
var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i4208"
"i4209"
"i4210"
"i4211"
"i4212"
"i4213"
"i4214"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4205")))
(hygiene
guile))
(map list
#{var\ 4216}#
#{init\ 4217}#)
(list '#(syntax-object
if
((top)
#(ribcage
#(e1
e2)
#((top)
(top))
#("i4234"
"i4235"))
#(ribcage
#(step)
#((top))
#("i4225"))
#(ribcage
#(_
var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i4208"
"i4209"
"i4210"
"i4211"
"i4212"
"i4213"
"i4214"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4205")))
(hygiene
guile))
#{e0\ 4219}#
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1
e2)
#((top)
(top))
#("i4234"
"i4235"))
#(ribcage
#(step)
#((top))
#("i4225"))
#(ribcage
#(_
var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i4208"
"i4209"
"i4210"
"i4211"
"i4212"
"i4213"
"i4214"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4205")))
(hygiene
guile))
(cons #{e1\ 4236}#
#{e2\ 4237}#))
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1
e2)
#((top)
(top))
#("i4234"
"i4235"))
#(ribcage
#(step)
#((top))
#("i4225"))
#(ribcage
#(_
var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i4208"
"i4209"
"i4210"
"i4211"
"i4212"
"i4213"
"i4214"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4205")))
(hygiene
guile))
(append
#{c\ 4221}#
(list (cons '#(syntax-object
doloop
((top)
#(ribcage
#(e1
e2)
#((top)
(top))
#("i4234"
"i4235"))
#(ribcage
#(step)
#((top))
#("i4225"))
#(ribcage
#(_
var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i4208"
"i4209"
"i4210"
"i4211"
"i4212"
"i4213"
"i4214"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4205")))
(hygiene
guile))
#{step\ 4226}#)))))))
#{tmp\ 4233}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4227}#)))
($sc-dispatch
#{tmp\ 4227}#
'(any . each-any)))))
($sc-dispatch
#{tmp\ 4227}#
'())))
#{e1\ 4220}#))
#{tmp\ 4224}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4223}#)))
($sc-dispatch #{tmp\ 4223}# (quote each-any))))
(map (lambda (#{v\ 4244}# #{s\ 4245}#)
((lambda (#{tmp\ 4248}#)
((lambda (#{tmp\ 4249}#)
(if #{tmp\ 4249}#
(apply (lambda () #{v\ 4244}#)
#{tmp\ 4249}#)
((lambda (#{tmp\ 4250}#)
(if #{tmp\ 4250}#
(apply (lambda (#{e\ 4252}#)
#{e\ 4252}#)
#{tmp\ 4250}#)
((lambda (#{_\ 4254}#)
(syntax-violation
'do
"bad step expression"
#{orig-x\ 4204}#
#{s\ 4245}#))
#{tmp\ 4248}#)))
($sc-dispatch
#{tmp\ 4248}#
'(any)))))
($sc-dispatch #{tmp\ 4248}# (quote ()))))
#{s\ 4245}#))
#{var\ 4216}#
#{step\ 4218}#)))
#{tmp\ 4207}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4206}#)))
($sc-dispatch
#{tmp\ 4206}#
'(any #(each (any any . any))
(any . each-any)
.
each-any))))
#{orig-x\ 4204}#))))
(define quasiquote
(make-syntax-transformer
'quasiquote
'macro
(letrec ((#{quasicons\ 4261}#
(lambda (#{x\ 4265}# #{y\ 4266}#)
((lambda (#{tmp\ 4270}#)
((lambda (#{tmp\ 4271}#)
(if #{tmp\ 4271}#
(apply (lambda (#{x\ 4274}# #{y\ 4275}#)
((lambda (#{tmp\ 4276}#)
((lambda (#{tmp\ 4277}#)
(if #{tmp\ 4277}#
(apply (lambda (#{dy\ 4279}#)
((lambda (#{tmp\ 4280}#)
((lambda (#{tmp\ 4281}#)
(if #{tmp\ 4281}#
(apply (lambda (#{dx\ 4283}#)
(list '#(syntax-object
quote
((top)
#(ribcage
#(dx)
#((top))
#("i4282"))
#(ribcage
#(dy)
#((top))
#("i4278"))
#(ribcage
#(x
y)
#((top)
(top))
#("i4272"
"i4273"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(x
y)
#((top)
(top))
#("i4267"
"i4268"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top)
(top)
(top)
(top))
#("i4257"
"i4258"
"i4259"
"i4260")))
(hygiene
guile))
(cons #{dx\ 4283}#
#{dy\ 4279}#)))
#{tmp\ 4281}#)
((lambda (#{_\ 4285}#)
(if (null? #{dy\ 4279}#)
(list '#(syntax-object
list
((top)
#(ribcage
#(_)
#((top))
#("i4284"))
#(ribcage
#(dy)
#((top))
#("i4278"))
#(ribcage
#(x
y)
#((top)
(top))
#("i4272"
"i4273"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(x
y)
#((top)
(top))
#("i4267"
"i4268"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top)
(top)
(top)
(top))
#("i4257"
"i4258"
"i4259"
"i4260")))
(hygiene
guile))
#{x\ 4274}#)
(list '#(syntax-object
cons
((top)
#(ribcage
#(_)
#((top))
#("i4284"))
#(ribcage
#(dy)
#((top))
#("i4278"))
#(ribcage
#(x
y)
#((top)
(top))
#("i4272"
"i4273"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(x
y)
#((top)
(top))
#("i4267"
"i4268"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top)
(top)
(top)
(top))
#("i4257"
"i4258"
"i4259"
"i4260")))
(hygiene
guile))
#{x\ 4274}#
#{y\ 4275}#)))
#{tmp\ 4280}#)))
($sc-dispatch
#{tmp\ 4280}#
'(#(free-id
#(syntax-object
quote
((top)
#(ribcage
#(dy)
#((top))
#("i4278"))
#(ribcage
#(x y)
#((top)
(top))
#("i4272"
"i4273"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(x y)
#((top)
(top))
#("i4267"
"i4268"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top)
(top)
(top)
(top))
#("i4257"
"i4258"
"i4259"
"i4260")))
(hygiene
guile)))
any))))
#{x\ 4274}#))
#{tmp\ 4277}#)
((lambda (#{tmp\ 4286}#)
(if #{tmp\ 4286}#
(apply (lambda (#{stuff\ 4288}#)
(cons '#(syntax-object
list
((top)
#(ribcage
#(stuff)
#((top))
#("i4287"))
#(ribcage
#(x y)
#((top)
(top))
#("i4272"
"i4273"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(x y)
#((top)
(top))
#("i4267"
"i4268"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top)
(top)
(top)
(top))
#("i4257"
"i4258"
"i4259"
"i4260")))
(hygiene
guile))
(cons #{x\ 4274}#
#{stuff\ 4288}#)))
#{tmp\ 4286}#)
((lambda (#{else\ 4290}#)
(list '#(syntax-object
cons
((top)
#(ribcage
#(else)
#((top))
#("i4289"))
#(ribcage
#(x y)
#((top) (top))
#("i4272"
"i4273"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4267"
"i4268"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top)
(top)
(top)
(top))
#("i4257"
"i4258"
"i4259"
"i4260")))
(hygiene guile))
#{x\ 4274}#
#{y\ 4275}#))
#{tmp\ 4276}#)))
($sc-dispatch
#{tmp\ 4276}#
'(#(free-id
#(syntax-object
list
((top)
#(ribcage
#(x y)
#((top) (top))
#("i4272" "i4273"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4267" "i4268"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top)
(top)
(top)
(top))
#("i4257"
"i4258"
"i4259"
"i4260")))
(hygiene guile)))
.
any)))))
($sc-dispatch
#{tmp\ 4276}#
'(#(free-id
#(syntax-object
quote
((top)
#(ribcage
#(x y)
#((top) (top))
#("i4272" "i4273"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4267" "i4268"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4257"
"i4258"
"i4259"
"i4260")))
(hygiene guile)))
any))))
#{y\ 4275}#))
#{tmp\ 4271}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4270}#)))
($sc-dispatch #{tmp\ 4270}# (quote (any any)))))
(list #{x\ 4265}# #{y\ 4266}#))))
(#{quasiappend\ 4262}#
(lambda (#{x\ 4291}# #{y\ 4292}#)
((lambda (#{tmp\ 4296}#)
((lambda (#{tmp\ 4297}#)
(if #{tmp\ 4297}#
(apply (lambda (#{x\ 4300}# #{y\ 4301}#)
((lambda (#{tmp\ 4302}#)
((lambda (#{tmp\ 4303}#)
(if #{tmp\ 4303}#
(apply (lambda () #{x\ 4300}#)
#{tmp\ 4303}#)
((lambda (#{_\ 4305}#)
(list '#(syntax-object
append
((top)
#(ribcage
#(_)
#((top))
#("i4304"))
#(ribcage
#(x y)
#((top) (top))
#("i4298" "i4299"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4293" "i4294"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top)
(top)
(top)
(top))
#("i4257"
"i4258"
"i4259"
"i4260")))
(hygiene guile))
#{x\ 4300}#
#{y\ 4301}#))
#{tmp\ 4302}#)))
($sc-dispatch
#{tmp\ 4302}#
'(#(free-id
#(syntax-object
quote
((top)
#(ribcage
#(x y)
#((top) (top))
#("i4298" "i4299"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4293" "i4294"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4257"
"i4258"
"i4259"
"i4260")))
(hygiene guile)))
()))))
#{y\ 4301}#))
#{tmp\ 4297}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4296}#)))
($sc-dispatch #{tmp\ 4296}# (quote (any any)))))
(list #{x\ 4291}# #{y\ 4292}#))))
(#{quasivector\ 4263}#
(lambda (#{x\ 4306}#)
((lambda (#{tmp\ 4309}#)
((lambda (#{x\ 4311}#)
((lambda (#{tmp\ 4312}#)
((lambda (#{tmp\ 4313}#)
(if #{tmp\ 4313}#
(apply (lambda (#{x\ 4315}#)
(list '#(syntax-object
quote
((top)
#(ribcage
#(x)
#((top))
#("i4314"))
#(ribcage
#(x)
#((top))
#("i4310"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4307"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4257"
"i4258"
"i4259"
"i4260")))
(hygiene guile))
(list->vector #{x\ 4315}#)))
#{tmp\ 4313}#)
((lambda (#{tmp\ 4317}#)
(if #{tmp\ 4317}#
(apply (lambda (#{x\ 4319}#)
(cons '#(syntax-object
vector
((top)
#(ribcage
#(x)
#((top))
#("i4318"))
#(ribcage
#(x)
#((top))
#("i4310"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4307"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top)
(top)
(top)
(top))
#("i4257"
"i4258"
"i4259"
"i4260")))
(hygiene guile))
#{x\ 4319}#))
#{tmp\ 4317}#)
((lambda (#{_\ 4322}#)
(list '#(syntax-object
list->vector
((top)
#(ribcage
#(_)
#((top))
#("i4321"))
#(ribcage
#(x)
#((top))
#("i4310"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4307"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4257"
"i4258"
"i4259"
"i4260")))
(hygiene guile))
#{x\ 4311}#))
#{tmp\ 4312}#)))
($sc-dispatch
#{tmp\ 4312}#
'(#(free-id
#(syntax-object
list
((top)
#(ribcage #(x) #((top)) #("i4310"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4307"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4257" "i4258" "i4259" "i4260")))
(hygiene guile)))
.
each-any)))))
($sc-dispatch
#{tmp\ 4312}#
'(#(free-id
#(syntax-object
quote
((top)
#(ribcage #(x) #((top)) #("i4310"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4307"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4257" "i4258" "i4259" "i4260")))
(hygiene guile)))
each-any))))
#{x\ 4311}#))
#{tmp\ 4309}#))
#{x\ 4306}#)))
(#{quasi\ 4264}#
(lambda (#{p\ 4323}# #{lev\ 4324}#)
((lambda (#{tmp\ 4327}#)
((lambda (#{tmp\ 4328}#)
(if #{tmp\ 4328}#
(apply (lambda (#{p\ 4330}#)
(if (= #{lev\ 4324}# 0)
#{p\ 4330}#
(#{quasicons\ 4261}#
'(#(syntax-object
quote
((top)
#(ribcage #(p) #((top)) #("i4329"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4325" "i4326"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4257"
"i4258"
"i4259"
"i4260")))
(hygiene guile))
#(syntax-object
unquote
((top)
#(ribcage #(p) #((top)) #("i4329"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4325" "i4326"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4257"
"i4258"
"i4259"
"i4260")))
(hygiene guile)))
(#{quasi\ 4264}#
(list #{p\ 4330}#)
(- #{lev\ 4324}# 1)))))
#{tmp\ 4328}#)
((lambda (#{tmp\ 4331}#)
(if (if #{tmp\ 4331}#
(apply (lambda (#{args\ 4333}#)
(= #{lev\ 4324}# 0))
#{tmp\ 4331}#)
#f)
(apply (lambda (#{args\ 4335}#)
(syntax-violation
'unquote
"unquote takes exactly one argument"
#{p\ 4323}#
(cons '#(syntax-object
unquote
((top)
#(ribcage
#(args)
#((top))
#("i4334"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4325" "i4326"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4257"
"i4258"
"i4259"
"i4260")))
(hygiene guile))
#{args\ 4335}#)))
#{tmp\ 4331}#)
((lambda (#{tmp\ 4336}#)
(if #{tmp\ 4336}#
(apply (lambda (#{p\ 4339}# #{q\ 4340}#)
(if (= #{lev\ 4324}# 0)
(#{quasiappend\ 4262}#
#{p\ 4339}#
(#{quasi\ 4264}#
#{q\ 4340}#
#{lev\ 4324}#))
(#{quasicons\ 4261}#
(#{quasicons\ 4261}#
'(#(syntax-object
quote
((top)
#(ribcage
#(p q)
#((top) (top))
#("i4337" "i4338"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4325" "i4326"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top)
(top)
(top)
(top))
#("i4257"
"i4258"
"i4259"
"i4260")))
(hygiene guile))
#(syntax-object
unquote-splicing
((top)
#(ribcage
#(p q)
#((top) (top))
#("i4337" "i4338"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4325" "i4326"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top)
(top)
(top)
(top))
#("i4257"
"i4258"
"i4259"
"i4260")))
(hygiene guile)))
(#{quasi\ 4264}#
(list #{p\ 4339}#)
(- #{lev\ 4324}# 1)))
(#{quasi\ 4264}#
#{q\ 4340}#
#{lev\ 4324}#))))
#{tmp\ 4336}#)
((lambda (#{tmp\ 4341}#)
(if (if #{tmp\ 4341}#
(apply (lambda (#{args\ 4344}#
#{q\ 4345}#)
(= #{lev\ 4324}# 0))
#{tmp\ 4341}#)
#f)
(apply (lambda (#{args\ 4348}#
#{q\ 4349}#)
(syntax-violation
'unquote-splicing
"unquote-splicing takes exactly one argument"
#{p\ 4323}#
(cons '#(syntax-object
unquote-splicing
((top)
#(ribcage
#(args q)
#((top) (top))
#("i4346"
"i4347"))
#(ribcage
()
()
())
#(ribcage
#(p lev)
#((top) (top))
#("i4325"
"i4326"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top)
(top)
(top)
(top))
#("i4257"
"i4258"
"i4259"
"i4260")))
(hygiene guile))
#{args\ 4348}#)))
#{tmp\ 4341}#)
((lambda (#{tmp\ 4350}#)
(if #{tmp\ 4350}#
(apply (lambda (#{p\ 4352}#)
(#{quasicons\ 4261}#
'(#(syntax-object
quote
((top)
#(ribcage
#(p)
#((top))
#("i4351"))
#(ribcage
()
()
())
#(ribcage
#(p lev)
#((top) (top))
#("i4325"
"i4326"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top)
(top)
(top)
(top))
#("i4257"
"i4258"
"i4259"
"i4260")))
(hygiene guile))
#(syntax-object
quasiquote
((top)
#(ribcage
#(p)
#((top))
#("i4351"))
#(ribcage
()
()
())
#(ribcage
#(p lev)
#((top) (top))
#("i4325"
"i4326"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top)
(top)
(top)
(top))
#("i4257"
"i4258"
"i4259"
"i4260")))
(hygiene guile)))
(#{quasi\ 4264}#
(list #{p\ 4352}#)
(+ #{lev\ 4324}#
1))))
#{tmp\ 4350}#)
((lambda (#{tmp\ 4353}#)
(if #{tmp\ 4353}#
(apply (lambda (#{p\ 4356}#
#{q\ 4357}#)
(#{quasicons\ 4261}#
(#{quasi\ 4264}#
#{p\ 4356}#
#{lev\ 4324}#)
(#{quasi\ 4264}#
#{q\ 4357}#
#{lev\ 4324}#)))
#{tmp\ 4353}#)
((lambda (#{tmp\ 4358}#)
(if #{tmp\ 4358}#
(apply (lambda (#{x\ 4360}#)
(#{quasivector\ 4263}#
(#{quasi\ 4264}#
#{x\ 4360}#
#{lev\ 4324}#)))
#{tmp\ 4358}#)
((lambda (#{p\ 4363}#)
(list '#(syntax-object
quote
((top)
#(ribcage
#(p)
#((top))
#("i4362"))
#(ribcage
()
()
())
#(ribcage
#(p lev)
#((top)
(top))
#("i4325"
"i4326"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top)
(top)
(top)
(top))
#("i4257"
"i4258"
"i4259"
"i4260")))
(hygiene
guile))
#{p\ 4363}#))
#{tmp\ 4327}#)))
($sc-dispatch
#{tmp\ 4327}#
'#(vector each-any)))))
($sc-dispatch
#{tmp\ 4327}#
'(any . any)))))
($sc-dispatch
#{tmp\ 4327}#
'(#(free-id
#(syntax-object
quasiquote
((top)
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4325" "i4326"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4257"
"i4258"
"i4259"
"i4260")))
(hygiene guile)))
any)))))
($sc-dispatch
#{tmp\ 4327}#
'((#(free-id
#(syntax-object
unquote-splicing
((top)
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4325" "i4326"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4257"
"i4258"
"i4259"
"i4260")))
(hygiene guile)))
.
any)
.
any)))))
($sc-dispatch
#{tmp\ 4327}#
'((#(free-id
#(syntax-object
unquote-splicing
((top)
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4325" "i4326"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4257" "i4258" "i4259" "i4260")))
(hygiene guile)))
any)
.
any)))))
($sc-dispatch
#{tmp\ 4327}#
'(#(free-id
#(syntax-object
unquote
((top)
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4325" "i4326"))
#(ribcage
#(quasicons quasiappend quasivector quasi)
#((top) (top) (top) (top))
#("i4257" "i4258" "i4259" "i4260")))
(hygiene guile)))
.
any)))))
($sc-dispatch
#{tmp\ 4327}#
'(#(free-id
#(syntax-object
unquote
((top)
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4325" "i4326"))
#(ribcage
#(quasicons quasiappend quasivector quasi)
#((top) (top) (top) (top))
#("i4257" "i4258" "i4259" "i4260")))
(hygiene guile)))
any))))
#{p\ 4323}#))))
(lambda (#{x\ 4364}#)
((lambda (#{tmp\ 4366}#)
((lambda (#{tmp\ 4367}#)
(if #{tmp\ 4367}#
(apply (lambda (#{_\ 4370}# #{e\ 4371}#)
(#{quasi\ 4264}# #{e\ 4371}# 0))
#{tmp\ 4367}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4366}#)))
($sc-dispatch #{tmp\ 4366}# (quote (any any)))))
#{x\ 4364}#)))))
(define include
(make-syntax-transformer
'include
'macro
(lambda (#{x\ 4372}#)
(letrec ((#{read-file\ 4375}#
(lambda (#{fn\ 4376}# #{k\ 4377}#)
(let ((#{p\ 4381}# (open-input-file #{fn\ 4376}#)))
(letrec ((#{f\ 4385}#
(lambda (#{x\ 4386}# #{result\ 4387}#)
(if (eof-object? #{x\ 4386}#)
(begin
(close-input-port #{p\ 4381}#)
(reverse #{result\ 4387}#))
(#{f\ 4385}#
(read #{p\ 4381}#)
(cons (datum->syntax
#{k\ 4377}#
#{x\ 4386}#)
#{result\ 4387}#))))))
(#{f\ 4385}# (read #{p\ 4381}#) (quote ())))))))
((lambda (#{tmp\ 4388}#)
((lambda (#{tmp\ 4389}#)
(if #{tmp\ 4389}#
(apply (lambda (#{k\ 4392}# #{filename\ 4393}#)
(let ((#{fn\ 4395}#
(syntax->datum #{filename\ 4393}#)))
((lambda (#{tmp\ 4397}#)
((lambda (#{tmp\ 4398}#)
(if #{tmp\ 4398}#
(apply (lambda (#{exp\ 4400}#)
(cons '#(syntax-object
begin
((top)
#(ribcage
#(exp)
#((top))
#("i4399"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(fn)
#((top))
#("i4394"))
#(ribcage
#(k filename)
#((top) (top))
#("i4390" "i4391"))
#(ribcage
(read-file)
((top))
("i4374"))
#(ribcage
#(x)
#((top))
#("i4373")))
(hygiene guile))
#{exp\ 4400}#))
#{tmp\ 4398}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4397}#)))
($sc-dispatch #{tmp\ 4397}# (quote each-any))))
(#{read-file\ 4375}#
#{fn\ 4395}#
#{filename\ 4393}#))))
#{tmp\ 4389}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4388}#)))
($sc-dispatch #{tmp\ 4388}# (quote (any any)))))
#{x\ 4372}#)))))
(define include-from-path
(make-syntax-transformer
'include-from-path
'macro
(lambda (#{x\ 4402}#)
((lambda (#{tmp\ 4404}#)
((lambda (#{tmp\ 4405}#)
(if #{tmp\ 4405}#
(apply (lambda (#{k\ 4408}# #{filename\ 4409}#)
(let ((#{fn\ 4411}# (syntax->datum #{filename\ 4409}#)))
((lambda (#{tmp\ 4413}#)
((lambda (#{fn\ 4415}#)
(list '#(syntax-object
include
((top)
#(ribcage #(fn) #((top)) #("i4414"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(fn) #((top)) #("i4410"))
#(ribcage
#(k filename)
#((top) (top))
#("i4406" "i4407"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4403")))
(hygiene guile))
#{fn\ 4415}#))
#{tmp\ 4413}#))
(datum->syntax
#{filename\ 4409}#
(let ((#{t\ 4418}#
(%search-load-path #{fn\ 4411}#)))
(if #{t\ 4418}#
#{t\ 4418}#
(syntax-violation
'include-from-path
"file not found in path"
#{x\ 4402}#
#{filename\ 4409}#)))))))
#{tmp\ 4405}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4404}#)))
($sc-dispatch #{tmp\ 4404}# (quote (any any)))))
#{x\ 4402}#))))
(define unquote
(make-syntax-transformer
'unquote
'macro
(lambda (#{x\ 4420}#)
((lambda (#{tmp\ 4422}#)
((lambda (#{tmp\ 4423}#)
(if #{tmp\ 4423}#
(apply (lambda (#{_\ 4426}# #{e\ 4427}#)
(syntax-violation
'unquote
"expression not valid outside of quasiquote"
#{x\ 4420}#))
#{tmp\ 4423}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4422}#)))
($sc-dispatch #{tmp\ 4422}# (quote (any any)))))
#{x\ 4420}#))))
(define unquote-splicing
(make-syntax-transformer
'unquote-splicing
'macro
(lambda (#{x\ 4428}#)
((lambda (#{tmp\ 4430}#)
((lambda (#{tmp\ 4431}#)
(if #{tmp\ 4431}#
(apply (lambda (#{_\ 4434}# #{e\ 4435}#)
(syntax-violation
'unquote-splicing
"expression not valid outside of quasiquote"
#{x\ 4428}#))
#{tmp\ 4431}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4430}#)))
($sc-dispatch #{tmp\ 4430}# (quote (any any)))))
#{x\ 4428}#))))
(define case
(make-syntax-transformer
'case
'macro
(lambda (#{x\ 4436}#)
((lambda (#{tmp\ 4438}#)
((lambda (#{tmp\ 4439}#)
(if #{tmp\ 4439}#
(apply (lambda (#{_\ 4444}#
#{e\ 4445}#
#{m1\ 4446}#
#{m2\ 4447}#)
((lambda (#{tmp\ 4449}#)
((lambda (#{body\ 4451}#)
(list '#(syntax-object
let
((top)
#(ribcage #(body) #((top)) #("i4450"))
#(ribcage
#(_ e m1 m2)
#((top) (top) (top) (top))
#("i4440" "i4441" "i4442" "i4443"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4437")))
(hygiene guile))
(list (list '#(syntax-object
t
((top)
#(ribcage
#(body)
#((top))
#("i4450"))
#(ribcage
#(_ e m1 m2)
#((top) (top) (top) (top))
#("i4440"
"i4441"
"i4442"
"i4443"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4437")))
(hygiene guile))
#{e\ 4445}#))
#{body\ 4451}#))
#{tmp\ 4449}#))
(letrec ((#{f\ 4455}#
(lambda (#{clause\ 4456}# #{clauses\ 4457}#)
(if (null? #{clauses\ 4457}#)
((lambda (#{tmp\ 4459}#)
((lambda (#{tmp\ 4460}#)
(if #{tmp\ 4460}#
(apply (lambda (#{e1\ 4463}#
#{e2\ 4464}#)
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1 e2)
#((top)
(top))
#("i4461"
"i4462"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4452"
"i4453"
"i4454"))
#(ribcage
#(_
e
m1
m2)
#((top)
(top)
(top)
(top))
#("i4440"
"i4441"
"i4442"
"i4443"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4437")))
(hygiene
guile))
(cons #{e1\ 4463}#
#{e2\ 4464}#)))
#{tmp\ 4460}#)
((lambda (#{tmp\ 4466}#)
(if #{tmp\ 4466}#
(apply (lambda (#{k\ 4470}#
#{e1\ 4471}#
#{e2\ 4472}#)
(list '#(syntax-object
if
((top)
#(ribcage
#(k
e1
e2)
#((top)
(top)
(top))
#("i4467"
"i4468"
"i4469"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4452"
"i4453"
"i4454"))
#(ribcage
#(_
e
m1
m2)
#((top)
(top)
(top)
(top))
#("i4440"
"i4441"
"i4442"
"i4443"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4437")))
(hygiene
guile))
(list '#(syntax-object
memv
((top)
#(ribcage
#(k
e1
e2)
#((top)
(top)
(top))
#("i4467"
"i4468"
"i4469"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4452"
"i4453"
"i4454"))
#(ribcage
#(_
e
m1
m2)
#((top)
(top)
(top)
(top))
#("i4440"
"i4441"
"i4442"
"i4443"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4437")))
(hygiene
guile))
'#(syntax-object
t
((top)
#(ribcage
#(k
e1
e2)
#((top)
(top)
(top))
#("i4467"
"i4468"
"i4469"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4452"
"i4453"
"i4454"))
#(ribcage
#(_
e
m1
m2)
#((top)
(top)
(top)
(top))
#("i4440"
"i4441"
"i4442"
"i4443"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4437")))
(hygiene
guile))
(list '#(syntax-object
quote
((top)
#(ribcage
#(k
e1
e2)
#((top)
(top)
(top))
#("i4467"
"i4468"
"i4469"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4452"
"i4453"
"i4454"))
#(ribcage
#(_
e
m1
m2)
#((top)
(top)
(top)
(top))
#("i4440"
"i4441"
"i4442"
"i4443"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4437")))
(hygiene
guile))
#{k\ 4470}#))
(cons '#(syntax-object
begin
((top)
#(ribcage
#(k
e1
e2)
#((top)
(top)
(top))
#("i4467"
"i4468"
"i4469"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4452"
"i4453"
"i4454"))
#(ribcage
#(_
e
m1
m2)
#((top)
(top)
(top)
(top))
#("i4440"
"i4441"
"i4442"
"i4443"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4437")))
(hygiene
guile))
(cons #{e1\ 4471}#
#{e2\ 4472}#))))
#{tmp\ 4466}#)
((lambda (#{_\ 4476}#)
(syntax-violation
'case
"bad clause"
#{x\ 4436}#
#{clause\ 4456}#))
#{tmp\ 4459}#)))
($sc-dispatch
#{tmp\ 4459}#
'(each-any
any
.
each-any)))))
($sc-dispatch
#{tmp\ 4459}#
'(#(free-id
#(syntax-object
else
((top)
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
#("i4452"
"i4453"
"i4454"))
#(ribcage
#(_ e m1 m2)
#((top)
(top)
(top)
(top))
#("i4440"
"i4441"
"i4442"
"i4443"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4437")))
(hygiene guile)))
any
.
each-any))))
#{clause\ 4456}#)
((lambda (#{tmp\ 4478}#)
((lambda (#{rest\ 4480}#)
((lambda (#{tmp\ 4481}#)
((lambda (#{tmp\ 4482}#)
(if #{tmp\ 4482}#
(apply (lambda (#{k\ 4486}#
#{e1\ 4487}#
#{e2\ 4488}#)
(list '#(syntax-object
if
((top)
#(ribcage
#(k
e1
e2)
#((top)
(top)
(top))
#("i4483"
"i4484"
"i4485"))
#(ribcage
#(rest)
#((top))
#("i4479"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4452"
"i4453"
"i4454"))
#(ribcage
#(_
e
m1
m2)
#((top)
(top)
(top)
(top))
#("i4440"
"i4441"
"i4442"
"i4443"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4437")))
(hygiene
guile))
(list '#(syntax-object
memv
((top)
#(ribcage
#(k
e1
e2)
#((top)
(top)
(top))
#("i4483"
"i4484"
"i4485"))
#(ribcage
#(rest)
#((top))
#("i4479"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4452"
"i4453"
"i4454"))
#(ribcage
#(_
e
m1
m2)
#((top)
(top)
(top)
(top))
#("i4440"
"i4441"
"i4442"
"i4443"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4437")))
(hygiene
guile))
'#(syntax-object
t
((top)
#(ribcage
#(k
e1
e2)
#((top)
(top)
(top))
#("i4483"
"i4484"
"i4485"))
#(ribcage
#(rest)
#((top))
#("i4479"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4452"
"i4453"
"i4454"))
#(ribcage
#(_
e
m1
m2)
#((top)
(top)
(top)
(top))
#("i4440"
"i4441"
"i4442"
"i4443"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4437")))
(hygiene
guile))
(list '#(syntax-object
quote
((top)
#(ribcage
#(k
e1
e2)
#((top)
(top)
(top))
#("i4483"
"i4484"
"i4485"))
#(ribcage
#(rest)
#((top))
#("i4479"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4452"
"i4453"
"i4454"))
#(ribcage
#(_
e
m1
m2)
#((top)
(top)
(top)
(top))
#("i4440"
"i4441"
"i4442"
"i4443"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4437")))
(hygiene
guile))
#{k\ 4486}#))
(cons '#(syntax-object
begin
((top)
#(ribcage
#(k
e1
e2)
#((top)
(top)
(top))
#("i4483"
"i4484"
"i4485"))
#(ribcage
#(rest)
#((top))
#("i4479"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4452"
"i4453"
"i4454"))
#(ribcage
#(_
e
m1
m2)
#((top)
(top)
(top)
(top))
#("i4440"
"i4441"
"i4442"
"i4443"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4437")))
(hygiene
guile))
(cons #{e1\ 4487}#
#{e2\ 4488}#))
#{rest\ 4480}#))
#{tmp\ 4482}#)
((lambda (#{_\ 4492}#)
(syntax-violation
'case
"bad clause"
#{x\ 4436}#
#{clause\ 4456}#))
#{tmp\ 4481}#)))
($sc-dispatch
#{tmp\ 4481}#
'(each-any
any
.
each-any))))
#{clause\ 4456}#))
#{tmp\ 4478}#))
(#{f\ 4455}#
(car #{clauses\ 4457}#)
(cdr #{clauses\ 4457}#)))))))
(#{f\ 4455}# #{m1\ 4446}# #{m2\ 4447}#))))
#{tmp\ 4439}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4438}#)))
($sc-dispatch
#{tmp\ 4438}#
'(any any any . each-any))))
#{x\ 4436}#))))
(define identifier-syntax
(make-syntax-transformer
'identifier-syntax
'macro
(lambda (#{x\ 4493}#)
((lambda (#{tmp\ 4495}#)
((lambda (#{tmp\ 4496}#)
(if #{tmp\ 4496}#
(apply (lambda (#{_\ 4499}# #{e\ 4500}#)
(list '#(syntax-object
lambda
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i4497" "i4498"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4494")))
(hygiene guile))
'(#(syntax-object
x
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i4497" "i4498"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4494")))
(hygiene guile)))
'#((#(syntax-object
macro-type
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i4497" "i4498"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4494")))
(hygiene guile))
.
#(syntax-object
identifier-syntax
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i4497" "i4498"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4494")))
(hygiene guile))))
(list '#(syntax-object
syntax-case
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i4497" "i4498"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4494")))
(hygiene guile))
'#(syntax-object
x
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i4497" "i4498"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4494")))
(hygiene guile))
'()
(list '#(syntax-object
id
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i4497" "i4498"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4494")))
(hygiene guile))
'(#(syntax-object
identifier?
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i4497" "i4498"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4494")))
(hygiene guile))
(#(syntax-object
syntax
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i4497" "i4498"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4494")))
(hygiene guile))
#(syntax-object
id
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i4497" "i4498"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4494")))
(hygiene guile))))
(list '#(syntax-object
syntax
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i4497" "i4498"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4494")))
(hygiene guile))
#{e\ 4500}#))
(list (cons #{_\ 4499}#
'(#(syntax-object
x
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i4497" "i4498"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4494")))
(hygiene guile))
#(syntax-object
...
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i4497" "i4498"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4494")))
(hygiene guile))))
(list '#(syntax-object
syntax
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i4497" "i4498"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4494")))
(hygiene guile))
(cons #{e\ 4500}#
'(#(syntax-object
x
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i4497" "i4498"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4494")))
(hygiene guile))
#(syntax-object
...
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i4497" "i4498"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4494")))
(hygiene
guile)))))))))
#{tmp\ 4496}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4495}#)))
($sc-dispatch #{tmp\ 4495}# (quote (any any)))))
#{x\ 4493}#))))
(define define*
(make-syntax-transformer
'define*
'macro
(lambda (#{x\ 4501}#)
((lambda (#{tmp\ 4503}#)
((lambda (#{tmp\ 4504}#)
(if #{tmp\ 4504}#
(apply (lambda (#{_\ 4510}#
#{id\ 4511}#
#{args\ 4512}#
#{b0\ 4513}#
#{b1\ 4514}#)
(list '#(syntax-object
define
((top)
#(ribcage
#(_ id args b0 b1)
#((top) (top) (top) (top) (top))
#("i4505" "i4506" "i4507" "i4508" "i4509"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4502")))
(hygiene guile))
#{id\ 4511}#
(cons '#(syntax-object
lambda*
((top)
#(ribcage
#(_ id args b0 b1)
#((top) (top) (top) (top) (top))
#("i4505"
"i4506"
"i4507"
"i4508"
"i4509"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4502")))
(hygiene guile))
(cons #{args\ 4512}#
(cons #{b0\ 4513}# #{b1\ 4514}#)))))
#{tmp\ 4504}#)
((lambda (#{tmp\ 4516}#)
(if (if #{tmp\ 4516}#
(apply (lambda (#{_\ 4520}# #{id\ 4521}# #{val\ 4522}#)
(identifier?
'#(syntax-object
x
((top)
#(ribcage
#(_ id val)
#((top) (top) (top))
#("i4517" "i4518" "i4519"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4502")))
(hygiene guile))))
#{tmp\ 4516}#)
#f)
(apply (lambda (#{_\ 4526}# #{id\ 4527}# #{val\ 4528}#)
(list '#(syntax-object
define
((top)
#(ribcage
#(_ id val)
#((top) (top) (top))
#("i4523" "i4524" "i4525"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4502")))
(hygiene guile))
#{id\ 4527}#
#{val\ 4528}#))
#{tmp\ 4516}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4503}#)))
($sc-dispatch
#{tmp\ 4503}#
'(any any any)))))
($sc-dispatch
#{tmp\ 4503}#
'(any (any . any) any . each-any))))
#{x\ 4501}#))))