1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-29 08:20:20 +02:00
guile/module/ice-9/psyntax-pp.scm
Andy Wingo 0f550375be unquote and unquote-splicing can split multiple expressions
* module/ice-9/psyntax.scm (quasiquote): Import new definition from
  upstream psyntax, to allow unquote and unquote-splicing to take
  multiple arguments.
  (unquote, unquote-splicing): Adapt to not require a particular syntax
  form.

* module/ice-9/psyntax-pp.scm: Regenerated.
2011-02-08 21:38:57 +01:00

18978 lines
1.1 MiB

(eval-when (compile) (set-current-module (resolve-module (quote (guile)))))
(if #f #f)
(letrec*
((#{and-map*\ 37}#
(lambda (#{f\ 201}# #{first\ 202}# . #{rest\ 203}#)
(begin
(let ((#{t\ 209}# (null? #{first\ 202}#)))
(if #{t\ 209}#
#{t\ 209}#
(if (null? #{rest\ 203}#)
(letrec*
((#{andmap\ 213}#
(lambda (#{first\ 214}#)
(begin
(let ((#{x\ 217}# (car #{first\ 214}#))
(#{first\ 218}# (cdr #{first\ 214}#)))
(if (null? #{first\ 218}#)
(#{f\ 201}# #{x\ 217}#)
(if (#{f\ 201}# #{x\ 217}#)
(#{andmap\ 213}# #{first\ 218}#)
#f)))))))
(begin (#{andmap\ 213}# #{first\ 202}#)))
(letrec*
((#{andmap\ 224}#
(lambda (#{first\ 225}# #{rest\ 226}#)
(begin
(let ((#{x\ 231}# (car #{first\ 225}#))
(#{xr\ 232}# (map car #{rest\ 226}#))
(#{first\ 233}# (cdr #{first\ 225}#))
(#{rest\ 234}# (map cdr #{rest\ 226}#)))
(if (null? #{first\ 233}#)
(@apply #{f\ 201}# #{x\ 231}# #{xr\ 232}#)
(if (@apply #{f\ 201}# #{x\ 231}# #{xr\ 232}#)
(#{andmap\ 224}# #{first\ 233}# #{rest\ 234}#)
#f)))))))
(begin
(#{andmap\ 224}# #{first\ 202}# #{rest\ 203}#))))))))))
(begin
(let ((#{make-primitive-ref\ 243}# (if #f #f))
(#{fx+\ 282}# (if #f #f))
(#{fx-\ 284}# (if #f #f))
(#{fx=\ 286}# (if #f #f))
(#{fx<\ 288}# (if #f #f))
(#{set-syntax-object-expression!\ 353}#
(if #f #f))
(#{set-syntax-object-wrap!\ 355}# (if #f #f))
(#{set-syntax-object-module!\ 357}# (if #f #f))
(#{ribcage?\ 399}# (if #f #f)))
(letrec*
((#{make-void\ 239}#
(lambda (#{src\ 751}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 0)
#{src\ 751}#)))
(#{make-const\ 241}#
(lambda (#{src\ 753}# #{exp\ 754}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 1)
#{src\ 753}#
#{exp\ 754}#)))
(#{make-lexical-ref\ 245}#
(lambda (#{src\ 761}# #{name\ 762}# #{gensym\ 763}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 3)
#{src\ 761}#
#{name\ 762}#
#{gensym\ 763}#)))
(#{make-lexical-set\ 247}#
(lambda (#{src\ 767}#
#{name\ 768}#
#{gensym\ 769}#
#{exp\ 770}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 4)
#{src\ 767}#
#{name\ 768}#
#{gensym\ 769}#
#{exp\ 770}#)))
(#{make-module-ref\ 249}#
(lambda (#{src\ 775}#
#{mod\ 776}#
#{name\ 777}#
#{public?\ 778}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 5)
#{src\ 775}#
#{mod\ 776}#
#{name\ 777}#
#{public?\ 778}#)))
(#{make-module-set\ 251}#
(lambda (#{src\ 783}#
#{mod\ 784}#
#{name\ 785}#
#{public?\ 786}#
#{exp\ 787}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 6)
#{src\ 783}#
#{mod\ 784}#
#{name\ 785}#
#{public?\ 786}#
#{exp\ 787}#)))
(#{make-toplevel-ref\ 253}#
(lambda (#{src\ 793}# #{name\ 794}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 7)
#{src\ 793}#
#{name\ 794}#)))
(#{make-toplevel-set\ 255}#
(lambda (#{src\ 797}# #{name\ 798}# #{exp\ 799}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 8)
#{src\ 797}#
#{name\ 798}#
#{exp\ 799}#)))
(#{make-toplevel-define\ 257}#
(lambda (#{src\ 803}# #{name\ 804}# #{exp\ 805}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 9)
#{src\ 803}#
#{name\ 804}#
#{exp\ 805}#)))
(#{make-conditional\ 259}#
(lambda (#{src\ 809}#
#{test\ 810}#
#{consequent\ 811}#
#{alternate\ 812}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 10)
#{src\ 809}#
#{test\ 810}#
#{consequent\ 811}#
#{alternate\ 812}#)))
(#{make-application\ 261}#
(lambda (#{src\ 817}# #{proc\ 818}# #{args\ 819}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 11)
#{src\ 817}#
#{proc\ 818}#
#{args\ 819}#)))
(#{make-sequence\ 263}#
(lambda (#{src\ 823}# #{exps\ 824}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 12)
#{src\ 823}#
#{exps\ 824}#)))
(#{make-lambda\ 265}#
(lambda (#{src\ 827}# #{meta\ 828}# #{body\ 829}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 13)
#{src\ 827}#
#{meta\ 828}#
#{body\ 829}#)))
(#{make-lambda-case\ 267}#
(lambda (#{src\ 833}#
#{req\ 834}#
#{opt\ 835}#
#{rest\ 836}#
#{kw\ 837}#
#{inits\ 838}#
#{gensyms\ 839}#
#{body\ 840}#
#{alternate\ 841}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 14)
#{src\ 833}#
#{req\ 834}#
#{opt\ 835}#
#{rest\ 836}#
#{kw\ 837}#
#{inits\ 838}#
#{gensyms\ 839}#
#{body\ 840}#
#{alternate\ 841}#)))
(#{make-let\ 269}#
(lambda (#{src\ 851}#
#{names\ 852}#
#{gensyms\ 853}#
#{vals\ 854}#
#{body\ 855}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 15)
#{src\ 851}#
#{names\ 852}#
#{gensyms\ 853}#
#{vals\ 854}#
#{body\ 855}#)))
(#{make-letrec\ 271}#
(lambda (#{src\ 861}#
#{in-order?\ 862}#
#{names\ 863}#
#{gensyms\ 864}#
#{vals\ 865}#
#{body\ 866}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 16)
#{src\ 861}#
#{in-order?\ 862}#
#{names\ 863}#
#{gensyms\ 864}#
#{vals\ 865}#
#{body\ 866}#)))
(#{make-dynlet\ 273}#
(lambda (#{src\ 873}#
#{fluids\ 874}#
#{vals\ 875}#
#{body\ 876}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 17)
#{src\ 873}#
#{fluids\ 874}#
#{vals\ 875}#
#{body\ 876}#)))
(#{lambda?\ 276}#
(lambda (#{x\ 881}#)
(if (struct? #{x\ 881}#)
(eq? (struct-vtable #{x\ 881}#)
(vector-ref %expanded-vtables 13))
#f)))
(#{lambda-meta\ 278}#
(lambda (#{x\ 885}#) (struct-ref #{x\ 885}# 1)))
(#{set-lambda-meta!\ 280}#
(lambda (#{x\ 887}# #{v\ 888}#)
(struct-set! #{x\ 887}# 1 #{v\ 888}#)))
(#{top-level-eval-hook\ 290}#
(lambda (#{x\ 891}# #{mod\ 892}#)
(primitive-eval #{x\ 891}#)))
(#{local-eval-hook\ 292}#
(lambda (#{x\ 895}# #{mod\ 896}#)
(primitive-eval #{x\ 895}#)))
(#{put-global-definition-hook\ 295}#
(lambda (#{symbol\ 899}# #{type\ 900}# #{val\ 901}#)
(module-define!
(current-module)
#{symbol\ 899}#
(make-syntax-transformer
#{symbol\ 899}#
#{type\ 900}#
#{val\ 901}#))))
(#{get-global-definition-hook\ 297}#
(lambda (#{symbol\ 905}# #{module\ 906}#)
(begin
(if (if (not #{module\ 906}#) (current-module) #f)
(warn "module system is booted, we should have a module"
#{symbol\ 905}#))
(begin
(let ((#{v\ 912}# (module-variable
(if #{module\ 906}#
(resolve-module (cdr #{module\ 906}#))
(current-module))
#{symbol\ 905}#)))
(if #{v\ 912}#
(if (variable-bound? #{v\ 912}#)
(begin
(let ((#{val\ 917}# (variable-ref #{v\ 912}#)))
(if (macro? #{val\ 917}#)
(if (macro-type #{val\ 917}#)
(cons (macro-type #{val\ 917}#)
(macro-binding #{val\ 917}#))
#f)
#f)))
#f)
#f))))))
(#{decorate-source\ 299}#
(lambda (#{e\ 921}# #{s\ 922}#)
(begin
(if (if (pair? #{e\ 921}#) #{s\ 922}# #f)
(set-source-properties! #{e\ 921}# #{s\ 922}#))
#{e\ 921}#)))
(#{maybe-name-value!\ 301}#
(lambda (#{name\ 927}# #{val\ 928}#)
(if (#{lambda?\ 276}# #{val\ 928}#)
(begin
(let ((#{meta\ 932}#
(#{lambda-meta\ 278}# #{val\ 928}#)))
(if (not (assq 'name #{meta\ 932}#))
(#{set-lambda-meta!\ 280}#
#{val\ 928}#
(cons (cons 'name #{name\ 927}#) #{meta\ 932}#))))))))
(#{build-void\ 303}#
(lambda (#{source\ 933}#)
(#{make-void\ 239}# #{source\ 933}#)))
(#{build-application\ 305}#
(lambda (#{source\ 935}#
#{fun-exp\ 936}#
#{arg-exps\ 937}#)
(#{make-application\ 261}#
#{source\ 935}#
#{fun-exp\ 936}#
#{arg-exps\ 937}#)))
(#{build-conditional\ 307}#
(lambda (#{source\ 941}#
#{test-exp\ 942}#
#{then-exp\ 943}#
#{else-exp\ 944}#)
(#{make-conditional\ 259}#
#{source\ 941}#
#{test-exp\ 942}#
#{then-exp\ 943}#
#{else-exp\ 944}#)))
(#{build-dynlet\ 309}#
(lambda (#{source\ 949}#
#{fluids\ 950}#
#{vals\ 951}#
#{body\ 952}#)
(#{make-dynlet\ 273}#
#{source\ 949}#
#{fluids\ 950}#
#{vals\ 951}#
#{body\ 952}#)))
(#{build-lexical-reference\ 311}#
(lambda (#{type\ 957}#
#{source\ 958}#
#{name\ 959}#
#{var\ 960}#)
(#{make-lexical-ref\ 245}#
#{source\ 958}#
#{name\ 959}#
#{var\ 960}#)))
(#{build-lexical-assignment\ 313}#
(lambda (#{source\ 965}#
#{name\ 966}#
#{var\ 967}#
#{exp\ 968}#)
(begin
(#{maybe-name-value!\ 301}#
#{name\ 966}#
#{exp\ 968}#)
(#{make-lexical-set\ 247}#
#{source\ 965}#
#{name\ 966}#
#{var\ 967}#
#{exp\ 968}#))))
(#{analyze-variable\ 315}#
(lambda (#{mod\ 973}#
#{var\ 974}#
#{modref-cont\ 975}#
#{bare-cont\ 976}#)
(if (not #{mod\ 973}#)
(#{bare-cont\ 976}# #{var\ 974}#)
(begin
(let ((#{kind\ 983}# (car #{mod\ 973}#))
(#{mod\ 984}# (cdr #{mod\ 973}#)))
(if (eqv? #{kind\ 983}# 'public)
(#{modref-cont\ 975}#
#{mod\ 984}#
#{var\ 974}#
#t)
(if (eqv? #{kind\ 983}# 'private)
(if (not (equal?
#{mod\ 984}#
(module-name (current-module))))
(#{modref-cont\ 975}#
#{mod\ 984}#
#{var\ 974}#
#f)
(#{bare-cont\ 976}# #{var\ 974}#))
(if (eqv? #{kind\ 983}# 'bare)
(#{bare-cont\ 976}# #{var\ 974}#)
(if (eqv? #{kind\ 983}# 'hygiene)
(if (if (not (equal?
#{mod\ 984}#
(module-name (current-module))))
(module-variable
(resolve-module #{mod\ 984}#)
#{var\ 974}#)
#f)
(#{modref-cont\ 975}#
#{mod\ 984}#
#{var\ 974}#
#f)
(#{bare-cont\ 976}# #{var\ 974}#))
(syntax-violation
#f
"bad module kind"
#{var\ 974}#
#{mod\ 984}#))))))))))
(#{build-global-reference\ 317}#
(lambda (#{source\ 992}# #{var\ 993}# #{mod\ 994}#)
(#{analyze-variable\ 315}#
#{mod\ 994}#
#{var\ 993}#
(lambda (#{mod\ 998}# #{var\ 999}# #{public?\ 1000}#)
(#{make-module-ref\ 249}#
#{source\ 992}#
#{mod\ 998}#
#{var\ 999}#
#{public?\ 1000}#))
(lambda (#{var\ 1004}#)
(#{make-toplevel-ref\ 253}#
#{source\ 992}#
#{var\ 1004}#)))))
(#{build-global-assignment\ 319}#
(lambda (#{source\ 1006}#
#{var\ 1007}#
#{exp\ 1008}#
#{mod\ 1009}#)
(begin
(#{maybe-name-value!\ 301}#
#{var\ 1007}#
#{exp\ 1008}#)
(#{analyze-variable\ 315}#
#{mod\ 1009}#
#{var\ 1007}#
(lambda (#{mod\ 1014}# #{var\ 1015}# #{public?\ 1016}#)
(#{make-module-set\ 251}#
#{source\ 1006}#
#{mod\ 1014}#
#{var\ 1015}#
#{public?\ 1016}#
#{exp\ 1008}#))
(lambda (#{var\ 1020}#)
(#{make-toplevel-set\ 255}#
#{source\ 1006}#
#{var\ 1020}#
#{exp\ 1008}#))))))
(#{build-global-definition\ 321}#
(lambda (#{source\ 1022}# #{var\ 1023}# #{exp\ 1024}#)
(begin
(#{maybe-name-value!\ 301}#
#{var\ 1023}#
#{exp\ 1024}#)
(#{make-toplevel-define\ 257}#
#{source\ 1022}#
#{var\ 1023}#
#{exp\ 1024}#))))
(#{build-simple-lambda\ 323}#
(lambda (#{src\ 1028}#
#{req\ 1029}#
#{rest\ 1030}#
#{vars\ 1031}#
#{meta\ 1032}#
#{exp\ 1033}#)
(#{make-lambda\ 265}#
#{src\ 1028}#
#{meta\ 1032}#
(#{make-lambda-case\ 267}#
#{src\ 1028}#
#{req\ 1029}#
#f
#{rest\ 1030}#
#f
'()
#{vars\ 1031}#
#{exp\ 1033}#
#f))))
(#{build-case-lambda\ 325}#
(lambda (#{src\ 1040}# #{meta\ 1041}# #{body\ 1042}#)
(#{make-lambda\ 265}#
#{src\ 1040}#
#{meta\ 1041}#
#{body\ 1042}#)))
(#{build-lambda-case\ 327}#
(lambda (#{src\ 1046}#
#{req\ 1047}#
#{opt\ 1048}#
#{rest\ 1049}#
#{kw\ 1050}#
#{inits\ 1051}#
#{vars\ 1052}#
#{body\ 1053}#
#{else-case\ 1054}#)
(#{make-lambda-case\ 267}#
#{src\ 1046}#
#{req\ 1047}#
#{opt\ 1048}#
#{rest\ 1049}#
#{kw\ 1050}#
#{inits\ 1051}#
#{vars\ 1052}#
#{body\ 1053}#
#{else-case\ 1054}#)))
(#{build-primref\ 329}#
(lambda (#{src\ 1064}# #{name\ 1065}#)
(if (equal? (module-name (current-module)) '(guile))
(#{make-toplevel-ref\ 253}#
#{src\ 1064}#
#{name\ 1065}#)
(#{make-module-ref\ 249}#
#{src\ 1064}#
'(guile)
#{name\ 1065}#
#f))))
(#{build-data\ 331}#
(lambda (#{src\ 1068}# #{exp\ 1069}#)
(#{make-const\ 241}# #{src\ 1068}# #{exp\ 1069}#)))
(#{build-sequence\ 333}#
(lambda (#{src\ 1072}# #{exps\ 1073}#)
(if (null? (cdr #{exps\ 1073}#))
(car #{exps\ 1073}#)
(#{make-sequence\ 263}#
#{src\ 1072}#
#{exps\ 1073}#))))
(#{build-let\ 335}#
(lambda (#{src\ 1076}#
#{ids\ 1077}#
#{vars\ 1078}#
#{val-exps\ 1079}#
#{body-exp\ 1080}#)
(begin
(for-each
#{maybe-name-value!\ 301}#
#{ids\ 1077}#
#{val-exps\ 1079}#)
(if (null? #{vars\ 1078}#)
#{body-exp\ 1080}#
(#{make-let\ 269}#
#{src\ 1076}#
#{ids\ 1077}#
#{vars\ 1078}#
#{val-exps\ 1079}#
#{body-exp\ 1080}#)))))
(#{build-named-let\ 337}#
(lambda (#{src\ 1086}#
#{ids\ 1087}#
#{vars\ 1088}#
#{val-exps\ 1089}#
#{body-exp\ 1090}#)
(begin
(let ((#{f\ 1100}# (car #{vars\ 1088}#))
(#{f-name\ 1101}# (car #{ids\ 1087}#))
(#{vars\ 1102}# (cdr #{vars\ 1088}#))
(#{ids\ 1103}# (cdr #{ids\ 1087}#)))
(begin
(let ((#{proc\ 1105}#
(#{build-simple-lambda\ 323}#
#{src\ 1086}#
#{ids\ 1103}#
#f
#{vars\ 1102}#
'()
#{body-exp\ 1090}#)))
(begin
(#{maybe-name-value!\ 301}#
#{f-name\ 1101}#
#{proc\ 1105}#)
(for-each
#{maybe-name-value!\ 301}#
#{ids\ 1103}#
#{val-exps\ 1089}#)
(#{make-letrec\ 271}#
#{src\ 1086}#
#f
(list #{f-name\ 1101}#)
(list #{f\ 1100}#)
(list #{proc\ 1105}#)
(#{build-application\ 305}#
#{src\ 1086}#
(#{build-lexical-reference\ 311}#
'fun
#{src\ 1086}#
#{f-name\ 1101}#
#{f\ 1100}#)
#{val-exps\ 1089}#)))))))))
(#{build-letrec\ 339}#
(lambda (#{src\ 1106}#
#{in-order?\ 1107}#
#{ids\ 1108}#
#{vars\ 1109}#
#{val-exps\ 1110}#
#{body-exp\ 1111}#)
(if (null? #{vars\ 1109}#)
#{body-exp\ 1111}#
(begin
(for-each
#{maybe-name-value!\ 301}#
#{ids\ 1108}#
#{val-exps\ 1110}#)
(#{make-letrec\ 271}#
#{src\ 1106}#
#{in-order?\ 1107}#
#{ids\ 1108}#
#{vars\ 1109}#
#{val-exps\ 1110}#
#{body-exp\ 1111}#)))))
(#{make-syntax-object\ 343}#
(lambda (#{expression\ 1118}#
#{wrap\ 1119}#
#{module\ 1120}#)
(vector
'syntax-object
#{expression\ 1118}#
#{wrap\ 1119}#
#{module\ 1120}#)))
(#{syntax-object?\ 345}#
(lambda (#{x\ 1124}#)
(if (vector? #{x\ 1124}#)
(if (= (vector-length #{x\ 1124}#) 4)
(eq? (vector-ref #{x\ 1124}# 0) 'syntax-object)
#f)
#f)))
(#{syntax-object-expression\ 347}#
(lambda (#{x\ 1129}#) (vector-ref #{x\ 1129}# 1)))
(#{syntax-object-wrap\ 349}#
(lambda (#{x\ 1131}#) (vector-ref #{x\ 1131}# 2)))
(#{syntax-object-module\ 351}#
(lambda (#{x\ 1133}#) (vector-ref #{x\ 1133}# 3)))
(#{source-annotation\ 360}#
(lambda (#{x\ 1147}#)
(if (#{syntax-object?\ 345}# #{x\ 1147}#)
(#{source-annotation\ 360}#
(#{syntax-object-expression\ 347}# #{x\ 1147}#))
(if (pair? #{x\ 1147}#)
(begin
(let ((#{props\ 1154}# (source-properties #{x\ 1147}#)))
(if (pair? #{props\ 1154}#) #{props\ 1154}# #f)))
#f))))
(#{extend-env\ 367}#
(lambda (#{labels\ 1156}# #{bindings\ 1157}# #{r\ 1158}#)
(if (null? #{labels\ 1156}#)
#{r\ 1158}#
(#{extend-env\ 367}#
(cdr #{labels\ 1156}#)
(cdr #{bindings\ 1157}#)
(cons (cons (car #{labels\ 1156}#)
(car #{bindings\ 1157}#))
#{r\ 1158}#)))))
(#{extend-var-env\ 369}#
(lambda (#{labels\ 1162}# #{vars\ 1163}# #{r\ 1164}#)
(if (null? #{labels\ 1162}#)
#{r\ 1164}#
(#{extend-var-env\ 369}#
(cdr #{labels\ 1162}#)
(cdr #{vars\ 1163}#)
(cons (cons (car #{labels\ 1162}#)
(cons 'lexical (car #{vars\ 1163}#)))
#{r\ 1164}#)))))
(#{macros-only-env\ 371}#
(lambda (#{r\ 1169}#)
(if (null? #{r\ 1169}#)
'()
(begin
(let ((#{a\ 1172}# (car #{r\ 1169}#)))
(if (eq? (car (cdr #{a\ 1172}#)) 'macro)
(cons #{a\ 1172}#
(#{macros-only-env\ 371}# (cdr #{r\ 1169}#)))
(#{macros-only-env\ 371}# (cdr #{r\ 1169}#))))))))
(#{lookup\ 373}#
(lambda (#{x\ 1173}# #{r\ 1174}# #{mod\ 1175}#)
(begin
(let ((#{t\ 1181}# (assq #{x\ 1173}# #{r\ 1174}#)))
(if #{t\ 1181}#
(cdr #{t\ 1181}#)
(if (symbol? #{x\ 1173}#)
(begin
(let ((#{t\ 1187}#
(#{get-global-definition-hook\ 297}#
#{x\ 1173}#
#{mod\ 1175}#)))
(if #{t\ 1187}# #{t\ 1187}# '(global))))
'(displaced-lexical)))))))
(#{global-extend\ 375}#
(lambda (#{type\ 1192}# #{sym\ 1193}# #{val\ 1194}#)
(#{put-global-definition-hook\ 295}#
#{sym\ 1193}#
#{type\ 1192}#
#{val\ 1194}#)))
(#{nonsymbol-id?\ 377}#
(lambda (#{x\ 1198}#)
(if (#{syntax-object?\ 345}# #{x\ 1198}#)
(symbol?
(#{syntax-object-expression\ 347}# #{x\ 1198}#))
#f)))
(#{id?\ 379}#
(lambda (#{x\ 1202}#)
(if (symbol? #{x\ 1202}#)
#t
(if (#{syntax-object?\ 345}# #{x\ 1202}#)
(symbol?
(#{syntax-object-expression\ 347}# #{x\ 1202}#))
#f))))
(#{id-sym-name&marks\ 382}#
(lambda (#{x\ 1209}# #{w\ 1210}#)
(if (#{syntax-object?\ 345}# #{x\ 1209}#)
(values
(#{syntax-object-expression\ 347}# #{x\ 1209}#)
(#{join-marks\ 429}#
(car #{w\ 1210}#)
(car (#{syntax-object-wrap\ 349}# #{x\ 1209}#))))
(values #{x\ 1209}# (car #{w\ 1210}#)))))
(#{gen-label\ 392}#
(lambda () (symbol->string (gensym "i"))))
(#{gen-labels\ 394}#
(lambda (#{ls\ 1216}#)
(if (null? #{ls\ 1216}#)
'()
(cons (#{gen-label\ 392}#)
(#{gen-labels\ 394}# (cdr #{ls\ 1216}#))))))
(#{make-ribcage\ 397}#
(lambda (#{symnames\ 1218}#
#{marks\ 1219}#
#{labels\ 1220}#)
(vector
'ribcage
#{symnames\ 1218}#
#{marks\ 1219}#
#{labels\ 1220}#)))
(#{ribcage-symnames\ 401}#
(lambda (#{x\ 1229}#) (vector-ref #{x\ 1229}# 1)))
(#{ribcage-marks\ 403}#
(lambda (#{x\ 1231}#) (vector-ref #{x\ 1231}# 2)))
(#{ribcage-labels\ 405}#
(lambda (#{x\ 1233}#) (vector-ref #{x\ 1233}# 3)))
(#{set-ribcage-symnames!\ 407}#
(lambda (#{x\ 1235}# #{update\ 1236}#)
(vector-set! #{x\ 1235}# 1 #{update\ 1236}#)))
(#{set-ribcage-marks!\ 409}#
(lambda (#{x\ 1239}# #{update\ 1240}#)
(vector-set! #{x\ 1239}# 2 #{update\ 1240}#)))
(#{set-ribcage-labels!\ 411}#
(lambda (#{x\ 1243}# #{update\ 1244}#)
(vector-set! #{x\ 1243}# 3 #{update\ 1244}#)))
(#{anti-mark\ 417}#
(lambda (#{w\ 1247}#)
(cons (cons #f (car #{w\ 1247}#))
(cons 'shift (cdr #{w\ 1247}#)))))
(#{extend-ribcage!\ 421}#
(lambda (#{ribcage\ 1253}# #{id\ 1254}# #{label\ 1255}#)
(begin
(#{set-ribcage-symnames!\ 407}#
#{ribcage\ 1253}#
(cons (#{syntax-object-expression\ 347}# #{id\ 1254}#)
(#{ribcage-symnames\ 401}# #{ribcage\ 1253}#)))
(#{set-ribcage-marks!\ 409}#
#{ribcage\ 1253}#
(cons (car (#{syntax-object-wrap\ 349}# #{id\ 1254}#))
(#{ribcage-marks\ 403}# #{ribcage\ 1253}#)))
(#{set-ribcage-labels!\ 411}#
#{ribcage\ 1253}#
(cons #{label\ 1255}#
(#{ribcage-labels\ 405}# #{ribcage\ 1253}#))))))
(#{make-binding-wrap\ 423}#
(lambda (#{ids\ 1260}# #{labels\ 1261}# #{w\ 1262}#)
(if (null? #{ids\ 1260}#)
#{w\ 1262}#
(cons (car #{w\ 1262}#)
(cons (begin
(let ((#{labelvec\ 1269}#
(list->vector #{labels\ 1261}#)))
(begin
(let ((#{n\ 1271}#
(vector-length #{labelvec\ 1269}#)))
(begin
(let ((#{symnamevec\ 1274}#
(make-vector #{n\ 1271}#))
(#{marksvec\ 1275}#
(make-vector #{n\ 1271}#)))
(begin
(letrec*
((#{f\ 1279}#
(lambda (#{ids\ 1280}#
#{i\ 1281}#)
(if (not (null? #{ids\ 1280}#))
(call-with-values
(lambda ()
(#{id-sym-name&marks\ 382}#
(car #{ids\ 1280}#)
#{w\ 1262}#))
(lambda (#{symname\ 1282}#
#{marks\ 1283}#)
(begin
(vector-set!
#{symnamevec\ 1274}#
#{i\ 1281}#
#{symname\ 1282}#)
(vector-set!
#{marksvec\ 1275}#
#{i\ 1281}#
#{marks\ 1283}#)
(#{f\ 1279}#
(cdr #{ids\ 1280}#)
(#{fx+\ 282}#
#{i\ 1281}#
1)))))))))
(begin
(#{f\ 1279}# #{ids\ 1260}# 0)))
(#{make-ribcage\ 397}#
#{symnamevec\ 1274}#
#{marksvec\ 1275}#
#{labelvec\ 1269}#))))))))
(cdr #{w\ 1262}#))))))
(#{smart-append\ 425}#
(lambda (#{m1\ 1287}# #{m2\ 1288}#)
(if (null? #{m2\ 1288}#)
#{m1\ 1287}#
(append #{m1\ 1287}# #{m2\ 1288}#))))
(#{join-wraps\ 427}#
(lambda (#{w1\ 1291}# #{w2\ 1292}#)
(begin
(let ((#{m1\ 1297}# (car #{w1\ 1291}#))
(#{s1\ 1298}# (cdr #{w1\ 1291}#)))
(if (null? #{m1\ 1297}#)
(if (null? #{s1\ 1298}#)
#{w2\ 1292}#
(cons (car #{w2\ 1292}#)
(#{smart-append\ 425}#
#{s1\ 1298}#
(cdr #{w2\ 1292}#))))
(cons (#{smart-append\ 425}#
#{m1\ 1297}#
(car #{w2\ 1292}#))
(#{smart-append\ 425}#
#{s1\ 1298}#
(cdr #{w2\ 1292}#))))))))
(#{join-marks\ 429}#
(lambda (#{m1\ 1307}# #{m2\ 1308}#)
(#{smart-append\ 425}# #{m1\ 1307}# #{m2\ 1308}#)))
(#{same-marks?\ 431}#
(lambda (#{x\ 1311}# #{y\ 1312}#)
(begin
(let ((#{t\ 1317}# (eq? #{x\ 1311}# #{y\ 1312}#)))
(if #{t\ 1317}#
#{t\ 1317}#
(if (not (null? #{x\ 1311}#))
(if (not (null? #{y\ 1312}#))
(if (eq? (car #{x\ 1311}#) (car #{y\ 1312}#))
(#{same-marks?\ 431}#
(cdr #{x\ 1311}#)
(cdr #{y\ 1312}#))
#f)
#f)
#f))))))
(#{id-var-name\ 433}#
(lambda (#{id\ 1323}# #{w\ 1324}#)
(letrec*
((#{search\ 1329}#
(lambda (#{sym\ 1345}# #{subst\ 1346}# #{marks\ 1347}#)
(if (null? #{subst\ 1346}#)
(values #f #{marks\ 1347}#)
(begin
(let ((#{fst\ 1352}# (car #{subst\ 1346}#)))
(if (eq? #{fst\ 1352}# 'shift)
(#{search\ 1329}#
#{sym\ 1345}#
(cdr #{subst\ 1346}#)
(cdr #{marks\ 1347}#))
(begin
(let ((#{symnames\ 1354}#
(#{ribcage-symnames\ 401}#
#{fst\ 1352}#)))
(if (vector? #{symnames\ 1354}#)
(#{search-vector-rib\ 1333}#
#{sym\ 1345}#
#{subst\ 1346}#
#{marks\ 1347}#
#{symnames\ 1354}#
#{fst\ 1352}#)
(#{search-list-rib\ 1331}#
#{sym\ 1345}#
#{subst\ 1346}#
#{marks\ 1347}#
#{symnames\ 1354}#
#{fst\ 1352}#))))))))))
(#{search-list-rib\ 1331}#
(lambda (#{sym\ 1355}#
#{subst\ 1356}#
#{marks\ 1357}#
#{symnames\ 1358}#
#{ribcage\ 1359}#)
(letrec*
((#{f\ 1368}#
(lambda (#{symnames\ 1369}# #{i\ 1370}#)
(if (null? #{symnames\ 1369}#)
(#{search\ 1329}#
#{sym\ 1355}#
(cdr #{subst\ 1356}#)
#{marks\ 1357}#)
(if (if (eq? (car #{symnames\ 1369}#)
#{sym\ 1355}#)
(#{same-marks?\ 431}#
#{marks\ 1357}#
(list-ref
(#{ribcage-marks\ 403}#
#{ribcage\ 1359}#)
#{i\ 1370}#))
#f)
(values
(list-ref
(#{ribcage-labels\ 405}# #{ribcage\ 1359}#)
#{i\ 1370}#)
#{marks\ 1357}#)
(#{f\ 1368}#
(cdr #{symnames\ 1369}#)
(#{fx+\ 282}# #{i\ 1370}# 1)))))))
(begin (#{f\ 1368}# #{symnames\ 1358}# 0)))))
(#{search-vector-rib\ 1333}#
(lambda (#{sym\ 1378}#
#{subst\ 1379}#
#{marks\ 1380}#
#{symnames\ 1381}#
#{ribcage\ 1382}#)
(begin
(let ((#{n\ 1389}# (vector-length #{symnames\ 1381}#)))
(letrec*
((#{f\ 1392}#
(lambda (#{i\ 1393}#)
(if (#{fx=\ 286}# #{i\ 1393}# #{n\ 1389}#)
(#{search\ 1329}#
#{sym\ 1378}#
(cdr #{subst\ 1379}#)
#{marks\ 1380}#)
(if (if (eq? (vector-ref
#{symnames\ 1381}#
#{i\ 1393}#)
#{sym\ 1378}#)
(#{same-marks?\ 431}#
#{marks\ 1380}#
(vector-ref
(#{ribcage-marks\ 403}#
#{ribcage\ 1382}#)
#{i\ 1393}#))
#f)
(values
(vector-ref
(#{ribcage-labels\ 405}#
#{ribcage\ 1382}#)
#{i\ 1393}#)
#{marks\ 1380}#)
(#{f\ 1392}#
(#{fx+\ 282}# #{i\ 1393}# 1)))))))
(begin (#{f\ 1392}# 0))))))))
(begin
(if (symbol? #{id\ 1323}#)
(begin
(let ((#{t\ 1403}#
(call-with-values
(lambda ()
(#{search\ 1329}#
#{id\ 1323}#
(cdr #{w\ 1324}#)
(car #{w\ 1324}#)))
(lambda (#{x\ 1407}# . #{ignore\ 1408}#)
#{x\ 1407}#))))
(if #{t\ 1403}# #{t\ 1403}# #{id\ 1323}#)))
(if (#{syntax-object?\ 345}# #{id\ 1323}#)
(begin
(let ((#{id\ 1416}#
(#{syntax-object-expression\ 347}#
#{id\ 1323}#))
(#{w1\ 1417}#
(#{syntax-object-wrap\ 349}# #{id\ 1323}#)))
(begin
(let ((#{marks\ 1419}#
(#{join-marks\ 429}#
(car #{w\ 1324}#)
(car #{w1\ 1417}#))))
(call-with-values
(lambda ()
(#{search\ 1329}#
#{id\ 1416}#
(cdr #{w\ 1324}#)
#{marks\ 1419}#))
(lambda (#{new-id\ 1423}# #{marks\ 1424}#)
(begin
(let ((#{t\ 1429}# #{new-id\ 1423}#))
(if #{t\ 1429}#
#{t\ 1429}#
(begin
(let ((#{t\ 1432}#
(call-with-values
(lambda ()
(#{search\ 1329}#
#{id\ 1416}#
(cdr #{w1\ 1417}#)
#{marks\ 1424}#))
(lambda (#{x\ 1435}#
.
#{ignore\ 1436}#)
#{x\ 1435}#))))
(if #{t\ 1432}#
#{t\ 1432}#
#{id\ 1416}#))))))))))))
(syntax-violation
'id-var-name
"invalid id"
#{id\ 1323}#)))))))
(#{free-id=?\ 435}#
(lambda (#{i\ 1441}# #{j\ 1442}#)
(if (eq? (begin
(let ((#{x\ 1448}# #{i\ 1441}#))
(if (#{syntax-object?\ 345}# #{x\ 1448}#)
(#{syntax-object-expression\ 347}# #{x\ 1448}#)
#{x\ 1448}#)))
(begin
(let ((#{x\ 1451}# #{j\ 1442}#))
(if (#{syntax-object?\ 345}# #{x\ 1451}#)
(#{syntax-object-expression\ 347}# #{x\ 1451}#)
#{x\ 1451}#))))
(eq? (#{id-var-name\ 433}# #{i\ 1441}# '(()))
(#{id-var-name\ 433}# #{j\ 1442}# '(())))
#f)))
(#{bound-id=?\ 437}#
(lambda (#{i\ 1455}# #{j\ 1456}#)
(if (if (#{syntax-object?\ 345}# #{i\ 1455}#)
(#{syntax-object?\ 345}# #{j\ 1456}#)
#f)
(if (eq? (#{syntax-object-expression\ 347}# #{i\ 1455}#)
(#{syntax-object-expression\ 347}# #{j\ 1456}#))
(#{same-marks?\ 431}#
(car (#{syntax-object-wrap\ 349}# #{i\ 1455}#))
(car (#{syntax-object-wrap\ 349}# #{j\ 1456}#)))
#f)
(eq? #{i\ 1455}# #{j\ 1456}#))))
(#{valid-bound-ids?\ 439}#
(lambda (#{ids\ 1465}#)
(if (letrec*
((#{all-ids?\ 1470}#
(lambda (#{ids\ 1471}#)
(begin
(let ((#{t\ 1474}# (null? #{ids\ 1471}#)))
(if #{t\ 1474}#
#{t\ 1474}#
(if (#{id?\ 379}# (car #{ids\ 1471}#))
(#{all-ids?\ 1470}# (cdr #{ids\ 1471}#))
#f)))))))
(begin (#{all-ids?\ 1470}# #{ids\ 1465}#)))
(#{distinct-bound-ids?\ 441}# #{ids\ 1465}#)
#f)))
(#{distinct-bound-ids?\ 441}#
(lambda (#{ids\ 1479}#)
(letrec*
((#{distinct?\ 1483}#
(lambda (#{ids\ 1484}#)
(begin
(let ((#{t\ 1487}# (null? #{ids\ 1484}#)))
(if #{t\ 1487}#
#{t\ 1487}#
(if (not (#{bound-id-member?\ 443}#
(car #{ids\ 1484}#)
(cdr #{ids\ 1484}#)))
(#{distinct?\ 1483}# (cdr #{ids\ 1484}#))
#f)))))))
(begin (#{distinct?\ 1483}# #{ids\ 1479}#)))))
(#{bound-id-member?\ 443}#
(lambda (#{x\ 1491}# #{list\ 1492}#)
(if (not (null? #{list\ 1492}#))
(begin
(let ((#{t\ 1499}#
(#{bound-id=?\ 437}#
#{x\ 1491}#
(car #{list\ 1492}#))))
(if #{t\ 1499}#
#{t\ 1499}#
(#{bound-id-member?\ 443}#
#{x\ 1491}#
(cdr #{list\ 1492}#)))))
#f)))
(#{wrap\ 445}#
(lambda (#{x\ 1501}# #{w\ 1502}# #{defmod\ 1503}#)
(if (if (null? (car #{w\ 1502}#))
(null? (cdr #{w\ 1502}#))
#f)
#{x\ 1501}#
(if (#{syntax-object?\ 345}# #{x\ 1501}#)
(#{make-syntax-object\ 343}#
(#{syntax-object-expression\ 347}# #{x\ 1501}#)
(#{join-wraps\ 427}#
#{w\ 1502}#
(#{syntax-object-wrap\ 349}# #{x\ 1501}#))
(#{syntax-object-module\ 351}# #{x\ 1501}#))
(if (null? #{x\ 1501}#)
#{x\ 1501}#
(#{make-syntax-object\ 343}#
#{x\ 1501}#
#{w\ 1502}#
#{defmod\ 1503}#))))))
(#{source-wrap\ 447}#
(lambda (#{x\ 1518}#
#{w\ 1519}#
#{s\ 1520}#
#{defmod\ 1521}#)
(#{wrap\ 445}#
(#{decorate-source\ 299}#
#{x\ 1518}#
#{s\ 1520}#)
#{w\ 1519}#
#{defmod\ 1521}#)))
(#{chi-sequence\ 449}#
(lambda (#{body\ 1526}#
#{r\ 1527}#
#{w\ 1528}#
#{s\ 1529}#
#{mod\ 1530}#)
(#{build-sequence\ 333}#
#{s\ 1529}#
(letrec*
((#{dobody\ 1541}#
(lambda (#{body\ 1542}#
#{r\ 1543}#
#{w\ 1544}#
#{mod\ 1545}#)
(if (null? #{body\ 1542}#)
'()
(begin
(let ((#{first\ 1547}#
(#{chi\ 461}#
(car #{body\ 1542}#)
#{r\ 1543}#
#{w\ 1544}#
#{mod\ 1545}#)))
(cons #{first\ 1547}#
(#{dobody\ 1541}#
(cdr #{body\ 1542}#)
#{r\ 1543}#
#{w\ 1544}#
#{mod\ 1545}#))))))))
(begin
(#{dobody\ 1541}#
#{body\ 1526}#
#{r\ 1527}#
#{w\ 1528}#
#{mod\ 1530}#))))))
(#{chi-top-sequence\ 451}#
(lambda (#{body\ 1548}#
#{r\ 1549}#
#{w\ 1550}#
#{s\ 1551}#
#{m\ 1552}#
#{esew\ 1553}#
#{mod\ 1554}#)
(#{build-sequence\ 333}#
#{s\ 1551}#
(letrec*
((#{dobody\ 1570}#
(lambda (#{body\ 1571}#
#{r\ 1572}#
#{w\ 1573}#
#{m\ 1574}#
#{esew\ 1575}#
#{mod\ 1576}#
#{out\ 1577}#)
(if (null? #{body\ 1571}#)
(reverse #{out\ 1577}#)
(#{dobody\ 1570}#
(cdr #{body\ 1571}#)
#{r\ 1572}#
#{w\ 1573}#
#{m\ 1574}#
#{esew\ 1575}#
#{mod\ 1576}#
(cons (#{chi-top\ 459}#
(car #{body\ 1571}#)
#{r\ 1572}#
#{w\ 1573}#
#{m\ 1574}#
#{esew\ 1575}#
#{mod\ 1576}#)
#{out\ 1577}#))))))
(begin
(#{dobody\ 1570}#
#{body\ 1548}#
#{r\ 1549}#
#{w\ 1550}#
#{m\ 1552}#
#{esew\ 1553}#
#{mod\ 1554}#
'()))))))
(#{chi-install-global\ 453}#
(lambda (#{name\ 1578}# #{e\ 1579}#)
(#{build-global-definition\ 321}#
#f
#{name\ 1578}#
(#{build-application\ 305}#
#f
(#{build-primref\ 329}#
#f
'make-syntax-transformer)
(list (#{build-data\ 331}# #f #{name\ 1578}#)
(#{build-data\ 331}# #f 'macro)
#{e\ 1579}#)))))
(#{chi-when-list\ 455}#
(lambda (#{e\ 1587}# #{when-list\ 1588}# #{w\ 1589}#)
(letrec*
((#{f\ 1596}#
(lambda (#{when-list\ 1597}# #{situations\ 1598}#)
(if (null? #{when-list\ 1597}#)
#{situations\ 1598}#
(#{f\ 1596}#
(cdr #{when-list\ 1597}#)
(cons (begin
(let ((#{x\ 1600}# (car #{when-list\ 1597}#)))
(if (#{free-id=?\ 435}#
#{x\ 1600}#
'#(syntax-object
compile
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i1599"))
#(ribcage () () ())
#(ribcage
#(f when-list situations)
#((top) (top) (top))
#("i1593" "i1594" "i1595"))
#(ribcage () () ())
#(ribcage
#(e when-list w)
#((top) (top) (top))
#("i1590" "i1591" "i1592"))
#(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
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
maybe-name-value!
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))
("i490"
"i488"
"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"
"i419"
"i418"
"i416"
"i415"
"i414"
"i413"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i393"
"i391"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i381"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i365"
"i364"
"i363"
"i362"
"i361"
"i359"
"i358"
"i356"
"i354"
"i352"
"i350"
"i348"
"i346"
"i344"
"i342"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i324"
"i322"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i252"
"i250"
"i248"
"i246"
"i244"
"i242"
"i240"
"i238"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i40" "i39" "i38" "i36")))
(hygiene guile)))
'compile
(if (#{free-id=?\ 435}#
#{x\ 1600}#
'#(syntax-object
load
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i1599"))
#(ribcage () () ())
#(ribcage
#(f when-list situations)
#((top) (top) (top))
#("i1593" "i1594" "i1595"))
#(ribcage () () ())
#(ribcage
#(e when-list w)
#((top) (top) (top))
#("i1590" "i1591" "i1592"))
#(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
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
maybe-name-value!
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))
("i490"
"i488"
"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"
"i419"
"i418"
"i416"
"i415"
"i414"
"i413"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i393"
"i391"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i381"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i365"
"i364"
"i363"
"i362"
"i361"
"i359"
"i358"
"i356"
"i354"
"i352"
"i350"
"i348"
"i346"
"i344"
"i342"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i324"
"i322"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i252"
"i250"
"i248"
"i246"
"i244"
"i242"
"i240"
"i238"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i40" "i39" "i38" "i36")))
(hygiene guile)))
'load
(if (#{free-id=?\ 435}#
#{x\ 1600}#
'#(syntax-object
eval
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i1599"))
#(ribcage () () ())
#(ribcage
#(f when-list situations)
#((top) (top) (top))
#("i1593" "i1594" "i1595"))
#(ribcage () () ())
#(ribcage
#(e when-list w)
#((top) (top) (top))
#("i1590" "i1591" "i1592"))
#(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
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
maybe-name-value!
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))
("i490"
"i488"
"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"
"i419"
"i418"
"i416"
"i415"
"i414"
"i413"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i393"
"i391"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i381"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i365"
"i364"
"i363"
"i362"
"i361"
"i359"
"i358"
"i356"
"i354"
"i352"
"i350"
"i348"
"i346"
"i344"
"i342"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i324"
"i322"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i252"
"i250"
"i248"
"i246"
"i244"
"i242"
"i240"
"i238"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i40" "i39" "i38" "i36")))
(hygiene guile)))
'eval
(if (#{free-id=?\ 435}#
#{x\ 1600}#
'#(syntax-object
expand
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i1599"))
#(ribcage () () ())
#(ribcage
#(f when-list situations)
#((top) (top) (top))
#("i1593" "i1594" "i1595"))
#(ribcage () () ())
#(ribcage
#(e when-list w)
#((top) (top) (top))
#("i1590" "i1591" "i1592"))
#(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
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
maybe-name-value!
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))
("i490"
"i488"
"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"
"i419"
"i418"
"i416"
"i415"
"i414"
"i413"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i393"
"i391"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i381"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i365"
"i364"
"i363"
"i362"
"i361"
"i359"
"i358"
"i356"
"i354"
"i352"
"i350"
"i348"
"i346"
"i344"
"i342"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i324"
"i322"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i252"
"i250"
"i248"
"i246"
"i244"
"i242"
"i240"
"i238"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i40" "i39" "i38" "i36")))
(hygiene guile)))
'expand
(syntax-violation
'eval-when
"invalid situation"
#{e\ 1587}#
(#{wrap\ 445}#
#{x\ 1600}#
#{w\ 1589}#
#f))))))))
#{situations\ 1598}#))))))
(begin (#{f\ 1596}# #{when-list\ 1588}# '())))))
(#{syntax-type\ 457}#
(lambda (#{e\ 1610}#
#{r\ 1611}#
#{w\ 1612}#
#{s\ 1613}#
#{rib\ 1614}#
#{mod\ 1615}#
#{for-car?\ 1616}#)
(if (symbol? #{e\ 1610}#)
(begin
(let ((#{n\ 1628}#
(#{id-var-name\ 433}# #{e\ 1610}# #{w\ 1612}#)))
(begin
(let ((#{b\ 1630}#
(#{lookup\ 373}#
#{n\ 1628}#
#{r\ 1611}#
#{mod\ 1615}#)))
(begin
(let ((#{type\ 1632}# (car #{b\ 1630}#)))
(if (eqv? #{type\ 1632}# 'lexical)
(values
#{type\ 1632}#
(cdr #{b\ 1630}#)
#{e\ 1610}#
#{w\ 1612}#
#{s\ 1613}#
#{mod\ 1615}#)
(if (eqv? #{type\ 1632}# 'global)
(values
#{type\ 1632}#
#{n\ 1628}#
#{e\ 1610}#
#{w\ 1612}#
#{s\ 1613}#
#{mod\ 1615}#)
(if (eqv? #{type\ 1632}# 'macro)
(if #{for-car?\ 1616}#
(values
#{type\ 1632}#
(cdr #{b\ 1630}#)
#{e\ 1610}#
#{w\ 1612}#
#{s\ 1613}#
#{mod\ 1615}#)
(#{syntax-type\ 457}#
(#{chi-macro\ 467}#
(cdr #{b\ 1630}#)
#{e\ 1610}#
#{r\ 1611}#
#{w\ 1612}#
#{s\ 1613}#
#{rib\ 1614}#
#{mod\ 1615}#)
#{r\ 1611}#
'(())
#{s\ 1613}#
#{rib\ 1614}#
#{mod\ 1615}#
#f))
(values
#{type\ 1632}#
(cdr #{b\ 1630}#)
#{e\ 1610}#
#{w\ 1612}#
#{s\ 1613}#
#{mod\ 1615}#))))))))))
(if (pair? #{e\ 1610}#)
(begin
(let ((#{first\ 1646}# (car #{e\ 1610}#)))
(call-with-values
(lambda ()
(#{syntax-type\ 457}#
#{first\ 1646}#
#{r\ 1611}#
#{w\ 1612}#
#{s\ 1613}#
#{rib\ 1614}#
#{mod\ 1615}#
#t))
(lambda (#{ftype\ 1647}#
#{fval\ 1648}#
#{fe\ 1649}#
#{fw\ 1650}#
#{fs\ 1651}#
#{fmod\ 1652}#)
(if (eqv? #{ftype\ 1647}# 'lexical)
(values
'lexical-call
#{fval\ 1648}#
#{e\ 1610}#
#{w\ 1612}#
#{s\ 1613}#
#{mod\ 1615}#)
(if (eqv? #{ftype\ 1647}# 'global)
(values
'global-call
(#{make-syntax-object\ 343}#
#{fval\ 1648}#
#{w\ 1612}#
#{fmod\ 1652}#)
#{e\ 1610}#
#{w\ 1612}#
#{s\ 1613}#
#{mod\ 1615}#)
(if (eqv? #{ftype\ 1647}# 'macro)
(#{syntax-type\ 457}#
(#{chi-macro\ 467}#
#{fval\ 1648}#
#{e\ 1610}#
#{r\ 1611}#
#{w\ 1612}#
#{s\ 1613}#
#{rib\ 1614}#
#{mod\ 1615}#)
#{r\ 1611}#
'(())
#{s\ 1613}#
#{rib\ 1614}#
#{mod\ 1615}#
#{for-car?\ 1616}#)
(if (eqv? #{ftype\ 1647}# 'module-ref)
(call-with-values
(lambda ()
(#{fval\ 1648}#
#{e\ 1610}#
#{r\ 1611}#
#{w\ 1612}#))
(lambda (#{e\ 1664}#
#{r\ 1665}#
#{w\ 1666}#
#{s\ 1667}#
#{mod\ 1668}#)
(#{syntax-type\ 457}#
#{e\ 1664}#
#{r\ 1665}#
#{w\ 1666}#
#{s\ 1667}#
#{rib\ 1614}#
#{mod\ 1668}#
#{for-car?\ 1616}#)))
(if (eqv? #{ftype\ 1647}# 'core)
(values
'core-form
#{fval\ 1648}#
#{e\ 1610}#
#{w\ 1612}#
#{s\ 1613}#
#{mod\ 1615}#)
(if (eqv? #{ftype\ 1647}# 'local-syntax)
(values
'local-syntax-form
#{fval\ 1648}#
#{e\ 1610}#
#{w\ 1612}#
#{s\ 1613}#
#{mod\ 1615}#)
(if (eqv? #{ftype\ 1647}# 'begin)
(values
'begin-form
#f
#{e\ 1610}#
#{w\ 1612}#
#{s\ 1613}#
#{mod\ 1615}#)
(if (eqv? #{ftype\ 1647}# 'eval-when)
(values
'eval-when-form
#f
#{e\ 1610}#
#{w\ 1612}#
#{s\ 1613}#
#{mod\ 1615}#)
(if (eqv? #{ftype\ 1647}# 'define)
(let ((#{tmp\ 1679}# #{e\ 1610}#))
(let ((#{tmp\ 1680}#
($sc-dispatch
#{tmp\ 1679}#
'(_ any any))))
(if (if #{tmp\ 1680}#
(@apply
(lambda (#{name\ 1683}#
#{val\ 1684}#)
(#{id?\ 379}#
#{name\ 1683}#))
#{tmp\ 1680}#)
#f)
(@apply
(lambda (#{name\ 1687}#
#{val\ 1688}#)
(values
'define-form
#{name\ 1687}#
#{val\ 1688}#
#{w\ 1612}#
#{s\ 1613}#
#{mod\ 1615}#))
#{tmp\ 1680}#)
(let ((#{tmp\ 1689}#
($sc-dispatch
#{tmp\ 1679}#
'(_ (any . any)
any
.
each-any))))
(if (if #{tmp\ 1689}#
(@apply
(lambda (#{name\ 1694}#
#{args\ 1695}#
#{e1\ 1696}#
#{e2\ 1697}#)
(if (#{id?\ 379}#
#{name\ 1694}#)
(#{valid-bound-ids?\ 439}#
(#{lambda-var-list\ 491}#
#{args\ 1695}#))
#f))
#{tmp\ 1689}#)
#f)
(@apply
(lambda (#{name\ 1704}#
#{args\ 1705}#
#{e1\ 1706}#
#{e2\ 1707}#)
(values
'define-form
(#{wrap\ 445}#
#{name\ 1704}#
#{w\ 1612}#
#{mod\ 1615}#)
(#{decorate-source\ 299}#
(cons '#(syntax-object
lambda
((top)
#(ribcage
#(name
args
e1
e2)
#((top)
(top)
(top)
(top))
#("i1700"
"i1701"
"i1702"
"i1703"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(ftype
fval
fe
fw
fs
fmod)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i1653"
"i1654"
"i1655"
"i1656"
"i1657"
"i1658"))
#(ribcage
()
()
())
#(ribcage
#(first)
#((top))
#("i1645"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(e
r
w
s
rib
mod
for-car?)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i1617"
"i1618"
"i1619"
"i1620"
"i1621"
"i1622"
"i1623"))
#(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
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
maybe-name-value!
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))
("i490"
"i488"
"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"
"i419"
"i418"
"i416"
"i415"
"i414"
"i413"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i393"
"i391"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i381"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i365"
"i364"
"i363"
"i362"
"i361"
"i359"
"i358"
"i356"
"i354"
"i352"
"i350"
"i348"
"i346"
"i344"
"i342"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i324"
"i322"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i252"
"i250"
"i248"
"i246"
"i244"
"i242"
"i240"
"i238"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top)
(top)
(top)
(top))
("i40"
"i39"
"i38"
"i36")))
(hygiene
guile))
(#{wrap\ 445}#
(cons #{args\ 1705}#
(cons #{e1\ 1706}#
#{e2\ 1707}#))
#{w\ 1612}#
#{mod\ 1615}#))
#{s\ 1613}#)
'(())
#{s\ 1613}#
#{mod\ 1615}#))
#{tmp\ 1689}#)
(let ((#{tmp\ 1710}#
($sc-dispatch
#{tmp\ 1679}#
'(_ any))))
(if (if #{tmp\ 1710}#
(@apply
(lambda (#{name\ 1712}#)
(#{id?\ 379}#
#{name\ 1712}#))
#{tmp\ 1710}#)
#f)
(@apply
(lambda (#{name\ 1714}#)
(values
'define-form
(#{wrap\ 445}#
#{name\ 1714}#
#{w\ 1612}#
#{mod\ 1615}#)
'(#(syntax-object
if
((top)
#(ribcage
#(name)
#((top))
#("i1713"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(ftype
fval
fe
fw
fs
fmod)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i1653"
"i1654"
"i1655"
"i1656"
"i1657"
"i1658"))
#(ribcage
()
()
())
#(ribcage
#(first)
#((top))
#("i1645"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(e
r
w
s
rib
mod
for-car?)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i1617"
"i1618"
"i1619"
"i1620"
"i1621"
"i1622"
"i1623"))
#(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
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
maybe-name-value!
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))
("i490"
"i488"
"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"
"i419"
"i418"
"i416"
"i415"
"i414"
"i413"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i393"
"i391"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i381"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i365"
"i364"
"i363"
"i362"
"i361"
"i359"
"i358"
"i356"
"i354"
"i352"
"i350"
"i348"
"i346"
"i344"
"i342"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i324"
"i322"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i252"
"i250"
"i248"
"i246"
"i244"
"i242"
"i240"
"i238"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top)
(top)
(top)
(top))
("i40"
"i39"
"i38"
"i36")))
(hygiene
guile))
#(syntax-object
#f
((top)
#(ribcage
#(name)
#((top))
#("i1713"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(ftype
fval
fe
fw
fs
fmod)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i1653"
"i1654"
"i1655"
"i1656"
"i1657"
"i1658"))
#(ribcage
()
()
())
#(ribcage
#(first)
#((top))
#("i1645"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(e
r
w
s
rib
mod
for-car?)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i1617"
"i1618"
"i1619"
"i1620"
"i1621"
"i1622"
"i1623"))
#(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
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
maybe-name-value!
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))
("i490"
"i488"
"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"
"i419"
"i418"
"i416"
"i415"
"i414"
"i413"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i393"
"i391"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i381"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i365"
"i364"
"i363"
"i362"
"i361"
"i359"
"i358"
"i356"
"i354"
"i352"
"i350"
"i348"
"i346"
"i344"
"i342"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i324"
"i322"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i252"
"i250"
"i248"
"i246"
"i244"
"i242"
"i240"
"i238"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top)
(top)
(top)
(top))
("i40"
"i39"
"i38"
"i36")))
(hygiene
guile))
#(syntax-object
#f
((top)
#(ribcage
#(name)
#((top))
#("i1713"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(ftype
fval
fe
fw
fs
fmod)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i1653"
"i1654"
"i1655"
"i1656"
"i1657"
"i1658"))
#(ribcage
()
()
())
#(ribcage
#(first)
#((top))
#("i1645"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(e
r
w
s
rib
mod
for-car?)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i1617"
"i1618"
"i1619"
"i1620"
"i1621"
"i1622"
"i1623"))
#(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
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
maybe-name-value!
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))
("i490"
"i488"
"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"
"i419"
"i418"
"i416"
"i415"
"i414"
"i413"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i393"
"i391"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i381"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i365"
"i364"
"i363"
"i362"
"i361"
"i359"
"i358"
"i356"
"i354"
"i352"
"i350"
"i348"
"i346"
"i344"
"i342"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i324"
"i322"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i252"
"i250"
"i248"
"i246"
"i244"
"i242"
"i240"
"i238"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top)
(top)
(top)
(top))
("i40"
"i39"
"i38"
"i36")))
(hygiene
guile)))
'(())
#{s\ 1613}#
#{mod\ 1615}#))
#{tmp\ 1710}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 1679}#))))))))
(if (eqv? #{ftype\ 1647}#
'define-syntax)
(let ((#{tmp\ 1717}# #{e\ 1610}#))
(let ((#{tmp\ 1718}#
($sc-dispatch
#{tmp\ 1717}#
'(_ any any))))
(if (if #{tmp\ 1718}#
(@apply
(lambda (#{name\ 1721}#
#{val\ 1722}#)
(#{id?\ 379}#
#{name\ 1721}#))
#{tmp\ 1718}#)
#f)
(@apply
(lambda (#{name\ 1725}#
#{val\ 1726}#)
(values
'define-syntax-form
#{name\ 1725}#
#{val\ 1726}#
#{w\ 1612}#
#{s\ 1613}#
#{mod\ 1615}#))
#{tmp\ 1718}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 1717}#))))
(values
'call
#f
#{e\ 1610}#
#{w\ 1612}#
#{s\ 1613}#
#{mod\ 1615}#)))))))))))))))
(if (#{syntax-object?\ 345}# #{e\ 1610}#)
(#{syntax-type\ 457}#
(#{syntax-object-expression\ 347}# #{e\ 1610}#)
#{r\ 1611}#
(#{join-wraps\ 427}#
#{w\ 1612}#
(#{syntax-object-wrap\ 349}# #{e\ 1610}#))
(begin
(let ((#{t\ 1732}#
(#{source-annotation\ 360}# #{e\ 1610}#)))
(if #{t\ 1732}# #{t\ 1732}# #{s\ 1613}#)))
#{rib\ 1614}#
(begin
(let ((#{t\ 1736}#
(#{syntax-object-module\ 351}# #{e\ 1610}#)))
(if #{t\ 1736}# #{t\ 1736}# #{mod\ 1615}#)))
#{for-car?\ 1616}#)
(if (self-evaluating? #{e\ 1610}#)
(values
'constant
#f
#{e\ 1610}#
#{w\ 1612}#
#{s\ 1613}#
#{mod\ 1615}#)
(values
'other
#f
#{e\ 1610}#
#{w\ 1612}#
#{s\ 1613}#
#{mod\ 1615}#)))))))
(#{chi-top\ 459}#
(lambda (#{e\ 1741}#
#{r\ 1742}#
#{w\ 1743}#
#{m\ 1744}#
#{esew\ 1745}#
#{mod\ 1746}#)
(call-with-values
(lambda ()
(#{syntax-type\ 457}#
#{e\ 1741}#
#{r\ 1742}#
#{w\ 1743}#
(#{source-annotation\ 360}# #{e\ 1741}#)
#f
#{mod\ 1746}#
#f))
(lambda (#{type\ 1767}#
#{value\ 1768}#
#{e\ 1769}#
#{w\ 1770}#
#{s\ 1771}#
#{mod\ 1772}#)
(if (eqv? #{type\ 1767}# 'begin-form)
(let ((#{tmp\ 1780}# #{e\ 1769}#))
(let ((#{tmp\ 1781}# ($sc-dispatch #{tmp\ 1780}# '(_))))
(if #{tmp\ 1781}#
(@apply
(lambda () (#{chi-void\ 475}#))
#{tmp\ 1781}#)
(let ((#{tmp\ 1782}#
($sc-dispatch
#{tmp\ 1780}#
'(_ any . each-any))))
(if #{tmp\ 1782}#
(@apply
(lambda (#{e1\ 1785}# #{e2\ 1786}#)
(#{chi-top-sequence\ 451}#
(cons #{e1\ 1785}# #{e2\ 1786}#)
#{r\ 1742}#
#{w\ 1770}#
#{s\ 1771}#
#{m\ 1744}#
#{esew\ 1745}#
#{mod\ 1772}#))
#{tmp\ 1782}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 1780}#))))))
(if (eqv? #{type\ 1767}# 'local-syntax-form)
(#{chi-local-syntax\ 471}#
#{value\ 1768}#
#{e\ 1769}#
#{r\ 1742}#
#{w\ 1770}#
#{s\ 1771}#
#{mod\ 1772}#
(lambda (#{body\ 1789}#
#{r\ 1790}#
#{w\ 1791}#
#{s\ 1792}#
#{mod\ 1793}#)
(#{chi-top-sequence\ 451}#
#{body\ 1789}#
#{r\ 1790}#
#{w\ 1791}#
#{s\ 1792}#
#{m\ 1744}#
#{esew\ 1745}#
#{mod\ 1793}#)))
(if (eqv? #{type\ 1767}# 'eval-when-form)
(let ((#{tmp\ 1800}# #{e\ 1769}#))
(let ((#{tmp\ 1801}#
($sc-dispatch
#{tmp\ 1800}#
'(_ each-any any . each-any))))
(if #{tmp\ 1801}#
(@apply
(lambda (#{x\ 1805}# #{e1\ 1806}# #{e2\ 1807}#)
(begin
(let ((#{when-list\ 1810}#
(#{chi-when-list\ 455}#
#{e\ 1769}#
#{x\ 1805}#
#{w\ 1770}#))
(#{body\ 1811}#
(cons #{e1\ 1806}# #{e2\ 1807}#)))
(if (eq? #{m\ 1744}# 'e)
(if (memq 'eval #{when-list\ 1810}#)
(#{chi-top-sequence\ 451}#
#{body\ 1811}#
#{r\ 1742}#
#{w\ 1770}#
#{s\ 1771}#
(if (memq 'expand
#{when-list\ 1810}#)
'c&e
'e)
'(eval)
#{mod\ 1772}#)
(begin
(if (memq 'expand
#{when-list\ 1810}#)
(#{top-level-eval-hook\ 290}#
(#{chi-top-sequence\ 451}#
#{body\ 1811}#
#{r\ 1742}#
#{w\ 1770}#
#{s\ 1771}#
'e
'(eval)
#{mod\ 1772}#)
#{mod\ 1772}#))
(#{chi-void\ 475}#)))
(if (memq 'load #{when-list\ 1810}#)
(if (begin
(let ((#{t\ 1820}#
(memq 'compile
#{when-list\ 1810}#)))
(if #{t\ 1820}#
#{t\ 1820}#
(begin
(let ((#{t\ 1823}#
(memq 'expand
#{when-list\ 1810}#)))
(if #{t\ 1823}#
#{t\ 1823}#
(if (eq? #{m\ 1744}#
'c&e)
(memq 'eval
#{when-list\ 1810}#)
#f)))))))
(#{chi-top-sequence\ 451}#
#{body\ 1811}#
#{r\ 1742}#
#{w\ 1770}#
#{s\ 1771}#
'c&e
'(compile load)
#{mod\ 1772}#)
(if (if (eq? #{m\ 1744}# 'c)
#t
(eq? #{m\ 1744}# 'c&e))
(#{chi-top-sequence\ 451}#
#{body\ 1811}#
#{r\ 1742}#
#{w\ 1770}#
#{s\ 1771}#
'c
'(load)
#{mod\ 1772}#)
(#{chi-void\ 475}#)))
(if (begin
(let ((#{t\ 1831}#
(memq 'compile
#{when-list\ 1810}#)))
(if #{t\ 1831}#
#{t\ 1831}#
(begin
(let ((#{t\ 1834}#
(memq 'expand
#{when-list\ 1810}#)))
(if #{t\ 1834}#
#{t\ 1834}#
(if (eq? #{m\ 1744}#
'c&e)
(memq 'eval
#{when-list\ 1810}#)
#f)))))))
(begin
(#{top-level-eval-hook\ 290}#
(#{chi-top-sequence\ 451}#
#{body\ 1811}#
#{r\ 1742}#
#{w\ 1770}#
#{s\ 1771}#
'e
'(eval)
#{mod\ 1772}#)
#{mod\ 1772}#)
(#{chi-void\ 475}#))
(#{chi-void\ 475}#)))))))
#{tmp\ 1801}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 1800}#))))
(if (eqv? #{type\ 1767}# 'define-syntax-form)
(begin
(let ((#{n\ 1842}#
(#{id-var-name\ 433}#
#{value\ 1768}#
#{w\ 1770}#))
(#{r\ 1843}#
(#{macros-only-env\ 371}# #{r\ 1742}#)))
(if (eqv? #{m\ 1744}# 'c)
(if (memq 'compile #{esew\ 1745}#)
(begin
(let ((#{e\ 1846}#
(#{chi-install-global\ 453}#
#{n\ 1842}#
(#{chi\ 461}#
#{e\ 1769}#
#{r\ 1843}#
#{w\ 1770}#
#{mod\ 1772}#))))
(begin
(#{top-level-eval-hook\ 290}#
#{e\ 1846}#
#{mod\ 1772}#)
(if (memq 'load #{esew\ 1745}#)
#{e\ 1846}#
(#{chi-void\ 475}#)))))
(if (memq 'load #{esew\ 1745}#)
(#{chi-install-global\ 453}#
#{n\ 1842}#
(#{chi\ 461}#
#{e\ 1769}#
#{r\ 1843}#
#{w\ 1770}#
#{mod\ 1772}#))
(#{chi-void\ 475}#)))
(if (eqv? #{m\ 1744}# 'c&e)
(begin
(let ((#{e\ 1849}#
(#{chi-install-global\ 453}#
#{n\ 1842}#
(#{chi\ 461}#
#{e\ 1769}#
#{r\ 1843}#
#{w\ 1770}#
#{mod\ 1772}#))))
(begin
(#{top-level-eval-hook\ 290}#
#{e\ 1849}#
#{mod\ 1772}#)
#{e\ 1849}#)))
(begin
(if (memq 'eval #{esew\ 1745}#)
(#{top-level-eval-hook\ 290}#
(#{chi-install-global\ 453}#
#{n\ 1842}#
(#{chi\ 461}#
#{e\ 1769}#
#{r\ 1843}#
#{w\ 1770}#
#{mod\ 1772}#))
#{mod\ 1772}#))
(#{chi-void\ 475}#))))))
(if (eqv? #{type\ 1767}# 'define-form)
(begin
(let ((#{n\ 1854}#
(#{id-var-name\ 433}#
#{value\ 1768}#
#{w\ 1770}#)))
(begin
(let ((#{type\ 1856}#
(car (#{lookup\ 373}#
#{n\ 1854}#
#{r\ 1742}#
#{mod\ 1772}#))))
(if (if (eqv? #{type\ 1856}# 'global)
#t
(if (eqv? #{type\ 1856}# 'core)
#t
(if (eqv? #{type\ 1856}# 'macro)
#t
(eqv? #{type\ 1856}#
'module-ref))))
(begin
(if (if (if (eq? #{m\ 1744}# 'c)
#t
(eq? #{m\ 1744}# 'c&e))
(if (not (module-local-variable
(current-module)
#{n\ 1854}#))
(current-module)
#f)
#f)
(begin
(let ((#{old\ 1863}#
(module-variable
(current-module)
#{n\ 1854}#)))
(if (if (variable? #{old\ 1863}#)
(variable-bound?
#{old\ 1863}#)
#f)
(module-define!
(current-module)
#{n\ 1854}#
(variable-ref #{old\ 1863}#))
(module-add!
(current-module)
#{n\ 1854}#
(make-undefined-variable))))))
(begin
(let ((#{x\ 1868}#
(#{build-global-definition\ 321}#
#{s\ 1771}#
#{n\ 1854}#
(#{chi\ 461}#
#{e\ 1769}#
#{r\ 1742}#
#{w\ 1770}#
#{mod\ 1772}#))))
(begin
(if (eq? #{m\ 1744}# 'c&e)
(#{top-level-eval-hook\ 290}#
#{x\ 1868}#
#{mod\ 1772}#))
#{x\ 1868}#))))
(if (eqv? #{type\ 1856}#
'displaced-lexical)
(syntax-violation
#f
"identifier out of context"
#{e\ 1769}#
(#{wrap\ 445}#
#{value\ 1768}#
#{w\ 1770}#
#{mod\ 1772}#))
(syntax-violation
#f
"cannot define keyword at top level"
#{e\ 1769}#
(#{wrap\ 445}#
#{value\ 1768}#
#{w\ 1770}#
#{mod\ 1772}#))))))))
(begin
(let ((#{x\ 1874}#
(#{chi-expr\ 463}#
#{type\ 1767}#
#{value\ 1768}#
#{e\ 1769}#
#{r\ 1742}#
#{w\ 1770}#
#{s\ 1771}#
#{mod\ 1772}#)))
(begin
(if (eq? #{m\ 1744}# 'c&e)
(#{top-level-eval-hook\ 290}#
#{x\ 1874}#
#{mod\ 1772}#))
#{x\ 1874}#))))))))))))
(#{chi\ 461}#
(lambda (#{e\ 1875}#
#{r\ 1876}#
#{w\ 1877}#
#{mod\ 1878}#)
(call-with-values
(lambda ()
(#{syntax-type\ 457}#
#{e\ 1875}#
#{r\ 1876}#
#{w\ 1877}#
(#{source-annotation\ 360}# #{e\ 1875}#)
#f
#{mod\ 1878}#
#f))
(lambda (#{type\ 1883}#
#{value\ 1884}#
#{e\ 1885}#
#{w\ 1886}#
#{s\ 1887}#
#{mod\ 1888}#)
(#{chi-expr\ 463}#
#{type\ 1883}#
#{value\ 1884}#
#{e\ 1885}#
#{r\ 1876}#
#{w\ 1886}#
#{s\ 1887}#
#{mod\ 1888}#)))))
(#{chi-expr\ 463}#
(lambda (#{type\ 1895}#
#{value\ 1896}#
#{e\ 1897}#
#{r\ 1898}#
#{w\ 1899}#
#{s\ 1900}#
#{mod\ 1901}#)
(if (eqv? #{type\ 1895}# 'lexical)
(#{build-lexical-reference\ 311}#
'value
#{s\ 1900}#
#{e\ 1897}#
#{value\ 1896}#)
(if (if (eqv? #{type\ 1895}# 'core)
#t
(eqv? #{type\ 1895}# 'core-form))
(#{value\ 1896}#
#{e\ 1897}#
#{r\ 1898}#
#{w\ 1899}#
#{s\ 1900}#
#{mod\ 1901}#)
(if (eqv? #{type\ 1895}# 'module-ref)
(call-with-values
(lambda ()
(#{value\ 1896}#
#{e\ 1897}#
#{r\ 1898}#
#{w\ 1899}#))
(lambda (#{e\ 1912}#
#{r\ 1913}#
#{w\ 1914}#
#{s\ 1915}#
#{mod\ 1916}#)
(#{chi\ 461}#
#{e\ 1912}#
#{r\ 1913}#
#{w\ 1914}#
#{mod\ 1916}#)))
(if (eqv? #{type\ 1895}# 'lexical-call)
(#{chi-application\ 465}#
(begin
(let ((#{id\ 1924}# (car #{e\ 1897}#)))
(#{build-lexical-reference\ 311}#
'fun
(#{source-annotation\ 360}# #{id\ 1924}#)
(if (#{syntax-object?\ 345}# #{id\ 1924}#)
(syntax->datum #{id\ 1924}#)
#{id\ 1924}#)
#{value\ 1896}#)))
#{e\ 1897}#
#{r\ 1898}#
#{w\ 1899}#
#{s\ 1900}#
#{mod\ 1901}#)
(if (eqv? #{type\ 1895}# 'global-call)
(#{chi-application\ 465}#
(#{build-global-reference\ 317}#
(#{source-annotation\ 360}# (car #{e\ 1897}#))
(if (#{syntax-object?\ 345}# #{value\ 1896}#)
(#{syntax-object-expression\ 347}#
#{value\ 1896}#)
#{value\ 1896}#)
(if (#{syntax-object?\ 345}# #{value\ 1896}#)
(#{syntax-object-module\ 351}# #{value\ 1896}#)
#{mod\ 1901}#))
#{e\ 1897}#
#{r\ 1898}#
#{w\ 1899}#
#{s\ 1900}#
#{mod\ 1901}#)
(if (eqv? #{type\ 1895}# 'constant)
(#{build-data\ 331}#
#{s\ 1900}#
(#{strip\ 487}#
(#{source-wrap\ 447}#
#{e\ 1897}#
#{w\ 1899}#
#{s\ 1900}#
#{mod\ 1901}#)
'(())))
(if (eqv? #{type\ 1895}# 'global)
(#{build-global-reference\ 317}#
#{s\ 1900}#
#{value\ 1896}#
#{mod\ 1901}#)
(if (eqv? #{type\ 1895}# 'call)
(#{chi-application\ 465}#
(#{chi\ 461}#
(car #{e\ 1897}#)
#{r\ 1898}#
#{w\ 1899}#
#{mod\ 1901}#)
#{e\ 1897}#
#{r\ 1898}#
#{w\ 1899}#
#{s\ 1900}#
#{mod\ 1901}#)
(if (eqv? #{type\ 1895}# 'begin-form)
(let ((#{tmp\ 1931}# #{e\ 1897}#))
(let ((#{tmp\ 1932}#
($sc-dispatch
#{tmp\ 1931}#
'(_ any . each-any))))
(if #{tmp\ 1932}#
(@apply
(lambda (#{e1\ 1935}# #{e2\ 1936}#)
(#{chi-sequence\ 449}#
(cons #{e1\ 1935}# #{e2\ 1936}#)
#{r\ 1898}#
#{w\ 1899}#
#{s\ 1900}#
#{mod\ 1901}#))
#{tmp\ 1932}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 1931}#))))
(if (eqv? #{type\ 1895}# 'local-syntax-form)
(#{chi-local-syntax\ 471}#
#{value\ 1896}#
#{e\ 1897}#
#{r\ 1898}#
#{w\ 1899}#
#{s\ 1900}#
#{mod\ 1901}#
#{chi-sequence\ 449}#)
(if (eqv? #{type\ 1895}# 'eval-when-form)
(let ((#{tmp\ 1940}# #{e\ 1897}#))
(let ((#{tmp\ 1941}#
($sc-dispatch
#{tmp\ 1940}#
'(_ each-any any . each-any))))
(if #{tmp\ 1941}#
(@apply
(lambda (#{x\ 1945}#
#{e1\ 1946}#
#{e2\ 1947}#)
(begin
(let ((#{when-list\ 1949}#
(#{chi-when-list\ 455}#
#{e\ 1897}#
#{x\ 1945}#
#{w\ 1899}#)))
(if (memq 'eval
#{when-list\ 1949}#)
(#{chi-sequence\ 449}#
(cons #{e1\ 1946}#
#{e2\ 1947}#)
#{r\ 1898}#
#{w\ 1899}#
#{s\ 1900}#
#{mod\ 1901}#)
(#{chi-void\ 475}#)))))
#{tmp\ 1941}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 1940}#))))
(if (if (eqv? #{type\ 1895}# 'define-form)
#t
(eqv? #{type\ 1895}#
'define-syntax-form))
(syntax-violation
#f
"definition in expression context"
#{e\ 1897}#
(#{wrap\ 445}#
#{value\ 1896}#
#{w\ 1899}#
#{mod\ 1901}#))
(if (eqv? #{type\ 1895}# 'syntax)
(syntax-violation
#f
"reference to pattern variable outside syntax form"
(#{source-wrap\ 447}#
#{e\ 1897}#
#{w\ 1899}#
#{s\ 1900}#
#{mod\ 1901}#))
(if (eqv? #{type\ 1895}#
'displaced-lexical)
(syntax-violation
#f
"reference to identifier outside its scope"
(#{source-wrap\ 447}#
#{e\ 1897}#
#{w\ 1899}#
#{s\ 1900}#
#{mod\ 1901}#))
(syntax-violation
#f
"unexpected syntax"
(#{source-wrap\ 447}#
#{e\ 1897}#
#{w\ 1899}#
#{s\ 1900}#
#{mod\ 1901}#))))))))))))))))))
(#{chi-application\ 465}#
(lambda (#{x\ 1956}#
#{e\ 1957}#
#{r\ 1958}#
#{w\ 1959}#
#{s\ 1960}#
#{mod\ 1961}#)
(let ((#{tmp\ 1968}# #{e\ 1957}#))
(let ((#{tmp\ 1969}#
($sc-dispatch #{tmp\ 1968}# '(any . each-any))))
(if #{tmp\ 1969}#
(@apply
(lambda (#{e0\ 1972}# #{e1\ 1973}#)
(#{build-application\ 305}#
#{s\ 1960}#
#{x\ 1956}#
(map (lambda (#{e\ 1974}#)
(#{chi\ 461}#
#{e\ 1974}#
#{r\ 1958}#
#{w\ 1959}#
#{mod\ 1961}#))
#{e1\ 1973}#)))
#{tmp\ 1969}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 1968}#))))))
(#{chi-macro\ 467}#
(lambda (#{p\ 1977}#
#{e\ 1978}#
#{r\ 1979}#
#{w\ 1980}#
#{s\ 1981}#
#{rib\ 1982}#
#{mod\ 1983}#)
(letrec*
((#{rebuild-macro-output\ 1992}#
(lambda (#{x\ 1993}# #{m\ 1994}#)
(if (pair? #{x\ 1993}#)
(#{decorate-source\ 299}#
(cons (#{rebuild-macro-output\ 1992}#
(car #{x\ 1993}#)
#{m\ 1994}#)
(#{rebuild-macro-output\ 1992}#
(cdr #{x\ 1993}#)
#{m\ 1994}#))
#{s\ 1981}#)
(if (#{syntax-object?\ 345}# #{x\ 1993}#)
(begin
(let ((#{w\ 2002}#
(#{syntax-object-wrap\ 349}# #{x\ 1993}#)))
(begin
(let ((#{ms\ 2005}# (car #{w\ 2002}#))
(#{s\ 2006}# (cdr #{w\ 2002}#)))
(if (if (pair? #{ms\ 2005}#)
(eq? (car #{ms\ 2005}#) #f)
#f)
(#{make-syntax-object\ 343}#
(#{syntax-object-expression\ 347}#
#{x\ 1993}#)
(cons (cdr #{ms\ 2005}#)
(if #{rib\ 1982}#
(cons #{rib\ 1982}#
(cdr #{s\ 2006}#))
(cdr #{s\ 2006}#)))
(#{syntax-object-module\ 351}#
#{x\ 1993}#))
(#{make-syntax-object\ 343}#
(#{decorate-source\ 299}#
(#{syntax-object-expression\ 347}#
#{x\ 1993}#)
#{s\ 2006}#)
(cons (cons #{m\ 1994}# #{ms\ 2005}#)
(if #{rib\ 1982}#
(cons #{rib\ 1982}#
(cons 'shift #{s\ 2006}#))
(cons 'shift #{s\ 2006}#)))
(#{syntax-object-module\ 351}#
#{x\ 1993}#)))))))
(if (vector? #{x\ 1993}#)
(begin
(let ((#{n\ 2018}# (vector-length #{x\ 1993}#)))
(begin
(let ((#{v\ 2020}#
(#{decorate-source\ 299}#
(make-vector #{n\ 2018}#)
#{x\ 1993}#)))
(letrec*
((#{loop\ 2023}#
(lambda (#{i\ 2024}#)
(if (#{fx=\ 286}#
#{i\ 2024}#
#{n\ 2018}#)
(begin (if #f #f) #{v\ 2020}#)
(begin
(vector-set!
#{v\ 2020}#
#{i\ 2024}#
(#{rebuild-macro-output\ 1992}#
(vector-ref
#{x\ 1993}#
#{i\ 2024}#)
#{m\ 1994}#))
(#{loop\ 2023}#
(#{fx+\ 282}#
#{i\ 2024}#
1)))))))
(begin (#{loop\ 2023}# 0)))))))
(if (symbol? #{x\ 1993}#)
(syntax-violation
#f
"encountered raw symbol in macro output"
(#{source-wrap\ 447}#
#{e\ 1978}#
#{w\ 1980}#
(cdr #{w\ 1980}#)
#{mod\ 1983}#)
#{x\ 1993}#)
(#{decorate-source\ 299}#
#{x\ 1993}#
#{s\ 1981}#))))))))
(begin
(#{rebuild-macro-output\ 1992}#
(#{p\ 1977}#
(#{source-wrap\ 447}#
#{e\ 1978}#
(#{anti-mark\ 417}# #{w\ 1980}#)
#{s\ 1981}#
#{mod\ 1983}#))
(gensym "m"))))))
(#{chi-body\ 469}#
(lambda (#{body\ 2032}#
#{outer-form\ 2033}#
#{r\ 2034}#
#{w\ 2035}#
#{mod\ 2036}#)
(begin
(let ((#{r\ 2044}#
(cons '("placeholder" placeholder) #{r\ 2034}#)))
(begin
(let ((#{ribcage\ 2046}#
(#{make-ribcage\ 397}# '() '() '())))
(begin
(let ((#{w\ 2049}#
(cons (car #{w\ 2035}#)
(cons #{ribcage\ 2046}#
(cdr #{w\ 2035}#)))))
(letrec*
((#{parse\ 2061}#
(lambda (#{body\ 2062}#
#{ids\ 2063}#
#{labels\ 2064}#
#{var-ids\ 2065}#
#{vars\ 2066}#
#{vals\ 2067}#
#{bindings\ 2068}#)
(if (null? #{body\ 2062}#)
(syntax-violation
#f
"no expressions in body"
#{outer-form\ 2033}#)
(begin
(let ((#{e\ 2073}#
(cdr (car #{body\ 2062}#)))
(#{er\ 2074}#
(car (car #{body\ 2062}#))))
(call-with-values
(lambda ()
(#{syntax-type\ 457}#
#{e\ 2073}#
#{er\ 2074}#
'(())
(#{source-annotation\ 360}#
#{er\ 2074}#)
#{ribcage\ 2046}#
#{mod\ 2036}#
#f))
(lambda (#{type\ 2076}#
#{value\ 2077}#
#{e\ 2078}#
#{w\ 2079}#
#{s\ 2080}#
#{mod\ 2081}#)
(if (eqv? #{type\ 2076}#
'define-form)
(begin
(let ((#{id\ 2091}#
(#{wrap\ 445}#
#{value\ 2077}#
#{w\ 2079}#
#{mod\ 2081}#))
(#{label\ 2092}#
(#{gen-label\ 392}#)))
(begin
(let ((#{var\ 2094}#
(#{gen-var\ 489}#
#{id\ 2091}#)))
(begin
(#{extend-ribcage!\ 421}#
#{ribcage\ 2046}#
#{id\ 2091}#
#{label\ 2092}#)
(#{parse\ 2061}#
(cdr #{body\ 2062}#)
(cons #{id\ 2091}#
#{ids\ 2063}#)
(cons #{label\ 2092}#
#{labels\ 2064}#)
(cons #{id\ 2091}#
#{var-ids\ 2065}#)
(cons #{var\ 2094}#
#{vars\ 2066}#)
(cons (cons #{er\ 2074}#
(#{wrap\ 445}#
#{e\ 2078}#
#{w\ 2079}#
#{mod\ 2081}#))
#{vals\ 2067}#)
(cons (cons 'lexical
#{var\ 2094}#)
#{bindings\ 2068}#)))))))
(if (eqv? #{type\ 2076}#
'define-syntax-form)
(begin
(let ((#{id\ 2099}#
(#{wrap\ 445}#
#{value\ 2077}#
#{w\ 2079}#
#{mod\ 2081}#))
(#{label\ 2100}#
(#{gen-label\ 392}#)))
(begin
(#{extend-ribcage!\ 421}#
#{ribcage\ 2046}#
#{id\ 2099}#
#{label\ 2100}#)
(#{parse\ 2061}#
(cdr #{body\ 2062}#)
(cons #{id\ 2099}#
#{ids\ 2063}#)
(cons #{label\ 2100}#
#{labels\ 2064}#)
#{var-ids\ 2065}#
#{vars\ 2066}#
#{vals\ 2067}#
(cons (cons 'macro
(cons #{er\ 2074}#
(#{wrap\ 445}#
#{e\ 2078}#
#{w\ 2079}#
#{mod\ 2081}#)))
#{bindings\ 2068}#)))))
(if (eqv? #{type\ 2076}#
'begin-form)
(let ((#{tmp\ 2103}#
#{e\ 2078}#))
(let ((#{tmp\ 2104}#
($sc-dispatch
#{tmp\ 2103}#
'(_ . each-any))))
(if #{tmp\ 2104}#
(@apply
(lambda (#{e1\ 2106}#)
(#{parse\ 2061}#
(letrec*
((#{f\ 2109}#
(lambda (#{forms\ 2110}#)
(if (null? #{forms\ 2110}#)
(cdr #{body\ 2062}#)
(cons (cons #{er\ 2074}#
(#{wrap\ 445}#
(car #{forms\ 2110}#)
#{w\ 2079}#
#{mod\ 2081}#))
(#{f\ 2109}#
(cdr #{forms\ 2110}#)))))))
(begin
(#{f\ 2109}#
#{e1\ 2106}#)))
#{ids\ 2063}#
#{labels\ 2064}#
#{var-ids\ 2065}#
#{vars\ 2066}#
#{vals\ 2067}#
#{bindings\ 2068}#))
#{tmp\ 2104}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 2103}#))))
(if (eqv? #{type\ 2076}#
'local-syntax-form)
(#{chi-local-syntax\ 471}#
#{value\ 2077}#
#{e\ 2078}#
#{er\ 2074}#
#{w\ 2079}#
#{s\ 2080}#
#{mod\ 2081}#
(lambda (#{forms\ 2113}#
#{er\ 2114}#
#{w\ 2115}#
#{s\ 2116}#
#{mod\ 2117}#)
(#{parse\ 2061}#
(letrec*
((#{f\ 2125}#
(lambda (#{forms\ 2126}#)
(if (null? #{forms\ 2126}#)
(cdr #{body\ 2062}#)
(cons (cons #{er\ 2114}#
(#{wrap\ 445}#
(car #{forms\ 2126}#)
#{w\ 2115}#
#{mod\ 2117}#))
(#{f\ 2125}#
(cdr #{forms\ 2126}#)))))))
(begin
(#{f\ 2125}#
#{forms\ 2113}#)))
#{ids\ 2063}#
#{labels\ 2064}#
#{var-ids\ 2065}#
#{vars\ 2066}#
#{vals\ 2067}#
#{bindings\ 2068}#)))
(if (null? #{ids\ 2063}#)
(#{build-sequence\ 333}#
#f
(map (lambda (#{x\ 2129}#)
(#{chi\ 461}#
(cdr #{x\ 2129}#)
(car #{x\ 2129}#)
'(())
#{mod\ 2081}#))
(cons (cons #{er\ 2074}#
(#{source-wrap\ 447}#
#{e\ 2078}#
#{w\ 2079}#
#{s\ 2080}#
#{mod\ 2081}#))
(cdr #{body\ 2062}#))))
(begin
(if (not (#{valid-bound-ids?\ 439}#
#{ids\ 2063}#))
(syntax-violation
#f
"invalid or duplicate identifier in definition"
#{outer-form\ 2033}#))
(letrec*
((#{loop\ 2136}#
(lambda (#{bs\ 2137}#
#{er-cache\ 2138}#
#{r-cache\ 2139}#)
(if (not (null? #{bs\ 2137}#))
(begin
(let ((#{b\ 2142}#
(car #{bs\ 2137}#)))
(if (eq? (car #{b\ 2142}#)
'macro)
(begin
(let ((#{er\ 2145}#
(car (cdr #{b\ 2142}#))))
(begin
(let ((#{r-cache\ 2147}#
(if (eq? #{er\ 2145}#
#{er-cache\ 2138}#)
#{r-cache\ 2139}#
(#{macros-only-env\ 371}#
#{er\ 2145}#))))
(begin
(set-cdr!
#{b\ 2142}#
(#{eval-local-transformer\ 473}#
(#{chi\ 461}#
(cdr (cdr #{b\ 2142}#))
#{r-cache\ 2147}#
'(())
#{mod\ 2081}#)
#{mod\ 2081}#))
(#{loop\ 2136}#
(cdr #{bs\ 2137}#)
#{er\ 2145}#
#{r-cache\ 2147}#))))))
(#{loop\ 2136}#
(cdr #{bs\ 2137}#)
#{er-cache\ 2138}#
#{r-cache\ 2139}#))))))))
(begin
(#{loop\ 2136}#
#{bindings\ 2068}#
#f
#f)))
(set-cdr!
#{r\ 2044}#
(#{extend-env\ 367}#
#{labels\ 2064}#
#{bindings\ 2068}#
(cdr #{r\ 2044}#)))
(#{build-letrec\ 339}#
#f
#t
(reverse
(map syntax->datum
#{var-ids\ 2065}#))
(reverse
#{vars\ 2066}#)
(map (lambda (#{x\ 2150}#)
(#{chi\ 461}#
(cdr #{x\ 2150}#)
(car #{x\ 2150}#)
'(())
#{mod\ 2081}#))
(reverse
#{vals\ 2067}#))
(#{build-sequence\ 333}#
#f
(map (lambda (#{x\ 2154}#)
(#{chi\ 461}#
(cdr #{x\ 2154}#)
(car #{x\ 2154}#)
'(())
#{mod\ 2081}#))
(cons (cons #{er\ 2074}#
(#{source-wrap\ 447}#
#{e\ 2078}#
#{w\ 2079}#
#{s\ 2080}#
#{mod\ 2081}#))
(cdr #{body\ 2062}#)))))))))))))))))))
(begin
(#{parse\ 2061}#
(map (lambda (#{x\ 2069}#)
(cons #{r\ 2044}#
(#{wrap\ 445}#
#{x\ 2069}#
#{w\ 2049}#
#{mod\ 2036}#)))
#{body\ 2032}#)
'()
'()
'()
'()
'()
'())))))))))))
(#{chi-local-syntax\ 471}#
(lambda (#{rec?\ 2157}#
#{e\ 2158}#
#{r\ 2159}#
#{w\ 2160}#
#{s\ 2161}#
#{mod\ 2162}#
#{k\ 2163}#)
(let ((#{tmp\ 2171}# #{e\ 2158}#))
(let ((#{tmp\ 2172}#
($sc-dispatch
#{tmp\ 2171}#
'(_ #(each (any any)) any . each-any))))
(if #{tmp\ 2172}#
(@apply
(lambda (#{id\ 2177}#
#{val\ 2178}#
#{e1\ 2179}#
#{e2\ 2180}#)
(begin
(let ((#{ids\ 2182}# #{id\ 2177}#))
(if (not (#{valid-bound-ids?\ 439}# #{ids\ 2182}#))
(syntax-violation
#f
"duplicate bound keyword"
#{e\ 2158}#)
(begin
(let ((#{labels\ 2185}#
(#{gen-labels\ 394}# #{ids\ 2182}#)))
(begin
(let ((#{new-w\ 2187}#
(#{make-binding-wrap\ 423}#
#{ids\ 2182}#
#{labels\ 2185}#
#{w\ 2160}#)))
(#{k\ 2163}#
(cons #{e1\ 2179}# #{e2\ 2180}#)
(#{extend-env\ 367}#
#{labels\ 2185}#
(begin
(let ((#{w\ 2191}#
(if #{rec?\ 2157}#
#{new-w\ 2187}#
#{w\ 2160}#))
(#{trans-r\ 2192}#
(#{macros-only-env\ 371}#
#{r\ 2159}#)))
(map (lambda (#{x\ 2193}#)
(cons 'macro
(#{eval-local-transformer\ 473}#
(#{chi\ 461}#
#{x\ 2193}#
#{trans-r\ 2192}#
#{w\ 2191}#
#{mod\ 2162}#)
#{mod\ 2162}#)))
#{val\ 2178}#)))
#{r\ 2159}#)
#{new-w\ 2187}#
#{s\ 2161}#
#{mod\ 2162}#)))))))))
#{tmp\ 2172}#)
(let ((#{_\ 2198}# #{tmp\ 2171}#))
(syntax-violation
#f
"bad local syntax definition"
(#{source-wrap\ 447}#
#{e\ 2158}#
#{w\ 2160}#
#{s\ 2161}#
#{mod\ 2162}#))))))))
(#{eval-local-transformer\ 473}#
(lambda (#{expanded\ 2199}# #{mod\ 2200}#)
(begin
(let ((#{p\ 2204}#
(#{local-eval-hook\ 292}#
#{expanded\ 2199}#
#{mod\ 2200}#)))
(if (procedure? #{p\ 2204}#)
#{p\ 2204}#
(syntax-violation
#f
"nonprocedure transformer"
#{p\ 2204}#))))))
(#{chi-void\ 475}#
(lambda () (#{build-void\ 303}# #f)))
(#{ellipsis?\ 477}#
(lambda (#{x\ 2206}#)
(if (#{nonsymbol-id?\ 377}# #{x\ 2206}#)
(#{free-id=?\ 435}#
#{x\ 2206}#
'#(syntax-object
...
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i2207"))
#(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
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
maybe-name-value!
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))
("i490"
"i488"
"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"
"i419"
"i418"
"i416"
"i415"
"i414"
"i413"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i393"
"i391"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i381"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i365"
"i364"
"i363"
"i362"
"i361"
"i359"
"i358"
"i356"
"i354"
"i352"
"i350"
"i348"
"i346"
"i344"
"i342"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i324"
"i322"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i252"
"i250"
"i248"
"i246"
"i244"
"i242"
"i240"
"i238"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i40" "i39" "i38" "i36")))
(hygiene guile)))
#f)))
(#{lambda-formals\ 479}#
(lambda (#{orig-args\ 2210}#)
(letrec*
((#{req\ 2213}#
(lambda (#{args\ 2216}# #{rreq\ 2217}#)
(let ((#{tmp\ 2220}# #{args\ 2216}#))
(let ((#{tmp\ 2221}# ($sc-dispatch #{tmp\ 2220}# '())))
(if #{tmp\ 2221}#
(@apply
(lambda ()
(#{check\ 2215}# (reverse #{rreq\ 2217}#) #f))
#{tmp\ 2221}#)
(let ((#{tmp\ 2222}#
($sc-dispatch #{tmp\ 2220}# '(any . any))))
(if (if #{tmp\ 2222}#
(@apply
(lambda (#{a\ 2225}# #{b\ 2226}#)
(#{id?\ 379}# #{a\ 2225}#))
#{tmp\ 2222}#)
#f)
(@apply
(lambda (#{a\ 2229}# #{b\ 2230}#)
(#{req\ 2213}#
#{b\ 2230}#
(cons #{a\ 2229}# #{rreq\ 2217}#)))
#{tmp\ 2222}#)
(let ((#{tmp\ 2231}# (list #{tmp\ 2220}#)))
(if (if #{tmp\ 2231}#
(@apply
(lambda (#{r\ 2233}#)
(#{id?\ 379}# #{r\ 2233}#))
#{tmp\ 2231}#)
#f)
(@apply
(lambda (#{r\ 2235}#)
(#{check\ 2215}#
(reverse #{rreq\ 2217}#)
#{r\ 2235}#))
#{tmp\ 2231}#)
(let ((#{else\ 2237}# #{tmp\ 2220}#))
(syntax-violation
'lambda
"invalid argument list"
#{orig-args\ 2210}#
#{args\ 2216}#)))))))))))
(#{check\ 2215}#
(lambda (#{req\ 2238}# #{rest\ 2239}#)
(if (#{distinct-bound-ids?\ 441}#
(if #{rest\ 2239}#
(cons #{rest\ 2239}# #{req\ 2238}#)
#{req\ 2238}#))
(values #{req\ 2238}# #f #{rest\ 2239}# #f)
(syntax-violation
'lambda
"duplicate identifier in argument list"
#{orig-args\ 2210}#)))))
(begin (#{req\ 2213}# #{orig-args\ 2210}# '())))))
(#{chi-simple-lambda\ 481}#
(lambda (#{e\ 2245}#
#{r\ 2246}#
#{w\ 2247}#
#{s\ 2248}#
#{mod\ 2249}#
#{req\ 2250}#
#{rest\ 2251}#
#{meta\ 2252}#
#{body\ 2253}#)
(begin
(let ((#{ids\ 2265}#
(if #{rest\ 2251}#
(append #{req\ 2250}# (list #{rest\ 2251}#))
#{req\ 2250}#)))
(begin
(let ((#{vars\ 2267}#
(map #{gen-var\ 489}# #{ids\ 2265}#)))
(begin
(let ((#{labels\ 2269}#
(#{gen-labels\ 394}# #{ids\ 2265}#)))
(#{build-simple-lambda\ 323}#
#{s\ 2248}#
(map syntax->datum #{req\ 2250}#)
(if #{rest\ 2251}#
(syntax->datum #{rest\ 2251}#)
#f)
#{vars\ 2267}#
#{meta\ 2252}#
(#{chi-body\ 469}#
#{body\ 2253}#
(#{source-wrap\ 447}#
#{e\ 2245}#
#{w\ 2247}#
#{s\ 2248}#
#{mod\ 2249}#)
(#{extend-var-env\ 369}#
#{labels\ 2269}#
#{vars\ 2267}#
#{r\ 2246}#)
(#{make-binding-wrap\ 423}#
#{ids\ 2265}#
#{labels\ 2269}#
#{w\ 2247}#)
#{mod\ 2249}#))))))))))
(#{lambda*-formals\ 483}#
(lambda (#{orig-args\ 2272}#)
(letrec*
((#{req\ 2275}#
(lambda (#{args\ 2284}# #{rreq\ 2285}#)
(let ((#{tmp\ 2288}# #{args\ 2284}#))
(let ((#{tmp\ 2289}# ($sc-dispatch #{tmp\ 2288}# '())))
(if #{tmp\ 2289}#
(@apply
(lambda ()
(#{check\ 2283}#
(reverse #{rreq\ 2285}#)
'()
#f
'()))
#{tmp\ 2289}#)
(let ((#{tmp\ 2290}#
($sc-dispatch #{tmp\ 2288}# '(any . any))))
(if (if #{tmp\ 2290}#
(@apply
(lambda (#{a\ 2293}# #{b\ 2294}#)
(#{id?\ 379}# #{a\ 2293}#))
#{tmp\ 2290}#)
#f)
(@apply
(lambda (#{a\ 2297}# #{b\ 2298}#)
(#{req\ 2275}#
#{b\ 2298}#
(cons #{a\ 2297}# #{rreq\ 2285}#)))
#{tmp\ 2290}#)
(let ((#{tmp\ 2299}#
($sc-dispatch
#{tmp\ 2288}#
'(any . any))))
(if (if #{tmp\ 2299}#
(@apply
(lambda (#{a\ 2302}# #{b\ 2303}#)
(eq? (syntax->datum #{a\ 2302}#)
#:optional))
#{tmp\ 2299}#)
#f)
(@apply
(lambda (#{a\ 2306}# #{b\ 2307}#)
(#{opt\ 2277}#
#{b\ 2307}#
(reverse #{rreq\ 2285}#)
'()))
#{tmp\ 2299}#)
(let ((#{tmp\ 2308}#
($sc-dispatch
#{tmp\ 2288}#
'(any . any))))
(if (if #{tmp\ 2308}#
(@apply
(lambda (#{a\ 2311}# #{b\ 2312}#)
(eq? (syntax->datum #{a\ 2311}#)
#:key))
#{tmp\ 2308}#)
#f)
(@apply
(lambda (#{a\ 2315}# #{b\ 2316}#)
(#{key\ 2279}#
#{b\ 2316}#
(reverse #{rreq\ 2285}#)
'()
'()))
#{tmp\ 2308}#)
(let ((#{tmp\ 2317}#
($sc-dispatch
#{tmp\ 2288}#
'(any any))))
(if (if #{tmp\ 2317}#
(@apply
(lambda (#{a\ 2320}#
#{b\ 2321}#)
(eq? (syntax->datum
#{a\ 2320}#)
#:rest))
#{tmp\ 2317}#)
#f)
(@apply
(lambda (#{a\ 2324}# #{b\ 2325}#)
(#{rest\ 2281}#
#{b\ 2325}#
(reverse #{rreq\ 2285}#)
'()
'()))
#{tmp\ 2317}#)
(let ((#{tmp\ 2326}#
(list #{tmp\ 2288}#)))
(if (if #{tmp\ 2326}#
(@apply
(lambda (#{r\ 2328}#)
(#{id?\ 379}#
#{r\ 2328}#))
#{tmp\ 2326}#)
#f)
(@apply
(lambda (#{r\ 2330}#)
(#{rest\ 2281}#
#{r\ 2330}#
(reverse #{rreq\ 2285}#)
'()
'()))
#{tmp\ 2326}#)
(let ((#{else\ 2332}#
#{tmp\ 2288}#))
(syntax-violation
'lambda*
"invalid argument list"
#{orig-args\ 2272}#
#{args\ 2284}#)))))))))))))))))
(#{opt\ 2277}#
(lambda (#{args\ 2333}# #{req\ 2334}# #{ropt\ 2335}#)
(let ((#{tmp\ 2339}# #{args\ 2333}#))
(let ((#{tmp\ 2340}# ($sc-dispatch #{tmp\ 2339}# '())))
(if #{tmp\ 2340}#
(@apply
(lambda ()
(#{check\ 2283}#
#{req\ 2334}#
(reverse #{ropt\ 2335}#)
#f
'()))
#{tmp\ 2340}#)
(let ((#{tmp\ 2341}#
($sc-dispatch #{tmp\ 2339}# '(any . any))))
(if (if #{tmp\ 2341}#
(@apply
(lambda (#{a\ 2344}# #{b\ 2345}#)
(#{id?\ 379}# #{a\ 2344}#))
#{tmp\ 2341}#)
#f)
(@apply
(lambda (#{a\ 2348}# #{b\ 2349}#)
(#{opt\ 2277}#
#{b\ 2349}#
#{req\ 2334}#
(cons (cons #{a\ 2348}#
'(#(syntax-object
#f
((top)
#(ribcage
#(a b)
#((top) (top))
#("i2346" "i2347"))
#(ribcage () () ())
#(ribcage
#(args req ropt)
#((top) (top) (top))
#("i2336"
"i2337"
"i2338"))
#(ribcage
(check rest key opt req)
((top)
(top)
(top)
(top)
(top))
("i2282"
"i2280"
"i2278"
"i2276"
"i2274"))
#(ribcage
#(orig-args)
#((top))
#("i2273"))
#(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
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
maybe-name-value!
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))
("i490"
"i488"
"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"
"i419"
"i418"
"i416"
"i415"
"i414"
"i413"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i393"
"i391"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i381"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i365"
"i364"
"i363"
"i362"
"i361"
"i359"
"i358"
"i356"
"i354"
"i352"
"i350"
"i348"
"i346"
"i344"
"i342"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i324"
"i322"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i252"
"i250"
"i248"
"i246"
"i244"
"i242"
"i240"
"i238"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top)
(top)
(top)
(top))
("i40"
"i39"
"i38"
"i36")))
(hygiene guile))))
#{ropt\ 2335}#)))
#{tmp\ 2341}#)
(let ((#{tmp\ 2350}#
($sc-dispatch
#{tmp\ 2339}#
'((any any) . any))))
(if (if #{tmp\ 2350}#
(@apply
(lambda (#{a\ 2354}#
#{init\ 2355}#
#{b\ 2356}#)
(#{id?\ 379}# #{a\ 2354}#))
#{tmp\ 2350}#)
#f)
(@apply
(lambda (#{a\ 2360}#
#{init\ 2361}#
#{b\ 2362}#)
(#{opt\ 2277}#
#{b\ 2362}#
#{req\ 2334}#
(cons (list #{a\ 2360}# #{init\ 2361}#)
#{ropt\ 2335}#)))
#{tmp\ 2350}#)
(let ((#{tmp\ 2363}#
($sc-dispatch
#{tmp\ 2339}#
'(any . any))))
(if (if #{tmp\ 2363}#
(@apply
(lambda (#{a\ 2366}# #{b\ 2367}#)
(eq? (syntax->datum #{a\ 2366}#)
#:key))
#{tmp\ 2363}#)
#f)
(@apply
(lambda (#{a\ 2370}# #{b\ 2371}#)
(#{key\ 2279}#
#{b\ 2371}#
#{req\ 2334}#
(reverse #{ropt\ 2335}#)
'()))
#{tmp\ 2363}#)
(let ((#{tmp\ 2372}#
($sc-dispatch
#{tmp\ 2339}#
'(any any))))
(if (if #{tmp\ 2372}#
(@apply
(lambda (#{a\ 2375}#
#{b\ 2376}#)
(eq? (syntax->datum
#{a\ 2375}#)
#:rest))
#{tmp\ 2372}#)
#f)
(@apply
(lambda (#{a\ 2379}# #{b\ 2380}#)
(#{rest\ 2281}#
#{b\ 2380}#
#{req\ 2334}#
(reverse #{ropt\ 2335}#)
'()))
#{tmp\ 2372}#)
(let ((#{tmp\ 2381}#
(list #{tmp\ 2339}#)))
(if (if #{tmp\ 2381}#
(@apply
(lambda (#{r\ 2383}#)
(#{id?\ 379}#
#{r\ 2383}#))
#{tmp\ 2381}#)
#f)
(@apply
(lambda (#{r\ 2385}#)
(#{rest\ 2281}#
#{r\ 2385}#
#{req\ 2334}#
(reverse #{ropt\ 2335}#)
'()))
#{tmp\ 2381}#)
(let ((#{else\ 2387}#
#{tmp\ 2339}#))
(syntax-violation
'lambda*
"invalid optional argument list"
#{orig-args\ 2272}#
#{args\ 2333}#)))))))))))))))))
(#{key\ 2279}#
(lambda (#{args\ 2388}#
#{req\ 2389}#
#{opt\ 2390}#
#{rkey\ 2391}#)
(let ((#{tmp\ 2396}# #{args\ 2388}#))
(let ((#{tmp\ 2397}# ($sc-dispatch #{tmp\ 2396}# '())))
(if #{tmp\ 2397}#
(@apply
(lambda ()
(#{check\ 2283}#
#{req\ 2389}#
#{opt\ 2390}#
#f
(cons #f (reverse #{rkey\ 2391}#))))
#{tmp\ 2397}#)
(let ((#{tmp\ 2398}#
($sc-dispatch #{tmp\ 2396}# '(any . any))))
(if (if #{tmp\ 2398}#
(@apply
(lambda (#{a\ 2401}# #{b\ 2402}#)
(#{id?\ 379}# #{a\ 2401}#))
#{tmp\ 2398}#)
#f)
(@apply
(lambda (#{a\ 2405}# #{b\ 2406}#)
(let ((#{tmp\ 2408}#
(symbol->keyword
(syntax->datum #{a\ 2405}#))))
(let ((#{k\ 2410}# #{tmp\ 2408}#))
(#{key\ 2279}#
#{b\ 2406}#
#{req\ 2389}#
#{opt\ 2390}#
(cons (cons #{k\ 2410}#
(cons #{a\ 2405}#
'(#(syntax-object
#f
((top)
#(ribcage
#(k)
#((top))
#("i2409"))
#(ribcage
#(a b)
#((top) (top))
#("i2403"
"i2404"))
#(ribcage
()
()
())
#(ribcage
#(args
req
opt
rkey)
#((top)
(top)
(top)
(top))
#("i2392"
"i2393"
"i2394"
"i2395"))
#(ribcage
(check rest
key
opt
req)
((top)
(top)
(top)
(top)
(top))
("i2282"
"i2280"
"i2278"
"i2276"
"i2274"))
#(ribcage
#(orig-args)
#((top))
#("i2273"))
#(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
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
maybe-name-value!
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))
("i490"
"i488"
"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"
"i419"
"i418"
"i416"
"i415"
"i414"
"i413"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i393"
"i391"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i381"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i365"
"i364"
"i363"
"i362"
"i361"
"i359"
"i358"
"i356"
"i354"
"i352"
"i350"
"i348"
"i346"
"i344"
"i342"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i324"
"i322"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i252"
"i250"
"i248"
"i246"
"i244"
"i242"
"i240"
"i238"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top)
(top)
(top)
(top))
("i40"
"i39"
"i38"
"i36")))
(hygiene
guile)))))
#{rkey\ 2391}#)))))
#{tmp\ 2398}#)
(let ((#{tmp\ 2411}#
($sc-dispatch
#{tmp\ 2396}#
'((any any) . any))))
(if (if #{tmp\ 2411}#
(@apply
(lambda (#{a\ 2415}#
#{init\ 2416}#
#{b\ 2417}#)
(#{id?\ 379}# #{a\ 2415}#))
#{tmp\ 2411}#)
#f)
(@apply
(lambda (#{a\ 2421}#
#{init\ 2422}#
#{b\ 2423}#)
(let ((#{tmp\ 2425}#
(symbol->keyword
(syntax->datum #{a\ 2421}#))))
(let ((#{k\ 2427}# #{tmp\ 2425}#))
(#{key\ 2279}#
#{b\ 2423}#
#{req\ 2389}#
#{opt\ 2390}#
(cons (list #{k\ 2427}#
#{a\ 2421}#
#{init\ 2422}#)
#{rkey\ 2391}#)))))
#{tmp\ 2411}#)
(let ((#{tmp\ 2428}#
($sc-dispatch
#{tmp\ 2396}#
'((any any any) . any))))
(if (if #{tmp\ 2428}#
(@apply
(lambda (#{a\ 2433}#
#{init\ 2434}#
#{k\ 2435}#
#{b\ 2436}#)
(if (#{id?\ 379}# #{a\ 2433}#)
(keyword?
(syntax->datum #{k\ 2435}#))
#f))
#{tmp\ 2428}#)
#f)
(@apply
(lambda (#{a\ 2443}#
#{init\ 2444}#
#{k\ 2445}#
#{b\ 2446}#)
(#{key\ 2279}#
#{b\ 2446}#
#{req\ 2389}#
#{opt\ 2390}#
(cons (list #{k\ 2445}#
#{a\ 2443}#
#{init\ 2444}#)
#{rkey\ 2391}#)))
#{tmp\ 2428}#)
(let ((#{tmp\ 2447}#
($sc-dispatch
#{tmp\ 2396}#
'(any))))
(if (if #{tmp\ 2447}#
(@apply
(lambda (#{aok\ 2449}#)
(eq? (syntax->datum
#{aok\ 2449}#)
#:allow-other-keys))
#{tmp\ 2447}#)
#f)
(@apply
(lambda (#{aok\ 2451}#)
(#{check\ 2283}#
#{req\ 2389}#
#{opt\ 2390}#
#f
(cons #t
(reverse
#{rkey\ 2391}#))))
#{tmp\ 2447}#)
(let ((#{tmp\ 2452}#
($sc-dispatch
#{tmp\ 2396}#
'(any any any))))
(if (if #{tmp\ 2452}#
(@apply
(lambda (#{aok\ 2456}#
#{a\ 2457}#
#{b\ 2458}#)
(if (eq? (syntax->datum
#{aok\ 2456}#)
#:allow-other-keys)
(eq? (syntax->datum
#{a\ 2457}#)
#:rest)
#f))
#{tmp\ 2452}#)
#f)
(@apply
(lambda (#{aok\ 2464}#
#{a\ 2465}#
#{b\ 2466}#)
(#{rest\ 2281}#
#{b\ 2466}#
#{req\ 2389}#
#{opt\ 2390}#
(cons #t
(reverse
#{rkey\ 2391}#))))
#{tmp\ 2452}#)
(let ((#{tmp\ 2467}#
($sc-dispatch
#{tmp\ 2396}#
'(any . any))))
(if (if #{tmp\ 2467}#
(@apply
(lambda (#{aok\ 2470}#
#{r\ 2471}#)
(if (eq? (syntax->datum
#{aok\ 2470}#)
#:allow-other-keys)
(#{id?\ 379}#
#{r\ 2471}#)
#f))
#{tmp\ 2467}#)
#f)
(@apply
(lambda (#{aok\ 2476}#
#{r\ 2477}#)
(#{rest\ 2281}#
#{r\ 2477}#
#{req\ 2389}#
#{opt\ 2390}#
(cons #t
(reverse
#{rkey\ 2391}#))))
#{tmp\ 2467}#)
(let ((#{tmp\ 2478}#
($sc-dispatch
#{tmp\ 2396}#
'(any any))))
(if (if #{tmp\ 2478}#
(@apply
(lambda (#{a\ 2481}#
#{b\ 2482}#)
(eq? (syntax->datum
#{a\ 2481}#)
#:rest))
#{tmp\ 2478}#)
#f)
(@apply
(lambda (#{a\ 2485}#
#{b\ 2486}#)
(#{rest\ 2281}#
#{b\ 2486}#
#{req\ 2389}#
#{opt\ 2390}#
(cons #f
(reverse
#{rkey\ 2391}#))))
#{tmp\ 2478}#)
(let ((#{tmp\ 2487}#
(list #{tmp\ 2396}#)))
(if (if #{tmp\ 2487}#
(@apply
(lambda (#{r\ 2489}#)
(#{id?\ 379}#
#{r\ 2489}#))
#{tmp\ 2487}#)
#f)
(@apply
(lambda (#{r\ 2491}#)
(#{rest\ 2281}#
#{r\ 2491}#
#{req\ 2389}#
#{opt\ 2390}#
(cons #f
(reverse
#{rkey\ 2391}#))))
#{tmp\ 2487}#)
(let ((#{else\ 2493}#
#{tmp\ 2396}#))
(syntax-violation
'lambda*
"invalid keyword argument list"
#{orig-args\ 2272}#
#{args\ 2388}#)))))))))))))))))))))))
(#{rest\ 2281}#
(lambda (#{args\ 2494}#
#{req\ 2495}#
#{opt\ 2496}#
#{kw\ 2497}#)
(let ((#{tmp\ 2502}# #{args\ 2494}#))
(let ((#{tmp\ 2503}# (list #{tmp\ 2502}#)))
(if (if #{tmp\ 2503}#
(@apply
(lambda (#{r\ 2505}#)
(#{id?\ 379}# #{r\ 2505}#))
#{tmp\ 2503}#)
#f)
(@apply
(lambda (#{r\ 2507}#)
(#{check\ 2283}#
#{req\ 2495}#
#{opt\ 2496}#
#{r\ 2507}#
#{kw\ 2497}#))
#{tmp\ 2503}#)
(let ((#{else\ 2509}# #{tmp\ 2502}#))
(syntax-violation
'lambda*
"invalid rest argument"
#{orig-args\ 2272}#
#{args\ 2494}#)))))))
(#{check\ 2283}#
(lambda (#{req\ 2510}#
#{opt\ 2511}#
#{rest\ 2512}#
#{kw\ 2513}#)
(if (#{distinct-bound-ids?\ 441}#
(append
#{req\ 2510}#
(map car #{opt\ 2511}#)
(if #{rest\ 2512}# (list #{rest\ 2512}#) '())
(if (pair? #{kw\ 2513}#)
(map cadr (cdr #{kw\ 2513}#))
'())))
(values
#{req\ 2510}#
#{opt\ 2511}#
#{rest\ 2512}#
#{kw\ 2513}#)
(syntax-violation
'lambda*
"duplicate identifier in argument list"
#{orig-args\ 2272}#)))))
(begin (#{req\ 2275}# #{orig-args\ 2272}# '())))))
(#{chi-lambda-case\ 485}#
(lambda (#{e\ 2521}#
#{r\ 2522}#
#{w\ 2523}#
#{s\ 2524}#
#{mod\ 2525}#
#{get-formals\ 2526}#
#{clauses\ 2527}#)
(letrec*
((#{expand-req\ 2536}#
(lambda (#{req\ 2543}#
#{opt\ 2544}#
#{rest\ 2545}#
#{kw\ 2546}#
#{body\ 2547}#)
(begin
(let ((#{vars\ 2555}#
(map #{gen-var\ 489}# #{req\ 2543}#))
(#{labels\ 2556}#
(#{gen-labels\ 394}# #{req\ 2543}#)))
(begin
(let ((#{r*\ 2559}#
(#{extend-var-env\ 369}#
#{labels\ 2556}#
#{vars\ 2555}#
#{r\ 2522}#))
(#{w*\ 2560}#
(#{make-binding-wrap\ 423}#
#{req\ 2543}#
#{labels\ 2556}#
#{w\ 2523}#)))
(#{expand-opt\ 2538}#
(map syntax->datum #{req\ 2543}#)
#{opt\ 2544}#
#{rest\ 2545}#
#{kw\ 2546}#
#{body\ 2547}#
(reverse #{vars\ 2555}#)
#{r*\ 2559}#
#{w*\ 2560}#
'()
'())))))))
(#{expand-opt\ 2538}#
(lambda (#{req\ 2561}#
#{opt\ 2562}#
#{rest\ 2563}#
#{kw\ 2564}#
#{body\ 2565}#
#{vars\ 2566}#
#{r*\ 2567}#
#{w*\ 2568}#
#{out\ 2569}#
#{inits\ 2570}#)
(if (pair? #{opt\ 2562}#)
(let ((#{tmp\ 2583}# (car #{opt\ 2562}#)))
(let ((#{tmp\ 2584}#
($sc-dispatch #{tmp\ 2583}# '(any any))))
(if #{tmp\ 2584}#
(@apply
(lambda (#{id\ 2587}# #{i\ 2588}#)
(begin
(let ((#{v\ 2591}#
(#{gen-var\ 489}# #{id\ 2587}#)))
(begin
(let ((#{l\ 2593}#
(#{gen-labels\ 394}#
(list #{v\ 2591}#))))
(begin
(let ((#{r**\ 2595}#
(#{extend-var-env\ 369}#
#{l\ 2593}#
(list #{v\ 2591}#)
#{r*\ 2567}#)))
(begin
(let ((#{w**\ 2597}#
(#{make-binding-wrap\ 423}#
(list #{id\ 2587}#)
#{l\ 2593}#
#{w*\ 2568}#)))
(#{expand-opt\ 2538}#
#{req\ 2561}#
(cdr #{opt\ 2562}#)
#{rest\ 2563}#
#{kw\ 2564}#
#{body\ 2565}#
(cons #{v\ 2591}#
#{vars\ 2566}#)
#{r**\ 2595}#
#{w**\ 2597}#
(cons (syntax->datum
#{id\ 2587}#)
#{out\ 2569}#)
(cons (#{chi\ 461}#
#{i\ 2588}#
#{r*\ 2567}#
#{w*\ 2568}#
#{mod\ 2525}#)
#{inits\ 2570}#)))))))))))
#{tmp\ 2584}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 2583}#))))
(if #{rest\ 2563}#
(begin
(let ((#{v\ 2602}#
(#{gen-var\ 489}# #{rest\ 2563}#)))
(begin
(let ((#{l\ 2604}#
(#{gen-labels\ 394}#
(list #{v\ 2602}#))))
(begin
(let ((#{r*\ 2606}#
(#{extend-var-env\ 369}#
#{l\ 2604}#
(list #{v\ 2602}#)
#{r*\ 2567}#)))
(begin
(let ((#{w*\ 2608}#
(#{make-binding-wrap\ 423}#
(list #{rest\ 2563}#)
#{l\ 2604}#
#{w*\ 2568}#)))
(#{expand-kw\ 2540}#
#{req\ 2561}#
(if (pair? #{out\ 2569}#)
(reverse #{out\ 2569}#)
#f)
(syntax->datum #{rest\ 2563}#)
(if (pair? #{kw\ 2564}#)
(cdr #{kw\ 2564}#)
#{kw\ 2564}#)
#{body\ 2565}#
(cons #{v\ 2602}# #{vars\ 2566}#)
#{r*\ 2606}#
#{w*\ 2608}#
(if (pair? #{kw\ 2564}#)
(car #{kw\ 2564}#)
#f)
'()
#{inits\ 2570}#)))))))))
(#{expand-kw\ 2540}#
#{req\ 2561}#
(if (pair? #{out\ 2569}#)
(reverse #{out\ 2569}#)
#f)
#f
(if (pair? #{kw\ 2564}#)
(cdr #{kw\ 2564}#)
#{kw\ 2564}#)
#{body\ 2565}#
#{vars\ 2566}#
#{r*\ 2567}#
#{w*\ 2568}#
(if (pair? #{kw\ 2564}#) (car #{kw\ 2564}#) #f)
'()
#{inits\ 2570}#)))))
(#{expand-kw\ 2540}#
(lambda (#{req\ 2610}#
#{opt\ 2611}#
#{rest\ 2612}#
#{kw\ 2613}#
#{body\ 2614}#
#{vars\ 2615}#
#{r*\ 2616}#
#{w*\ 2617}#
#{aok\ 2618}#
#{out\ 2619}#
#{inits\ 2620}#)
(if (pair? #{kw\ 2613}#)
(let ((#{tmp\ 2634}# (car #{kw\ 2613}#)))
(let ((#{tmp\ 2635}#
($sc-dispatch #{tmp\ 2634}# '(any any any))))
(if #{tmp\ 2635}#
(@apply
(lambda (#{k\ 2639}# #{id\ 2640}# #{i\ 2641}#)
(begin
(let ((#{v\ 2644}#
(#{gen-var\ 489}# #{id\ 2640}#)))
(begin
(let ((#{l\ 2646}#
(#{gen-labels\ 394}#
(list #{v\ 2644}#))))
(begin
(let ((#{r**\ 2648}#
(#{extend-var-env\ 369}#
#{l\ 2646}#
(list #{v\ 2644}#)
#{r*\ 2616}#)))
(begin
(let ((#{w**\ 2650}#
(#{make-binding-wrap\ 423}#
(list #{id\ 2640}#)
#{l\ 2646}#
#{w*\ 2617}#)))
(#{expand-kw\ 2540}#
#{req\ 2610}#
#{opt\ 2611}#
#{rest\ 2612}#
(cdr #{kw\ 2613}#)
#{body\ 2614}#
(cons #{v\ 2644}#
#{vars\ 2615}#)
#{r**\ 2648}#
#{w**\ 2650}#
#{aok\ 2618}#
(cons (list (syntax->datum
#{k\ 2639}#)
(syntax->datum
#{id\ 2640}#)
#{v\ 2644}#)
#{out\ 2619}#)
(cons (#{chi\ 461}#
#{i\ 2641}#
#{r*\ 2616}#
#{w*\ 2617}#
#{mod\ 2525}#)
#{inits\ 2620}#)))))))))))
#{tmp\ 2635}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 2634}#))))
(#{expand-body\ 2542}#
#{req\ 2610}#
#{opt\ 2611}#
#{rest\ 2612}#
(if (begin
(let ((#{t\ 2654}# #{aok\ 2618}#))
(if #{t\ 2654}#
#{t\ 2654}#
(pair? #{out\ 2619}#))))
(cons #{aok\ 2618}# (reverse #{out\ 2619}#))
#f)
#{body\ 2614}#
(reverse #{vars\ 2615}#)
#{r*\ 2616}#
#{w*\ 2617}#
(reverse #{inits\ 2620}#)
'()))))
(#{expand-body\ 2542}#
(lambda (#{req\ 2656}#
#{opt\ 2657}#
#{rest\ 2658}#
#{kw\ 2659}#
#{body\ 2660}#
#{vars\ 2661}#
#{r*\ 2662}#
#{w*\ 2663}#
#{inits\ 2664}#
#{meta\ 2665}#)
(let ((#{tmp\ 2676}# #{body\ 2660}#))
(let ((#{tmp\ 2677}#
($sc-dispatch
#{tmp\ 2676}#
'(any any . each-any))))
(if (if #{tmp\ 2677}#
(@apply
(lambda (#{docstring\ 2681}#
#{e1\ 2682}#
#{e2\ 2683}#)
(string?
(syntax->datum #{docstring\ 2681}#)))
#{tmp\ 2677}#)
#f)
(@apply
(lambda (#{docstring\ 2687}#
#{e1\ 2688}#
#{e2\ 2689}#)
(#{expand-body\ 2542}#
#{req\ 2656}#
#{opt\ 2657}#
#{rest\ 2658}#
#{kw\ 2659}#
(cons #{e1\ 2688}# #{e2\ 2689}#)
#{vars\ 2661}#
#{r*\ 2662}#
#{w*\ 2663}#
#{inits\ 2664}#
(append
#{meta\ 2665}#
(list (cons 'documentation
(syntax->datum
#{docstring\ 2687}#))))))
#{tmp\ 2677}#)
(let ((#{tmp\ 2692}#
($sc-dispatch
#{tmp\ 2676}#
'(#(vector #(each (any . any)))
any
.
each-any))))
(if #{tmp\ 2692}#
(@apply
(lambda (#{k\ 2697}#
#{v\ 2698}#
#{e1\ 2699}#
#{e2\ 2700}#)
(#{expand-body\ 2542}#
#{req\ 2656}#
#{opt\ 2657}#
#{rest\ 2658}#
#{kw\ 2659}#
(cons #{e1\ 2699}# #{e2\ 2700}#)
#{vars\ 2661}#
#{r*\ 2662}#
#{w*\ 2663}#
#{inits\ 2664}#
(append
#{meta\ 2665}#
(syntax->datum
(map cons #{k\ 2697}# #{v\ 2698}#)))))
#{tmp\ 2692}#)
(let ((#{tmp\ 2704}#
($sc-dispatch
#{tmp\ 2676}#
'(any . each-any))))
(if #{tmp\ 2704}#
(@apply
(lambda (#{e1\ 2707}# #{e2\ 2708}#)
(values
#{meta\ 2665}#
#{req\ 2656}#
#{opt\ 2657}#
#{rest\ 2658}#
#{kw\ 2659}#
#{inits\ 2664}#
#{vars\ 2661}#
(#{chi-body\ 469}#
(cons #{e1\ 2707}# #{e2\ 2708}#)
(#{source-wrap\ 447}#
#{e\ 2521}#
#{w\ 2523}#
#{s\ 2524}#
#{mod\ 2525}#)
#{r*\ 2662}#
#{w*\ 2663}#
#{mod\ 2525}#)))
#{tmp\ 2704}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 2676}#)))))))))))
(begin
(let ((#{tmp\ 2710}# #{clauses\ 2527}#))
(let ((#{tmp\ 2711}# ($sc-dispatch #{tmp\ 2710}# '())))
(if #{tmp\ 2711}#
(@apply
(lambda () (values '() #f))
#{tmp\ 2711}#)
(let ((#{tmp\ 2712}#
($sc-dispatch
#{tmp\ 2710}#
'((any any . each-any)
.
#(each (any any . each-any))))))
(if #{tmp\ 2712}#
(@apply
(lambda (#{args\ 2719}#
#{e1\ 2720}#
#{e2\ 2721}#
#{args*\ 2722}#
#{e1*\ 2723}#
#{e2*\ 2724}#)
(call-with-values
(lambda ()
(#{get-formals\ 2526}# #{args\ 2719}#))
(lambda (#{req\ 2725}#
#{opt\ 2726}#
#{rest\ 2727}#
#{kw\ 2728}#)
(call-with-values
(lambda ()
(#{expand-req\ 2536}#
#{req\ 2725}#
#{opt\ 2726}#
#{rest\ 2727}#
#{kw\ 2728}#
(cons #{e1\ 2720}# #{e2\ 2721}#)))
(lambda (#{meta\ 2734}#
#{req\ 2735}#
#{opt\ 2736}#
#{rest\ 2737}#
#{kw\ 2738}#
#{inits\ 2739}#
#{vars\ 2740}#
#{body\ 2741}#)
(call-with-values
(lambda ()
(#{chi-lambda-case\ 485}#
#{e\ 2521}#
#{r\ 2522}#
#{w\ 2523}#
#{s\ 2524}#
#{mod\ 2525}#
#{get-formals\ 2526}#
(map (lambda (#{tmp\ 2752}#
#{tmp\ 2751}#
#{tmp\ 2750}#)
(cons #{tmp\ 2750}#
(cons #{tmp\ 2751}#
#{tmp\ 2752}#)))
#{e2*\ 2724}#
#{e1*\ 2723}#
#{args*\ 2722}#)))
(lambda (#{meta*\ 2754}#
#{else*\ 2755}#)
(values
(append
#{meta\ 2734}#
#{meta*\ 2754}#)
(#{build-lambda-case\ 327}#
#{s\ 2524}#
#{req\ 2735}#
#{opt\ 2736}#
#{rest\ 2737}#
#{kw\ 2738}#
#{inits\ 2739}#
#{vars\ 2740}#
#{body\ 2741}#
#{else*\ 2755}#)))))))))
#{tmp\ 2712}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 2710}#))))))))))
(#{strip\ 487}#
(lambda (#{x\ 2758}# #{w\ 2759}#)
(if (memq 'top (car #{w\ 2759}#))
#{x\ 2758}#
(letrec*
((#{f\ 2766}#
(lambda (#{x\ 2767}#)
(if (#{syntax-object?\ 345}# #{x\ 2767}#)
(#{strip\ 487}#
(#{syntax-object-expression\ 347}# #{x\ 2767}#)
(#{syntax-object-wrap\ 349}# #{x\ 2767}#))
(if (pair? #{x\ 2767}#)
(begin
(let ((#{a\ 2774}# (#{f\ 2766}# (car #{x\ 2767}#)))
(#{d\ 2775}#
(#{f\ 2766}# (cdr #{x\ 2767}#))))
(if (if (eq? #{a\ 2774}# (car #{x\ 2767}#))
(eq? #{d\ 2775}# (cdr #{x\ 2767}#))
#f)
#{x\ 2767}#
(cons #{a\ 2774}# #{d\ 2775}#))))
(if (vector? #{x\ 2767}#)
(begin
(let ((#{old\ 2781}# (vector->list #{x\ 2767}#)))
(begin
(let ((#{new\ 2783}#
(map #{f\ 2766}# #{old\ 2781}#)))
(if (#{and-map*\ 37}#
eq?
#{old\ 2781}#
#{new\ 2783}#)
#{x\ 2767}#
(list->vector #{new\ 2783}#))))))
#{x\ 2767}#))))))
(begin (#{f\ 2766}# #{x\ 2758}#))))))
(#{gen-var\ 489}#
(lambda (#{id\ 2785}#)
(begin
(let ((#{id\ 2788}#
(if (#{syntax-object?\ 345}# #{id\ 2785}#)
(#{syntax-object-expression\ 347}# #{id\ 2785}#)
#{id\ 2785}#)))
(gensym
(string-append (symbol->string #{id\ 2788}#) " "))))))
(#{lambda-var-list\ 491}#
(lambda (#{vars\ 2790}#)
(letrec*
((#{lvl\ 2796}#
(lambda (#{vars\ 2797}# #{ls\ 2798}# #{w\ 2799}#)
(if (pair? #{vars\ 2797}#)
(#{lvl\ 2796}#
(cdr #{vars\ 2797}#)
(cons (#{wrap\ 445}#
(car #{vars\ 2797}#)
#{w\ 2799}#
#f)
#{ls\ 2798}#)
#{w\ 2799}#)
(if (#{id?\ 379}# #{vars\ 2797}#)
(cons (#{wrap\ 445}# #{vars\ 2797}# #{w\ 2799}# #f)
#{ls\ 2798}#)
(if (null? #{vars\ 2797}#)
#{ls\ 2798}#
(if (#{syntax-object?\ 345}# #{vars\ 2797}#)
(#{lvl\ 2796}#
(#{syntax-object-expression\ 347}#
#{vars\ 2797}#)
#{ls\ 2798}#
(#{join-wraps\ 427}#
#{w\ 2799}#
(#{syntax-object-wrap\ 349}# #{vars\ 2797}#)))
(cons #{vars\ 2797}# #{ls\ 2798}#))))))))
(begin (#{lvl\ 2796}# #{vars\ 2790}# '() '(())))))))
(begin
(set! #{make-primitive-ref\ 243}#
(lambda (#{src\ 757}# #{name\ 758}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 2)
#{src\ 757}#
#{name\ 758}#)))
(set! #{fx+\ 282}# +)
(set! #{fx-\ 284}# -)
(set! #{fx=\ 286}# =)
(set! #{fx<\ 288}# <)
(set! #{set-syntax-object-expression!\ 353}#
(lambda (#{x\ 1135}# #{update\ 1136}#)
(vector-set! #{x\ 1135}# 1 #{update\ 1136}#)))
(set! #{set-syntax-object-wrap!\ 355}#
(lambda (#{x\ 1139}# #{update\ 1140}#)
(vector-set! #{x\ 1139}# 2 #{update\ 1140}#)))
(set! #{set-syntax-object-module!\ 357}#
(lambda (#{x\ 1143}# #{update\ 1144}#)
(vector-set! #{x\ 1143}# 3 #{update\ 1144}#)))
(set! #{ribcage?\ 399}#
(lambda (#{x\ 1224}#)
(if (vector? #{x\ 1224}#)
(if (= (vector-length #{x\ 1224}#) 4)
(eq? (vector-ref #{x\ 1224}# 0) 'ribcage)
#f)
#f)))
(begin
(#{global-extend\ 375}#
'local-syntax
'letrec-syntax
#t)
(#{global-extend\ 375}#
'local-syntax
'let-syntax
#f)
(#{global-extend\ 375}#
'core
'fluid-let-syntax
(lambda (#{e\ 2810}#
#{r\ 2811}#
#{w\ 2812}#
#{s\ 2813}#
#{mod\ 2814}#)
(let ((#{tmp\ 2820}# #{e\ 2810}#))
(let ((#{tmp\ 2821}#
($sc-dispatch
#{tmp\ 2820}#
'(_ #(each (any any)) any . each-any))))
(if (if #{tmp\ 2821}#
(@apply
(lambda (#{var\ 2826}#
#{val\ 2827}#
#{e1\ 2828}#
#{e2\ 2829}#)
(#{valid-bound-ids?\ 439}# #{var\ 2826}#))
#{tmp\ 2821}#)
#f)
(@apply
(lambda (#{var\ 2835}#
#{val\ 2836}#
#{e1\ 2837}#
#{e2\ 2838}#)
(begin
(let ((#{names\ 2840}#
(map (lambda (#{x\ 2841}#)
(#{id-var-name\ 433}#
#{x\ 2841}#
#{w\ 2812}#))
#{var\ 2835}#)))
(begin
(for-each
(lambda (#{id\ 2844}# #{n\ 2845}#)
(begin
(let ((#{atom-key\ 2850}#
(car (#{lookup\ 373}#
#{n\ 2845}#
#{r\ 2811}#
#{mod\ 2814}#))))
(if (eqv? #{atom-key\ 2850}#
'displaced-lexical)
(syntax-violation
'fluid-let-syntax
"identifier out of context"
#{e\ 2810}#
(#{source-wrap\ 447}#
#{id\ 2844}#
#{w\ 2812}#
#{s\ 2813}#
#{mod\ 2814}#))))))
#{var\ 2835}#
#{names\ 2840}#)
(#{chi-body\ 469}#
(cons #{e1\ 2837}# #{e2\ 2838}#)
(#{source-wrap\ 447}#
#{e\ 2810}#
#{w\ 2812}#
#{s\ 2813}#
#{mod\ 2814}#)
(#{extend-env\ 367}#
#{names\ 2840}#
(begin
(let ((#{trans-r\ 2856}#
(#{macros-only-env\ 371}#
#{r\ 2811}#)))
(map (lambda (#{x\ 2857}#)
(cons 'macro
(#{eval-local-transformer\ 473}#
(#{chi\ 461}#
#{x\ 2857}#
#{trans-r\ 2856}#
#{w\ 2812}#
#{mod\ 2814}#)
#{mod\ 2814}#)))
#{val\ 2836}#)))
#{r\ 2811}#)
#{w\ 2812}#
#{mod\ 2814}#)))))
#{tmp\ 2821}#)
(let ((#{_\ 2862}# #{tmp\ 2820}#))
(syntax-violation
'fluid-let-syntax
"bad syntax"
(#{source-wrap\ 447}#
#{e\ 2810}#
#{w\ 2812}#
#{s\ 2813}#
#{mod\ 2814}#))))))))
(#{global-extend\ 375}#
'core
'quote
(lambda (#{e\ 2863}#
#{r\ 2864}#
#{w\ 2865}#
#{s\ 2866}#
#{mod\ 2867}#)
(let ((#{tmp\ 2873}# #{e\ 2863}#))
(let ((#{tmp\ 2874}#
($sc-dispatch #{tmp\ 2873}# '(_ any))))
(if #{tmp\ 2874}#
(@apply
(lambda (#{e\ 2876}#)
(#{build-data\ 331}#
#{s\ 2866}#
(#{strip\ 487}# #{e\ 2876}# #{w\ 2865}#)))
#{tmp\ 2874}#)
(let ((#{_\ 2878}# #{tmp\ 2873}#))
(syntax-violation
'quote
"bad syntax"
(#{source-wrap\ 447}#
#{e\ 2863}#
#{w\ 2865}#
#{s\ 2866}#
#{mod\ 2867}#))))))))
(#{global-extend\ 375}#
'core
'syntax
(letrec*
((#{gen-syntax\ 2880}#
(lambda (#{src\ 2895}#
#{e\ 2896}#
#{r\ 2897}#
#{maps\ 2898}#
#{ellipsis?\ 2899}#
#{mod\ 2900}#)
(if (#{id?\ 379}# #{e\ 2896}#)
(begin
(let ((#{label\ 2908}#
(#{id-var-name\ 433}# #{e\ 2896}# '(()))))
(begin
(let ((#{b\ 2911}#
(#{lookup\ 373}#
#{label\ 2908}#
#{r\ 2897}#
#{mod\ 2900}#)))
(if (eq? (car #{b\ 2911}#) 'syntax)
(call-with-values
(lambda ()
(begin
(let ((#{var.lev\ 2914}#
(cdr #{b\ 2911}#)))
(#{gen-ref\ 2882}#
#{src\ 2895}#
(car #{var.lev\ 2914}#)
(cdr #{var.lev\ 2914}#)
#{maps\ 2898}#))))
(lambda (#{var\ 2916}# #{maps\ 2917}#)
(values
(list 'ref #{var\ 2916}#)
#{maps\ 2917}#)))
(if (#{ellipsis?\ 2899}# #{e\ 2896}#)
(syntax-violation
'syntax
"misplaced ellipsis"
#{src\ 2895}#)
(values
(list 'quote #{e\ 2896}#)
#{maps\ 2898}#)))))))
(let ((#{tmp\ 2922}# #{e\ 2896}#))
(let ((#{tmp\ 2923}#
($sc-dispatch #{tmp\ 2922}# '(any any))))
(if (if #{tmp\ 2923}#
(@apply
(lambda (#{dots\ 2926}# #{e\ 2927}#)
(#{ellipsis?\ 2899}# #{dots\ 2926}#))
#{tmp\ 2923}#)
#f)
(@apply
(lambda (#{dots\ 2930}# #{e\ 2931}#)
(#{gen-syntax\ 2880}#
#{src\ 2895}#
#{e\ 2931}#
#{r\ 2897}#
#{maps\ 2898}#
(lambda (#{x\ 2932}#) #f)
#{mod\ 2900}#))
#{tmp\ 2923}#)
(let ((#{tmp\ 2934}#
($sc-dispatch
#{tmp\ 2922}#
'(any any . any))))
(if (if #{tmp\ 2934}#
(@apply
(lambda (#{x\ 2938}#
#{dots\ 2939}#
#{y\ 2940}#)
(#{ellipsis?\ 2899}# #{dots\ 2939}#))
#{tmp\ 2934}#)
#f)
(@apply
(lambda (#{x\ 2944}#
#{dots\ 2945}#
#{y\ 2946}#)
(letrec*
((#{f\ 2950}#
(lambda (#{y\ 2951}# #{k\ 2952}#)
(let ((#{tmp\ 2959}# #{y\ 2951}#))
(let ((#{tmp\ 2960}#
($sc-dispatch
#{tmp\ 2959}#
'(any . any))))
(if (if #{tmp\ 2960}#
(@apply
(lambda (#{dots\ 2963}#
#{y\ 2964}#)
(#{ellipsis?\ 2899}#
#{dots\ 2963}#))
#{tmp\ 2960}#)
#f)
(@apply
(lambda (#{dots\ 2967}#
#{y\ 2968}#)
(#{f\ 2950}#
#{y\ 2968}#
(lambda (#{maps\ 2969}#)
(call-with-values
(lambda ()
(#{k\ 2952}#
(cons '()
#{maps\ 2969}#)))
(lambda (#{x\ 2971}#
#{maps\ 2972}#)
(if (null? (car #{maps\ 2972}#))
(syntax-violation
'syntax
"extra ellipsis"
#{src\ 2895}#)
(values
(#{gen-mappend\ 2884}#
#{x\ 2971}#
(car #{maps\ 2972}#))
(cdr #{maps\ 2972}#))))))))
#{tmp\ 2960}#)
(let ((#{_\ 2976}#
#{tmp\ 2959}#))
(call-with-values
(lambda ()
(#{gen-syntax\ 2880}#
#{src\ 2895}#
#{y\ 2951}#
#{r\ 2897}#
#{maps\ 2898}#
#{ellipsis?\ 2899}#
#{mod\ 2900}#))
(lambda (#{y\ 2977}#
#{maps\ 2978}#)
(call-with-values
(lambda ()
(#{k\ 2952}#
#{maps\ 2978}#))
(lambda (#{x\ 2981}#
#{maps\ 2982}#)
(values
(#{gen-append\ 2890}#
#{x\ 2981}#
#{y\ 2977}#)
#{maps\ 2982}#))))))))))))
(begin
(#{f\ 2950}#
#{y\ 2946}#
(lambda (#{maps\ 2953}#)
(call-with-values
(lambda ()
(#{gen-syntax\ 2880}#
#{src\ 2895}#
#{x\ 2944}#
#{r\ 2897}#
(cons '() #{maps\ 2953}#)
#{ellipsis?\ 2899}#
#{mod\ 2900}#))
(lambda (#{x\ 2955}#
#{maps\ 2956}#)
(if (null? (car #{maps\ 2956}#))
(syntax-violation
'syntax
"extra ellipsis"
#{src\ 2895}#)
(values
(#{gen-map\ 2886}#
#{x\ 2955}#
(car #{maps\ 2956}#))
(cdr #{maps\ 2956}#))))))))))
#{tmp\ 2934}#)
(let ((#{tmp\ 2985}#
($sc-dispatch
#{tmp\ 2922}#
'(any . any))))
(if #{tmp\ 2985}#
(@apply
(lambda (#{x\ 2988}# #{y\ 2989}#)
(call-with-values
(lambda ()
(#{gen-syntax\ 2880}#
#{src\ 2895}#
#{x\ 2988}#
#{r\ 2897}#
#{maps\ 2898}#
#{ellipsis?\ 2899}#
#{mod\ 2900}#))
(lambda (#{x\ 2990}# #{maps\ 2991}#)
(call-with-values
(lambda ()
(#{gen-syntax\ 2880}#
#{src\ 2895}#
#{y\ 2989}#
#{r\ 2897}#
#{maps\ 2991}#
#{ellipsis?\ 2899}#
#{mod\ 2900}#))
(lambda (#{y\ 2994}#
#{maps\ 2995}#)
(values
(#{gen-cons\ 2888}#
#{x\ 2990}#
#{y\ 2994}#)
#{maps\ 2995}#))))))
#{tmp\ 2985}#)
(let ((#{tmp\ 2998}#
($sc-dispatch
#{tmp\ 2922}#
'#(vector (any . each-any)))))
(if #{tmp\ 2998}#
(@apply
(lambda (#{e1\ 3001}# #{e2\ 3002}#)
(call-with-values
(lambda ()
(#{gen-syntax\ 2880}#
#{src\ 2895}#
(cons #{e1\ 3001}#
#{e2\ 3002}#)
#{r\ 2897}#
#{maps\ 2898}#
#{ellipsis?\ 2899}#
#{mod\ 2900}#))
(lambda (#{e\ 3004}#
#{maps\ 3005}#)
(values
(#{gen-vector\ 2892}#
#{e\ 3004}#)
#{maps\ 3005}#))))
#{tmp\ 2998}#)
(let ((#{_\ 3009}# #{tmp\ 2922}#))
(values
(list 'quote #{e\ 2896}#)
#{maps\ 2898}#))))))))))))))
(#{gen-ref\ 2882}#
(lambda (#{src\ 3011}#
#{var\ 3012}#
#{level\ 3013}#
#{maps\ 3014}#)
(if (#{fx=\ 286}# #{level\ 3013}# 0)
(values #{var\ 3012}# #{maps\ 3014}#)
(if (null? #{maps\ 3014}#)
(syntax-violation
'syntax
"missing ellipsis"
#{src\ 3011}#)
(call-with-values
(lambda ()
(#{gen-ref\ 2882}#
#{src\ 3011}#
#{var\ 3012}#
(#{fx-\ 284}# #{level\ 3013}# 1)
(cdr #{maps\ 3014}#)))
(lambda (#{outer-var\ 3019}# #{outer-maps\ 3020}#)
(begin
(let ((#{b\ 3024}#
(assq #{outer-var\ 3019}#
(car #{maps\ 3014}#))))
(if #{b\ 3024}#
(values (cdr #{b\ 3024}#) #{maps\ 3014}#)
(begin
(let ((#{inner-var\ 3026}#
(#{gen-var\ 489}# 'tmp)))
(values
#{inner-var\ 3026}#
(cons (cons (cons #{outer-var\ 3019}#
#{inner-var\ 3026}#)
(car #{maps\ 3014}#))
#{outer-maps\ 3020}#)))))))))))))
(#{gen-mappend\ 2884}#
(lambda (#{e\ 3027}# #{map-env\ 3028}#)
(list 'apply
'(primitive append)
(#{gen-map\ 2886}# #{e\ 3027}# #{map-env\ 3028}#))))
(#{gen-map\ 2886}#
(lambda (#{e\ 3032}# #{map-env\ 3033}#)
(begin
(let ((#{formals\ 3038}# (map cdr #{map-env\ 3033}#))
(#{actuals\ 3039}#
(map (lambda (#{x\ 3040}#)
(list 'ref (car #{x\ 3040}#)))
#{map-env\ 3033}#)))
(if (eq? (car #{e\ 3032}#) 'ref)
(car #{actuals\ 3039}#)
(if (and-map
(lambda (#{x\ 3047}#)
(if (eq? (car #{x\ 3047}#) 'ref)
(memq (car (cdr #{x\ 3047}#))
#{formals\ 3038}#)
#f))
(cdr #{e\ 3032}#))
(cons 'map
(cons (list 'primitive (car #{e\ 3032}#))
(map (begin
(let ((#{r\ 3053}#
(map cons
#{formals\ 3038}#
#{actuals\ 3039}#)))
(lambda (#{x\ 3054}#)
(cdr (assq (car (cdr #{x\ 3054}#))
#{r\ 3053}#)))))
(cdr #{e\ 3032}#))))
(cons 'map
(cons (list 'lambda
#{formals\ 3038}#
#{e\ 3032}#)
#{actuals\ 3039}#))))))))
(#{gen-cons\ 2888}#
(lambda (#{x\ 3058}# #{y\ 3059}#)
(begin
(let ((#{atom-key\ 3064}# (car #{y\ 3059}#)))
(if (eqv? #{atom-key\ 3064}# 'quote)
(if (eq? (car #{x\ 3058}#) 'quote)
(list 'quote
(cons (car (cdr #{x\ 3058}#))
(car (cdr #{y\ 3059}#))))
(if (eq? (car (cdr #{y\ 3059}#)) '())
(list 'list #{x\ 3058}#)
(list 'cons #{x\ 3058}# #{y\ 3059}#)))
(if (eqv? #{atom-key\ 3064}# 'list)
(cons 'list (cons #{x\ 3058}# (cdr #{y\ 3059}#)))
(list 'cons #{x\ 3058}# #{y\ 3059}#)))))))
(#{gen-append\ 2890}#
(lambda (#{x\ 3073}# #{y\ 3074}#)
(if (equal? #{y\ 3074}# ''())
#{x\ 3073}#
(list 'append #{x\ 3073}# #{y\ 3074}#))))
(#{gen-vector\ 2892}#
(lambda (#{x\ 3078}#)
(if (eq? (car #{x\ 3078}#) 'list)
(cons 'vector (cdr #{x\ 3078}#))
(if (eq? (car #{x\ 3078}#) 'quote)
(list 'quote
(list->vector (car (cdr #{x\ 3078}#))))
(list 'list->vector #{x\ 3078}#)))))
(#{regen\ 2894}#
(lambda (#{x\ 3088}#)
(begin
(let ((#{atom-key\ 3092}# (car #{x\ 3088}#)))
(if (eqv? #{atom-key\ 3092}# 'ref)
(#{build-lexical-reference\ 311}#
'value
#f
(car (cdr #{x\ 3088}#))
(car (cdr #{x\ 3088}#)))
(if (eqv? #{atom-key\ 3092}# 'primitive)
(#{build-primref\ 329}#
#f
(car (cdr #{x\ 3088}#)))
(if (eqv? #{atom-key\ 3092}# 'quote)
(#{build-data\ 331}# #f (car (cdr #{x\ 3088}#)))
(if (eqv? #{atom-key\ 3092}# 'lambda)
(if (list? (car (cdr #{x\ 3088}#)))
(#{build-simple-lambda\ 323}#
#f
(car (cdr #{x\ 3088}#))
#f
(car (cdr #{x\ 3088}#))
'()
(#{regen\ 2894}#
(car (cdr (cdr #{x\ 3088}#)))))
(error "how did we get here" #{x\ 3088}#))
(#{build-application\ 305}#
#f
(#{build-primref\ 329}#
#f
(car #{x\ 3088}#))
(map #{regen\ 2894}#
(cdr #{x\ 3088}#))))))))))))
(begin
(lambda (#{e\ 3104}#
#{r\ 3105}#
#{w\ 3106}#
#{s\ 3107}#
#{mod\ 3108}#)
(begin
(let ((#{e\ 3115}#
(#{source-wrap\ 447}#
#{e\ 3104}#
#{w\ 3106}#
#{s\ 3107}#
#{mod\ 3108}#)))
(let ((#{tmp\ 3116}# #{e\ 3115}#))
(let ((#{tmp\ 3117}#
($sc-dispatch #{tmp\ 3116}# '(_ any))))
(if #{tmp\ 3117}#
(@apply
(lambda (#{x\ 3119}#)
(call-with-values
(lambda ()
(#{gen-syntax\ 2880}#
#{e\ 3115}#
#{x\ 3119}#
#{r\ 3105}#
'()
#{ellipsis?\ 477}#
#{mod\ 3108}#))
(lambda (#{e\ 3120}# #{maps\ 3121}#)
(#{regen\ 2894}# #{e\ 3120}#))))
#{tmp\ 3117}#)
(let ((#{_\ 3125}# #{tmp\ 3116}#))
(syntax-violation
'syntax
"bad `syntax' form"
#{e\ 3115}#)))))))))))
(#{global-extend\ 375}#
'core
'lambda
(lambda (#{e\ 3126}#
#{r\ 3127}#
#{w\ 3128}#
#{s\ 3129}#
#{mod\ 3130}#)
(let ((#{tmp\ 3136}# #{e\ 3126}#))
(let ((#{tmp\ 3137}#
($sc-dispatch
#{tmp\ 3136}#
'(_ any any . each-any))))
(if #{tmp\ 3137}#
(@apply
(lambda (#{args\ 3141}# #{e1\ 3142}# #{e2\ 3143}#)
(call-with-values
(lambda ()
(#{lambda-formals\ 479}# #{args\ 3141}#))
(lambda (#{req\ 3144}#
#{opt\ 3145}#
#{rest\ 3146}#
#{kw\ 3147}#)
(letrec*
((#{lp\ 3155}#
(lambda (#{body\ 3156}# #{meta\ 3157}#)
(let ((#{tmp\ 3159}# #{body\ 3156}#))
(let ((#{tmp\ 3160}#
($sc-dispatch
#{tmp\ 3159}#
'(any any . each-any))))
(if (if #{tmp\ 3160}#
(@apply
(lambda (#{docstring\ 3164}#
#{e1\ 3165}#
#{e2\ 3166}#)
(string?
(syntax->datum
#{docstring\ 3164}#)))
#{tmp\ 3160}#)
#f)
(@apply
(lambda (#{docstring\ 3170}#
#{e1\ 3171}#
#{e2\ 3172}#)
(#{lp\ 3155}#
(cons #{e1\ 3171}#
#{e2\ 3172}#)
(append
#{meta\ 3157}#
(list (cons 'documentation
(syntax->datum
#{docstring\ 3170}#))))))
#{tmp\ 3160}#)
(let ((#{tmp\ 3175}#
($sc-dispatch
#{tmp\ 3159}#
'(#(vector
#(each (any . any)))
any
.
each-any))))
(if #{tmp\ 3175}#
(@apply
(lambda (#{k\ 3180}#
#{v\ 3181}#
#{e1\ 3182}#
#{e2\ 3183}#)
(#{lp\ 3155}#
(cons #{e1\ 3182}#
#{e2\ 3183}#)
(append
#{meta\ 3157}#
(syntax->datum
(map cons
#{k\ 3180}#
#{v\ 3181}#)))))
#{tmp\ 3175}#)
(let ((#{_\ 3188}#
#{tmp\ 3159}#))
(#{chi-simple-lambda\ 481}#
#{e\ 3126}#
#{r\ 3127}#
#{w\ 3128}#
#{s\ 3129}#
#{mod\ 3130}#
#{req\ 3144}#
#{rest\ 3146}#
#{meta\ 3157}#
#{body\ 3156}#))))))))))
(begin
(#{lp\ 3155}#
(cons #{e1\ 3142}# #{e2\ 3143}#)
'()))))))
#{tmp\ 3137}#)
(let ((#{_\ 3190}# #{tmp\ 3136}#))
(syntax-violation
'lambda
"bad lambda"
#{e\ 3126}#)))))))
(#{global-extend\ 375}#
'core
'lambda*
(lambda (#{e\ 3191}#
#{r\ 3192}#
#{w\ 3193}#
#{s\ 3194}#
#{mod\ 3195}#)
(let ((#{tmp\ 3201}# #{e\ 3191}#))
(let ((#{tmp\ 3202}#
($sc-dispatch
#{tmp\ 3201}#
'(_ any any . each-any))))
(if #{tmp\ 3202}#
(@apply
(lambda (#{args\ 3206}# #{e1\ 3207}# #{e2\ 3208}#)
(call-with-values
(lambda ()
(#{chi-lambda-case\ 485}#
#{e\ 3191}#
#{r\ 3192}#
#{w\ 3193}#
#{s\ 3194}#
#{mod\ 3195}#
#{lambda*-formals\ 483}#
(list (cons #{args\ 3206}#
(cons #{e1\ 3207}#
#{e2\ 3208}#)))))
(lambda (#{meta\ 3210}# #{lcase\ 3211}#)
(#{build-case-lambda\ 325}#
#{s\ 3194}#
#{meta\ 3210}#
#{lcase\ 3211}#))))
#{tmp\ 3202}#)
(let ((#{_\ 3215}# #{tmp\ 3201}#))
(syntax-violation
'lambda
"bad lambda*"
#{e\ 3191}#)))))))
(#{global-extend\ 375}#
'core
'case-lambda
(lambda (#{e\ 3216}#
#{r\ 3217}#
#{w\ 3218}#
#{s\ 3219}#
#{mod\ 3220}#)
(let ((#{tmp\ 3226}# #{e\ 3216}#))
(let ((#{tmp\ 3227}#
($sc-dispatch
#{tmp\ 3226}#
'(_ (any any . each-any)
.
#(each (any any . each-any))))))
(if #{tmp\ 3227}#
(@apply
(lambda (#{args\ 3234}#
#{e1\ 3235}#
#{e2\ 3236}#
#{args*\ 3237}#
#{e1*\ 3238}#
#{e2*\ 3239}#)
(call-with-values
(lambda ()
(#{chi-lambda-case\ 485}#
#{e\ 3216}#
#{r\ 3217}#
#{w\ 3218}#
#{s\ 3219}#
#{mod\ 3220}#
#{lambda-formals\ 479}#
(cons (cons #{args\ 3234}#
(cons #{e1\ 3235}# #{e2\ 3236}#))
(map (lambda (#{tmp\ 3243}#
#{tmp\ 3242}#
#{tmp\ 3241}#)
(cons #{tmp\ 3241}#
(cons #{tmp\ 3242}#
#{tmp\ 3243}#)))
#{e2*\ 3239}#
#{e1*\ 3238}#
#{args*\ 3237}#))))
(lambda (#{meta\ 3245}# #{lcase\ 3246}#)
(#{build-case-lambda\ 325}#
#{s\ 3219}#
#{meta\ 3245}#
#{lcase\ 3246}#))))
#{tmp\ 3227}#)
(let ((#{_\ 3250}# #{tmp\ 3226}#))
(syntax-violation
'case-lambda
"bad case-lambda"
#{e\ 3216}#)))))))
(#{global-extend\ 375}#
'core
'case-lambda*
(lambda (#{e\ 3251}#
#{r\ 3252}#
#{w\ 3253}#
#{s\ 3254}#
#{mod\ 3255}#)
(let ((#{tmp\ 3261}# #{e\ 3251}#))
(let ((#{tmp\ 3262}#
($sc-dispatch
#{tmp\ 3261}#
'(_ (any any . each-any)
.
#(each (any any . each-any))))))
(if #{tmp\ 3262}#
(@apply
(lambda (#{args\ 3269}#
#{e1\ 3270}#
#{e2\ 3271}#
#{args*\ 3272}#
#{e1*\ 3273}#
#{e2*\ 3274}#)
(call-with-values
(lambda ()
(#{chi-lambda-case\ 485}#
#{e\ 3251}#
#{r\ 3252}#
#{w\ 3253}#
#{s\ 3254}#
#{mod\ 3255}#
#{lambda*-formals\ 483}#
(cons (cons #{args\ 3269}#
(cons #{e1\ 3270}# #{e2\ 3271}#))
(map (lambda (#{tmp\ 3278}#
#{tmp\ 3277}#
#{tmp\ 3276}#)
(cons #{tmp\ 3276}#
(cons #{tmp\ 3277}#
#{tmp\ 3278}#)))
#{e2*\ 3274}#
#{e1*\ 3273}#
#{args*\ 3272}#))))
(lambda (#{meta\ 3280}# #{lcase\ 3281}#)
(#{build-case-lambda\ 325}#
#{s\ 3254}#
#{meta\ 3280}#
#{lcase\ 3281}#))))
#{tmp\ 3262}#)
(let ((#{_\ 3285}# #{tmp\ 3261}#))
(syntax-violation
'case-lambda
"bad case-lambda*"
#{e\ 3251}#)))))))
(#{global-extend\ 375}#
'core
'let
(letrec*
((#{chi-let\ 3287}#
(lambda (#{e\ 3288}#
#{r\ 3289}#
#{w\ 3290}#
#{s\ 3291}#
#{mod\ 3292}#
#{constructor\ 3293}#
#{ids\ 3294}#
#{vals\ 3295}#
#{exps\ 3296}#)
(if (not (#{valid-bound-ids?\ 439}# #{ids\ 3294}#))
(syntax-violation
'let
"duplicate bound variable"
#{e\ 3288}#)
(begin
(let ((#{labels\ 3308}#
(#{gen-labels\ 394}# #{ids\ 3294}#))
(#{new-vars\ 3309}#
(map #{gen-var\ 489}# #{ids\ 3294}#)))
(begin
(let ((#{nw\ 3312}#
(#{make-binding-wrap\ 423}#
#{ids\ 3294}#
#{labels\ 3308}#
#{w\ 3290}#))
(#{nr\ 3313}#
(#{extend-var-env\ 369}#
#{labels\ 3308}#
#{new-vars\ 3309}#
#{r\ 3289}#)))
(#{constructor\ 3293}#
#{s\ 3291}#
(map syntax->datum #{ids\ 3294}#)
#{new-vars\ 3309}#
(map (lambda (#{x\ 3314}#)
(#{chi\ 461}#
#{x\ 3314}#
#{r\ 3289}#
#{w\ 3290}#
#{mod\ 3292}#))
#{vals\ 3295}#)
(#{chi-body\ 469}#
#{exps\ 3296}#
(#{source-wrap\ 447}#
#{e\ 3288}#
#{nw\ 3312}#
#{s\ 3291}#
#{mod\ 3292}#)
#{nr\ 3313}#
#{nw\ 3312}#
#{mod\ 3292}#))))))))))
(begin
(lambda (#{e\ 3316}#
#{r\ 3317}#
#{w\ 3318}#
#{s\ 3319}#
#{mod\ 3320}#)
(let ((#{tmp\ 3326}# #{e\ 3316}#))
(let ((#{tmp\ 3327}#
($sc-dispatch
#{tmp\ 3326}#
'(_ #(each (any any)) any . each-any))))
(if (if #{tmp\ 3327}#
(@apply
(lambda (#{id\ 3332}#
#{val\ 3333}#
#{e1\ 3334}#
#{e2\ 3335}#)
(and-map #{id?\ 379}# #{id\ 3332}#))
#{tmp\ 3327}#)
#f)
(@apply
(lambda (#{id\ 3341}#
#{val\ 3342}#
#{e1\ 3343}#
#{e2\ 3344}#)
(#{chi-let\ 3287}#
#{e\ 3316}#
#{r\ 3317}#
#{w\ 3318}#
#{s\ 3319}#
#{mod\ 3320}#
#{build-let\ 335}#
#{id\ 3341}#
#{val\ 3342}#
(cons #{e1\ 3343}# #{e2\ 3344}#)))
#{tmp\ 3327}#)
(let ((#{tmp\ 3348}#
($sc-dispatch
#{tmp\ 3326}#
'(_ any
#(each (any any))
any
.
each-any))))
(if (if #{tmp\ 3348}#
(@apply
(lambda (#{f\ 3354}#
#{id\ 3355}#
#{val\ 3356}#
#{e1\ 3357}#
#{e2\ 3358}#)
(if (#{id?\ 379}# #{f\ 3354}#)
(and-map #{id?\ 379}# #{id\ 3355}#)
#f))
#{tmp\ 3348}#)
#f)
(@apply
(lambda (#{f\ 3367}#
#{id\ 3368}#
#{val\ 3369}#
#{e1\ 3370}#
#{e2\ 3371}#)
(#{chi-let\ 3287}#
#{e\ 3316}#
#{r\ 3317}#
#{w\ 3318}#
#{s\ 3319}#
#{mod\ 3320}#
#{build-named-let\ 337}#
(cons #{f\ 3367}# #{id\ 3368}#)
#{val\ 3369}#
(cons #{e1\ 3370}# #{e2\ 3371}#)))
#{tmp\ 3348}#)
(let ((#{_\ 3376}# #{tmp\ 3326}#))
(syntax-violation
'let
"bad let"
(#{source-wrap\ 447}#
#{e\ 3316}#
#{w\ 3318}#
#{s\ 3319}#
#{mod\ 3320}#))))))))))))
(#{global-extend\ 375}#
'core
'letrec
(lambda (#{e\ 3377}#
#{r\ 3378}#
#{w\ 3379}#
#{s\ 3380}#
#{mod\ 3381}#)
(let ((#{tmp\ 3387}# #{e\ 3377}#))
(let ((#{tmp\ 3388}#
($sc-dispatch
#{tmp\ 3387}#
'(_ #(each (any any)) any . each-any))))
(if (if #{tmp\ 3388}#
(@apply
(lambda (#{id\ 3393}#
#{val\ 3394}#
#{e1\ 3395}#
#{e2\ 3396}#)
(and-map #{id?\ 379}# #{id\ 3393}#))
#{tmp\ 3388}#)
#f)
(@apply
(lambda (#{id\ 3402}#
#{val\ 3403}#
#{e1\ 3404}#
#{e2\ 3405}#)
(begin
(let ((#{ids\ 3407}# #{id\ 3402}#))
(if (not (#{valid-bound-ids?\ 439}#
#{ids\ 3407}#))
(syntax-violation
'letrec
"duplicate bound variable"
#{e\ 3377}#)
(begin
(let ((#{labels\ 3411}#
(#{gen-labels\ 394}# #{ids\ 3407}#))
(#{new-vars\ 3412}#
(map #{gen-var\ 489}#
#{ids\ 3407}#)))
(begin
(let ((#{w\ 3415}#
(#{make-binding-wrap\ 423}#
#{ids\ 3407}#
#{labels\ 3411}#
#{w\ 3379}#))
(#{r\ 3416}#
(#{extend-var-env\ 369}#
#{labels\ 3411}#
#{new-vars\ 3412}#
#{r\ 3378}#)))
(#{build-letrec\ 339}#
#{s\ 3380}#
#f
(map syntax->datum #{ids\ 3407}#)
#{new-vars\ 3412}#
(map (lambda (#{x\ 3417}#)
(#{chi\ 461}#
#{x\ 3417}#
#{r\ 3416}#
#{w\ 3415}#
#{mod\ 3381}#))
#{val\ 3403}#)
(#{chi-body\ 469}#
(cons #{e1\ 3404}# #{e2\ 3405}#)
(#{source-wrap\ 447}#
#{e\ 3377}#
#{w\ 3415}#
#{s\ 3380}#
#{mod\ 3381}#)
#{r\ 3416}#
#{w\ 3415}#
#{mod\ 3381}#))))))))))
#{tmp\ 3388}#)
(let ((#{_\ 3422}# #{tmp\ 3387}#))
(syntax-violation
'letrec
"bad letrec"
(#{source-wrap\ 447}#
#{e\ 3377}#
#{w\ 3379}#
#{s\ 3380}#
#{mod\ 3381}#))))))))
(#{global-extend\ 375}#
'core
'letrec*
(lambda (#{e\ 3423}#
#{r\ 3424}#
#{w\ 3425}#
#{s\ 3426}#
#{mod\ 3427}#)
(let ((#{tmp\ 3433}# #{e\ 3423}#))
(let ((#{tmp\ 3434}#
($sc-dispatch
#{tmp\ 3433}#
'(_ #(each (any any)) any . each-any))))
(if (if #{tmp\ 3434}#
(@apply
(lambda (#{id\ 3439}#
#{val\ 3440}#
#{e1\ 3441}#
#{e2\ 3442}#)
(and-map #{id?\ 379}# #{id\ 3439}#))
#{tmp\ 3434}#)
#f)
(@apply
(lambda (#{id\ 3448}#
#{val\ 3449}#
#{e1\ 3450}#
#{e2\ 3451}#)
(begin
(let ((#{ids\ 3453}# #{id\ 3448}#))
(if (not (#{valid-bound-ids?\ 439}#
#{ids\ 3453}#))
(syntax-violation
'letrec*
"duplicate bound variable"
#{e\ 3423}#)
(begin
(let ((#{labels\ 3457}#
(#{gen-labels\ 394}# #{ids\ 3453}#))
(#{new-vars\ 3458}#
(map #{gen-var\ 489}#
#{ids\ 3453}#)))
(begin
(let ((#{w\ 3461}#
(#{make-binding-wrap\ 423}#
#{ids\ 3453}#
#{labels\ 3457}#
#{w\ 3425}#))
(#{r\ 3462}#
(#{extend-var-env\ 369}#
#{labels\ 3457}#
#{new-vars\ 3458}#
#{r\ 3424}#)))
(#{build-letrec\ 339}#
#{s\ 3426}#
#t
(map syntax->datum #{ids\ 3453}#)
#{new-vars\ 3458}#
(map (lambda (#{x\ 3463}#)
(#{chi\ 461}#
#{x\ 3463}#
#{r\ 3462}#
#{w\ 3461}#
#{mod\ 3427}#))
#{val\ 3449}#)
(#{chi-body\ 469}#
(cons #{e1\ 3450}# #{e2\ 3451}#)
(#{source-wrap\ 447}#
#{e\ 3423}#
#{w\ 3461}#
#{s\ 3426}#
#{mod\ 3427}#)
#{r\ 3462}#
#{w\ 3461}#
#{mod\ 3427}#))))))))))
#{tmp\ 3434}#)
(let ((#{_\ 3468}# #{tmp\ 3433}#))
(syntax-violation
'letrec*
"bad letrec*"
(#{source-wrap\ 447}#
#{e\ 3423}#
#{w\ 3425}#
#{s\ 3426}#
#{mod\ 3427}#))))))))
(#{global-extend\ 375}#
'core
'set!
(lambda (#{e\ 3469}#
#{r\ 3470}#
#{w\ 3471}#
#{s\ 3472}#
#{mod\ 3473}#)
(let ((#{tmp\ 3479}# #{e\ 3469}#))
(let ((#{tmp\ 3480}#
($sc-dispatch #{tmp\ 3479}# '(_ any any))))
(if (if #{tmp\ 3480}#
(@apply
(lambda (#{id\ 3483}# #{val\ 3484}#)
(#{id?\ 379}# #{id\ 3483}#))
#{tmp\ 3480}#)
#f)
(@apply
(lambda (#{id\ 3487}# #{val\ 3488}#)
(begin
(let ((#{n\ 3491}#
(#{id-var-name\ 433}#
#{id\ 3487}#
#{w\ 3471}#))
(#{id-mod\ 3492}#
(if (#{syntax-object?\ 345}# #{id\ 3487}#)
(#{syntax-object-module\ 351}#
#{id\ 3487}#)
#{mod\ 3473}#)))
(begin
(let ((#{b\ 3494}#
(#{lookup\ 373}#
#{n\ 3491}#
#{r\ 3470}#
#{id-mod\ 3492}#)))
(begin
(let ((#{atom-key\ 3497}#
(car #{b\ 3494}#)))
(if (eqv? #{atom-key\ 3497}# 'lexical)
(#{build-lexical-assignment\ 313}#
#{s\ 3472}#
(syntax->datum #{id\ 3487}#)
(cdr #{b\ 3494}#)
(#{chi\ 461}#
#{val\ 3488}#
#{r\ 3470}#
#{w\ 3471}#
#{mod\ 3473}#))
(if (eqv? #{atom-key\ 3497}# 'global)
(#{build-global-assignment\ 319}#
#{s\ 3472}#
#{n\ 3491}#
(#{chi\ 461}#
#{val\ 3488}#
#{r\ 3470}#
#{w\ 3471}#
#{mod\ 3473}#)
#{id-mod\ 3492}#)
(if (eqv? #{atom-key\ 3497}# 'macro)
(begin
(let ((#{p\ 3504}#
(cdr #{b\ 3494}#)))
(if (procedure-property
#{p\ 3504}#
'variable-transformer)
(#{chi\ 461}#
(#{chi-macro\ 467}#
#{p\ 3504}#
#{e\ 3469}#
#{r\ 3470}#
#{w\ 3471}#
#{s\ 3472}#
#f
#{mod\ 3473}#)
#{r\ 3470}#
'(())
#{mod\ 3473}#)
(syntax-violation
'set!
"not a variable transformer"
(#{wrap\ 445}#
#{e\ 3469}#
#{w\ 3471}#
#{mod\ 3473}#)
(#{wrap\ 445}#
#{id\ 3487}#
#{w\ 3471}#
#{id-mod\ 3492}#)))))
(if (eqv? #{atom-key\ 3497}#
'displaced-lexical)
(syntax-violation
'set!
"identifier out of context"
(#{wrap\ 445}#
#{id\ 3487}#
#{w\ 3471}#
#{mod\ 3473}#))
(syntax-violation
'set!
"bad set!"
(#{source-wrap\ 447}#
#{e\ 3469}#
#{w\ 3471}#
#{s\ 3472}#
#{mod\ 3473}#)))))))))))))
#{tmp\ 3480}#)
(let ((#{tmp\ 3509}#
($sc-dispatch
#{tmp\ 3479}#
'(_ (any . each-any) any))))
(if #{tmp\ 3509}#
(@apply
(lambda (#{head\ 3513}#
#{tail\ 3514}#
#{val\ 3515}#)
(call-with-values
(lambda ()
(#{syntax-type\ 457}#
#{head\ 3513}#
#{r\ 3470}#
'(())
#f
#f
#{mod\ 3473}#
#t))
(lambda (#{type\ 3518}#
#{value\ 3519}#
#{ee\ 3520}#
#{ww\ 3521}#
#{ss\ 3522}#
#{modmod\ 3523}#)
(if (eqv? #{type\ 3518}# 'module-ref)
(begin
(let ((#{val\ 3532}#
(#{chi\ 461}#
#{val\ 3515}#
#{r\ 3470}#
#{w\ 3471}#
#{mod\ 3473}#)))
(call-with-values
(lambda ()
(#{value\ 3519}#
(cons #{head\ 3513}#
#{tail\ 3514}#)
#{r\ 3470}#
#{w\ 3471}#))
(lambda (#{e\ 3534}#
#{r\ 3535}#
#{w\ 3536}#
#{s*\ 3537}#
#{mod\ 3538}#)
(let ((#{tmp\ 3544}# #{e\ 3534}#))
(let ((#{tmp\ 3545}#
(list #{tmp\ 3544}#)))
(if (if #{tmp\ 3545}#
(@apply
(lambda (#{e\ 3547}#)
(#{id?\ 379}#
#{e\ 3547}#))
#{tmp\ 3545}#)
#f)
(@apply
(lambda (#{e\ 3549}#)
(#{build-global-assignment\ 319}#
#{s\ 3472}#
(syntax->datum
#{e\ 3549}#)
#{val\ 3532}#
#{mod\ 3538}#))
#{tmp\ 3545}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 3544}#))))))))
(#{build-application\ 305}#
#{s\ 3472}#
(#{chi\ 461}#
(list '#(syntax-object
setter
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(type
value
ee
ww
ss
modmod)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i3524"
"i3525"
"i3526"
"i3527"
"i3528"
"i3529"))
#(ribcage
#(head tail val)
#((top) (top) (top))
#("i3510" "i3511" "i3512"))
#(ribcage () () ())
#(ribcage
#(e r w s mod)
#((top)
(top)
(top)
(top)
(top))
#("i3474"
"i3475"
"i3476"
"i3477"
"i3478"))
#(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
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
maybe-name-value!
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))
("i490"
"i488"
"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"
"i419"
"i418"
"i416"
"i415"
"i414"
"i413"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i393"
"i391"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i381"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i365"
"i364"
"i363"
"i362"
"i361"
"i359"
"i358"
"i356"
"i354"
"i352"
"i350"
"i348"
"i346"
"i344"
"i342"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i324"
"i322"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i252"
"i250"
"i248"
"i246"
"i244"
"i242"
"i240"
"i238"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i40" "i39" "i38" "i36")))
(hygiene guile))
#{head\ 3513}#)
#{r\ 3470}#
#{w\ 3471}#
#{mod\ 3473}#)
(map (lambda (#{e\ 3551}#)
(#{chi\ 461}#
#{e\ 3551}#
#{r\ 3470}#
#{w\ 3471}#
#{mod\ 3473}#))
(append
#{tail\ 3514}#
(list #{val\ 3515}#))))))))
#{tmp\ 3509}#)
(let ((#{_\ 3555}# #{tmp\ 3479}#))
(syntax-violation
'set!
"bad set!"
(#{source-wrap\ 447}#
#{e\ 3469}#
#{w\ 3471}#
#{s\ 3472}#
#{mod\ 3473}#))))))))))
(#{global-extend\ 375}#
'module-ref
'@
(lambda (#{e\ 3556}# #{r\ 3557}# #{w\ 3558}#)
(let ((#{tmp\ 3562}# #{e\ 3556}#))
(let ((#{tmp\ 3563}#
($sc-dispatch #{tmp\ 3562}# '(_ each-any any))))
(if (if #{tmp\ 3563}#
(@apply
(lambda (#{mod\ 3566}# #{id\ 3567}#)
(if (and-map #{id?\ 379}# #{mod\ 3566}#)
(#{id?\ 379}# #{id\ 3567}#)
#f))
#{tmp\ 3563}#)
#f)
(@apply
(lambda (#{mod\ 3573}# #{id\ 3574}#)
(values
(syntax->datum #{id\ 3574}#)
#{r\ 3557}#
#{w\ 3558}#
#f
(syntax->datum
(cons '#(syntax-object
public
((top)
#(ribcage
#(mod id)
#((top) (top))
#("i3571" "i3572"))
#(ribcage () () ())
#(ribcage
#(e r w)
#((top) (top) (top))
#("i3559" "i3560" "i3561"))
#(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
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
maybe-name-value!
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))
("i490"
"i488"
"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"
"i419"
"i418"
"i416"
"i415"
"i414"
"i413"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i393"
"i391"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i381"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i365"
"i364"
"i363"
"i362"
"i361"
"i359"
"i358"
"i356"
"i354"
"i352"
"i350"
"i348"
"i346"
"i344"
"i342"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i324"
"i322"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i252"
"i250"
"i248"
"i246"
"i244"
"i242"
"i240"
"i238"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i40" "i39" "i38" "i36")))
(hygiene guile))
#{mod\ 3573}#))))
#{tmp\ 3563}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 3562}#))))))
(#{global-extend\ 375}#
'module-ref
'@@
(lambda (#{e\ 3576}# #{r\ 3577}# #{w\ 3578}#)
(letrec*
((#{remodulate\ 3583}#
(lambda (#{x\ 3584}# #{mod\ 3585}#)
(if (pair? #{x\ 3584}#)
(cons (#{remodulate\ 3583}#
(car #{x\ 3584}#)
#{mod\ 3585}#)
(#{remodulate\ 3583}#
(cdr #{x\ 3584}#)
#{mod\ 3585}#))
(if (#{syntax-object?\ 345}# #{x\ 3584}#)
(#{make-syntax-object\ 343}#
(#{remodulate\ 3583}#
(#{syntax-object-expression\ 347}# #{x\ 3584}#)
#{mod\ 3585}#)
(#{syntax-object-wrap\ 349}# #{x\ 3584}#)
#{mod\ 3585}#)
(if (vector? #{x\ 3584}#)
(begin
(let ((#{n\ 3596}# (vector-length #{x\ 3584}#)))
(begin
(let ((#{v\ 3598}#
(make-vector #{n\ 3596}#)))
(letrec*
((#{loop\ 3601}#
(lambda (#{i\ 3602}#)
(if (#{fx=\ 286}#
#{i\ 3602}#
#{n\ 3596}#)
(begin (if #f #f) #{v\ 3598}#)
(begin
(vector-set!
#{v\ 3598}#
#{i\ 3602}#
(#{remodulate\ 3583}#
(vector-ref
#{x\ 3584}#
#{i\ 3602}#)
#{mod\ 3585}#))
(#{loop\ 3601}#
(#{fx+\ 282}#
#{i\ 3602}#
1)))))))
(begin (#{loop\ 3601}# 0)))))))
#{x\ 3584}#))))))
(begin
(let ((#{tmp\ 3606}# #{e\ 3576}#))
(let ((#{tmp\ 3607}#
($sc-dispatch #{tmp\ 3606}# '(_ each-any any))))
(if (if #{tmp\ 3607}#
(@apply
(lambda (#{mod\ 3610}# #{exp\ 3611}#)
(and-map #{id?\ 379}# #{mod\ 3610}#))
#{tmp\ 3607}#)
#f)
(@apply
(lambda (#{mod\ 3615}# #{exp\ 3616}#)
(begin
(let ((#{mod\ 3618}#
(syntax->datum
(cons '#(syntax-object
private
((top)
#(ribcage
#(mod exp)
#((top) (top))
#("i3613" "i3614"))
#(ribcage
(remodulate)
((top))
("i3582"))
#(ribcage
#(e r w)
#((top) (top) (top))
#("i3579"
"i3580"
"i3581"))
#(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
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
maybe-name-value!
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))
("i490"
"i488"
"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"
"i419"
"i418"
"i416"
"i415"
"i414"
"i413"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i393"
"i391"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i381"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i365"
"i364"
"i363"
"i362"
"i361"
"i359"
"i358"
"i356"
"i354"
"i352"
"i350"
"i348"
"i346"
"i344"
"i342"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i324"
"i322"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i252"
"i250"
"i248"
"i246"
"i244"
"i242"
"i240"
"i238"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i40"
"i39"
"i38"
"i36")))
(hygiene guile))
#{mod\ 3615}#))))
(values
(#{remodulate\ 3583}#
#{exp\ 3616}#
#{mod\ 3618}#)
#{r\ 3577}#
#{w\ 3578}#
(#{source-annotation\ 360}# #{exp\ 3616}#)
#{mod\ 3618}#))))
#{tmp\ 3607}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 3606}#))))))))
(#{global-extend\ 375}#
'core
'if
(lambda (#{e\ 3620}#
#{r\ 3621}#
#{w\ 3622}#
#{s\ 3623}#
#{mod\ 3624}#)
(let ((#{tmp\ 3630}# #{e\ 3620}#))
(let ((#{tmp\ 3631}#
($sc-dispatch #{tmp\ 3630}# '(_ any any))))
(if #{tmp\ 3631}#
(@apply
(lambda (#{test\ 3634}# #{then\ 3635}#)
(#{build-conditional\ 307}#
#{s\ 3623}#
(#{chi\ 461}#
#{test\ 3634}#
#{r\ 3621}#
#{w\ 3622}#
#{mod\ 3624}#)
(#{chi\ 461}#
#{then\ 3635}#
#{r\ 3621}#
#{w\ 3622}#
#{mod\ 3624}#)
(#{build-void\ 303}# #f)))
#{tmp\ 3631}#)
(let ((#{tmp\ 3637}#
($sc-dispatch #{tmp\ 3630}# '(_ any any any))))
(if #{tmp\ 3637}#
(@apply
(lambda (#{test\ 3641}#
#{then\ 3642}#
#{else\ 3643}#)
(#{build-conditional\ 307}#
#{s\ 3623}#
(#{chi\ 461}#
#{test\ 3641}#
#{r\ 3621}#
#{w\ 3622}#
#{mod\ 3624}#)
(#{chi\ 461}#
#{then\ 3642}#
#{r\ 3621}#
#{w\ 3622}#
#{mod\ 3624}#)
(#{chi\ 461}#
#{else\ 3643}#
#{r\ 3621}#
#{w\ 3622}#
#{mod\ 3624}#)))
#{tmp\ 3637}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 3630}#))))))))
(#{global-extend\ 375}#
'core
'with-fluids
(lambda (#{e\ 3644}#
#{r\ 3645}#
#{w\ 3646}#
#{s\ 3647}#
#{mod\ 3648}#)
(let ((#{tmp\ 3654}# #{e\ 3644}#))
(let ((#{tmp\ 3655}#
($sc-dispatch
#{tmp\ 3654}#
'(_ #(each (any any)) any . each-any))))
(if #{tmp\ 3655}#
(@apply
(lambda (#{fluid\ 3660}#
#{val\ 3661}#
#{b\ 3662}#
#{b*\ 3663}#)
(#{build-dynlet\ 309}#
#{s\ 3647}#
(map (lambda (#{x\ 3664}#)
(#{chi\ 461}#
#{x\ 3664}#
#{r\ 3645}#
#{w\ 3646}#
#{mod\ 3648}#))
#{fluid\ 3660}#)
(map (lambda (#{x\ 3667}#)
(#{chi\ 461}#
#{x\ 3667}#
#{r\ 3645}#
#{w\ 3646}#
#{mod\ 3648}#))
#{val\ 3661}#)
(#{chi-body\ 469}#
(cons #{b\ 3662}# #{b*\ 3663}#)
(#{source-wrap\ 447}#
#{e\ 3644}#
#{w\ 3646}#
#{s\ 3647}#
#{mod\ 3648}#)
#{r\ 3645}#
#{w\ 3646}#
#{mod\ 3648}#)))
#{tmp\ 3655}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 3654}#))))))
(#{global-extend\ 375}# 'begin 'begin '())
(#{global-extend\ 375}# 'define 'define '())
(#{global-extend\ 375}#
'define-syntax
'define-syntax
'())
(#{global-extend\ 375}#
'eval-when
'eval-when
'())
(#{global-extend\ 375}#
'core
'syntax-case
(letrec*
((#{convert-pattern\ 3672}#
(lambda (#{pattern\ 3679}# #{keys\ 3680}#)
(letrec*
((#{cvt*\ 3684}#
(lambda (#{p*\ 3687}# #{n\ 3688}# #{ids\ 3689}#)
(if (null? #{p*\ 3687}#)
(values '() #{ids\ 3689}#)
(call-with-values
(lambda ()
(#{cvt*\ 3684}#
(cdr #{p*\ 3687}#)
#{n\ 3688}#
#{ids\ 3689}#))
(lambda (#{y\ 3693}# #{ids\ 3694}#)
(call-with-values
(lambda ()
(#{cvt\ 3686}#
(car #{p*\ 3687}#)
#{n\ 3688}#
#{ids\ 3694}#))
(lambda (#{x\ 3697}# #{ids\ 3698}#)
(values
(cons #{x\ 3697}# #{y\ 3693}#)
#{ids\ 3698}#))))))))
(#{cvt\ 3686}#
(lambda (#{p\ 3701}# #{n\ 3702}# #{ids\ 3703}#)
(if (#{id?\ 379}# #{p\ 3701}#)
(if (#{bound-id-member?\ 443}#
#{p\ 3701}#
#{keys\ 3680}#)
(values
(vector 'free-id #{p\ 3701}#)
#{ids\ 3703}#)
(if (#{free-id=?\ 435}#
#{p\ 3701}#
'#(syntax-object
_
((top)
#(ribcage () () ())
#(ribcage
#(p n ids)
#((top) (top) (top))
#("i3704" "i3705" "i3706"))
#(ribcage
(cvt cvt*)
((top) (top))
("i3685" "i3683"))
#(ribcage
#(pattern keys)
#((top) (top))
#("i3681" "i3682"))
#(ribcage
(gen-syntax-case
gen-clause
build-dispatch-call
convert-pattern)
((top) (top) (top) (top))
("i3677" "i3675" "i3673" "i3671"))
#(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
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
maybe-name-value!
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))
("i490"
"i488"
"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"
"i419"
"i418"
"i416"
"i415"
"i414"
"i413"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i393"
"i391"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i381"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i365"
"i364"
"i363"
"i362"
"i361"
"i359"
"i358"
"i356"
"i354"
"i352"
"i350"
"i348"
"i346"
"i344"
"i342"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i324"
"i322"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i252"
"i250"
"i248"
"i246"
"i244"
"i242"
"i240"
"i238"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i40" "i39" "i38" "i36")))
(hygiene guile)))
(values '_ #{ids\ 3703}#)
(values
'any
(cons (cons #{p\ 3701}# #{n\ 3702}#)
#{ids\ 3703}#))))
(let ((#{tmp\ 3712}# #{p\ 3701}#))
(let ((#{tmp\ 3713}#
($sc-dispatch
#{tmp\ 3712}#
'(any any))))
(if (if #{tmp\ 3713}#
(@apply
(lambda (#{x\ 3716}# #{dots\ 3717}#)
(#{ellipsis?\ 477}#
#{dots\ 3717}#))
#{tmp\ 3713}#)
#f)
(@apply
(lambda (#{x\ 3720}# #{dots\ 3721}#)
(call-with-values
(lambda ()
(#{cvt\ 3686}#
#{x\ 3720}#
(#{fx+\ 282}# #{n\ 3702}# 1)
#{ids\ 3703}#))
(lambda (#{p\ 3722}# #{ids\ 3723}#)
(values
(if (eq? #{p\ 3722}# 'any)
'each-any
(vector 'each #{p\ 3722}#))
#{ids\ 3723}#))))
#{tmp\ 3713}#)
(let ((#{tmp\ 3726}#
($sc-dispatch
#{tmp\ 3712}#
'(any any . each-any))))
(if (if #{tmp\ 3726}#
(@apply
(lambda (#{x\ 3730}#
#{dots\ 3731}#
#{ys\ 3732}#)
(#{ellipsis?\ 477}#
#{dots\ 3731}#))
#{tmp\ 3726}#)
#f)
(@apply
(lambda (#{x\ 3736}#
#{dots\ 3737}#
#{ys\ 3738}#)
(call-with-values
(lambda ()
(#{cvt*\ 3684}#
#{ys\ 3738}#
#{n\ 3702}#
#{ids\ 3703}#))
(lambda (#{ys\ 3740}#
#{ids\ 3741}#)
(call-with-values
(lambda ()
(#{cvt\ 3686}#
#{x\ 3736}#
(1+ #{n\ 3702}#)
#{ids\ 3741}#))
(lambda (#{x\ 3744}#
#{ids\ 3745}#)
(values
(vector
'each+
#{x\ 3744}#
(reverse #{ys\ 3740}#)
'())
#{ids\ 3745}#))))))
#{tmp\ 3726}#)
(let ((#{tmp\ 3749}#
($sc-dispatch
#{tmp\ 3712}#
'(any . any))))
(if #{tmp\ 3749}#
(@apply
(lambda (#{x\ 3752}# #{y\ 3753}#)
(call-with-values
(lambda ()
(#{cvt\ 3686}#
#{y\ 3753}#
#{n\ 3702}#
#{ids\ 3703}#))
(lambda (#{y\ 3754}#
#{ids\ 3755}#)
(call-with-values
(lambda ()
(#{cvt\ 3686}#
#{x\ 3752}#
#{n\ 3702}#
#{ids\ 3755}#))
(lambda (#{x\ 3758}#
#{ids\ 3759}#)
(values
(cons #{x\ 3758}#
#{y\ 3754}#)
#{ids\ 3759}#))))))
#{tmp\ 3749}#)
(let ((#{tmp\ 3762}#
($sc-dispatch
#{tmp\ 3712}#
'())))
(if #{tmp\ 3762}#
(@apply
(lambda ()
(values '() #{ids\ 3703}#))
#{tmp\ 3762}#)
(let ((#{tmp\ 3763}#
($sc-dispatch
#{tmp\ 3712}#
'#(vector
each-any))))
(if #{tmp\ 3763}#
(@apply
(lambda (#{x\ 3765}#)
(call-with-values
(lambda ()
(#{cvt\ 3686}#
#{x\ 3765}#
#{n\ 3702}#
#{ids\ 3703}#))
(lambda (#{p\ 3767}#
#{ids\ 3768}#)
(values
(vector
'vector
#{p\ 3767}#)
#{ids\ 3768}#))))
#{tmp\ 3763}#)
(let ((#{x\ 3772}#
#{tmp\ 3712}#))
(values
(vector
'atom
(#{strip\ 487}#
#{p\ 3701}#
'(())))
#{ids\ 3703}#)))))))))))))))))
(begin (#{cvt\ 3686}# #{pattern\ 3679}# 0 '())))))
(#{build-dispatch-call\ 3674}#
(lambda (#{pvars\ 3774}#
#{exp\ 3775}#
#{y\ 3776}#
#{r\ 3777}#
#{mod\ 3778}#)
(begin
(map cdr #{pvars\ 3774}#)
(let ((#{ids\ 3786}# (map car #{pvars\ 3774}#)))
(begin
(let ((#{labels\ 3790}#
(#{gen-labels\ 394}# #{ids\ 3786}#))
(#{new-vars\ 3791}#
(map #{gen-var\ 489}# #{ids\ 3786}#)))
(#{build-application\ 305}#
#f
(#{build-primref\ 329}# #f 'apply)
(list (#{build-simple-lambda\ 323}#
#f
(map syntax->datum #{ids\ 3786}#)
#f
#{new-vars\ 3791}#
'()
(#{chi\ 461}#
#{exp\ 3775}#
(#{extend-env\ 367}#
#{labels\ 3790}#
(map (lambda (#{var\ 3795}#
#{level\ 3796}#)
(cons 'syntax
(cons #{var\ 3795}#
#{level\ 3796}#)))
#{new-vars\ 3791}#
(map cdr #{pvars\ 3774}#))
#{r\ 3777}#)
(#{make-binding-wrap\ 423}#
#{ids\ 3786}#
#{labels\ 3790}#
'(()))
#{mod\ 3778}#))
#{y\ 3776}#))))))))
(#{gen-clause\ 3676}#
(lambda (#{x\ 3802}#
#{keys\ 3803}#
#{clauses\ 3804}#
#{r\ 3805}#
#{pat\ 3806}#
#{fender\ 3807}#
#{exp\ 3808}#
#{mod\ 3809}#)
(call-with-values
(lambda ()
(#{convert-pattern\ 3672}#
#{pat\ 3806}#
#{keys\ 3803}#))
(lambda (#{p\ 3818}# #{pvars\ 3819}#)
(if (not (#{distinct-bound-ids?\ 441}#
(map car #{pvars\ 3819}#)))
(syntax-violation
'syntax-case
"duplicate pattern variable"
#{pat\ 3806}#)
(if (not (and-map
(lambda (#{x\ 3826}#)
(not (#{ellipsis?\ 477}#
(car #{x\ 3826}#))))
#{pvars\ 3819}#))
(syntax-violation
'syntax-case
"misplaced ellipsis"
#{pat\ 3806}#)
(begin
(let ((#{y\ 3830}# (#{gen-var\ 489}# 'tmp)))
(#{build-application\ 305}#
#f
(#{build-simple-lambda\ 323}#
#f
(list 'tmp)
#f
(list #{y\ 3830}#)
'()
(begin
(let ((#{y\ 3834}#
(#{build-lexical-reference\ 311}#
'value
#f
'tmp
#{y\ 3830}#)))
(#{build-conditional\ 307}#
#f
(let ((#{tmp\ 3837}#
#{fender\ 3807}#))
(let ((#{tmp\ 3838}#
($sc-dispatch
#{tmp\ 3837}#
'#(atom #t))))
(if #{tmp\ 3838}#
(@apply
(lambda () #{y\ 3834}#)
#{tmp\ 3838}#)
(let ((#{_\ 3840}#
#{tmp\ 3837}#))
(#{build-conditional\ 307}#
#f
#{y\ 3834}#
(#{build-dispatch-call\ 3674}#
#{pvars\ 3819}#
#{fender\ 3807}#
#{y\ 3834}#
#{r\ 3805}#
#{mod\ 3809}#)
(#{build-data\ 331}#
#f
#f))))))
(#{build-dispatch-call\ 3674}#
#{pvars\ 3819}#
#{exp\ 3808}#
#{y\ 3834}#
#{r\ 3805}#
#{mod\ 3809}#)
(#{gen-syntax-case\ 3678}#
#{x\ 3802}#
#{keys\ 3803}#
#{clauses\ 3804}#
#{r\ 3805}#
#{mod\ 3809}#)))))
(list (if (eq? #{p\ 3818}# 'any)
(#{build-application\ 305}#
#f
(#{build-primref\ 329}# #f 'list)
(list #{x\ 3802}#))
(#{build-application\ 305}#
#f
(#{build-primref\ 329}#
#f
'$sc-dispatch)
(list #{x\ 3802}#
(#{build-data\ 331}#
#f
#{p\ 3818}#))))))))))))))
(#{gen-syntax-case\ 3678}#
(lambda (#{x\ 3848}#
#{keys\ 3849}#
#{clauses\ 3850}#
#{r\ 3851}#
#{mod\ 3852}#)
(if (null? #{clauses\ 3850}#)
(#{build-application\ 305}#
#f
(#{build-primref\ 329}# #f 'syntax-violation)
(list (#{build-data\ 331}# #f #f)
(#{build-data\ 331}#
#f
"source expression failed to match any pattern")
#{x\ 3848}#))
(let ((#{tmp\ 3862}# (car #{clauses\ 3850}#)))
(let ((#{tmp\ 3863}#
($sc-dispatch #{tmp\ 3862}# '(any any))))
(if #{tmp\ 3863}#
(@apply
(lambda (#{pat\ 3866}# #{exp\ 3867}#)
(if (if (#{id?\ 379}# #{pat\ 3866}#)
(and-map
(lambda (#{x\ 3870}#)
(not (#{free-id=?\ 435}#
#{pat\ 3866}#
#{x\ 3870}#)))
(cons '#(syntax-object
...
((top)
#(ribcage
#(pat exp)
#((top) (top))
#("i3864" "i3865"))
#(ribcage () () ())
#(ribcage
#(x keys clauses r mod)
#((top)
(top)
(top)
(top)
(top))
#("i3853"
"i3854"
"i3855"
"i3856"
"i3857"))
#(ribcage
(gen-syntax-case
gen-clause
build-dispatch-call
convert-pattern)
((top) (top) (top) (top))
("i3677"
"i3675"
"i3673"
"i3671"))
#(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
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
maybe-name-value!
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))
("i490"
"i488"
"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"
"i419"
"i418"
"i416"
"i415"
"i414"
"i413"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i393"
"i391"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i381"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i365"
"i364"
"i363"
"i362"
"i361"
"i359"
"i358"
"i356"
"i354"
"i352"
"i350"
"i348"
"i346"
"i344"
"i342"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i324"
"i322"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i252"
"i250"
"i248"
"i246"
"i244"
"i242"
"i240"
"i238"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i40"
"i39"
"i38"
"i36")))
(hygiene guile))
#{keys\ 3849}#))
#f)
(if (#{free-id=?\ 435}#
'#(syntax-object
pad
((top)
#(ribcage
#(pat exp)
#((top) (top))
#("i3864" "i3865"))
#(ribcage () () ())
#(ribcage
#(x keys clauses r mod)
#((top) (top) (top) (top) (top))
#("i3853"
"i3854"
"i3855"
"i3856"
"i3857"))
#(ribcage
(gen-syntax-case
gen-clause
build-dispatch-call
convert-pattern)
((top) (top) (top) (top))
("i3677"
"i3675"
"i3673"
"i3671"))
#(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
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
maybe-name-value!
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))
("i490"
"i488"
"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"
"i419"
"i418"
"i416"
"i415"
"i414"
"i413"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i393"
"i391"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i381"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i365"
"i364"
"i363"
"i362"
"i361"
"i359"
"i358"
"i356"
"i354"
"i352"
"i350"
"i348"
"i346"
"i344"
"i342"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i324"
"i322"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i252"
"i250"
"i248"
"i246"
"i244"
"i242"
"i240"
"i238"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i40" "i39" "i38" "i36")))
(hygiene guile))
'#(syntax-object
_
((top)
#(ribcage
#(pat exp)
#((top) (top))
#("i3864" "i3865"))
#(ribcage () () ())
#(ribcage
#(x keys clauses r mod)
#((top) (top) (top) (top) (top))
#("i3853"
"i3854"
"i3855"
"i3856"
"i3857"))
#(ribcage
(gen-syntax-case
gen-clause
build-dispatch-call
convert-pattern)
((top) (top) (top) (top))
("i3677"
"i3675"
"i3673"
"i3671"))
#(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
build-global-assignment
build-global-reference
analyze-variable
build-lexical-assignment
build-lexical-reference
build-dynlet
build-conditional
build-application
build-void
maybe-name-value!
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))
("i490"
"i488"
"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"
"i419"
"i418"
"i416"
"i415"
"i414"
"i413"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i393"
"i391"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i381"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i365"
"i364"
"i363"
"i362"
"i361"
"i359"
"i358"
"i356"
"i354"
"i352"
"i350"
"i348"
"i346"
"i344"
"i342"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i324"
"i322"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i252"
"i250"
"i248"
"i246"
"i244"
"i242"
"i240"
"i238"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i40" "i39" "i38" "i36")))
(hygiene guile)))
(#{chi\ 461}#
#{exp\ 3867}#
#{r\ 3851}#
'(())
#{mod\ 3852}#)
(begin
(let ((#{labels\ 3875}#
(list (#{gen-label\ 392}#)))
(#{var\ 3876}#
(#{gen-var\ 489}#
#{pat\ 3866}#)))
(#{build-application\ 305}#
#f
(#{build-simple-lambda\ 323}#
#f
(list (syntax->datum
#{pat\ 3866}#))
#f
(list #{var\ 3876}#)
'()
(#{chi\ 461}#
#{exp\ 3867}#
(#{extend-env\ 367}#
#{labels\ 3875}#
(list (cons 'syntax
(cons #{var\ 3876}#
0)))
#{r\ 3851}#)
(#{make-binding-wrap\ 423}#
(list #{pat\ 3866}#)
#{labels\ 3875}#
'(()))
#{mod\ 3852}#))
(list #{x\ 3848}#)))))
(#{gen-clause\ 3676}#
#{x\ 3848}#
#{keys\ 3849}#
(cdr #{clauses\ 3850}#)
#{r\ 3851}#
#{pat\ 3866}#
#t
#{exp\ 3867}#
#{mod\ 3852}#)))
#{tmp\ 3863}#)
(let ((#{tmp\ 3882}#
($sc-dispatch
#{tmp\ 3862}#
'(any any any))))
(if #{tmp\ 3882}#
(@apply
(lambda (#{pat\ 3886}#
#{fender\ 3887}#
#{exp\ 3888}#)
(#{gen-clause\ 3676}#
#{x\ 3848}#
#{keys\ 3849}#
(cdr #{clauses\ 3850}#)
#{r\ 3851}#
#{pat\ 3886}#
#{fender\ 3887}#
#{exp\ 3888}#
#{mod\ 3852}#))
#{tmp\ 3882}#)
(let ((#{_\ 3890}# #{tmp\ 3862}#))
(syntax-violation
'syntax-case
"invalid clause"
(car #{clauses\ 3850}#))))))))))))
(begin
(lambda (#{e\ 3891}#
#{r\ 3892}#
#{w\ 3893}#
#{s\ 3894}#
#{mod\ 3895}#)
(begin
(let ((#{e\ 3902}#
(#{source-wrap\ 447}#
#{e\ 3891}#
#{w\ 3893}#
#{s\ 3894}#
#{mod\ 3895}#)))
(let ((#{tmp\ 3903}# #{e\ 3902}#))
(let ((#{tmp\ 3904}#
($sc-dispatch
#{tmp\ 3903}#
'(_ any each-any . each-any))))
(if #{tmp\ 3904}#
(@apply
(lambda (#{val\ 3908}#
#{key\ 3909}#
#{m\ 3910}#)
(if (and-map
(lambda (#{x\ 3911}#)
(if (#{id?\ 379}# #{x\ 3911}#)
(not (#{ellipsis?\ 477}#
#{x\ 3911}#))
#f))
#{key\ 3909}#)
(begin
(let ((#{x\ 3917}#
(#{gen-var\ 489}# 'tmp)))
(#{build-application\ 305}#
#{s\ 3894}#
(#{build-simple-lambda\ 323}#
#f
(list 'tmp)
#f
(list #{x\ 3917}#)
'()
(#{gen-syntax-case\ 3678}#
(#{build-lexical-reference\ 311}#
'value
#f
'tmp
#{x\ 3917}#)
#{key\ 3909}#
#{m\ 3910}#
#{r\ 3892}#
#{mod\ 3895}#))
(list (#{chi\ 461}#
#{val\ 3908}#
#{r\ 3892}#
'(())
#{mod\ 3895}#)))))
(syntax-violation
'syntax-case
"invalid literals list"
#{e\ 3902}#)))
#{tmp\ 3904}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 3903}#))))))))))
(set! macroexpand
(lambda*
(#{x\ 3923}#
#:optional
(#{m\ 3925}# 'e)
(#{esew\ 3927}# '(eval)))
(#{chi-top\ 459}#
#{x\ 3923}#
'()
'((top))
#{m\ 3925}#
#{esew\ 3927}#
(cons 'hygiene (module-name (current-module))))))
(set! identifier?
(lambda (#{x\ 3931}#)
(#{nonsymbol-id?\ 377}# #{x\ 3931}#)))
(set! datum->syntax
(lambda (#{id\ 3933}# #{datum\ 3934}#)
(#{make-syntax-object\ 343}#
#{datum\ 3934}#
(#{syntax-object-wrap\ 349}# #{id\ 3933}#)
(#{syntax-object-module\ 351}# #{id\ 3933}#))))
(set! syntax->datum
(lambda (#{x\ 3937}#)
(#{strip\ 487}# #{x\ 3937}# '(()))))
(set! syntax-source
(lambda (#{x\ 3940}#)
(#{source-annotation\ 360}# #{x\ 3940}#)))
(set! generate-temporaries
(lambda (#{ls\ 3942}#)
(begin
(begin
(let ((#{x\ 3946}# #{ls\ 3942}#))
(if (not (list? #{x\ 3946}#))
(syntax-violation
'generate-temporaries
"invalid argument"
#{x\ 3946}#))))
(map (lambda (#{x\ 3947}#)
(#{wrap\ 445}# (gensym) '((top)) #f))
#{ls\ 3942}#))))
(set! free-identifier=?
(lambda (#{x\ 3951}# #{y\ 3952}#)
(begin
(begin
(let ((#{x\ 3957}# #{x\ 3951}#))
(if (not (#{nonsymbol-id?\ 377}# #{x\ 3957}#))
(syntax-violation
'free-identifier=?
"invalid argument"
#{x\ 3957}#))))
(begin
(let ((#{x\ 3960}# #{y\ 3952}#))
(if (not (#{nonsymbol-id?\ 377}# #{x\ 3960}#))
(syntax-violation
'free-identifier=?
"invalid argument"
#{x\ 3960}#))))
(#{free-id=?\ 435}# #{x\ 3951}# #{y\ 3952}#))))
(set! bound-identifier=?
(lambda (#{x\ 3961}# #{y\ 3962}#)
(begin
(begin
(let ((#{x\ 3967}# #{x\ 3961}#))
(if (not (#{nonsymbol-id?\ 377}# #{x\ 3967}#))
(syntax-violation
'bound-identifier=?
"invalid argument"
#{x\ 3967}#))))
(begin
(let ((#{x\ 3970}# #{y\ 3962}#))
(if (not (#{nonsymbol-id?\ 377}# #{x\ 3970}#))
(syntax-violation
'bound-identifier=?
"invalid argument"
#{x\ 3970}#))))
(#{bound-id=?\ 437}# #{x\ 3961}# #{y\ 3962}#))))
(set! syntax-violation
(lambda*
(#{who\ 3971}#
#{message\ 3972}#
#{form\ 3973}#
#:optional
(#{subform\ 3977}# #f))
(begin
(begin
(let ((#{x\ 3981}# #{who\ 3971}#))
(if (not (let ((#{x\ 3982}# #{x\ 3981}#))
(begin
(let ((#{t\ 3986}# (not #{x\ 3982}#)))
(if #{t\ 3986}#
#{t\ 3986}#
(begin
(let ((#{t\ 3989}#
(string? #{x\ 3982}#)))
(if #{t\ 3989}#
#{t\ 3989}#
(symbol? #{x\ 3982}#)))))))))
(syntax-violation
'syntax-violation
"invalid argument"
#{x\ 3981}#))))
(begin
(let ((#{x\ 3993}# #{message\ 3972}#))
(if (not (string? #{x\ 3993}#))
(syntax-violation
'syntax-violation
"invalid argument"
#{x\ 3993}#))))
(throw 'syntax-error
#{who\ 3971}#
#{message\ 3972}#
(#{source-annotation\ 360}#
(begin
(let ((#{t\ 3996}# #{form\ 3973}#))
(if #{t\ 3996}#
#{t\ 3996}#
#{subform\ 3977}#))))
(#{strip\ 487}# #{form\ 3973}# '(()))
(if #{subform\ 3977}#
(#{strip\ 487}# #{subform\ 3977}# '(()))
#f)))))
(letrec*
((#{match-each\ 4003}#
(lambda (#{e\ 4016}#
#{p\ 4017}#
#{w\ 4018}#
#{mod\ 4019}#)
(if (pair? #{e\ 4016}#)
(begin
(let ((#{first\ 4027}#
(#{match\ 4015}#
(car #{e\ 4016}#)
#{p\ 4017}#
#{w\ 4018}#
'()
#{mod\ 4019}#)))
(if #{first\ 4027}#
(begin
(let ((#{rest\ 4031}#
(#{match-each\ 4003}#
(cdr #{e\ 4016}#)
#{p\ 4017}#
#{w\ 4018}#
#{mod\ 4019}#)))
(if #{rest\ 4031}#
(cons #{first\ 4027}# #{rest\ 4031}#)
#f)))
#f)))
(if (null? #{e\ 4016}#)
'()
(if (#{syntax-object?\ 345}# #{e\ 4016}#)
(#{match-each\ 4003}#
(#{syntax-object-expression\ 347}# #{e\ 4016}#)
#{p\ 4017}#
(#{join-wraps\ 427}#
#{w\ 4018}#
(#{syntax-object-wrap\ 349}# #{e\ 4016}#))
(#{syntax-object-module\ 351}# #{e\ 4016}#))
#f)))))
(#{match-each+\ 4005}#
(lambda (#{e\ 4039}#
#{x-pat\ 4040}#
#{y-pat\ 4041}#
#{z-pat\ 4042}#
#{w\ 4043}#
#{r\ 4044}#
#{mod\ 4045}#)
(letrec*
((#{f\ 4056}#
(lambda (#{e\ 4057}# #{w\ 4058}#)
(if (pair? #{e\ 4057}#)
(call-with-values
(lambda ()
(#{f\ 4056}# (cdr #{e\ 4057}#) #{w\ 4058}#))
(lambda (#{xr*\ 4061}#
#{y-pat\ 4062}#
#{r\ 4063}#)
(if #{r\ 4063}#
(if (null? #{y-pat\ 4062}#)
(begin
(let ((#{xr\ 4068}#
(#{match\ 4015}#
(car #{e\ 4057}#)
#{x-pat\ 4040}#
#{w\ 4058}#
'()
#{mod\ 4045}#)))
(if #{xr\ 4068}#
(values
(cons #{xr\ 4068}# #{xr*\ 4061}#)
#{y-pat\ 4062}#
#{r\ 4063}#)
(values #f #f #f))))
(values
'()
(cdr #{y-pat\ 4062}#)
(#{match\ 4015}#
(car #{e\ 4057}#)
(car #{y-pat\ 4062}#)
#{w\ 4058}#
#{r\ 4063}#
#{mod\ 4045}#)))
(values #f #f #f))))
(if (#{syntax-object?\ 345}# #{e\ 4057}#)
(#{f\ 4056}#
(#{syntax-object-expression\ 347}# #{e\ 4057}#)
(#{join-wraps\ 427}# #{w\ 4058}# #{e\ 4057}#))
(values
'()
#{y-pat\ 4041}#
(#{match\ 4015}#
#{e\ 4057}#
#{z-pat\ 4042}#
#{w\ 4058}#
#{r\ 4044}#
#{mod\ 4045}#)))))))
(begin (#{f\ 4056}# #{e\ 4039}# #{w\ 4043}#)))))
(#{match-each-any\ 4007}#
(lambda (#{e\ 4072}# #{w\ 4073}# #{mod\ 4074}#)
(if (pair? #{e\ 4072}#)
(begin
(let ((#{l\ 4081}#
(#{match-each-any\ 4007}#
(cdr #{e\ 4072}#)
#{w\ 4073}#
#{mod\ 4074}#)))
(if #{l\ 4081}#
(cons (#{wrap\ 445}#
(car #{e\ 4072}#)
#{w\ 4073}#
#{mod\ 4074}#)
#{l\ 4081}#)
#f)))
(if (null? #{e\ 4072}#)
'()
(if (#{syntax-object?\ 345}# #{e\ 4072}#)
(#{match-each-any\ 4007}#
(#{syntax-object-expression\ 347}# #{e\ 4072}#)
(#{join-wraps\ 427}#
#{w\ 4073}#
(#{syntax-object-wrap\ 349}# #{e\ 4072}#))
#{mod\ 4074}#)
#f)))))
(#{match-empty\ 4009}#
(lambda (#{p\ 4089}# #{r\ 4090}#)
(if (null? #{p\ 4089}#)
#{r\ 4090}#
(if (eq? #{p\ 4089}# '_)
#{r\ 4090}#
(if (eq? #{p\ 4089}# 'any)
(cons '() #{r\ 4090}#)
(if (pair? #{p\ 4089}#)
(#{match-empty\ 4009}#
(car #{p\ 4089}#)
(#{match-empty\ 4009}#
(cdr #{p\ 4089}#)
#{r\ 4090}#))
(if (eq? #{p\ 4089}# 'each-any)
(cons '() #{r\ 4090}#)
(begin
(let ((#{atom-key\ 4106}#
(vector-ref #{p\ 4089}# 0)))
(if (eqv? #{atom-key\ 4106}# 'each)
(#{match-empty\ 4009}#
(vector-ref #{p\ 4089}# 1)
#{r\ 4090}#)
(if (eqv? #{atom-key\ 4106}# 'each+)
(#{match-empty\ 4009}#
(vector-ref #{p\ 4089}# 1)
(#{match-empty\ 4009}#
(reverse (vector-ref #{p\ 4089}# 2))
(#{match-empty\ 4009}#
(vector-ref #{p\ 4089}# 3)
#{r\ 4090}#)))
(if (if (eqv? #{atom-key\ 4106}# 'free-id)
#t
(eqv? #{atom-key\ 4106}# 'atom))
#{r\ 4090}#
(if (eqv? #{atom-key\ 4106}# 'vector)
(#{match-empty\ 4009}#
(vector-ref #{p\ 4089}# 1)
#{r\ 4090}#))))))))))))))
(#{combine\ 4011}#
(lambda (#{r*\ 4111}# #{r\ 4112}#)
(if (null? (car #{r*\ 4111}#))
#{r\ 4112}#
(cons (map car #{r*\ 4111}#)
(#{combine\ 4011}#
(map cdr #{r*\ 4111}#)
#{r\ 4112}#)))))
(#{match*\ 4013}#
(lambda (#{e\ 4115}#
#{p\ 4116}#
#{w\ 4117}#
#{r\ 4118}#
#{mod\ 4119}#)
(if (null? #{p\ 4116}#)
(if (null? #{e\ 4115}#) #{r\ 4118}# #f)
(if (pair? #{p\ 4116}#)
(if (pair? #{e\ 4115}#)
(#{match\ 4015}#
(car #{e\ 4115}#)
(car #{p\ 4116}#)
#{w\ 4117}#
(#{match\ 4015}#
(cdr #{e\ 4115}#)
(cdr #{p\ 4116}#)
#{w\ 4117}#
#{r\ 4118}#
#{mod\ 4119}#)
#{mod\ 4119}#)
#f)
(if (eq? #{p\ 4116}# 'each-any)
(begin
(let ((#{l\ 4136}#
(#{match-each-any\ 4007}#
#{e\ 4115}#
#{w\ 4117}#
#{mod\ 4119}#)))
(if #{l\ 4136}#
(cons #{l\ 4136}# #{r\ 4118}#)
#f)))
(begin
(let ((#{atom-key\ 4142}#
(vector-ref #{p\ 4116}# 0)))
(if (eqv? #{atom-key\ 4142}# 'each)
(if (null? #{e\ 4115}#)
(#{match-empty\ 4009}#
(vector-ref #{p\ 4116}# 1)
#{r\ 4118}#)
(begin
(let ((#{l\ 4145}#
(#{match-each\ 4003}#
#{e\ 4115}#
(vector-ref #{p\ 4116}# 1)
#{w\ 4117}#
#{mod\ 4119}#)))
(if #{l\ 4145}#
(letrec*
((#{collect\ 4150}#
(lambda (#{l\ 4151}#)
(if (null? (car #{l\ 4151}#))
#{r\ 4118}#
(cons (map car #{l\ 4151}#)
(#{collect\ 4150}#
(map cdr
#{l\ 4151}#)))))))
(begin
(#{collect\ 4150}# #{l\ 4145}#)))
#f))))
(if (eqv? #{atom-key\ 4142}# 'each+)
(call-with-values
(lambda ()
(#{match-each+\ 4005}#
#{e\ 4115}#
(vector-ref #{p\ 4116}# 1)
(vector-ref #{p\ 4116}# 2)
(vector-ref #{p\ 4116}# 3)
#{w\ 4117}#
#{r\ 4118}#
#{mod\ 4119}#))
(lambda (#{xr*\ 4153}#
#{y-pat\ 4154}#
#{r\ 4155}#)
(if #{r\ 4155}#
(if (null? #{y-pat\ 4154}#)
(if (null? #{xr*\ 4153}#)
(#{match-empty\ 4009}#
(vector-ref #{p\ 4116}# 1)
#{r\ 4155}#)
(#{combine\ 4011}#
#{xr*\ 4153}#
#{r\ 4155}#))
#f)
#f)))
(if (eqv? #{atom-key\ 4142}# 'free-id)
(if (#{id?\ 379}# #{e\ 4115}#)
(if (#{free-id=?\ 435}#
(#{wrap\ 445}#
#{e\ 4115}#
#{w\ 4117}#
#{mod\ 4119}#)
(vector-ref #{p\ 4116}# 1))
#{r\ 4118}#
#f)
#f)
(if (eqv? #{atom-key\ 4142}# 'atom)
(if (equal?
(vector-ref #{p\ 4116}# 1)
(#{strip\ 487}#
#{e\ 4115}#
#{w\ 4117}#))
#{r\ 4118}#
#f)
(if (eqv? #{atom-key\ 4142}# 'vector)
(if (vector? #{e\ 4115}#)
(#{match\ 4015}#
(vector->list #{e\ 4115}#)
(vector-ref #{p\ 4116}# 1)
#{w\ 4117}#
#{r\ 4118}#
#{mod\ 4119}#)
#f)))))))))))))
(#{match\ 4015}#
(lambda (#{e\ 4172}#
#{p\ 4173}#
#{w\ 4174}#
#{r\ 4175}#
#{mod\ 4176}#)
(if (not #{r\ 4175}#)
#f
(if (eq? #{p\ 4173}# '_)
#{r\ 4175}#
(if (eq? #{p\ 4173}# 'any)
(cons (#{wrap\ 445}#
#{e\ 4172}#
#{w\ 4174}#
#{mod\ 4176}#)
#{r\ 4175}#)
(if (#{syntax-object?\ 345}# #{e\ 4172}#)
(#{match*\ 4013}#
(#{syntax-object-expression\ 347}# #{e\ 4172}#)
#{p\ 4173}#
(#{join-wraps\ 427}#
#{w\ 4174}#
(#{syntax-object-wrap\ 349}# #{e\ 4172}#))
#{r\ 4175}#
(#{syntax-object-module\ 351}# #{e\ 4172}#))
(#{match*\ 4013}#
#{e\ 4172}#
#{p\ 4173}#
#{w\ 4174}#
#{r\ 4175}#
#{mod\ 4176}#))))))))
(begin
(set! $sc-dispatch
(lambda (#{e\ 4191}# #{p\ 4192}#)
(if (eq? #{p\ 4192}# 'any)
(list #{e\ 4191}#)
(if (eq? #{p\ 4192}# '_)
'()
(if (#{syntax-object?\ 345}# #{e\ 4191}#)
(#{match*\ 4013}#
(#{syntax-object-expression\ 347}# #{e\ 4191}#)
#{p\ 4192}#
(#{syntax-object-wrap\ 349}# #{e\ 4191}#)
'()
(#{syntax-object-module\ 351}# #{e\ 4191}#))
(#{match*\ 4013}#
#{e\ 4191}#
#{p\ 4192}#
'(())
'()
#f))))))))))))))
(define with-syntax
(make-syntax-transformer
'with-syntax
'macro
(lambda (#{x\ 4203}#)
(let ((#{tmp\ 4205}# #{x\ 4203}#))
(let ((#{tmp\ 4206}#
($sc-dispatch
#{tmp\ 4205}#
'(_ () any . each-any))))
(if #{tmp\ 4206}#
(@apply
(lambda (#{e1\ 4209}# #{e2\ 4210}#)
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4207" "i4208"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4204")))
(hygiene guile))
(cons #{e1\ 4209}# #{e2\ 4210}#)))
#{tmp\ 4206}#)
(let ((#{tmp\ 4212}#
($sc-dispatch
#{tmp\ 4205}#
'(_ ((any any)) any . each-any))))
(if #{tmp\ 4212}#
(@apply
(lambda (#{out\ 4217}#
#{in\ 4218}#
#{e1\ 4219}#
#{e2\ 4220}#)
(list '#(syntax-object
syntax-case
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
#("i4213" "i4214" "i4215" "i4216"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4204")))
(hygiene guile))
#{in\ 4218}#
'()
(list #{out\ 4217}#
(cons '#(syntax-object
begin
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
#("i4213" "i4214" "i4215" "i4216"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4204")))
(hygiene guile))
(cons #{e1\ 4219}# #{e2\ 4220}#)))))
#{tmp\ 4212}#)
(let ((#{tmp\ 4222}#
($sc-dispatch
#{tmp\ 4205}#
'(_ #(each (any any)) any . each-any))))
(if #{tmp\ 4222}#
(@apply
(lambda (#{out\ 4227}#
#{in\ 4228}#
#{e1\ 4229}#
#{e2\ 4230}#)
(list '#(syntax-object
syntax-case
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
#("i4223" "i4224" "i4225" "i4226"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4204")))
(hygiene guile))
(cons '#(syntax-object
list
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
#("i4223" "i4224" "i4225" "i4226"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4204")))
(hygiene guile))
#{in\ 4228}#)
'()
(list #{out\ 4227}#
(cons '#(syntax-object
begin
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
#("i4223"
"i4224"
"i4225"
"i4226"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4204")))
(hygiene guile))
(cons #{e1\ 4229}# #{e2\ 4230}#)))))
#{tmp\ 4222}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4205}#)))))))))))
(define syntax-rules
(make-syntax-transformer
'syntax-rules
'macro
(lambda (#{x\ 4234}#)
(let ((#{tmp\ 4236}# #{x\ 4234}#))
(let ((#{tmp\ 4237}#
($sc-dispatch
#{tmp\ 4236}#
'(_ each-any . #(each ((any . any) any))))))
(if #{tmp\ 4237}#
(@apply
(lambda (#{k\ 4242}#
#{keyword\ 4243}#
#{pattern\ 4244}#
#{template\ 4245}#)
(list '#(syntax-object
lambda
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4238" "i4239" "i4240" "i4241"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4235")))
(hygiene guile))
'(#(syntax-object
x
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4238" "i4239" "i4240" "i4241"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4235")))
(hygiene guile)))
(vector
'(#(syntax-object
macro-type
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4238" "i4239" "i4240" "i4241"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4235")))
(hygiene guile))
.
#(syntax-object
syntax-rules
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4238" "i4239" "i4240" "i4241"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4235")))
(hygiene guile)))
(cons '#(syntax-object
patterns
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4238" "i4239" "i4240" "i4241"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4235")))
(hygiene guile))
#{pattern\ 4244}#))
(cons '#(syntax-object
syntax-case
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4238" "i4239" "i4240" "i4241"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4235")))
(hygiene guile))
(cons '#(syntax-object
x
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4238" "i4239" "i4240" "i4241"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4235")))
(hygiene guile))
(cons #{k\ 4242}#
(map (lambda (#{tmp\ 4249}#
#{tmp\ 4248}#)
(list (cons '#(syntax-object
dummy
((top)
#(ribcage
#(k
keyword
pattern
template)
#((top)
(top)
(top)
(top))
#("i4238"
"i4239"
"i4240"
"i4241"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4235")))
(hygiene guile))
#{tmp\ 4248}#)
(list '#(syntax-object
syntax
((top)
#(ribcage
#(k
keyword
pattern
template)
#((top)
(top)
(top)
(top))
#("i4238"
"i4239"
"i4240"
"i4241"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4235")))
(hygiene guile))
#{tmp\ 4249}#)))
#{template\ 4245}#
#{pattern\ 4244}#))))))
#{tmp\ 4237}#)
(let ((#{tmp\ 4250}#
($sc-dispatch
#{tmp\ 4236}#
'(_ each-any any . #(each ((any . any) any))))))
(if (if #{tmp\ 4250}#
(@apply
(lambda (#{k\ 4256}#
#{docstring\ 4257}#
#{keyword\ 4258}#
#{pattern\ 4259}#
#{template\ 4260}#)
(string? (syntax->datum #{docstring\ 4257}#)))
#{tmp\ 4250}#)
#f)
(@apply
(lambda (#{k\ 4266}#
#{docstring\ 4267}#
#{keyword\ 4268}#
#{pattern\ 4269}#
#{template\ 4270}#)
(list '#(syntax-object
lambda
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4261" "i4262" "i4263" "i4264" "i4265"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4235")))
(hygiene guile))
'(#(syntax-object
x
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4261" "i4262" "i4263" "i4264" "i4265"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4235")))
(hygiene guile)))
#{docstring\ 4267}#
(vector
'(#(syntax-object
macro-type
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4261" "i4262" "i4263" "i4264" "i4265"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4235")))
(hygiene guile))
.
#(syntax-object
syntax-rules
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4261" "i4262" "i4263" "i4264" "i4265"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4235")))
(hygiene guile)))
(cons '#(syntax-object
patterns
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4261"
"i4262"
"i4263"
"i4264"
"i4265"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4235")))
(hygiene guile))
#{pattern\ 4269}#))
(cons '#(syntax-object
syntax-case
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4261"
"i4262"
"i4263"
"i4264"
"i4265"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4235")))
(hygiene guile))
(cons '#(syntax-object
x
((top)
#(ribcage
#(k
docstring
keyword
pattern
template)
#((top) (top) (top) (top) (top))
#("i4261"
"i4262"
"i4263"
"i4264"
"i4265"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4235")))
(hygiene guile))
(cons #{k\ 4266}#
(map (lambda (#{tmp\ 4274}#
#{tmp\ 4273}#)
(list (cons '#(syntax-object
dummy
((top)
#(ribcage
#(k
docstring
keyword
pattern
template)
#((top)
(top)
(top)
(top)
(top))
#("i4261"
"i4262"
"i4263"
"i4264"
"i4265"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4235")))
(hygiene
guile))
#{tmp\ 4273}#)
(list '#(syntax-object
syntax
((top)
#(ribcage
#(k
docstring
keyword
pattern
template)
#((top)
(top)
(top)
(top)
(top))
#("i4261"
"i4262"
"i4263"
"i4264"
"i4265"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4235")))
(hygiene
guile))
#{tmp\ 4274}#)))
#{template\ 4270}#
#{pattern\ 4269}#))))))
#{tmp\ 4250}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4236}#)))))))))
(define let*
(make-syntax-transformer
'let*
'macro
(lambda (#{x\ 4275}#)
(let ((#{tmp\ 4277}# #{x\ 4275}#))
(let ((#{tmp\ 4278}#
($sc-dispatch
#{tmp\ 4277}#
'(any #(each (any any)) any . each-any))))
(if (if #{tmp\ 4278}#
(@apply
(lambda (#{let*\ 4284}#
#{x\ 4285}#
#{v\ 4286}#
#{e1\ 4287}#
#{e2\ 4288}#)
(and-map identifier? #{x\ 4285}#))
#{tmp\ 4278}#)
#f)
(@apply
(lambda (#{let*\ 4295}#
#{x\ 4296}#
#{v\ 4297}#
#{e1\ 4298}#
#{e2\ 4299}#)
(letrec*
((#{f\ 4302}#
(lambda (#{bindings\ 4303}#)
(if (null? #{bindings\ 4303}#)
(cons '#(syntax-object
let
((top)
#(ribcage () () ())
#(ribcage
#(f bindings)
#((top) (top))
#("i4300" "i4301"))
#(ribcage
#(let* x v e1 e2)
#((top) (top) (top) (top) (top))
#("i4290"
"i4291"
"i4292"
"i4293"
"i4294"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4276")))
(hygiene guile))
(cons '() (cons #{e1\ 4298}# #{e2\ 4299}#)))
(let ((#{tmp\ 4308}#
(list (#{f\ 4302}# (cdr #{bindings\ 4303}#))
(car #{bindings\ 4303}#))))
(let ((#{tmp\ 4309}#
($sc-dispatch #{tmp\ 4308}# '(any any))))
(if #{tmp\ 4309}#
(@apply
(lambda (#{body\ 4312}# #{binding\ 4313}#)
(list '#(syntax-object
let
((top)
#(ribcage
#(body binding)
#((top) (top))
#("i4310" "i4311"))
#(ribcage () () ())
#(ribcage
#(f bindings)
#((top) (top))
#("i4300" "i4301"))
#(ribcage
#(let* x v e1 e2)
#((top) (top) (top) (top) (top))
#("i4290"
"i4291"
"i4292"
"i4293"
"i4294"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4276")))
(hygiene guile))
(list #{binding\ 4313}#)
#{body\ 4312}#))
#{tmp\ 4309}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4308}#))))))))
(begin
(#{f\ 4302}# (map list #{x\ 4296}# #{v\ 4297}#)))))
#{tmp\ 4278}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4277}#)))))))
(define do
(make-syntax-transformer
'do
'macro
(lambda (#{orig-x\ 4314}#)
(let ((#{tmp\ 4316}# #{orig-x\ 4314}#))
(let ((#{tmp\ 4317}#
($sc-dispatch
#{tmp\ 4316}#
'(_ #(each (any any . any))
(any . each-any)
.
each-any))))
(if #{tmp\ 4317}#
(@apply
(lambda (#{var\ 4324}#
#{init\ 4325}#
#{step\ 4326}#
#{e0\ 4327}#
#{e1\ 4328}#
#{c\ 4329}#)
(let ((#{tmp\ 4331}#
(map (lambda (#{v\ 4352}# #{s\ 4353}#)
(let ((#{tmp\ 4356}# #{s\ 4353}#))
(let ((#{tmp\ 4357}#
($sc-dispatch #{tmp\ 4356}# '())))
(if #{tmp\ 4357}#
(@apply
(lambda () #{v\ 4352}#)
#{tmp\ 4357}#)
(let ((#{tmp\ 4358}#
($sc-dispatch
#{tmp\ 4356}#
'(any))))
(if #{tmp\ 4358}#
(@apply
(lambda (#{e\ 4360}#) #{e\ 4360}#)
#{tmp\ 4358}#)
(let ((#{_\ 4362}# #{tmp\ 4356}#))
(syntax-violation
'do
"bad step expression"
#{orig-x\ 4314}#
#{s\ 4353}#))))))))
#{var\ 4324}#
#{step\ 4326}#)))
(let ((#{tmp\ 4332}#
($sc-dispatch #{tmp\ 4331}# 'each-any)))
(if #{tmp\ 4332}#
(@apply
(lambda (#{step\ 4334}#)
(let ((#{tmp\ 4335}# #{e1\ 4328}#))
(let ((#{tmp\ 4336}#
($sc-dispatch #{tmp\ 4335}# '())))
(if #{tmp\ 4336}#
(@apply
(lambda ()
(list '#(syntax-object
let
((top)
#(ribcage
#(step)
#((top))
#("i4333"))
#(ribcage
#(var init step e0 e1 c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4318"
"i4319"
"i4320"
"i4321"
"i4322"
"i4323"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4315")))
(hygiene guile))
'#(syntax-object
doloop
((top)
#(ribcage
#(step)
#((top))
#("i4333"))
#(ribcage
#(var init step e0 e1 c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4318"
"i4319"
"i4320"
"i4321"
"i4322"
"i4323"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4315")))
(hygiene guile))
(map list
#{var\ 4324}#
#{init\ 4325}#)
(list '#(syntax-object
if
((top)
#(ribcage
#(step)
#((top))
#("i4333"))
#(ribcage
#(var init step e0 e1 c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4318"
"i4319"
"i4320"
"i4321"
"i4322"
"i4323"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4315")))
(hygiene guile))
(list '#(syntax-object
not
((top)
#(ribcage
#(step)
#((top))
#("i4333"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4318"
"i4319"
"i4320"
"i4321"
"i4322"
"i4323"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4315")))
(hygiene guile))
#{e0\ 4327}#)
(cons '#(syntax-object
begin
((top)
#(ribcage
#(step)
#((top))
#("i4333"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4318"
"i4319"
"i4320"
"i4321"
"i4322"
"i4323"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4315")))
(hygiene guile))
(append
#{c\ 4329}#
(list (cons '#(syntax-object
doloop
((top)
#(ribcage
#(step)
#((top))
#("i4333"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4318"
"i4319"
"i4320"
"i4321"
"i4322"
"i4323"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4315")))
(hygiene
guile))
#{step\ 4334}#)))))))
#{tmp\ 4336}#)
(let ((#{tmp\ 4341}#
($sc-dispatch
#{tmp\ 4335}#
'(any . each-any))))
(if #{tmp\ 4341}#
(@apply
(lambda (#{e1\ 4344}# #{e2\ 4345}#)
(list '#(syntax-object
let
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4342" "i4343"))
#(ribcage
#(step)
#((top))
#("i4333"))
#(ribcage
#(var init step e0 e1 c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4318"
"i4319"
"i4320"
"i4321"
"i4322"
"i4323"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4315")))
(hygiene guile))
'#(syntax-object
doloop
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4342" "i4343"))
#(ribcage
#(step)
#((top))
#("i4333"))
#(ribcage
#(var init step e0 e1 c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4318"
"i4319"
"i4320"
"i4321"
"i4322"
"i4323"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4315")))
(hygiene guile))
(map list
#{var\ 4324}#
#{init\ 4325}#)
(list '#(syntax-object
if
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4342" "i4343"))
#(ribcage
#(step)
#((top))
#("i4333"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4318"
"i4319"
"i4320"
"i4321"
"i4322"
"i4323"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4315")))
(hygiene guile))
#{e0\ 4327}#
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4342"
"i4343"))
#(ribcage
#(step)
#((top))
#("i4333"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4318"
"i4319"
"i4320"
"i4321"
"i4322"
"i4323"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4315")))
(hygiene guile))
(cons #{e1\ 4344}#
#{e2\ 4345}#))
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4342"
"i4343"))
#(ribcage
#(step)
#((top))
#("i4333"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4318"
"i4319"
"i4320"
"i4321"
"i4322"
"i4323"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4315")))
(hygiene guile))
(append
#{c\ 4329}#
(list (cons '#(syntax-object
doloop
((top)
#(ribcage
#(e1
e2)
#((top)
(top))
#("i4342"
"i4343"))
#(ribcage
#(step)
#((top))
#("i4333"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4318"
"i4319"
"i4320"
"i4321"
"i4322"
"i4323"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4315")))
(hygiene
guile))
#{step\ 4334}#)))))))
#{tmp\ 4341}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4335}#)))))))
#{tmp\ 4332}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4331}#)))))
#{tmp\ 4317}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4316}#)))))))
(define quasiquote
(make-syntax-transformer
'quasiquote
'macro
(letrec*
((#{quasi\ 4366}#
(lambda (#{p\ 4379}# #{lev\ 4380}#)
(let ((#{tmp\ 4383}# #{p\ 4379}#))
(let ((#{tmp\ 4384}#
($sc-dispatch
#{tmp\ 4383}#
'(#(free-id
#(syntax-object
unquote
((top)
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4381" "i4382"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile)))
any))))
(if #{tmp\ 4384}#
(@apply
(lambda (#{p\ 4386}#)
(if (= #{lev\ 4380}# 0)
(list '#(syntax-object
"value"
((top)
#(ribcage #(p) #((top)) #("i4385"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4381" "i4382"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
#{p\ 4386}#)
(#{quasicons\ 4370}#
'(#(syntax-object
"quote"
((top)
#(ribcage #(p) #((top)) #("i4385"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4381" "i4382"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
#(syntax-object
unquote
((top)
#(ribcage #(p) #((top)) #("i4385"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4381" "i4382"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile)))
(#{quasi\ 4366}#
(list #{p\ 4386}#)
(1- #{lev\ 4380}#)))))
#{tmp\ 4384}#)
(let ((#{tmp\ 4387}#
($sc-dispatch
#{tmp\ 4383}#
'(#(free-id
#(syntax-object
quasiquote
((top)
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4381" "i4382"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile)))
any))))
(if #{tmp\ 4387}#
(@apply
(lambda (#{p\ 4389}#)
(#{quasicons\ 4370}#
'(#(syntax-object
"quote"
((top)
#(ribcage #(p) #((top)) #("i4388"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4381" "i4382"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
#(syntax-object
quasiquote
((top)
#(ribcage #(p) #((top)) #("i4388"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4381" "i4382"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile)))
(#{quasi\ 4366}#
(list #{p\ 4389}#)
(1+ #{lev\ 4380}#))))
#{tmp\ 4387}#)
(let ((#{tmp\ 4390}#
($sc-dispatch #{tmp\ 4383}# '(any . any))))
(if #{tmp\ 4390}#
(@apply
(lambda (#{p\ 4393}# #{q\ 4394}#)
(let ((#{tmp\ 4395}# #{p\ 4393}#))
(let ((#{tmp\ 4396}#
($sc-dispatch
#{tmp\ 4395}#
'(#(free-id
#(syntax-object
unquote
((top)
#(ribcage
#(p q)
#((top) (top))
#("i4391" "i4392"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4381" "i4382"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile)))
.
each-any))))
(if #{tmp\ 4396}#
(@apply
(lambda (#{p\ 4398}#)
(if (= #{lev\ 4380}# 0)
(#{quasilist*\ 4374}#
(map (lambda (#{tmp\ 4399}#)
(list '#(syntax-object
"value"
((top)
#(ribcage
#(p)
#((top))
#("i4397"))
#(ribcage
#(p q)
#((top) (top))
#("i4391"
"i4392"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4381"
"i4382"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
#{tmp\ 4399}#))
#{p\ 4398}#)
(#{quasi\ 4366}#
#{q\ 4394}#
#{lev\ 4380}#))
(#{quasicons\ 4370}#
(#{quasicons\ 4370}#
'(#(syntax-object
"quote"
((top)
#(ribcage
#(p)
#((top))
#("i4397"))
#(ribcage
#(p q)
#((top) (top))
#("i4391" "i4392"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4381" "i4382"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
#(syntax-object
unquote
((top)
#(ribcage
#(p)
#((top))
#("i4397"))
#(ribcage
#(p q)
#((top) (top))
#("i4391" "i4392"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4381" "i4382"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile)))
(#{quasi\ 4366}#
#{p\ 4398}#
(1- #{lev\ 4380}#)))
(#{quasi\ 4366}#
#{q\ 4394}#
#{lev\ 4380}#))))
#{tmp\ 4396}#)
(let ((#{tmp\ 4401}#
($sc-dispatch
#{tmp\ 4395}#
'(#(free-id
#(syntax-object
unquote-splicing
((top)
#(ribcage
#(p q)
#((top) (top))
#("i4391" "i4392"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4381" "i4382"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile)))
.
each-any))))
(if #{tmp\ 4401}#
(@apply
(lambda (#{p\ 4403}#)
(if (= #{lev\ 4380}# 0)
(#{quasiappend\ 4372}#
(map (lambda (#{tmp\ 4404}#)
(list '#(syntax-object
"value"
((top)
#(ribcage
#(p)
#((top))
#("i4402"))
#(ribcage
#(p q)
#((top)
(top))
#("i4391"
"i4392"))
#(ribcage
()
()
())
#(ribcage
#(p lev)
#((top)
(top))
#("i4381"
"i4382"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
#{tmp\ 4404}#))
#{p\ 4403}#)
(#{quasi\ 4366}#
#{q\ 4394}#
#{lev\ 4380}#))
(#{quasicons\ 4370}#
(#{quasicons\ 4370}#
'(#(syntax-object
"quote"
((top)
#(ribcage
#(p)
#((top))
#("i4402"))
#(ribcage
#(p q)
#((top) (top))
#("i4391" "i4392"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4381" "i4382"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
#(syntax-object
unquote-splicing
((top)
#(ribcage
#(p)
#((top))
#("i4402"))
#(ribcage
#(p q)
#((top) (top))
#("i4391" "i4392"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4381" "i4382"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile)))
(#{quasi\ 4366}#
#{p\ 4403}#
(1- #{lev\ 4380}#)))
(#{quasi\ 4366}#
#{q\ 4394}#
#{lev\ 4380}#))))
#{tmp\ 4401}#)
(let ((#{_\ 4407}# #{tmp\ 4395}#))
(#{quasicons\ 4370}#
(#{quasi\ 4366}#
#{p\ 4393}#
#{lev\ 4380}#)
(#{quasi\ 4366}#
#{q\ 4394}#
#{lev\ 4380}#)))))))))
#{tmp\ 4390}#)
(let ((#{tmp\ 4408}#
($sc-dispatch
#{tmp\ 4383}#
'#(vector each-any))))
(if #{tmp\ 4408}#
(@apply
(lambda (#{x\ 4410}#)
(#{quasivector\ 4376}#
(#{vquasi\ 4368}#
#{x\ 4410}#
#{lev\ 4380}#)))
#{tmp\ 4408}#)
(let ((#{p\ 4413}# #{tmp\ 4383}#))
(list '#(syntax-object
"quote"
((top)
#(ribcage #(p) #((top)) #("i4412"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4381" "i4382"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
#{p\ 4413}#)))))))))))))
(#{vquasi\ 4368}#
(lambda (#{p\ 4414}# #{lev\ 4415}#)
(let ((#{tmp\ 4418}# #{p\ 4414}#))
(let ((#{tmp\ 4419}#
($sc-dispatch #{tmp\ 4418}# '(any . any))))
(if #{tmp\ 4419}#
(@apply
(lambda (#{p\ 4422}# #{q\ 4423}#)
(let ((#{tmp\ 4424}# #{p\ 4422}#))
(let ((#{tmp\ 4425}#
($sc-dispatch
#{tmp\ 4424}#
'(#(free-id
#(syntax-object
unquote
((top)
#(ribcage
#(p q)
#((top) (top))
#("i4420" "i4421"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4416" "i4417"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile)))
.
each-any))))
(if #{tmp\ 4425}#
(@apply
(lambda (#{p\ 4427}#)
(if (= #{lev\ 4415}# 0)
(#{quasilist*\ 4374}#
(map (lambda (#{tmp\ 4428}#)
(list '#(syntax-object
"value"
((top)
#(ribcage
#(p)
#((top))
#("i4426"))
#(ribcage
#(p q)
#((top) (top))
#("i4420" "i4421"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4416" "i4417"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
#{tmp\ 4428}#))
#{p\ 4427}#)
(#{vquasi\ 4368}#
#{q\ 4423}#
#{lev\ 4415}#))
(#{quasicons\ 4370}#
(#{quasicons\ 4370}#
'(#(syntax-object
"quote"
((top)
#(ribcage #(p) #((top)) #("i4426"))
#(ribcage
#(p q)
#((top) (top))
#("i4420" "i4421"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4416" "i4417"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
#(syntax-object
unquote
((top)
#(ribcage #(p) #((top)) #("i4426"))
#(ribcage
#(p q)
#((top) (top))
#("i4420" "i4421"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4416" "i4417"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile)))
(#{quasi\ 4366}#
#{p\ 4427}#
(1- #{lev\ 4415}#)))
(#{vquasi\ 4368}#
#{q\ 4423}#
#{lev\ 4415}#))))
#{tmp\ 4425}#)
(let ((#{tmp\ 4430}#
($sc-dispatch
#{tmp\ 4424}#
'(#(free-id
#(syntax-object
unquote-splicing
((top)
#(ribcage
#(p q)
#((top) (top))
#("i4420" "i4421"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4416" "i4417"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile)))
.
each-any))))
(if #{tmp\ 4430}#
(@apply
(lambda (#{p\ 4432}#)
(if (= #{lev\ 4415}# 0)
(#{quasiappend\ 4372}#
(map (lambda (#{tmp\ 4433}#)
(list '#(syntax-object
"value"
((top)
#(ribcage
#(p)
#((top))
#("i4431"))
#(ribcage
#(p q)
#((top) (top))
#("i4420" "i4421"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4416" "i4417"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
#{tmp\ 4433}#))
#{p\ 4432}#)
(#{vquasi\ 4368}#
#{q\ 4423}#
#{lev\ 4415}#))
(#{quasicons\ 4370}#
(#{quasicons\ 4370}#
'(#(syntax-object
"quote"
((top)
#(ribcage
#(p)
#((top))
#("i4431"))
#(ribcage
#(p q)
#((top) (top))
#("i4420" "i4421"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4416" "i4417"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
#(syntax-object
unquote-splicing
((top)
#(ribcage
#(p)
#((top))
#("i4431"))
#(ribcage
#(p q)
#((top) (top))
#("i4420" "i4421"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4416" "i4417"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile)))
(#{quasi\ 4366}#
#{p\ 4432}#
(1- #{lev\ 4415}#)))
(#{vquasi\ 4368}#
#{q\ 4423}#
#{lev\ 4415}#))))
#{tmp\ 4430}#)
(let ((#{_\ 4436}# #{tmp\ 4424}#))
(#{quasicons\ 4370}#
(#{quasi\ 4366}# #{p\ 4422}# #{lev\ 4415}#)
(#{vquasi\ 4368}#
#{q\ 4423}#
#{lev\ 4415}#)))))))))
#{tmp\ 4419}#)
(let ((#{tmp\ 4437}# ($sc-dispatch #{tmp\ 4418}# '())))
(if #{tmp\ 4437}#
(@apply
(lambda ()
'(#(syntax-object
"quote"
((top)
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4416" "i4417"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
()))
#{tmp\ 4437}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4418}#))))))))
(#{quasicons\ 4370}#
(lambda (#{x\ 4438}# #{y\ 4439}#)
(let ((#{tmp\ 4443}# (list #{x\ 4438}# #{y\ 4439}#)))
(let ((#{tmp\ 4444}#
($sc-dispatch #{tmp\ 4443}# '(any any))))
(if #{tmp\ 4444}#
(@apply
(lambda (#{x\ 4447}# #{y\ 4448}#)
(let ((#{tmp\ 4449}# #{y\ 4448}#))
(let ((#{tmp\ 4450}#
($sc-dispatch
#{tmp\ 4449}#
'(#(atom "quote") any))))
(if #{tmp\ 4450}#
(@apply
(lambda (#{dy\ 4452}#)
(let ((#{tmp\ 4453}# #{x\ 4447}#))
(let ((#{tmp\ 4454}#
($sc-dispatch
#{tmp\ 4453}#
'(#(atom "quote") any))))
(if #{tmp\ 4454}#
(@apply
(lambda (#{dx\ 4456}#)
(list '#(syntax-object
"quote"
((top)
#(ribcage
#(dx)
#((top))
#("i4455"))
#(ribcage
#(dy)
#((top))
#("i4451"))
#(ribcage
#(x y)
#((top) (top))
#("i4445" "i4446"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4440" "i4441"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
(cons #{dx\ 4456}#
#{dy\ 4452}#)))
#{tmp\ 4454}#)
(let ((#{_\ 4458}# #{tmp\ 4453}#))
(if (null? #{dy\ 4452}#)
(list '#(syntax-object
"list"
((top)
#(ribcage
#(_)
#((top))
#("i4457"))
#(ribcage
#(dy)
#((top))
#("i4451"))
#(ribcage
#(x y)
#((top) (top))
#("i4445" "i4446"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4440" "i4441"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
#{x\ 4447}#)
(list '#(syntax-object
"list*"
((top)
#(ribcage
#(_)
#((top))
#("i4457"))
#(ribcage
#(dy)
#((top))
#("i4451"))
#(ribcage
#(x y)
#((top) (top))
#("i4445" "i4446"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4440" "i4441"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
#{x\ 4447}#
#{y\ 4448}#)))))))
#{tmp\ 4450}#)
(let ((#{tmp\ 4459}#
($sc-dispatch
#{tmp\ 4449}#
'(#(atom "list") . any))))
(if #{tmp\ 4459}#
(@apply
(lambda (#{stuff\ 4461}#)
(cons '#(syntax-object
"list"
((top)
#(ribcage
#(stuff)
#((top))
#("i4460"))
#(ribcage
#(x y)
#((top) (top))
#("i4445" "i4446"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4440" "i4441"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
(cons #{x\ 4447}# #{stuff\ 4461}#)))
#{tmp\ 4459}#)
(let ((#{tmp\ 4462}#
($sc-dispatch
#{tmp\ 4449}#
'(#(atom "list*") . any))))
(if #{tmp\ 4462}#
(@apply
(lambda (#{stuff\ 4464}#)
(cons '#(syntax-object
"list*"
((top)
#(ribcage
#(stuff)
#((top))
#("i4463"))
#(ribcage
#(x y)
#((top) (top))
#("i4445" "i4446"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4440" "i4441"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
(cons #{x\ 4447}#
#{stuff\ 4464}#)))
#{tmp\ 4462}#)
(let ((#{_\ 4466}# #{tmp\ 4449}#))
(list '#(syntax-object
"list*"
((top)
#(ribcage
#(_)
#((top))
#("i4465"))
#(ribcage
#(x y)
#((top) (top))
#("i4445" "i4446"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4440" "i4441"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
#{x\ 4447}#
#{y\ 4448}#))))))))))
#{tmp\ 4444}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4443}#))))))
(#{quasiappend\ 4372}#
(lambda (#{x\ 4467}# #{y\ 4468}#)
(let ((#{tmp\ 4471}# #{y\ 4468}#))
(let ((#{tmp\ 4472}#
($sc-dispatch
#{tmp\ 4471}#
'(#(atom "quote") ()))))
(if #{tmp\ 4472}#
(@apply
(lambda ()
(if (null? #{x\ 4467}#)
'(#(syntax-object
"quote"
((top)
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4469" "i4470"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
())
(if (null? (cdr #{x\ 4467}#))
(car #{x\ 4467}#)
(let ((#{tmp\ 4479}# #{x\ 4467}#))
(let ((#{tmp\ 4480}#
($sc-dispatch #{tmp\ 4479}# 'each-any)))
(if #{tmp\ 4480}#
(@apply
(lambda (#{p\ 4482}#)
(cons '#(syntax-object
"append"
((top)
#(ribcage
#(p)
#((top))
#("i4481"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4469" "i4470"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
#{p\ 4482}#))
#{tmp\ 4480}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4479}#)))))))
#{tmp\ 4472}#)
(let ((#{_\ 4485}# #{tmp\ 4471}#))
(if (null? #{x\ 4467}#)
#{y\ 4468}#
(let ((#{tmp\ 4490}# (list #{x\ 4467}# #{y\ 4468}#)))
(let ((#{tmp\ 4491}#
($sc-dispatch #{tmp\ 4490}# '(each-any any))))
(if #{tmp\ 4491}#
(@apply
(lambda (#{p\ 4494}# #{y\ 4495}#)
(cons '#(syntax-object
"append"
((top)
#(ribcage
#(p y)
#((top) (top))
#("i4492" "i4493"))
#(ribcage #(_) #((top)) #("i4484"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4469" "i4470"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
(append #{p\ 4494}# (list #{y\ 4495}#))))
#{tmp\ 4491}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4490}#)))))))))))
(#{quasilist*\ 4374}#
(lambda (#{x\ 4497}# #{y\ 4498}#)
(letrec*
((#{f\ 4503}#
(lambda (#{x\ 4504}#)
(if (null? #{x\ 4504}#)
#{y\ 4498}#
(#{quasicons\ 4370}#
(car #{x\ 4504}#)
(#{f\ 4503}# (cdr #{x\ 4504}#)))))))
(begin (#{f\ 4503}# #{x\ 4497}#)))))
(#{quasivector\ 4376}#
(lambda (#{x\ 4505}#)
(let ((#{tmp\ 4507}# #{x\ 4505}#))
(let ((#{tmp\ 4508}#
($sc-dispatch
#{tmp\ 4507}#
'(#(atom "quote") each-any))))
(if #{tmp\ 4508}#
(@apply
(lambda (#{x\ 4510}#)
(list '#(syntax-object
"quote"
((top)
#(ribcage #(x) #((top)) #("i4509"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4506"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
(list->vector #{x\ 4510}#)))
#{tmp\ 4508}#)
(let ((#{_\ 4513}# #{tmp\ 4507}#))
(letrec*
((#{f\ 4517}#
(lambda (#{y\ 4518}# #{k\ 4519}#)
(let ((#{tmp\ 4530}# #{y\ 4518}#))
(let ((#{tmp\ 4531}#
($sc-dispatch
#{tmp\ 4530}#
'(#(atom "quote") each-any))))
(if #{tmp\ 4531}#
(@apply
(lambda (#{y\ 4533}#)
(#{k\ 4519}#
(map (lambda (#{tmp\ 4534}#)
(list '#(syntax-object
"quote"
((top)
#(ribcage
#(y)
#((top))
#("i4532"))
#(ribcage () () ())
#(ribcage
#(f y k)
#((top) (top) (top))
#("i4514"
"i4515"
"i4516"))
#(ribcage
#(_)
#((top))
#("i4512"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4506"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
#{tmp\ 4534}#))
#{y\ 4533}#)))
#{tmp\ 4531}#)
(let ((#{tmp\ 4535}#
($sc-dispatch
#{tmp\ 4530}#
'(#(atom "list") . each-any))))
(if #{tmp\ 4535}#
(@apply
(lambda (#{y\ 4537}#)
(#{k\ 4519}# #{y\ 4537}#))
#{tmp\ 4535}#)
(let ((#{tmp\ 4539}#
($sc-dispatch
#{tmp\ 4530}#
'(#(atom "list*")
.
#(each+ any (any) ())))))
(if #{tmp\ 4539}#
(@apply
(lambda (#{y\ 4542}# #{z\ 4543}#)
(#{f\ 4517}#
#{z\ 4543}#
(lambda (#{ls\ 4544}#)
(#{k\ 4519}#
(append
#{y\ 4542}#
#{ls\ 4544}#)))))
#{tmp\ 4539}#)
(let ((#{else\ 4548}# #{tmp\ 4530}#))
(let ((#{tmp\ 4552}# #{x\ 4505}#))
(let ((#{\ g4549\ 4554}#
#{tmp\ 4552}#))
(list '#(syntax-object
"list->vector"
((top)
#(ribcage
#(#{\ g4549}#)
#((m4550 top))
#("i4553"))
#(ribcage
#(else)
#((top))
#("i4547"))
#(ribcage () () ())
#(ribcage
#(f y k)
#((top) (top) (top))
#("i4514"
"i4515"
"i4516"))
#(ribcage
#(_)
#((top))
#("i4512"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4506"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
#{\ g4549\ 4554}#))))))))))))))
(begin
(#{f\ 4517}#
#{x\ 4505}#
(lambda (#{ls\ 4520}#)
(let ((#{tmp\ 4525}# #{ls\ 4520}#))
(let ((#{tmp\ 4526}#
($sc-dispatch #{tmp\ 4525}# 'each-any)))
(if #{tmp\ 4526}#
(@apply
(lambda (#{\ g4522\ 4528}#)
(cons '#(syntax-object
"vector"
((top)
#(ribcage
#(#{\ g4522}#)
#((m4523 top))
#("i4527"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(ls)
#((top))
#("i4521"))
#(ribcage
#(_)
#((top))
#("i4512"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4506"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
#{\ g4522\ 4528}#))
#{tmp\ 4526}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4525}#))))))))))))))
(#{emit\ 4378}#
(lambda (#{x\ 4555}#)
(let ((#{tmp\ 4557}# #{x\ 4555}#))
(let ((#{tmp\ 4558}#
($sc-dispatch
#{tmp\ 4557}#
'(#(atom "quote") any))))
(if #{tmp\ 4558}#
(@apply
(lambda (#{x\ 4560}#)
(list '#(syntax-object
quote
((top)
#(ribcage #(x) #((top)) #("i4559"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4556"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
#{x\ 4560}#))
#{tmp\ 4558}#)
(let ((#{tmp\ 4561}#
($sc-dispatch
#{tmp\ 4557}#
'(#(atom "list") . each-any))))
(if #{tmp\ 4561}#
(@apply
(lambda (#{x\ 4563}#)
(let ((#{tmp\ 4567}#
(map #{emit\ 4378}# #{x\ 4563}#)))
(let ((#{tmp\ 4568}#
($sc-dispatch #{tmp\ 4567}# 'each-any)))
(if #{tmp\ 4568}#
(@apply
(lambda (#{\ g4564\ 4570}#)
(cons '#(syntax-object
list
((top)
#(ribcage
#(#{\ g4564}#)
#((m4565 top))
#("i4569"))
#(ribcage
#(x)
#((top))
#("i4562"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4556"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
#{\ g4564\ 4570}#))
#{tmp\ 4568}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4567}#)))))
#{tmp\ 4561}#)
(let ((#{tmp\ 4573}#
($sc-dispatch
#{tmp\ 4557}#
'(#(atom "list*") . #(each+ any (any) ())))))
(if #{tmp\ 4573}#
(@apply
(lambda (#{x\ 4576}# #{y\ 4577}#)
(letrec*
((#{f\ 4580}#
(lambda (#{x*\ 4581}#)
(if (null? #{x*\ 4581}#)
(#{emit\ 4378}# #{y\ 4577}#)
(let ((#{tmp\ 4587}#
(list (#{emit\ 4378}#
(car #{x*\ 4581}#))
(#{f\ 4580}#
(cdr #{x*\ 4581}#)))))
(let ((#{tmp\ 4588}#
($sc-dispatch
#{tmp\ 4587}#
'(any any))))
(if #{tmp\ 4588}#
(@apply
(lambda (#{\ g4584\ 4591}#
#{\ g4583\ 4592}#)
(list '#(syntax-object
cons
((top)
#(ribcage
#(#{\ g4584}#
#{\ g4583}#)
#((m4585 top)
(m4585 top))
#("i4589" "i4590"))
#(ribcage () () ())
#(ribcage
#(f x*)
#((top) (top))
#("i4578" "i4579"))
#(ribcage
#(x y)
#((top) (top))
#("i4574" "i4575"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4556"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
#{\ g4584\ 4591}#
#{\ g4583\ 4592}#))
#{tmp\ 4588}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4587}#))))))))
(begin (#{f\ 4580}# #{x\ 4576}#))))
#{tmp\ 4573}#)
(let ((#{tmp\ 4593}#
($sc-dispatch
#{tmp\ 4557}#
'(#(atom "append") . each-any))))
(if #{tmp\ 4593}#
(@apply
(lambda (#{x\ 4595}#)
(let ((#{tmp\ 4599}#
(map #{emit\ 4378}# #{x\ 4595}#)))
(let ((#{tmp\ 4600}#
($sc-dispatch
#{tmp\ 4599}#
'each-any)))
(if #{tmp\ 4600}#
(@apply
(lambda (#{\ g4596\ 4602}#)
(cons '#(syntax-object
append
((top)
#(ribcage
#(#{\ g4596}#)
#((m4597 top))
#("i4601"))
#(ribcage
#(x)
#((top))
#("i4594"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4556"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
#{\ g4596\ 4602}#))
#{tmp\ 4600}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4599}#)))))
#{tmp\ 4593}#)
(let ((#{tmp\ 4605}#
($sc-dispatch
#{tmp\ 4557}#
'(#(atom "vector") . each-any))))
(if #{tmp\ 4605}#
(@apply
(lambda (#{x\ 4607}#)
(let ((#{tmp\ 4611}#
(map #{emit\ 4378}# #{x\ 4607}#)))
(let ((#{tmp\ 4612}#
($sc-dispatch
#{tmp\ 4611}#
'each-any)))
(if #{tmp\ 4612}#
(@apply
(lambda (#{\ g4608\ 4614}#)
(cons '#(syntax-object
vector
((top)
#(ribcage
#(#{\ g4608}#)
#((m4609 top))
#("i4613"))
#(ribcage
#(x)
#((top))
#("i4606"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4556"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
#{\ g4608\ 4614}#))
#{tmp\ 4612}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4611}#)))))
#{tmp\ 4605}#)
(let ((#{tmp\ 4617}#
($sc-dispatch
#{tmp\ 4557}#
'(#(atom "list->vector") any))))
(if #{tmp\ 4617}#
(@apply
(lambda (#{x\ 4619}#)
(let ((#{tmp\ 4623}#
(#{emit\ 4378}# #{x\ 4619}#)))
(let ((#{\ g4620\ 4625}#
#{tmp\ 4623}#))
(list '#(syntax-object
list->vector
((top)
#(ribcage
#(#{\ g4620}#)
#((m4621 top))
#("i4624"))
#(ribcage
#(x)
#((top))
#("i4618"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4556"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4377"
"i4375"
"i4373"
"i4371"
"i4369"
"i4367"
"i4365")))
(hygiene guile))
#{\ g4620\ 4625}#))))
#{tmp\ 4617}#)
(let ((#{tmp\ 4626}#
($sc-dispatch
#{tmp\ 4557}#
'(#(atom "value") any))))
(if #{tmp\ 4626}#
(@apply
(lambda (#{x\ 4628}#) #{x\ 4628}#)
#{tmp\ 4626}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4557}#)))))))))))))))))))
(begin
(lambda (#{x\ 4629}#)
(let ((#{tmp\ 4631}# #{x\ 4629}#))
(let ((#{tmp\ 4632}#
($sc-dispatch #{tmp\ 4631}# '(_ any))))
(if #{tmp\ 4632}#
(@apply
(lambda (#{e\ 4634}#)
(#{emit\ 4378}# (#{quasi\ 4366}# #{e\ 4634}# 0)))
#{tmp\ 4632}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4631}#)))))))))
(define include
(make-syntax-transformer
'include
'macro
(lambda (#{x\ 4635}#)
(letrec*
((#{read-file\ 4638}#
(lambda (#{fn\ 4639}# #{k\ 4640}#)
(begin
(let ((#{p\ 4644}# (open-input-file #{fn\ 4639}#)))
(letrec*
((#{f\ 4648}#
(lambda (#{x\ 4649}# #{result\ 4650}#)
(if (eof-object? #{x\ 4649}#)
(begin
(close-input-port #{p\ 4644}#)
(reverse #{result\ 4650}#))
(#{f\ 4648}#
(read #{p\ 4644}#)
(cons (datum->syntax #{k\ 4640}# #{x\ 4649}#)
#{result\ 4650}#))))))
(begin (#{f\ 4648}# (read #{p\ 4644}#) '()))))))))
(begin
(let ((#{tmp\ 4651}# #{x\ 4635}#))
(let ((#{tmp\ 4652}#
($sc-dispatch #{tmp\ 4651}# '(any any))))
(if #{tmp\ 4652}#
(@apply
(lambda (#{k\ 4655}# #{filename\ 4656}#)
(begin
(let ((#{fn\ 4658}# (syntax->datum #{filename\ 4656}#)))
(let ((#{tmp\ 4660}#
(#{read-file\ 4638}#
#{fn\ 4658}#
#{filename\ 4656}#)))
(let ((#{tmp\ 4661}#
($sc-dispatch #{tmp\ 4660}# 'each-any)))
(if #{tmp\ 4661}#
(@apply
(lambda (#{exp\ 4663}#)
(cons '#(syntax-object
begin
((top)
#(ribcage
#(exp)
#((top))
#("i4662"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(fn)
#((top))
#("i4657"))
#(ribcage
#(k filename)
#((top) (top))
#("i4653" "i4654"))
#(ribcage
(read-file)
((top))
("i4637"))
#(ribcage
#(x)
#((top))
#("i4636")))
(hygiene guile))
#{exp\ 4663}#))
#{tmp\ 4661}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4660}#)))))))
#{tmp\ 4652}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4651}#)))))))))
(define include-from-path
(make-syntax-transformer
'include-from-path
'macro
(lambda (#{x\ 4665}#)
(let ((#{tmp\ 4667}# #{x\ 4665}#))
(let ((#{tmp\ 4668}#
($sc-dispatch #{tmp\ 4667}# '(any any))))
(if #{tmp\ 4668}#
(@apply
(lambda (#{k\ 4671}# #{filename\ 4672}#)
(begin
(let ((#{fn\ 4674}# (syntax->datum #{filename\ 4672}#)))
(let ((#{tmp\ 4676}#
(datum->syntax
#{filename\ 4672}#
(begin
(let ((#{t\ 4681}#
(%search-load-path #{fn\ 4674}#)))
(if #{t\ 4681}#
#{t\ 4681}#
(syntax-violation
'include-from-path
"file not found in path"
#{x\ 4665}#
#{filename\ 4672}#)))))))
(let ((#{fn\ 4678}# #{tmp\ 4676}#))
(list '#(syntax-object
include
((top)
#(ribcage #(fn) #((top)) #("i4677"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(fn) #((top)) #("i4673"))
#(ribcage
#(k filename)
#((top) (top))
#("i4669" "i4670"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4666")))
(hygiene guile))
#{fn\ 4678}#))))))
#{tmp\ 4668}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4667}#)))))))
(define unquote
(make-syntax-transformer
'unquote
'macro
(lambda (#{x\ 4683}#)
(syntax-violation
'unquote
"expression not valid outside of quasiquote"
#{x\ 4683}#))))
(define unquote-splicing
(make-syntax-transformer
'unquote-splicing
'macro
(lambda (#{x\ 4685}#)
(syntax-violation
'unquote-splicing
"expression not valid outside of quasiquote"
#{x\ 4685}#))))
(define case
(make-syntax-transformer
'case
'macro
(lambda (#{x\ 4687}#)
(let ((#{tmp\ 4689}# #{x\ 4687}#))
(let ((#{tmp\ 4690}#
($sc-dispatch
#{tmp\ 4689}#
'(_ any any . each-any))))
(if #{tmp\ 4690}#
(@apply
(lambda (#{e\ 4694}# #{m1\ 4695}# #{m2\ 4696}#)
(let ((#{tmp\ 4698}#
(letrec*
((#{f\ 4704}#
(lambda (#{clause\ 4705}# #{clauses\ 4706}#)
(if (null? #{clauses\ 4706}#)
(let ((#{tmp\ 4708}# #{clause\ 4705}#))
(let ((#{tmp\ 4709}#
($sc-dispatch
#{tmp\ 4708}#
'(#(free-id
#(syntax-object
else
((top)
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
#("i4701"
"i4702"
"i4703"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
#("i4691"
"i4692"
"i4693"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4688")))
(hygiene guile)))
any
.
each-any))))
(if #{tmp\ 4709}#
(@apply
(lambda (#{e1\ 4712}# #{e2\ 4713}#)
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4710" "i4711"))
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
#("i4701"
"i4702"
"i4703"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
#("i4691"
"i4692"
"i4693"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4688")))
(hygiene guile))
(cons #{e1\ 4712}#
#{e2\ 4713}#)))
#{tmp\ 4709}#)
(let ((#{tmp\ 4715}#
($sc-dispatch
#{tmp\ 4708}#
'(each-any any . each-any))))
(if #{tmp\ 4715}#
(@apply
(lambda (#{k\ 4719}#
#{e1\ 4720}#
#{e2\ 4721}#)
(list '#(syntax-object
if
((top)
#(ribcage
#(k e1 e2)
#((top) (top) (top))
#("i4716"
"i4717"
"i4718"))
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
#("i4701"
"i4702"
"i4703"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
#("i4691"
"i4692"
"i4693"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4688")))
(hygiene guile))
(list '#(syntax-object
memv
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i4716"
"i4717"
"i4718"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4701"
"i4702"
"i4703"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
#("i4691"
"i4692"
"i4693"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4688")))
(hygiene guile))
'#(syntax-object
t
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i4716"
"i4717"
"i4718"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4701"
"i4702"
"i4703"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
#("i4691"
"i4692"
"i4693"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4688")))
(hygiene guile))
(list '#(syntax-object
quote
((top)
#(ribcage
#(k
e1
e2)
#((top)
(top)
(top))
#("i4716"
"i4717"
"i4718"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4701"
"i4702"
"i4703"))
#(ribcage
#(e
m1
m2)
#((top)
(top)
(top))
#("i4691"
"i4692"
"i4693"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4688")))
(hygiene
guile))
#{k\ 4719}#))
(cons '#(syntax-object
begin
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i4716"
"i4717"
"i4718"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4701"
"i4702"
"i4703"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
#("i4691"
"i4692"
"i4693"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4688")))
(hygiene guile))
(cons #{e1\ 4720}#
#{e2\ 4721}#))))
#{tmp\ 4715}#)
(let ((#{_\ 4725}# #{tmp\ 4708}#))
(syntax-violation
'case
"bad clause"
#{x\ 4687}#
#{clause\ 4705}#)))))))
(let ((#{tmp\ 4727}#
(#{f\ 4704}#
(car #{clauses\ 4706}#)
(cdr #{clauses\ 4706}#))))
(let ((#{rest\ 4729}# #{tmp\ 4727}#))
(let ((#{tmp\ 4730}# #{clause\ 4705}#))
(let ((#{tmp\ 4731}#
($sc-dispatch
#{tmp\ 4730}#
'(each-any any . each-any))))
(if #{tmp\ 4731}#
(@apply
(lambda (#{k\ 4735}#
#{e1\ 4736}#
#{e2\ 4737}#)
(list '#(syntax-object
if
((top)
#(ribcage
#(k e1 e2)
#((top) (top) (top))
#("i4732"
"i4733"
"i4734"))
#(ribcage
#(rest)
#((top))
#("i4728"))
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
#("i4701"
"i4702"
"i4703"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
#("i4691"
"i4692"
"i4693"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4688")))
(hygiene guile))
(list '#(syntax-object
memv
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i4732"
"i4733"
"i4734"))
#(ribcage
#(rest)
#((top))
#("i4728"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4701"
"i4702"
"i4703"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
#("i4691"
"i4692"
"i4693"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4688")))
(hygiene guile))
'#(syntax-object
t
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i4732"
"i4733"
"i4734"))
#(ribcage
#(rest)
#((top))
#("i4728"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4701"
"i4702"
"i4703"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
#("i4691"
"i4692"
"i4693"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4688")))
(hygiene guile))
(list '#(syntax-object
quote
((top)
#(ribcage
#(k
e1
e2)
#((top)
(top)
(top))
#("i4732"
"i4733"
"i4734"))
#(ribcage
#(rest)
#((top))
#("i4728"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4701"
"i4702"
"i4703"))
#(ribcage
#(e
m1
m2)
#((top)
(top)
(top))
#("i4691"
"i4692"
"i4693"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4688")))
(hygiene
guile))
#{k\ 4735}#))
(cons '#(syntax-object
begin
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i4732"
"i4733"
"i4734"))
#(ribcage
#(rest)
#((top))
#("i4728"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4701"
"i4702"
"i4703"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
#("i4691"
"i4692"
"i4693"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4688")))
(hygiene guile))
(cons #{e1\ 4736}#
#{e2\ 4737}#))
#{rest\ 4729}#))
#{tmp\ 4731}#)
(let ((#{_\ 4741}# #{tmp\ 4730}#))
(syntax-violation
'case
"bad clause"
#{x\ 4687}#
#{clause\ 4705}#)))))))))))
(begin (#{f\ 4704}# #{m1\ 4695}# #{m2\ 4696}#)))))
(let ((#{body\ 4700}# #{tmp\ 4698}#))
(list '#(syntax-object
let
((top)
#(ribcage #(body) #((top)) #("i4699"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
#("i4691" "i4692" "i4693"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4688")))
(hygiene guile))
(list (list '#(syntax-object
t
((top)
#(ribcage
#(body)
#((top))
#("i4699"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
#("i4691" "i4692" "i4693"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4688")))
(hygiene guile))
#{e\ 4694}#))
#{body\ 4700}#))))
#{tmp\ 4690}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4689}#)))))))
(define make-variable-transformer
(lambda (#{proc\ 4742}#)
(if (procedure? #{proc\ 4742}#)
(begin
(letrec*
((#{trans\ 4745}#
(lambda (#{x\ 4746}#)
(#{proc\ 4742}# #{x\ 4746}#))))
(begin
(set-procedure-property!
#{trans\ 4745}#
'variable-transformer
#t)
#{trans\ 4745}#)))
(error "variable transformer not a procedure"
#{proc\ 4742}#))))
(define identifier-syntax
(make-syntax-transformer
'identifier-syntax
'macro
(lambda (#{x\ 4748}#)
(let ((#{tmp\ 4750}# #{x\ 4748}#))
(let ((#{tmp\ 4751}#
($sc-dispatch #{tmp\ 4750}# '(_ any))))
(if #{tmp\ 4751}#
(@apply
(lambda (#{e\ 4753}#)
(list '#(syntax-object
lambda
((top)
#(ribcage #(e) #((top)) #("i4752"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4749")))
(hygiene guile))
'(#(syntax-object
x
((top)
#(ribcage #(e) #((top)) #("i4752"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4749")))
(hygiene guile)))
'#((#(syntax-object
macro-type
((top)
#(ribcage #(e) #((top)) #("i4752"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4749")))
(hygiene guile))
.
#(syntax-object
identifier-syntax
((top)
#(ribcage #(e) #((top)) #("i4752"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4749")))
(hygiene guile))))
(list '#(syntax-object
syntax-case
((top)
#(ribcage #(e) #((top)) #("i4752"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4749")))
(hygiene guile))
'#(syntax-object
x
((top)
#(ribcage #(e) #((top)) #("i4752"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4749")))
(hygiene guile))
'()
(list '#(syntax-object
id
((top)
#(ribcage #(e) #((top)) #("i4752"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4749")))
(hygiene guile))
'(#(syntax-object
identifier?
((top)
#(ribcage #(e) #((top)) #("i4752"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4749")))
(hygiene guile))
(#(syntax-object
syntax
((top)
#(ribcage #(e) #((top)) #("i4752"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4749")))
(hygiene guile))
#(syntax-object
id
((top)
#(ribcage #(e) #((top)) #("i4752"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4749")))
(hygiene guile))))
(list '#(syntax-object
syntax
((top)
#(ribcage #(e) #((top)) #("i4752"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4749")))
(hygiene guile))
#{e\ 4753}#))
(list '(#(syntax-object
_
((top)
#(ribcage #(e) #((top)) #("i4752"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4749")))
(hygiene guile))
#(syntax-object
x
((top)
#(ribcage #(e) #((top)) #("i4752"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4749")))
(hygiene guile))
#(syntax-object
...
((top)
#(ribcage #(e) #((top)) #("i4752"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4749")))
(hygiene guile)))
(list '#(syntax-object
syntax
((top)
#(ribcage #(e) #((top)) #("i4752"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4749")))
(hygiene guile))
(cons #{e\ 4753}#
'(#(syntax-object
x
((top)
#(ribcage
#(e)
#((top))
#("i4752"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4749")))
(hygiene guile))
#(syntax-object
...
((top)
#(ribcage
#(e)
#((top))
#("i4752"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4749")))
(hygiene guile)))))))))
#{tmp\ 4751}#)
(let ((#{tmp\ 4754}#
($sc-dispatch
#{tmp\ 4750}#
'(_ (any any)
((#(free-id
#(syntax-object
set!
((top)
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4749")))
(hygiene guile)))
any
any)
any)))))
(if (if #{tmp\ 4754}#
(@apply
(lambda (#{id\ 4760}#
#{exp1\ 4761}#
#{var\ 4762}#
#{val\ 4763}#
#{exp2\ 4764}#)
(if (identifier? #{id\ 4760}#)
(identifier? #{var\ 4762}#)
#f))
#{tmp\ 4754}#)
#f)
(@apply
(lambda (#{id\ 4772}#
#{exp1\ 4773}#
#{var\ 4774}#
#{val\ 4775}#
#{exp2\ 4776}#)
(list '#(syntax-object
make-variable-transformer
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4767" "i4768" "i4769" "i4770" "i4771"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4749")))
(hygiene guile))
(list '#(syntax-object
lambda
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4767"
"i4768"
"i4769"
"i4770"
"i4771"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4749")))
(hygiene guile))
'(#(syntax-object
x
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4767"
"i4768"
"i4769"
"i4770"
"i4771"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4749")))
(hygiene guile)))
'#((#(syntax-object
macro-type
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4767"
"i4768"
"i4769"
"i4770"
"i4771"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4749")))
(hygiene guile))
.
#(syntax-object
variable-transformer
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4767"
"i4768"
"i4769"
"i4770"
"i4771"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4749")))
(hygiene guile))))
(list '#(syntax-object
syntax-case
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4767"
"i4768"
"i4769"
"i4770"
"i4771"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4749")))
(hygiene guile))
'#(syntax-object
x
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4767"
"i4768"
"i4769"
"i4770"
"i4771"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4749")))
(hygiene guile))
'(#(syntax-object
set!
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4767"
"i4768"
"i4769"
"i4770"
"i4771"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4749")))
(hygiene guile)))
(list (list '#(syntax-object
set!
((top)
#(ribcage
#(id exp1 var val exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4767"
"i4768"
"i4769"
"i4770"
"i4771"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4749")))
(hygiene guile))
#{var\ 4774}#
#{val\ 4775}#)
(list '#(syntax-object
syntax
((top)
#(ribcage
#(id exp1 var val exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4767"
"i4768"
"i4769"
"i4770"
"i4771"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4749")))
(hygiene guile))
#{exp2\ 4776}#))
(list (cons #{id\ 4772}#
'(#(syntax-object
x
((top)
#(ribcage
#(id
exp1
var
val
exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4767"
"i4768"
"i4769"
"i4770"
"i4771"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4749")))
(hygiene guile))
#(syntax-object
...
((top)
#(ribcage
#(id
exp1
var
val
exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4767"
"i4768"
"i4769"
"i4770"
"i4771"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4749")))
(hygiene guile))))
(list '#(syntax-object
syntax
((top)
#(ribcage
#(id exp1 var val exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4767"
"i4768"
"i4769"
"i4770"
"i4771"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4749")))
(hygiene guile))
(cons #{exp1\ 4773}#
'(#(syntax-object
x
((top)
#(ribcage
#(id
exp1
var
val
exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4767"
"i4768"
"i4769"
"i4770"
"i4771"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4749")))
(hygiene guile))
#(syntax-object
...
((top)
#(ribcage
#(id
exp1
var
val
exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4767"
"i4768"
"i4769"
"i4770"
"i4771"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4749")))
(hygiene
guile))))))
(list #{id\ 4772}#
(list '#(syntax-object
identifier?
((top)
#(ribcage
#(id exp1 var val exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4767"
"i4768"
"i4769"
"i4770"
"i4771"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4749")))
(hygiene guile))
(list '#(syntax-object
syntax
((top)
#(ribcage
#(id
exp1
var
val
exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4767"
"i4768"
"i4769"
"i4770"
"i4771"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4749")))
(hygiene guile))
#{id\ 4772}#))
(list '#(syntax-object
syntax
((top)
#(ribcage
#(id exp1 var val exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4767"
"i4768"
"i4769"
"i4770"
"i4771"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4749")))
(hygiene guile))
#{exp1\ 4773}#))))))
#{tmp\ 4754}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4750}#)))))))))
(define define*
(make-syntax-transformer
'define*
'macro
(lambda (#{x\ 4777}#)
(let ((#{tmp\ 4779}# #{x\ 4777}#))
(let ((#{tmp\ 4780}#
($sc-dispatch
#{tmp\ 4779}#
'(_ (any . any) any . each-any))))
(if #{tmp\ 4780}#
(@apply
(lambda (#{id\ 4785}#
#{args\ 4786}#
#{b0\ 4787}#
#{b1\ 4788}#)
(list '#(syntax-object
define
((top)
#(ribcage
#(id args b0 b1)
#((top) (top) (top) (top))
#("i4781" "i4782" "i4783" "i4784"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile))
#{id\ 4785}#
(cons '#(syntax-object
lambda*
((top)
#(ribcage
#(id args b0 b1)
#((top) (top) (top) (top))
#("i4781" "i4782" "i4783" "i4784"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile))
(cons #{args\ 4786}#
(cons #{b0\ 4787}# #{b1\ 4788}#)))))
#{tmp\ 4780}#)
(let ((#{tmp\ 4790}#
($sc-dispatch #{tmp\ 4779}# '(_ any any))))
(if (if #{tmp\ 4790}#
(@apply
(lambda (#{id\ 4793}# #{val\ 4794}#)
(identifier?
'#(syntax-object
x
((top)
#(ribcage
#(id val)
#((top) (top))
#("i4791" "i4792"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile))))
#{tmp\ 4790}#)
#f)
(@apply
(lambda (#{id\ 4797}# #{val\ 4798}#)
(list '#(syntax-object
define
((top)
#(ribcage
#(id val)
#((top) (top))
#("i4795" "i4796"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile))
#{id\ 4797}#
#{val\ 4798}#))
#{tmp\ 4790}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4779}#)))))))))