1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-20 11:40:18 +02:00
guile/module/ice-9/psyntax-pp.scm
Andy Wingo 381ccb0b89 more inlining in psyntax
* module/ice-9/psyntax.scm (make-wrap, wrap-marks, wrap-subst): Use
  identifier syntax here too.

* module/ice-9/psyntax-pp.scm: Regenerated.
2010-10-08 12:31:56 +02:00

17863 lines
1 MiB

(eval-when (compile) (set-current-module (resolve-module (quote (guile)))))
(if #f #f)
(letrec*
((#{and-map*\ 36}#
(lambda (#{f\ 200}# #{first\ 201}# . #{rest\ 202}#)
(begin
(let ((#{t\ 208}# (null? #{first\ 201}#)))
(if #{t\ 208}#
#{t\ 208}#
(if (null? #{rest\ 202}#)
(letrec*
((#{andmap\ 212}#
(lambda (#{first\ 213}#)
(begin
(let ((#{x\ 216}# (car #{first\ 213}#))
(#{first\ 217}# (cdr #{first\ 213}#)))
(if (null? #{first\ 217}#)
(#{f\ 200}# #{x\ 216}#)
(if (#{f\ 200}# #{x\ 216}#)
(#{andmap\ 212}# #{first\ 217}#)
#f)))))))
(begin (#{andmap\ 212}# #{first\ 201}#)))
(letrec*
((#{andmap\ 223}#
(lambda (#{first\ 224}# #{rest\ 225}#)
(begin
(let ((#{x\ 230}# (car #{first\ 224}#))
(#{xr\ 231}# (map car #{rest\ 225}#))
(#{first\ 232}# (cdr #{first\ 224}#))
(#{rest\ 233}# (map cdr #{rest\ 225}#)))
(if (null? #{first\ 232}#)
(@apply #{f\ 200}# #{x\ 230}# #{xr\ 231}#)
(if (@apply #{f\ 200}# #{x\ 230}# #{xr\ 231}#)
(#{andmap\ 223}# #{first\ 232}# #{rest\ 233}#)
#f)))))))
(begin
(#{andmap\ 223}# #{first\ 201}# #{rest\ 202}#))))))))))
(begin
(let ((#{make-primitive-ref\ 242}# (if #f #f))
(#{fx+\ 281}# (if #f #f))
(#{fx-\ 283}# (if #f #f))
(#{fx=\ 285}# (if #f #f))
(#{fx<\ 287}# (if #f #f))
(#{set-syntax-object-expression!\ 352}#
(if #f #f))
(#{set-syntax-object-wrap!\ 354}# (if #f #f))
(#{set-syntax-object-module!\ 356}# (if #f #f))
(#{ribcage?\ 398}# (if #f #f)))
(letrec*
((#{make-void\ 238}#
(lambda (#{src\ 750}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 0)
#{src\ 750}#)))
(#{make-const\ 240}#
(lambda (#{src\ 752}# #{exp\ 753}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 1)
#{src\ 752}#
#{exp\ 753}#)))
(#{make-lexical-ref\ 244}#
(lambda (#{src\ 760}# #{name\ 761}# #{gensym\ 762}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 3)
#{src\ 760}#
#{name\ 761}#
#{gensym\ 762}#)))
(#{make-lexical-set\ 246}#
(lambda (#{src\ 766}#
#{name\ 767}#
#{gensym\ 768}#
#{exp\ 769}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 4)
#{src\ 766}#
#{name\ 767}#
#{gensym\ 768}#
#{exp\ 769}#)))
(#{make-module-ref\ 248}#
(lambda (#{src\ 774}#
#{mod\ 775}#
#{name\ 776}#
#{public?\ 777}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 5)
#{src\ 774}#
#{mod\ 775}#
#{name\ 776}#
#{public?\ 777}#)))
(#{make-module-set\ 250}#
(lambda (#{src\ 782}#
#{mod\ 783}#
#{name\ 784}#
#{public?\ 785}#
#{exp\ 786}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 6)
#{src\ 782}#
#{mod\ 783}#
#{name\ 784}#
#{public?\ 785}#
#{exp\ 786}#)))
(#{make-toplevel-ref\ 252}#
(lambda (#{src\ 792}# #{name\ 793}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 7)
#{src\ 792}#
#{name\ 793}#)))
(#{make-toplevel-set\ 254}#
(lambda (#{src\ 796}# #{name\ 797}# #{exp\ 798}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 8)
#{src\ 796}#
#{name\ 797}#
#{exp\ 798}#)))
(#{make-toplevel-define\ 256}#
(lambda (#{src\ 802}# #{name\ 803}# #{exp\ 804}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 9)
#{src\ 802}#
#{name\ 803}#
#{exp\ 804}#)))
(#{make-conditional\ 258}#
(lambda (#{src\ 808}#
#{test\ 809}#
#{consequent\ 810}#
#{alternate\ 811}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 10)
#{src\ 808}#
#{test\ 809}#
#{consequent\ 810}#
#{alternate\ 811}#)))
(#{make-application\ 260}#
(lambda (#{src\ 816}# #{proc\ 817}# #{args\ 818}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 11)
#{src\ 816}#
#{proc\ 817}#
#{args\ 818}#)))
(#{make-sequence\ 262}#
(lambda (#{src\ 822}# #{exps\ 823}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 12)
#{src\ 822}#
#{exps\ 823}#)))
(#{make-lambda\ 264}#
(lambda (#{src\ 826}# #{meta\ 827}# #{body\ 828}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 13)
#{src\ 826}#
#{meta\ 827}#
#{body\ 828}#)))
(#{make-lambda-case\ 266}#
(lambda (#{src\ 832}#
#{req\ 833}#
#{opt\ 834}#
#{rest\ 835}#
#{kw\ 836}#
#{inits\ 837}#
#{gensyms\ 838}#
#{body\ 839}#
#{alternate\ 840}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 14)
#{src\ 832}#
#{req\ 833}#
#{opt\ 834}#
#{rest\ 835}#
#{kw\ 836}#
#{inits\ 837}#
#{gensyms\ 838}#
#{body\ 839}#
#{alternate\ 840}#)))
(#{make-let\ 268}#
(lambda (#{src\ 850}#
#{names\ 851}#
#{gensyms\ 852}#
#{vals\ 853}#
#{body\ 854}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 15)
#{src\ 850}#
#{names\ 851}#
#{gensyms\ 852}#
#{vals\ 853}#
#{body\ 854}#)))
(#{make-letrec\ 270}#
(lambda (#{src\ 860}#
#{in-order?\ 861}#
#{names\ 862}#
#{gensyms\ 863}#
#{vals\ 864}#
#{body\ 865}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 16)
#{src\ 860}#
#{in-order?\ 861}#
#{names\ 862}#
#{gensyms\ 863}#
#{vals\ 864}#
#{body\ 865}#)))
(#{make-dynlet\ 272}#
(lambda (#{src\ 872}#
#{fluids\ 873}#
#{vals\ 874}#
#{body\ 875}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 17)
#{src\ 872}#
#{fluids\ 873}#
#{vals\ 874}#
#{body\ 875}#)))
(#{lambda?\ 275}#
(lambda (#{x\ 880}#)
(if (struct? #{x\ 880}#)
(eq? (struct-vtable #{x\ 880}#)
(vector-ref %expanded-vtables 13))
#f)))
(#{lambda-meta\ 277}#
(lambda (#{x\ 884}#) (struct-ref #{x\ 884}# 1)))
(#{set-lambda-meta!\ 279}#
(lambda (#{x\ 886}# #{v\ 887}#)
(struct-set! #{x\ 886}# 1 #{v\ 887}#)))
(#{top-level-eval-hook\ 289}#
(lambda (#{x\ 890}# #{mod\ 891}#)
(primitive-eval #{x\ 890}#)))
(#{local-eval-hook\ 291}#
(lambda (#{x\ 894}# #{mod\ 895}#)
(primitive-eval #{x\ 894}#)))
(#{put-global-definition-hook\ 294}#
(lambda (#{symbol\ 898}# #{type\ 899}# #{val\ 900}#)
(module-define!
(current-module)
#{symbol\ 898}#
(make-syntax-transformer
#{symbol\ 898}#
#{type\ 899}#
#{val\ 900}#))))
(#{get-global-definition-hook\ 296}#
(lambda (#{symbol\ 904}# #{module\ 905}#)
(begin
(if (if (not #{module\ 905}#) (current-module) #f)
(warn "module system is booted, we should have a module"
#{symbol\ 904}#))
(begin
(let ((#{v\ 911}# (module-variable
(if #{module\ 905}#
(resolve-module (cdr #{module\ 905}#))
(current-module))
#{symbol\ 904}#)))
(if #{v\ 911}#
(if (variable-bound? #{v\ 911}#)
(begin
(let ((#{val\ 916}# (variable-ref #{v\ 911}#)))
(if (macro? #{val\ 916}#)
(if (macro-type #{val\ 916}#)
(cons (macro-type #{val\ 916}#)
(macro-binding #{val\ 916}#))
#f)
#f)))
#f)
#f))))))
(#{decorate-source\ 298}#
(lambda (#{e\ 920}# #{s\ 921}#)
(begin
(if (if (pair? #{e\ 920}#) #{s\ 921}# #f)
(set-source-properties! #{e\ 920}# #{s\ 921}#))
#{e\ 920}#)))
(#{maybe-name-value!\ 300}#
(lambda (#{name\ 926}# #{val\ 927}#)
(if (#{lambda?\ 275}# #{val\ 927}#)
(begin
(let ((#{meta\ 931}#
(#{lambda-meta\ 277}# #{val\ 927}#)))
(if (not (assq (quote name) #{meta\ 931}#))
(#{set-lambda-meta!\ 279}#
#{val\ 927}#
(cons (cons (quote name) #{name\ 926}#)
#{meta\ 931}#))))))))
(#{build-void\ 302}#
(lambda (#{source\ 932}#)
(#{make-void\ 238}# #{source\ 932}#)))
(#{build-application\ 304}#
(lambda (#{source\ 934}#
#{fun-exp\ 935}#
#{arg-exps\ 936}#)
(#{make-application\ 260}#
#{source\ 934}#
#{fun-exp\ 935}#
#{arg-exps\ 936}#)))
(#{build-conditional\ 306}#
(lambda (#{source\ 940}#
#{test-exp\ 941}#
#{then-exp\ 942}#
#{else-exp\ 943}#)
(#{make-conditional\ 258}#
#{source\ 940}#
#{test-exp\ 941}#
#{then-exp\ 942}#
#{else-exp\ 943}#)))
(#{build-dynlet\ 308}#
(lambda (#{source\ 948}#
#{fluids\ 949}#
#{vals\ 950}#
#{body\ 951}#)
(#{make-dynlet\ 272}#
#{source\ 948}#
#{fluids\ 949}#
#{vals\ 950}#
#{body\ 951}#)))
(#{build-lexical-reference\ 310}#
(lambda (#{type\ 956}#
#{source\ 957}#
#{name\ 958}#
#{var\ 959}#)
(#{make-lexical-ref\ 244}#
#{source\ 957}#
#{name\ 958}#
#{var\ 959}#)))
(#{build-lexical-assignment\ 312}#
(lambda (#{source\ 964}#
#{name\ 965}#
#{var\ 966}#
#{exp\ 967}#)
(begin
(#{maybe-name-value!\ 300}#
#{name\ 965}#
#{exp\ 967}#)
(#{make-lexical-set\ 246}#
#{source\ 964}#
#{name\ 965}#
#{var\ 966}#
#{exp\ 967}#))))
(#{analyze-variable\ 314}#
(lambda (#{mod\ 972}#
#{var\ 973}#
#{modref-cont\ 974}#
#{bare-cont\ 975}#)
(if (not #{mod\ 972}#)
(#{bare-cont\ 975}# #{var\ 973}#)
(begin
(let ((#{kind\ 982}# (car #{mod\ 972}#))
(#{mod\ 983}# (cdr #{mod\ 972}#)))
(if (eqv? #{kind\ 982}# (quote public))
(#{modref-cont\ 974}#
#{mod\ 983}#
#{var\ 973}#
#t)
(if (eqv? #{kind\ 982}# (quote private))
(if (not (equal?
#{mod\ 983}#
(module-name (current-module))))
(#{modref-cont\ 974}#
#{mod\ 983}#
#{var\ 973}#
#f)
(#{bare-cont\ 975}# #{var\ 973}#))
(if (eqv? #{kind\ 982}# (quote bare))
(#{bare-cont\ 975}# #{var\ 973}#)
(if (eqv? #{kind\ 982}# (quote hygiene))
(if (if (not (equal?
#{mod\ 983}#
(module-name (current-module))))
(module-variable
(resolve-module #{mod\ 983}#)
#{var\ 973}#)
#f)
(#{modref-cont\ 974}#
#{mod\ 983}#
#{var\ 973}#
#f)
(#{bare-cont\ 975}# #{var\ 973}#))
(syntax-violation
#f
"bad module kind"
#{var\ 973}#
#{mod\ 983}#))))))))))
(#{build-global-reference\ 316}#
(lambda (#{source\ 991}# #{var\ 992}# #{mod\ 993}#)
(#{analyze-variable\ 314}#
#{mod\ 993}#
#{var\ 992}#
(lambda (#{mod\ 997}# #{var\ 998}# #{public?\ 999}#)
(#{make-module-ref\ 248}#
#{source\ 991}#
#{mod\ 997}#
#{var\ 998}#
#{public?\ 999}#))
(lambda (#{var\ 1003}#)
(#{make-toplevel-ref\ 252}#
#{source\ 991}#
#{var\ 1003}#)))))
(#{build-global-assignment\ 318}#
(lambda (#{source\ 1005}#
#{var\ 1006}#
#{exp\ 1007}#
#{mod\ 1008}#)
(begin
(#{maybe-name-value!\ 300}#
#{var\ 1006}#
#{exp\ 1007}#)
(#{analyze-variable\ 314}#
#{mod\ 1008}#
#{var\ 1006}#
(lambda (#{mod\ 1013}# #{var\ 1014}# #{public?\ 1015}#)
(#{make-module-set\ 250}#
#{source\ 1005}#
#{mod\ 1013}#
#{var\ 1014}#
#{public?\ 1015}#
#{exp\ 1007}#))
(lambda (#{var\ 1019}#)
(#{make-toplevel-set\ 254}#
#{source\ 1005}#
#{var\ 1019}#
#{exp\ 1007}#))))))
(#{build-global-definition\ 320}#
(lambda (#{source\ 1021}# #{var\ 1022}# #{exp\ 1023}#)
(begin
(#{maybe-name-value!\ 300}#
#{var\ 1022}#
#{exp\ 1023}#)
(#{make-toplevel-define\ 256}#
#{source\ 1021}#
#{var\ 1022}#
#{exp\ 1023}#))))
(#{build-simple-lambda\ 322}#
(lambda (#{src\ 1027}#
#{req\ 1028}#
#{rest\ 1029}#
#{vars\ 1030}#
#{meta\ 1031}#
#{exp\ 1032}#)
(#{make-lambda\ 264}#
#{src\ 1027}#
#{meta\ 1031}#
(#{make-lambda-case\ 266}#
#{src\ 1027}#
#{req\ 1028}#
#f
#{rest\ 1029}#
#f
'()
#{vars\ 1030}#
#{exp\ 1032}#
#f))))
(#{build-case-lambda\ 324}#
(lambda (#{src\ 1039}# #{meta\ 1040}# #{body\ 1041}#)
(#{make-lambda\ 264}#
#{src\ 1039}#
#{meta\ 1040}#
#{body\ 1041}#)))
(#{build-lambda-case\ 326}#
(lambda (#{src\ 1045}#
#{req\ 1046}#
#{opt\ 1047}#
#{rest\ 1048}#
#{kw\ 1049}#
#{inits\ 1050}#
#{vars\ 1051}#
#{body\ 1052}#
#{else-case\ 1053}#)
(#{make-lambda-case\ 266}#
#{src\ 1045}#
#{req\ 1046}#
#{opt\ 1047}#
#{rest\ 1048}#
#{kw\ 1049}#
#{inits\ 1050}#
#{vars\ 1051}#
#{body\ 1052}#
#{else-case\ 1053}#)))
(#{build-primref\ 328}#
(lambda (#{src\ 1063}# #{name\ 1064}#)
(if (equal?
(module-name (current-module))
'(guile))
(#{make-toplevel-ref\ 252}#
#{src\ 1063}#
#{name\ 1064}#)
(#{make-module-ref\ 248}#
#{src\ 1063}#
'(guile)
#{name\ 1064}#
#f))))
(#{build-data\ 330}#
(lambda (#{src\ 1067}# #{exp\ 1068}#)
(#{make-const\ 240}# #{src\ 1067}# #{exp\ 1068}#)))
(#{build-sequence\ 332}#
(lambda (#{src\ 1071}# #{exps\ 1072}#)
(if (null? (cdr #{exps\ 1072}#))
(car #{exps\ 1072}#)
(#{make-sequence\ 262}#
#{src\ 1071}#
#{exps\ 1072}#))))
(#{build-let\ 334}#
(lambda (#{src\ 1075}#
#{ids\ 1076}#
#{vars\ 1077}#
#{val-exps\ 1078}#
#{body-exp\ 1079}#)
(begin
(for-each
#{maybe-name-value!\ 300}#
#{ids\ 1076}#
#{val-exps\ 1078}#)
(if (null? #{vars\ 1077}#)
#{body-exp\ 1079}#
(#{make-let\ 268}#
#{src\ 1075}#
#{ids\ 1076}#
#{vars\ 1077}#
#{val-exps\ 1078}#
#{body-exp\ 1079}#)))))
(#{build-named-let\ 336}#
(lambda (#{src\ 1085}#
#{ids\ 1086}#
#{vars\ 1087}#
#{val-exps\ 1088}#
#{body-exp\ 1089}#)
(begin
(let ((#{f\ 1099}# (car #{vars\ 1087}#))
(#{f-name\ 1100}# (car #{ids\ 1086}#))
(#{vars\ 1101}# (cdr #{vars\ 1087}#))
(#{ids\ 1102}# (cdr #{ids\ 1086}#)))
(begin
(let ((#{proc\ 1104}#
(#{build-simple-lambda\ 322}#
#{src\ 1085}#
#{ids\ 1102}#
#f
#{vars\ 1101}#
'()
#{body-exp\ 1089}#)))
(begin
(#{maybe-name-value!\ 300}#
#{f-name\ 1100}#
#{proc\ 1104}#)
(for-each
#{maybe-name-value!\ 300}#
#{ids\ 1102}#
#{val-exps\ 1088}#)
(#{make-letrec\ 270}#
#{src\ 1085}#
#f
(list #{f-name\ 1100}#)
(list #{f\ 1099}#)
(list #{proc\ 1104}#)
(#{build-application\ 304}#
#{src\ 1085}#
(#{build-lexical-reference\ 310}#
'fun
#{src\ 1085}#
#{f-name\ 1100}#
#{f\ 1099}#)
#{val-exps\ 1088}#)))))))))
(#{build-letrec\ 338}#
(lambda (#{src\ 1105}#
#{in-order?\ 1106}#
#{ids\ 1107}#
#{vars\ 1108}#
#{val-exps\ 1109}#
#{body-exp\ 1110}#)
(if (null? #{vars\ 1108}#)
#{body-exp\ 1110}#
(begin
(for-each
#{maybe-name-value!\ 300}#
#{ids\ 1107}#
#{val-exps\ 1109}#)
(#{make-letrec\ 270}#
#{src\ 1105}#
#{in-order?\ 1106}#
#{ids\ 1107}#
#{vars\ 1108}#
#{val-exps\ 1109}#
#{body-exp\ 1110}#)))))
(#{make-syntax-object\ 342}#
(lambda (#{expression\ 1117}#
#{wrap\ 1118}#
#{module\ 1119}#)
(vector
'syntax-object
#{expression\ 1117}#
#{wrap\ 1118}#
#{module\ 1119}#)))
(#{syntax-object?\ 344}#
(lambda (#{x\ 1123}#)
(if (vector? #{x\ 1123}#)
(if (= (vector-length #{x\ 1123}#) 4)
(eq? (vector-ref #{x\ 1123}# 0)
'syntax-object)
#f)
#f)))
(#{syntax-object-expression\ 346}#
(lambda (#{x\ 1128}#) (vector-ref #{x\ 1128}# 1)))
(#{syntax-object-wrap\ 348}#
(lambda (#{x\ 1130}#) (vector-ref #{x\ 1130}# 2)))
(#{syntax-object-module\ 350}#
(lambda (#{x\ 1132}#) (vector-ref #{x\ 1132}# 3)))
(#{source-annotation\ 359}#
(lambda (#{x\ 1146}#)
(if (#{syntax-object?\ 344}# #{x\ 1146}#)
(#{source-annotation\ 359}#
(#{syntax-object-expression\ 346}# #{x\ 1146}#))
(if (pair? #{x\ 1146}#)
(begin
(let ((#{props\ 1153}# (source-properties #{x\ 1146}#)))
(if (pair? #{props\ 1153}#) #{props\ 1153}# #f)))
#f))))
(#{extend-env\ 366}#
(lambda (#{labels\ 1155}# #{bindings\ 1156}# #{r\ 1157}#)
(if (null? #{labels\ 1155}#)
#{r\ 1157}#
(#{extend-env\ 366}#
(cdr #{labels\ 1155}#)
(cdr #{bindings\ 1156}#)
(cons (cons (car #{labels\ 1155}#)
(car #{bindings\ 1156}#))
#{r\ 1157}#)))))
(#{extend-var-env\ 368}#
(lambda (#{labels\ 1161}# #{vars\ 1162}# #{r\ 1163}#)
(if (null? #{labels\ 1161}#)
#{r\ 1163}#
(#{extend-var-env\ 368}#
(cdr #{labels\ 1161}#)
(cdr #{vars\ 1162}#)
(cons (cons (car #{labels\ 1161}#)
(cons (quote lexical) (car #{vars\ 1162}#)))
#{r\ 1163}#)))))
(#{macros-only-env\ 370}#
(lambda (#{r\ 1168}#)
(if (null? #{r\ 1168}#)
'()
(begin
(let ((#{a\ 1171}# (car #{r\ 1168}#)))
(if (eq? (car (cdr #{a\ 1171}#)) (quote macro))
(cons #{a\ 1171}#
(#{macros-only-env\ 370}# (cdr #{r\ 1168}#)))
(#{macros-only-env\ 370}# (cdr #{r\ 1168}#))))))))
(#{lookup\ 372}#
(lambda (#{x\ 1172}# #{r\ 1173}# #{mod\ 1174}#)
(begin
(let ((#{t\ 1180}# (assq #{x\ 1172}# #{r\ 1173}#)))
(if #{t\ 1180}#
(cdr #{t\ 1180}#)
(if (symbol? #{x\ 1172}#)
(begin
(let ((#{t\ 1186}#
(#{get-global-definition-hook\ 296}#
#{x\ 1172}#
#{mod\ 1174}#)))
(if #{t\ 1186}# #{t\ 1186}# (quote (global)))))
'(displaced-lexical)))))))
(#{global-extend\ 374}#
(lambda (#{type\ 1191}# #{sym\ 1192}# #{val\ 1193}#)
(#{put-global-definition-hook\ 294}#
#{sym\ 1192}#
#{type\ 1191}#
#{val\ 1193}#)))
(#{nonsymbol-id?\ 376}#
(lambda (#{x\ 1197}#)
(if (#{syntax-object?\ 344}# #{x\ 1197}#)
(symbol?
(#{syntax-object-expression\ 346}# #{x\ 1197}#))
#f)))
(#{id?\ 378}#
(lambda (#{x\ 1201}#)
(if (symbol? #{x\ 1201}#)
#t
(if (#{syntax-object?\ 344}# #{x\ 1201}#)
(symbol?
(#{syntax-object-expression\ 346}# #{x\ 1201}#))
#f))))
(#{id-sym-name&marks\ 381}#
(lambda (#{x\ 1208}# #{w\ 1209}#)
(if (#{syntax-object?\ 344}# #{x\ 1208}#)
(values
(#{syntax-object-expression\ 346}# #{x\ 1208}#)
(#{join-marks\ 428}#
(car #{w\ 1209}#)
(car (#{syntax-object-wrap\ 348}# #{x\ 1208}#))))
(values #{x\ 1208}# (car #{w\ 1209}#)))))
(#{gen-label\ 391}#
(lambda () (symbol->string (gensym "i"))))
(#{gen-labels\ 393}#
(lambda (#{ls\ 1215}#)
(if (null? #{ls\ 1215}#)
'()
(cons (#{gen-label\ 391}#)
(#{gen-labels\ 393}# (cdr #{ls\ 1215}#))))))
(#{make-ribcage\ 396}#
(lambda (#{symnames\ 1217}#
#{marks\ 1218}#
#{labels\ 1219}#)
(vector
'ribcage
#{symnames\ 1217}#
#{marks\ 1218}#
#{labels\ 1219}#)))
(#{ribcage-symnames\ 400}#
(lambda (#{x\ 1228}#) (vector-ref #{x\ 1228}# 1)))
(#{ribcage-marks\ 402}#
(lambda (#{x\ 1230}#) (vector-ref #{x\ 1230}# 2)))
(#{ribcage-labels\ 404}#
(lambda (#{x\ 1232}#) (vector-ref #{x\ 1232}# 3)))
(#{set-ribcage-symnames!\ 406}#
(lambda (#{x\ 1234}# #{update\ 1235}#)
(vector-set! #{x\ 1234}# 1 #{update\ 1235}#)))
(#{set-ribcage-marks!\ 408}#
(lambda (#{x\ 1238}# #{update\ 1239}#)
(vector-set! #{x\ 1238}# 2 #{update\ 1239}#)))
(#{set-ribcage-labels!\ 410}#
(lambda (#{x\ 1242}# #{update\ 1243}#)
(vector-set! #{x\ 1242}# 3 #{update\ 1243}#)))
(#{anti-mark\ 416}#
(lambda (#{w\ 1246}#)
(cons (cons #f (car #{w\ 1246}#))
(cons (quote shift) (cdr #{w\ 1246}#)))))
(#{extend-ribcage!\ 420}#
(lambda (#{ribcage\ 1252}# #{id\ 1253}# #{label\ 1254}#)
(begin
(#{set-ribcage-symnames!\ 406}#
#{ribcage\ 1252}#
(cons (#{syntax-object-expression\ 346}# #{id\ 1253}#)
(#{ribcage-symnames\ 400}# #{ribcage\ 1252}#)))
(#{set-ribcage-marks!\ 408}#
#{ribcage\ 1252}#
(cons (car (#{syntax-object-wrap\ 348}# #{id\ 1253}#))
(#{ribcage-marks\ 402}# #{ribcage\ 1252}#)))
(#{set-ribcage-labels!\ 410}#
#{ribcage\ 1252}#
(cons #{label\ 1254}#
(#{ribcage-labels\ 404}# #{ribcage\ 1252}#))))))
(#{make-binding-wrap\ 422}#
(lambda (#{ids\ 1259}# #{labels\ 1260}# #{w\ 1261}#)
(if (null? #{ids\ 1259}#)
#{w\ 1261}#
(cons (car #{w\ 1261}#)
(cons (begin
(let ((#{labelvec\ 1268}#
(list->vector #{labels\ 1260}#)))
(begin
(let ((#{n\ 1270}#
(vector-length #{labelvec\ 1268}#)))
(begin
(let ((#{symnamevec\ 1273}#
(make-vector #{n\ 1270}#))
(#{marksvec\ 1274}#
(make-vector #{n\ 1270}#)))
(begin
(letrec*
((#{f\ 1278}#
(lambda (#{ids\ 1279}#
#{i\ 1280}#)
(if (not (null? #{ids\ 1279}#))
(call-with-values
(lambda ()
(#{id-sym-name&marks\ 381}#
(car #{ids\ 1279}#)
#{w\ 1261}#))
(lambda (#{symname\ 1281}#
#{marks\ 1282}#)
(begin
(vector-set!
#{symnamevec\ 1273}#
#{i\ 1280}#
#{symname\ 1281}#)
(vector-set!
#{marksvec\ 1274}#
#{i\ 1280}#
#{marks\ 1282}#)
(#{f\ 1278}#
(cdr #{ids\ 1279}#)
(#{fx+\ 281}#
#{i\ 1280}#
1)))))))))
(begin
(#{f\ 1278}# #{ids\ 1259}# 0)))
(#{make-ribcage\ 396}#
#{symnamevec\ 1273}#
#{marksvec\ 1274}#
#{labelvec\ 1268}#))))))))
(cdr #{w\ 1261}#))))))
(#{smart-append\ 424}#
(lambda (#{m1\ 1286}# #{m2\ 1287}#)
(if (null? #{m2\ 1287}#)
#{m1\ 1286}#
(append #{m1\ 1286}# #{m2\ 1287}#))))
(#{join-wraps\ 426}#
(lambda (#{w1\ 1290}# #{w2\ 1291}#)
(begin
(let ((#{m1\ 1296}# (car #{w1\ 1290}#))
(#{s1\ 1297}# (cdr #{w1\ 1290}#)))
(if (null? #{m1\ 1296}#)
(if (null? #{s1\ 1297}#)
#{w2\ 1291}#
(cons (car #{w2\ 1291}#)
(#{smart-append\ 424}#
#{s1\ 1297}#
(cdr #{w2\ 1291}#))))
(cons (#{smart-append\ 424}#
#{m1\ 1296}#
(car #{w2\ 1291}#))
(#{smart-append\ 424}#
#{s1\ 1297}#
(cdr #{w2\ 1291}#))))))))
(#{join-marks\ 428}#
(lambda (#{m1\ 1306}# #{m2\ 1307}#)
(#{smart-append\ 424}# #{m1\ 1306}# #{m2\ 1307}#)))
(#{same-marks?\ 430}#
(lambda (#{x\ 1310}# #{y\ 1311}#)
(begin
(let ((#{t\ 1316}# (eq? #{x\ 1310}# #{y\ 1311}#)))
(if #{t\ 1316}#
#{t\ 1316}#
(if (not (null? #{x\ 1310}#))
(if (not (null? #{y\ 1311}#))
(if (eq? (car #{x\ 1310}#) (car #{y\ 1311}#))
(#{same-marks?\ 430}#
(cdr #{x\ 1310}#)
(cdr #{y\ 1311}#))
#f)
#f)
#f))))))
(#{id-var-name\ 432}#
(lambda (#{id\ 1322}# #{w\ 1323}#)
(letrec*
((#{search\ 1328}#
(lambda (#{sym\ 1344}# #{subst\ 1345}# #{marks\ 1346}#)
(if (null? #{subst\ 1345}#)
(values #f #{marks\ 1346}#)
(begin
(let ((#{fst\ 1351}# (car #{subst\ 1345}#)))
(if (eq? #{fst\ 1351}# (quote shift))
(#{search\ 1328}#
#{sym\ 1344}#
(cdr #{subst\ 1345}#)
(cdr #{marks\ 1346}#))
(begin
(let ((#{symnames\ 1353}#
(#{ribcage-symnames\ 400}#
#{fst\ 1351}#)))
(if (vector? #{symnames\ 1353}#)
(#{search-vector-rib\ 1332}#
#{sym\ 1344}#
#{subst\ 1345}#
#{marks\ 1346}#
#{symnames\ 1353}#
#{fst\ 1351}#)
(#{search-list-rib\ 1330}#
#{sym\ 1344}#
#{subst\ 1345}#
#{marks\ 1346}#
#{symnames\ 1353}#
#{fst\ 1351}#))))))))))
(#{search-list-rib\ 1330}#
(lambda (#{sym\ 1354}#
#{subst\ 1355}#
#{marks\ 1356}#
#{symnames\ 1357}#
#{ribcage\ 1358}#)
(letrec*
((#{f\ 1367}#
(lambda (#{symnames\ 1368}# #{i\ 1369}#)
(if (null? #{symnames\ 1368}#)
(#{search\ 1328}#
#{sym\ 1354}#
(cdr #{subst\ 1355}#)
#{marks\ 1356}#)
(if (if (eq? (car #{symnames\ 1368}#)
#{sym\ 1354}#)
(#{same-marks?\ 430}#
#{marks\ 1356}#
(list-ref
(#{ribcage-marks\ 402}#
#{ribcage\ 1358}#)
#{i\ 1369}#))
#f)
(values
(list-ref
(#{ribcage-labels\ 404}# #{ribcage\ 1358}#)
#{i\ 1369}#)
#{marks\ 1356}#)
(#{f\ 1367}#
(cdr #{symnames\ 1368}#)
(#{fx+\ 281}# #{i\ 1369}# 1)))))))
(begin (#{f\ 1367}# #{symnames\ 1357}# 0)))))
(#{search-vector-rib\ 1332}#
(lambda (#{sym\ 1377}#
#{subst\ 1378}#
#{marks\ 1379}#
#{symnames\ 1380}#
#{ribcage\ 1381}#)
(begin
(let ((#{n\ 1388}# (vector-length #{symnames\ 1380}#)))
(letrec*
((#{f\ 1391}#
(lambda (#{i\ 1392}#)
(if (#{fx=\ 285}# #{i\ 1392}# #{n\ 1388}#)
(#{search\ 1328}#
#{sym\ 1377}#
(cdr #{subst\ 1378}#)
#{marks\ 1379}#)
(if (if (eq? (vector-ref
#{symnames\ 1380}#
#{i\ 1392}#)
#{sym\ 1377}#)
(#{same-marks?\ 430}#
#{marks\ 1379}#
(vector-ref
(#{ribcage-marks\ 402}#
#{ribcage\ 1381}#)
#{i\ 1392}#))
#f)
(values
(vector-ref
(#{ribcage-labels\ 404}#
#{ribcage\ 1381}#)
#{i\ 1392}#)
#{marks\ 1379}#)
(#{f\ 1391}#
(#{fx+\ 281}# #{i\ 1392}# 1)))))))
(begin (#{f\ 1391}# 0))))))))
(begin
(if (symbol? #{id\ 1322}#)
(begin
(let ((#{t\ 1402}#
(call-with-values
(lambda ()
(#{search\ 1328}#
#{id\ 1322}#
(cdr #{w\ 1323}#)
(car #{w\ 1323}#)))
(lambda (#{x\ 1406}# . #{ignore\ 1407}#)
#{x\ 1406}#))))
(if #{t\ 1402}# #{t\ 1402}# #{id\ 1322}#)))
(if (#{syntax-object?\ 344}# #{id\ 1322}#)
(begin
(let ((#{id\ 1415}#
(#{syntax-object-expression\ 346}#
#{id\ 1322}#))
(#{w1\ 1416}#
(#{syntax-object-wrap\ 348}# #{id\ 1322}#)))
(begin
(let ((#{marks\ 1418}#
(#{join-marks\ 428}#
(car #{w\ 1323}#)
(car #{w1\ 1416}#))))
(call-with-values
(lambda ()
(#{search\ 1328}#
#{id\ 1415}#
(cdr #{w\ 1323}#)
#{marks\ 1418}#))
(lambda (#{new-id\ 1422}# #{marks\ 1423}#)
(begin
(let ((#{t\ 1428}# #{new-id\ 1422}#))
(if #{t\ 1428}#
#{t\ 1428}#
(begin
(let ((#{t\ 1431}#
(call-with-values
(lambda ()
(#{search\ 1328}#
#{id\ 1415}#
(cdr #{w1\ 1416}#)
#{marks\ 1423}#))
(lambda (#{x\ 1434}#
.
#{ignore\ 1435}#)
#{x\ 1434}#))))
(if #{t\ 1431}#
#{t\ 1431}#
#{id\ 1415}#))))))))))))
(syntax-violation
'id-var-name
"invalid id"
#{id\ 1322}#)))))))
(#{free-id=?\ 434}#
(lambda (#{i\ 1440}# #{j\ 1441}#)
(if (eq? (begin
(let ((#{x\ 1447}# #{i\ 1440}#))
(if (#{syntax-object?\ 344}# #{x\ 1447}#)
(#{syntax-object-expression\ 346}# #{x\ 1447}#)
#{x\ 1447}#)))
(begin
(let ((#{x\ 1450}# #{j\ 1441}#))
(if (#{syntax-object?\ 344}# #{x\ 1450}#)
(#{syntax-object-expression\ 346}# #{x\ 1450}#)
#{x\ 1450}#))))
(eq? (#{id-var-name\ 432}# #{i\ 1440}# (quote (())))
(#{id-var-name\ 432}# #{j\ 1441}# (quote (()))))
#f)))
(#{bound-id=?\ 436}#
(lambda (#{i\ 1454}# #{j\ 1455}#)
(if (if (#{syntax-object?\ 344}# #{i\ 1454}#)
(#{syntax-object?\ 344}# #{j\ 1455}#)
#f)
(if (eq? (#{syntax-object-expression\ 346}# #{i\ 1454}#)
(#{syntax-object-expression\ 346}# #{j\ 1455}#))
(#{same-marks?\ 430}#
(car (#{syntax-object-wrap\ 348}# #{i\ 1454}#))
(car (#{syntax-object-wrap\ 348}# #{j\ 1455}#)))
#f)
(eq? #{i\ 1454}# #{j\ 1455}#))))
(#{valid-bound-ids?\ 438}#
(lambda (#{ids\ 1464}#)
(if (letrec*
((#{all-ids?\ 1469}#
(lambda (#{ids\ 1470}#)
(begin
(let ((#{t\ 1473}# (null? #{ids\ 1470}#)))
(if #{t\ 1473}#
#{t\ 1473}#
(if (#{id?\ 378}# (car #{ids\ 1470}#))
(#{all-ids?\ 1469}# (cdr #{ids\ 1470}#))
#f)))))))
(begin (#{all-ids?\ 1469}# #{ids\ 1464}#)))
(#{distinct-bound-ids?\ 440}# #{ids\ 1464}#)
#f)))
(#{distinct-bound-ids?\ 440}#
(lambda (#{ids\ 1478}#)
(letrec*
((#{distinct?\ 1482}#
(lambda (#{ids\ 1483}#)
(begin
(let ((#{t\ 1486}# (null? #{ids\ 1483}#)))
(if #{t\ 1486}#
#{t\ 1486}#
(if (not (#{bound-id-member?\ 442}#
(car #{ids\ 1483}#)
(cdr #{ids\ 1483}#)))
(#{distinct?\ 1482}# (cdr #{ids\ 1483}#))
#f)))))))
(begin (#{distinct?\ 1482}# #{ids\ 1478}#)))))
(#{bound-id-member?\ 442}#
(lambda (#{x\ 1490}# #{list\ 1491}#)
(if (not (null? #{list\ 1491}#))
(begin
(let ((#{t\ 1498}#
(#{bound-id=?\ 436}#
#{x\ 1490}#
(car #{list\ 1491}#))))
(if #{t\ 1498}#
#{t\ 1498}#
(#{bound-id-member?\ 442}#
#{x\ 1490}#
(cdr #{list\ 1491}#)))))
#f)))
(#{wrap\ 444}#
(lambda (#{x\ 1500}# #{w\ 1501}# #{defmod\ 1502}#)
(if (if (null? (car #{w\ 1501}#))
(null? (cdr #{w\ 1501}#))
#f)
#{x\ 1500}#
(if (#{syntax-object?\ 344}# #{x\ 1500}#)
(#{make-syntax-object\ 342}#
(#{syntax-object-expression\ 346}# #{x\ 1500}#)
(#{join-wraps\ 426}#
#{w\ 1501}#
(#{syntax-object-wrap\ 348}# #{x\ 1500}#))
(#{syntax-object-module\ 350}# #{x\ 1500}#))
(if (null? #{x\ 1500}#)
#{x\ 1500}#
(#{make-syntax-object\ 342}#
#{x\ 1500}#
#{w\ 1501}#
#{defmod\ 1502}#))))))
(#{source-wrap\ 446}#
(lambda (#{x\ 1517}#
#{w\ 1518}#
#{s\ 1519}#
#{defmod\ 1520}#)
(#{wrap\ 444}#
(#{decorate-source\ 298}#
#{x\ 1517}#
#{s\ 1519}#)
#{w\ 1518}#
#{defmod\ 1520}#)))
(#{chi-sequence\ 448}#
(lambda (#{body\ 1525}#
#{r\ 1526}#
#{w\ 1527}#
#{s\ 1528}#
#{mod\ 1529}#)
(#{build-sequence\ 332}#
#{s\ 1528}#
(letrec*
((#{dobody\ 1540}#
(lambda (#{body\ 1541}#
#{r\ 1542}#
#{w\ 1543}#
#{mod\ 1544}#)
(if (null? #{body\ 1541}#)
'()
(begin
(let ((#{first\ 1546}#
(#{chi\ 460}#
(car #{body\ 1541}#)
#{r\ 1542}#
#{w\ 1543}#
#{mod\ 1544}#)))
(cons #{first\ 1546}#
(#{dobody\ 1540}#
(cdr #{body\ 1541}#)
#{r\ 1542}#
#{w\ 1543}#
#{mod\ 1544}#))))))))
(begin
(#{dobody\ 1540}#
#{body\ 1525}#
#{r\ 1526}#
#{w\ 1527}#
#{mod\ 1529}#))))))
(#{chi-top-sequence\ 450}#
(lambda (#{body\ 1547}#
#{r\ 1548}#
#{w\ 1549}#
#{s\ 1550}#
#{m\ 1551}#
#{esew\ 1552}#
#{mod\ 1553}#)
(#{build-sequence\ 332}#
#{s\ 1550}#
(letrec*
((#{dobody\ 1569}#
(lambda (#{body\ 1570}#
#{r\ 1571}#
#{w\ 1572}#
#{m\ 1573}#
#{esew\ 1574}#
#{mod\ 1575}#
#{out\ 1576}#)
(if (null? #{body\ 1570}#)
(reverse #{out\ 1576}#)
(#{dobody\ 1569}#
(cdr #{body\ 1570}#)
#{r\ 1571}#
#{w\ 1572}#
#{m\ 1573}#
#{esew\ 1574}#
#{mod\ 1575}#
(cons (#{chi-top\ 458}#
(car #{body\ 1570}#)
#{r\ 1571}#
#{w\ 1572}#
#{m\ 1573}#
#{esew\ 1574}#
#{mod\ 1575}#)
#{out\ 1576}#))))))
(begin
(#{dobody\ 1569}#
#{body\ 1547}#
#{r\ 1548}#
#{w\ 1549}#
#{m\ 1551}#
#{esew\ 1552}#
#{mod\ 1553}#
'()))))))
(#{chi-install-global\ 452}#
(lambda (#{name\ 1577}# #{e\ 1578}#)
(#{build-global-definition\ 320}#
#f
#{name\ 1577}#
(#{build-application\ 304}#
#f
(#{build-primref\ 328}#
#f
'make-syntax-transformer)
(list (#{build-data\ 330}# #f #{name\ 1577}#)
(#{build-data\ 330}# #f (quote macro))
#{e\ 1578}#)))))
(#{chi-when-list\ 454}#
(lambda (#{e\ 1586}# #{when-list\ 1587}# #{w\ 1588}#)
(letrec*
((#{f\ 1595}#
(lambda (#{when-list\ 1596}# #{situations\ 1597}#)
(if (null? #{when-list\ 1596}#)
#{situations\ 1597}#
(#{f\ 1595}#
(cdr #{when-list\ 1596}#)
(cons (begin
(let ((#{x\ 1599}# (car #{when-list\ 1596}#)))
(if (#{free-id=?\ 434}#
#{x\ 1599}#
'#(syntax-object
compile
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i1598"))
#(ribcage () () ())
#(ribcage
#(f when-list situations)
#((top) (top) (top))
#("i1592" "i1593" "i1594"))
#(ribcage () () ())
#(ribcage
#(e when-list w)
#((top) (top) (top))
#("i1589" "i1590" "i1591"))
#(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))
("i489"
"i487"
"i485"
"i483"
"i481"
"i479"
"i477"
"i475"
"i473"
"i471"
"i469"
"i467"
"i465"
"i463"
"i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i418"
"i417"
"i415"
"i414"
"i413"
"i412"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i392"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i379"
"i377"
"i375"
"i373"
"i371"
"i369"
"i367"
"i365"
"i364"
"i363"
"i362"
"i361"
"i360"
"i358"
"i357"
"i355"
"i353"
"i351"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i39" "i38" "i37" "i35")))
(hygiene guile)))
'compile
(if (#{free-id=?\ 434}#
#{x\ 1599}#
'#(syntax-object
load
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i1598"))
#(ribcage () () ())
#(ribcage
#(f when-list situations)
#((top) (top) (top))
#("i1592" "i1593" "i1594"))
#(ribcage () () ())
#(ribcage
#(e when-list w)
#((top) (top) (top))
#("i1589" "i1590" "i1591"))
#(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))
("i489"
"i487"
"i485"
"i483"
"i481"
"i479"
"i477"
"i475"
"i473"
"i471"
"i469"
"i467"
"i465"
"i463"
"i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i418"
"i417"
"i415"
"i414"
"i413"
"i412"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i392"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i379"
"i377"
"i375"
"i373"
"i371"
"i369"
"i367"
"i365"
"i364"
"i363"
"i362"
"i361"
"i360"
"i358"
"i357"
"i355"
"i353"
"i351"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i39" "i38" "i37" "i35")))
(hygiene guile)))
'load
(if (#{free-id=?\ 434}#
#{x\ 1599}#
'#(syntax-object
eval
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i1598"))
#(ribcage () () ())
#(ribcage
#(f when-list situations)
#((top) (top) (top))
#("i1592" "i1593" "i1594"))
#(ribcage () () ())
#(ribcage
#(e when-list w)
#((top) (top) (top))
#("i1589" "i1590" "i1591"))
#(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))
("i489"
"i487"
"i485"
"i483"
"i481"
"i479"
"i477"
"i475"
"i473"
"i471"
"i469"
"i467"
"i465"
"i463"
"i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i418"
"i417"
"i415"
"i414"
"i413"
"i412"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i392"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i379"
"i377"
"i375"
"i373"
"i371"
"i369"
"i367"
"i365"
"i364"
"i363"
"i362"
"i361"
"i360"
"i358"
"i357"
"i355"
"i353"
"i351"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i39" "i38" "i37" "i35")))
(hygiene guile)))
'eval
(if (#{free-id=?\ 434}#
#{x\ 1599}#
'#(syntax-object
expand
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i1598"))
#(ribcage () () ())
#(ribcage
#(f when-list situations)
#((top) (top) (top))
#("i1592" "i1593" "i1594"))
#(ribcage () () ())
#(ribcage
#(e when-list w)
#((top) (top) (top))
#("i1589" "i1590" "i1591"))
#(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))
("i489"
"i487"
"i485"
"i483"
"i481"
"i479"
"i477"
"i475"
"i473"
"i471"
"i469"
"i467"
"i465"
"i463"
"i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i418"
"i417"
"i415"
"i414"
"i413"
"i412"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i392"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i379"
"i377"
"i375"
"i373"
"i371"
"i369"
"i367"
"i365"
"i364"
"i363"
"i362"
"i361"
"i360"
"i358"
"i357"
"i355"
"i353"
"i351"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i39" "i38" "i37" "i35")))
(hygiene guile)))
'expand
(syntax-violation
'eval-when
"invalid situation"
#{e\ 1586}#
(#{wrap\ 444}#
#{x\ 1599}#
#{w\ 1588}#
#f))))))))
#{situations\ 1597}#))))))
(begin
(#{f\ 1595}# #{when-list\ 1587}# (quote ()))))))
(#{syntax-type\ 456}#
(lambda (#{e\ 1609}#
#{r\ 1610}#
#{w\ 1611}#
#{s\ 1612}#
#{rib\ 1613}#
#{mod\ 1614}#
#{for-car?\ 1615}#)
(if (symbol? #{e\ 1609}#)
(begin
(let ((#{n\ 1627}#
(#{id-var-name\ 432}# #{e\ 1609}# #{w\ 1611}#)))
(begin
(let ((#{b\ 1629}#
(#{lookup\ 372}#
#{n\ 1627}#
#{r\ 1610}#
#{mod\ 1614}#)))
(begin
(let ((#{type\ 1631}# (car #{b\ 1629}#)))
(if (eqv? #{type\ 1631}# (quote lexical))
(values
#{type\ 1631}#
(cdr #{b\ 1629}#)
#{e\ 1609}#
#{w\ 1611}#
#{s\ 1612}#
#{mod\ 1614}#)
(if (eqv? #{type\ 1631}# (quote global))
(values
#{type\ 1631}#
#{n\ 1627}#
#{e\ 1609}#
#{w\ 1611}#
#{s\ 1612}#
#{mod\ 1614}#)
(if (eqv? #{type\ 1631}# (quote macro))
(if #{for-car?\ 1615}#
(values
#{type\ 1631}#
(cdr #{b\ 1629}#)
#{e\ 1609}#
#{w\ 1611}#
#{s\ 1612}#
#{mod\ 1614}#)
(#{syntax-type\ 456}#
(#{chi-macro\ 466}#
(cdr #{b\ 1629}#)
#{e\ 1609}#
#{r\ 1610}#
#{w\ 1611}#
#{s\ 1612}#
#{rib\ 1613}#
#{mod\ 1614}#)
#{r\ 1610}#
'(())
#{s\ 1612}#
#{rib\ 1613}#
#{mod\ 1614}#
#f))
(values
#{type\ 1631}#
(cdr #{b\ 1629}#)
#{e\ 1609}#
#{w\ 1611}#
#{s\ 1612}#
#{mod\ 1614}#))))))))))
(if (pair? #{e\ 1609}#)
(begin
(let ((#{first\ 1645}# (car #{e\ 1609}#)))
(call-with-values
(lambda ()
(#{syntax-type\ 456}#
#{first\ 1645}#
#{r\ 1610}#
#{w\ 1611}#
#{s\ 1612}#
#{rib\ 1613}#
#{mod\ 1614}#
#t))
(lambda (#{ftype\ 1646}#
#{fval\ 1647}#
#{fe\ 1648}#
#{fw\ 1649}#
#{fs\ 1650}#
#{fmod\ 1651}#)
(if (eqv? #{ftype\ 1646}# (quote lexical))
(values
'lexical-call
#{fval\ 1647}#
#{e\ 1609}#
#{w\ 1611}#
#{s\ 1612}#
#{mod\ 1614}#)
(if (eqv? #{ftype\ 1646}# (quote global))
(values
'global-call
(#{make-syntax-object\ 342}#
#{fval\ 1647}#
#{w\ 1611}#
#{fmod\ 1651}#)
#{e\ 1609}#
#{w\ 1611}#
#{s\ 1612}#
#{mod\ 1614}#)
(if (eqv? #{ftype\ 1646}# (quote macro))
(#{syntax-type\ 456}#
(#{chi-macro\ 466}#
#{fval\ 1647}#
#{e\ 1609}#
#{r\ 1610}#
#{w\ 1611}#
#{s\ 1612}#
#{rib\ 1613}#
#{mod\ 1614}#)
#{r\ 1610}#
'(())
#{s\ 1612}#
#{rib\ 1613}#
#{mod\ 1614}#
#{for-car?\ 1615}#)
(if (eqv? #{ftype\ 1646}# (quote module-ref))
(call-with-values
(lambda ()
(#{fval\ 1647}#
#{e\ 1609}#
#{r\ 1610}#
#{w\ 1611}#))
(lambda (#{e\ 1663}#
#{r\ 1664}#
#{w\ 1665}#
#{s\ 1666}#
#{mod\ 1667}#)
(#{syntax-type\ 456}#
#{e\ 1663}#
#{r\ 1664}#
#{w\ 1665}#
#{s\ 1666}#
#{rib\ 1613}#
#{mod\ 1667}#
#{for-car?\ 1615}#)))
(if (eqv? #{ftype\ 1646}# (quote core))
(values
'core-form
#{fval\ 1647}#
#{e\ 1609}#
#{w\ 1611}#
#{s\ 1612}#
#{mod\ 1614}#)
(if (eqv? #{ftype\ 1646}#
'local-syntax)
(values
'local-syntax-form
#{fval\ 1647}#
#{e\ 1609}#
#{w\ 1611}#
#{s\ 1612}#
#{mod\ 1614}#)
(if (eqv? #{ftype\ 1646}# (quote begin))
(values
'begin-form
#f
#{e\ 1609}#
#{w\ 1611}#
#{s\ 1612}#
#{mod\ 1614}#)
(if (eqv? #{ftype\ 1646}#
'eval-when)
(values
'eval-when-form
#f
#{e\ 1609}#
#{w\ 1611}#
#{s\ 1612}#
#{mod\ 1614}#)
(if (eqv? #{ftype\ 1646}#
'define)
(let ((#{tmp\ 1678}# #{e\ 1609}#))
(let ((#{tmp\ 1679}#
($sc-dispatch
#{tmp\ 1678}#
'(_ any any))))
(if (if #{tmp\ 1679}#
(@apply
(lambda (#{name\ 1682}#
#{val\ 1683}#)
(#{id?\ 378}#
#{name\ 1682}#))
#{tmp\ 1679}#)
#f)
(@apply
(lambda (#{name\ 1686}#
#{val\ 1687}#)
(values
'define-form
#{name\ 1686}#
#{val\ 1687}#
#{w\ 1611}#
#{s\ 1612}#
#{mod\ 1614}#))
#{tmp\ 1679}#)
(let ((#{tmp\ 1688}#
($sc-dispatch
#{tmp\ 1678}#
'(_ (any . any)
any
.
each-any))))
(if (if #{tmp\ 1688}#
(@apply
(lambda (#{name\ 1693}#
#{args\ 1694}#
#{e1\ 1695}#
#{e2\ 1696}#)
(if (#{id?\ 378}#
#{name\ 1693}#)
(#{valid-bound-ids?\ 438}#
(#{lambda-var-list\ 490}#
#{args\ 1694}#))
#f))
#{tmp\ 1688}#)
#f)
(@apply
(lambda (#{name\ 1703}#
#{args\ 1704}#
#{e1\ 1705}#
#{e2\ 1706}#)
(values
'define-form
(#{wrap\ 444}#
#{name\ 1703}#
#{w\ 1611}#
#{mod\ 1614}#)
(#{decorate-source\ 298}#
(cons '#(syntax-object
lambda
((top)
#(ribcage
#(name
args
e1
e2)
#((top)
(top)
(top)
(top))
#("i1699"
"i1700"
"i1701"
"i1702"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(ftype
fval
fe
fw
fs
fmod)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i1652"
"i1653"
"i1654"
"i1655"
"i1656"
"i1657"))
#(ribcage
()
()
())
#(ribcage
#(first)
#((top))
#("i1644"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(e
r
w
s
rib
mod
for-car?)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i1616"
"i1617"
"i1618"
"i1619"
"i1620"
"i1621"
"i1622"))
#(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))
("i489"
"i487"
"i485"
"i483"
"i481"
"i479"
"i477"
"i475"
"i473"
"i471"
"i469"
"i467"
"i465"
"i463"
"i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i418"
"i417"
"i415"
"i414"
"i413"
"i412"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i392"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i379"
"i377"
"i375"
"i373"
"i371"
"i369"
"i367"
"i365"
"i364"
"i363"
"i362"
"i361"
"i360"
"i358"
"i357"
"i355"
"i353"
"i351"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top)
(top)
(top)
(top))
("i39"
"i38"
"i37"
"i35")))
(hygiene
guile))
(#{wrap\ 444}#
(cons #{args\ 1704}#
(cons #{e1\ 1705}#
#{e2\ 1706}#))
#{w\ 1611}#
#{mod\ 1614}#))
#{s\ 1612}#)
'(())
#{s\ 1612}#
#{mod\ 1614}#))
#{tmp\ 1688}#)
(let ((#{tmp\ 1709}#
($sc-dispatch
#{tmp\ 1678}#
'(_ any))))
(if (if #{tmp\ 1709}#
(@apply
(lambda (#{name\ 1711}#)
(#{id?\ 378}#
#{name\ 1711}#))
#{tmp\ 1709}#)
#f)
(@apply
(lambda (#{name\ 1713}#)
(values
'define-form
(#{wrap\ 444}#
#{name\ 1713}#
#{w\ 1611}#
#{mod\ 1614}#)
'(#(syntax-object
if
((top)
#(ribcage
#(name)
#((top))
#("i1712"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(ftype
fval
fe
fw
fs
fmod)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i1652"
"i1653"
"i1654"
"i1655"
"i1656"
"i1657"))
#(ribcage
()
()
())
#(ribcage
#(first)
#((top))
#("i1644"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(e
r
w
s
rib
mod
for-car?)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i1616"
"i1617"
"i1618"
"i1619"
"i1620"
"i1621"
"i1622"))
#(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))
("i489"
"i487"
"i485"
"i483"
"i481"
"i479"
"i477"
"i475"
"i473"
"i471"
"i469"
"i467"
"i465"
"i463"
"i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i418"
"i417"
"i415"
"i414"
"i413"
"i412"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i392"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i379"
"i377"
"i375"
"i373"
"i371"
"i369"
"i367"
"i365"
"i364"
"i363"
"i362"
"i361"
"i360"
"i358"
"i357"
"i355"
"i353"
"i351"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top)
(top)
(top)
(top))
("i39"
"i38"
"i37"
"i35")))
(hygiene
guile))
#(syntax-object
#f
((top)
#(ribcage
#(name)
#((top))
#("i1712"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(ftype
fval
fe
fw
fs
fmod)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i1652"
"i1653"
"i1654"
"i1655"
"i1656"
"i1657"))
#(ribcage
()
()
())
#(ribcage
#(first)
#((top))
#("i1644"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(e
r
w
s
rib
mod
for-car?)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i1616"
"i1617"
"i1618"
"i1619"
"i1620"
"i1621"
"i1622"))
#(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))
("i489"
"i487"
"i485"
"i483"
"i481"
"i479"
"i477"
"i475"
"i473"
"i471"
"i469"
"i467"
"i465"
"i463"
"i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i418"
"i417"
"i415"
"i414"
"i413"
"i412"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i392"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i379"
"i377"
"i375"
"i373"
"i371"
"i369"
"i367"
"i365"
"i364"
"i363"
"i362"
"i361"
"i360"
"i358"
"i357"
"i355"
"i353"
"i351"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top)
(top)
(top)
(top))
("i39"
"i38"
"i37"
"i35")))
(hygiene
guile))
#(syntax-object
#f
((top)
#(ribcage
#(name)
#((top))
#("i1712"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(ftype
fval
fe
fw
fs
fmod)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i1652"
"i1653"
"i1654"
"i1655"
"i1656"
"i1657"))
#(ribcage
()
()
())
#(ribcage
#(first)
#((top))
#("i1644"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(e
r
w
s
rib
mod
for-car?)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i1616"
"i1617"
"i1618"
"i1619"
"i1620"
"i1621"
"i1622"))
#(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))
("i489"
"i487"
"i485"
"i483"
"i481"
"i479"
"i477"
"i475"
"i473"
"i471"
"i469"
"i467"
"i465"
"i463"
"i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i418"
"i417"
"i415"
"i414"
"i413"
"i412"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i392"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i379"
"i377"
"i375"
"i373"
"i371"
"i369"
"i367"
"i365"
"i364"
"i363"
"i362"
"i361"
"i360"
"i358"
"i357"
"i355"
"i353"
"i351"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top)
(top)
(top)
(top))
("i39"
"i38"
"i37"
"i35")))
(hygiene
guile)))
'(())
#{s\ 1612}#
#{mod\ 1614}#))
#{tmp\ 1709}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 1678}#))))))))
(if (eqv? #{ftype\ 1646}#
'define-syntax)
(let ((#{tmp\ 1716}# #{e\ 1609}#))
(let ((#{tmp\ 1717}#
($sc-dispatch
#{tmp\ 1716}#
'(_ any any))))
(if (if #{tmp\ 1717}#
(@apply
(lambda (#{name\ 1720}#
#{val\ 1721}#)
(#{id?\ 378}#
#{name\ 1720}#))
#{tmp\ 1717}#)
#f)
(@apply
(lambda (#{name\ 1724}#
#{val\ 1725}#)
(values
'define-syntax-form
#{name\ 1724}#
#{val\ 1725}#
#{w\ 1611}#
#{s\ 1612}#
#{mod\ 1614}#))
#{tmp\ 1717}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 1716}#))))
(values
'call
#f
#{e\ 1609}#
#{w\ 1611}#
#{s\ 1612}#
#{mod\ 1614}#)))))))))))))))
(if (#{syntax-object?\ 344}# #{e\ 1609}#)
(#{syntax-type\ 456}#
(#{syntax-object-expression\ 346}# #{e\ 1609}#)
#{r\ 1610}#
(#{join-wraps\ 426}#
#{w\ 1611}#
(#{syntax-object-wrap\ 348}# #{e\ 1609}#))
(begin
(let ((#{t\ 1731}#
(#{source-annotation\ 359}# #{e\ 1609}#)))
(if #{t\ 1731}# #{t\ 1731}# #{s\ 1612}#)))
#{rib\ 1613}#
(begin
(let ((#{t\ 1735}#
(#{syntax-object-module\ 350}# #{e\ 1609}#)))
(if #{t\ 1735}# #{t\ 1735}# #{mod\ 1614}#)))
#{for-car?\ 1615}#)
(if (self-evaluating? #{e\ 1609}#)
(values
'constant
#f
#{e\ 1609}#
#{w\ 1611}#
#{s\ 1612}#
#{mod\ 1614}#)
(values
'other
#f
#{e\ 1609}#
#{w\ 1611}#
#{s\ 1612}#
#{mod\ 1614}#)))))))
(#{chi-top\ 458}#
(lambda (#{e\ 1740}#
#{r\ 1741}#
#{w\ 1742}#
#{m\ 1743}#
#{esew\ 1744}#
#{mod\ 1745}#)
(call-with-values
(lambda ()
(#{syntax-type\ 456}#
#{e\ 1740}#
#{r\ 1741}#
#{w\ 1742}#
(#{source-annotation\ 359}# #{e\ 1740}#)
#f
#{mod\ 1745}#
#f))
(lambda (#{type\ 1766}#
#{value\ 1767}#
#{e\ 1768}#
#{w\ 1769}#
#{s\ 1770}#
#{mod\ 1771}#)
(if (eqv? #{type\ 1766}# (quote begin-form))
(let ((#{tmp\ 1779}# #{e\ 1768}#))
(let ((#{tmp\ 1780}#
($sc-dispatch #{tmp\ 1779}# (quote (_)))))
(if #{tmp\ 1780}#
(@apply
(lambda () (#{chi-void\ 474}#))
#{tmp\ 1780}#)
(let ((#{tmp\ 1781}#
($sc-dispatch
#{tmp\ 1779}#
'(_ any . each-any))))
(if #{tmp\ 1781}#
(@apply
(lambda (#{e1\ 1784}# #{e2\ 1785}#)
(#{chi-top-sequence\ 450}#
(cons #{e1\ 1784}# #{e2\ 1785}#)
#{r\ 1741}#
#{w\ 1769}#
#{s\ 1770}#
#{m\ 1743}#
#{esew\ 1744}#
#{mod\ 1771}#))
#{tmp\ 1781}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 1779}#))))))
(if (eqv? #{type\ 1766}# (quote local-syntax-form))
(#{chi-local-syntax\ 470}#
#{value\ 1767}#
#{e\ 1768}#
#{r\ 1741}#
#{w\ 1769}#
#{s\ 1770}#
#{mod\ 1771}#
(lambda (#{body\ 1788}#
#{r\ 1789}#
#{w\ 1790}#
#{s\ 1791}#
#{mod\ 1792}#)
(#{chi-top-sequence\ 450}#
#{body\ 1788}#
#{r\ 1789}#
#{w\ 1790}#
#{s\ 1791}#
#{m\ 1743}#
#{esew\ 1744}#
#{mod\ 1792}#)))
(if (eqv? #{type\ 1766}# (quote eval-when-form))
(let ((#{tmp\ 1799}# #{e\ 1768}#))
(let ((#{tmp\ 1800}#
($sc-dispatch
#{tmp\ 1799}#
'(_ each-any any . each-any))))
(if #{tmp\ 1800}#
(@apply
(lambda (#{x\ 1804}# #{e1\ 1805}# #{e2\ 1806}#)
(begin
(let ((#{when-list\ 1809}#
(#{chi-when-list\ 454}#
#{e\ 1768}#
#{x\ 1804}#
#{w\ 1769}#))
(#{body\ 1810}#
(cons #{e1\ 1805}# #{e2\ 1806}#)))
(if (eq? #{m\ 1743}# (quote e))
(if (memq 'eval
#{when-list\ 1809}#)
(#{chi-top-sequence\ 450}#
#{body\ 1810}#
#{r\ 1741}#
#{w\ 1769}#
#{s\ 1770}#
(if (memq 'expand
#{when-list\ 1809}#)
'c&e
'e)
'(eval)
#{mod\ 1771}#)
(begin
(if (memq 'expand
#{when-list\ 1809}#)
(#{top-level-eval-hook\ 289}#
(#{chi-top-sequence\ 450}#
#{body\ 1810}#
#{r\ 1741}#
#{w\ 1769}#
#{s\ 1770}#
'e
'(eval)
#{mod\ 1771}#)
#{mod\ 1771}#))
(#{chi-void\ 474}#)))
(if (memq 'load
#{when-list\ 1809}#)
(if (begin
(let ((#{t\ 1819}#
(memq 'compile
#{when-list\ 1809}#)))
(if #{t\ 1819}#
#{t\ 1819}#
(begin
(let ((#{t\ 1822}#
(memq 'expand
#{when-list\ 1809}#)))
(if #{t\ 1822}#
#{t\ 1822}#
(if (eq? #{m\ 1743}#
'c&e)
(memq 'eval
#{when-list\ 1809}#)
#f)))))))
(#{chi-top-sequence\ 450}#
#{body\ 1810}#
#{r\ 1741}#
#{w\ 1769}#
#{s\ 1770}#
'c&e
'(compile load)
#{mod\ 1771}#)
(if (if (eq? #{m\ 1743}# (quote c))
#t
(eq? #{m\ 1743}# (quote c&e)))
(#{chi-top-sequence\ 450}#
#{body\ 1810}#
#{r\ 1741}#
#{w\ 1769}#
#{s\ 1770}#
'c
'(load)
#{mod\ 1771}#)
(#{chi-void\ 474}#)))
(if (begin
(let ((#{t\ 1830}#
(memq 'compile
#{when-list\ 1809}#)))
(if #{t\ 1830}#
#{t\ 1830}#
(begin
(let ((#{t\ 1833}#
(memq 'expand
#{when-list\ 1809}#)))
(if #{t\ 1833}#
#{t\ 1833}#
(if (eq? #{m\ 1743}#
'c&e)
(memq 'eval
#{when-list\ 1809}#)
#f)))))))
(begin
(#{top-level-eval-hook\ 289}#
(#{chi-top-sequence\ 450}#
#{body\ 1810}#
#{r\ 1741}#
#{w\ 1769}#
#{s\ 1770}#
'e
'(eval)
#{mod\ 1771}#)
#{mod\ 1771}#)
(#{chi-void\ 474}#))
(#{chi-void\ 474}#)))))))
#{tmp\ 1800}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 1799}#))))
(if (eqv? #{type\ 1766}# (quote define-syntax-form))
(begin
(let ((#{n\ 1841}#
(#{id-var-name\ 432}#
#{value\ 1767}#
#{w\ 1769}#))
(#{r\ 1842}#
(#{macros-only-env\ 370}# #{r\ 1741}#)))
(if (eqv? #{m\ 1743}# (quote c))
(if (memq (quote compile) #{esew\ 1744}#)
(begin
(let ((#{e\ 1845}#
(#{chi-install-global\ 452}#
#{n\ 1841}#
(#{chi\ 460}#
#{e\ 1768}#
#{r\ 1842}#
#{w\ 1769}#
#{mod\ 1771}#))))
(begin
(#{top-level-eval-hook\ 289}#
#{e\ 1845}#
#{mod\ 1771}#)
(if (memq (quote load) #{esew\ 1744}#)
#{e\ 1845}#
(#{chi-void\ 474}#)))))
(if (memq (quote load) #{esew\ 1744}#)
(#{chi-install-global\ 452}#
#{n\ 1841}#
(#{chi\ 460}#
#{e\ 1768}#
#{r\ 1842}#
#{w\ 1769}#
#{mod\ 1771}#))
(#{chi-void\ 474}#)))
(if (eqv? #{m\ 1743}# (quote c&e))
(begin
(let ((#{e\ 1848}#
(#{chi-install-global\ 452}#
#{n\ 1841}#
(#{chi\ 460}#
#{e\ 1768}#
#{r\ 1842}#
#{w\ 1769}#
#{mod\ 1771}#))))
(begin
(#{top-level-eval-hook\ 289}#
#{e\ 1848}#
#{mod\ 1771}#)
#{e\ 1848}#)))
(begin
(if (memq (quote eval) #{esew\ 1744}#)
(#{top-level-eval-hook\ 289}#
(#{chi-install-global\ 452}#
#{n\ 1841}#
(#{chi\ 460}#
#{e\ 1768}#
#{r\ 1842}#
#{w\ 1769}#
#{mod\ 1771}#))
#{mod\ 1771}#))
(#{chi-void\ 474}#))))))
(if (eqv? #{type\ 1766}# (quote define-form))
(begin
(let ((#{n\ 1853}#
(#{id-var-name\ 432}#
#{value\ 1767}#
#{w\ 1769}#)))
(begin
(let ((#{type\ 1855}#
(car (#{lookup\ 372}#
#{n\ 1853}#
#{r\ 1741}#
#{mod\ 1771}#))))
(if (if (eqv? #{type\ 1855}# (quote global))
#t
(if (eqv? #{type\ 1855}# (quote core))
#t
(if (eqv? #{type\ 1855}#
'macro)
#t
(eqv? #{type\ 1855}#
'module-ref))))
(begin
(if (if (if (eq? #{m\ 1743}# (quote c))
#t
(eq? #{m\ 1743}# (quote c&e)))
(if (not (module-local-variable
(current-module)
#{n\ 1853}#))
(current-module)
#f)
#f)
(begin
(let ((#{old\ 1862}#
(module-variable
(current-module)
#{n\ 1853}#)))
(module-define!
(current-module)
#{n\ 1853}#
(if (variable? #{old\ 1862}#)
(variable-ref #{old\ 1862}#)
#f)))))
(begin
(let ((#{x\ 1865}#
(#{build-global-definition\ 320}#
#{s\ 1770}#
#{n\ 1853}#
(#{chi\ 460}#
#{e\ 1768}#
#{r\ 1741}#
#{w\ 1769}#
#{mod\ 1771}#))))
(begin
(if (eq? #{m\ 1743}# (quote c&e))
(#{top-level-eval-hook\ 289}#
#{x\ 1865}#
#{mod\ 1771}#))
#{x\ 1865}#))))
(if (eqv? #{type\ 1855}#
'displaced-lexical)
(syntax-violation
#f
"identifier out of context"
#{e\ 1768}#
(#{wrap\ 444}#
#{value\ 1767}#
#{w\ 1769}#
#{mod\ 1771}#))
(syntax-violation
#f
"cannot define keyword at top level"
#{e\ 1768}#
(#{wrap\ 444}#
#{value\ 1767}#
#{w\ 1769}#
#{mod\ 1771}#))))))))
(begin
(let ((#{x\ 1871}#
(#{chi-expr\ 462}#
#{type\ 1766}#
#{value\ 1767}#
#{e\ 1768}#
#{r\ 1741}#
#{w\ 1769}#
#{s\ 1770}#
#{mod\ 1771}#)))
(begin
(if (eq? #{m\ 1743}# (quote c&e))
(#{top-level-eval-hook\ 289}#
#{x\ 1871}#
#{mod\ 1771}#))
#{x\ 1871}#))))))))))))
(#{chi\ 460}#
(lambda (#{e\ 1872}#
#{r\ 1873}#
#{w\ 1874}#
#{mod\ 1875}#)
(call-with-values
(lambda ()
(#{syntax-type\ 456}#
#{e\ 1872}#
#{r\ 1873}#
#{w\ 1874}#
(#{source-annotation\ 359}# #{e\ 1872}#)
#f
#{mod\ 1875}#
#f))
(lambda (#{type\ 1880}#
#{value\ 1881}#
#{e\ 1882}#
#{w\ 1883}#
#{s\ 1884}#
#{mod\ 1885}#)
(#{chi-expr\ 462}#
#{type\ 1880}#
#{value\ 1881}#
#{e\ 1882}#
#{r\ 1873}#
#{w\ 1883}#
#{s\ 1884}#
#{mod\ 1885}#)))))
(#{chi-expr\ 462}#
(lambda (#{type\ 1892}#
#{value\ 1893}#
#{e\ 1894}#
#{r\ 1895}#
#{w\ 1896}#
#{s\ 1897}#
#{mod\ 1898}#)
(if (eqv? #{type\ 1892}# (quote lexical))
(#{build-lexical-reference\ 310}#
'value
#{s\ 1897}#
#{e\ 1894}#
#{value\ 1893}#)
(if (if (eqv? #{type\ 1892}# (quote core))
#t
(eqv? #{type\ 1892}# (quote core-form)))
(#{value\ 1893}#
#{e\ 1894}#
#{r\ 1895}#
#{w\ 1896}#
#{s\ 1897}#
#{mod\ 1898}#)
(if (eqv? #{type\ 1892}# (quote module-ref))
(call-with-values
(lambda ()
(#{value\ 1893}#
#{e\ 1894}#
#{r\ 1895}#
#{w\ 1896}#))
(lambda (#{e\ 1909}#
#{r\ 1910}#
#{w\ 1911}#
#{s\ 1912}#
#{mod\ 1913}#)
(#{chi\ 460}#
#{e\ 1909}#
#{r\ 1910}#
#{w\ 1911}#
#{mod\ 1913}#)))
(if (eqv? #{type\ 1892}# (quote lexical-call))
(#{chi-application\ 464}#
(begin
(let ((#{id\ 1921}# (car #{e\ 1894}#)))
(#{build-lexical-reference\ 310}#
'fun
(#{source-annotation\ 359}# #{id\ 1921}#)
(if (#{syntax-object?\ 344}# #{id\ 1921}#)
(syntax->datum #{id\ 1921}#)
#{id\ 1921}#)
#{value\ 1893}#)))
#{e\ 1894}#
#{r\ 1895}#
#{w\ 1896}#
#{s\ 1897}#
#{mod\ 1898}#)
(if (eqv? #{type\ 1892}# (quote global-call))
(#{chi-application\ 464}#
(#{build-global-reference\ 316}#
(#{source-annotation\ 359}# (car #{e\ 1894}#))
(if (#{syntax-object?\ 344}# #{value\ 1893}#)
(#{syntax-object-expression\ 346}#
#{value\ 1893}#)
#{value\ 1893}#)
(if (#{syntax-object?\ 344}# #{value\ 1893}#)
(#{syntax-object-module\ 350}# #{value\ 1893}#)
#{mod\ 1898}#))
#{e\ 1894}#
#{r\ 1895}#
#{w\ 1896}#
#{s\ 1897}#
#{mod\ 1898}#)
(if (eqv? #{type\ 1892}# (quote constant))
(#{build-data\ 330}#
#{s\ 1897}#
(#{strip\ 486}#
(#{source-wrap\ 446}#
#{e\ 1894}#
#{w\ 1896}#
#{s\ 1897}#
#{mod\ 1898}#)
'(())))
(if (eqv? #{type\ 1892}# (quote global))
(#{build-global-reference\ 316}#
#{s\ 1897}#
#{value\ 1893}#
#{mod\ 1898}#)
(if (eqv? #{type\ 1892}# (quote call))
(#{chi-application\ 464}#
(#{chi\ 460}#
(car #{e\ 1894}#)
#{r\ 1895}#
#{w\ 1896}#
#{mod\ 1898}#)
#{e\ 1894}#
#{r\ 1895}#
#{w\ 1896}#
#{s\ 1897}#
#{mod\ 1898}#)
(if (eqv? #{type\ 1892}# (quote begin-form))
(let ((#{tmp\ 1928}# #{e\ 1894}#))
(let ((#{tmp\ 1929}#
($sc-dispatch
#{tmp\ 1928}#
'(_ any . each-any))))
(if #{tmp\ 1929}#
(@apply
(lambda (#{e1\ 1932}# #{e2\ 1933}#)
(#{chi-sequence\ 448}#
(cons #{e1\ 1932}# #{e2\ 1933}#)
#{r\ 1895}#
#{w\ 1896}#
#{s\ 1897}#
#{mod\ 1898}#))
#{tmp\ 1929}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 1928}#))))
(if (eqv? #{type\ 1892}#
'local-syntax-form)
(#{chi-local-syntax\ 470}#
#{value\ 1893}#
#{e\ 1894}#
#{r\ 1895}#
#{w\ 1896}#
#{s\ 1897}#
#{mod\ 1898}#
#{chi-sequence\ 448}#)
(if (eqv? #{type\ 1892}#
'eval-when-form)
(let ((#{tmp\ 1937}# #{e\ 1894}#))
(let ((#{tmp\ 1938}#
($sc-dispatch
#{tmp\ 1937}#
'(_ each-any any . each-any))))
(if #{tmp\ 1938}#
(@apply
(lambda (#{x\ 1942}#
#{e1\ 1943}#
#{e2\ 1944}#)
(begin
(let ((#{when-list\ 1946}#
(#{chi-when-list\ 454}#
#{e\ 1894}#
#{x\ 1942}#
#{w\ 1896}#)))
(if (memq 'eval
#{when-list\ 1946}#)
(#{chi-sequence\ 448}#
(cons #{e1\ 1943}#
#{e2\ 1944}#)
#{r\ 1895}#
#{w\ 1896}#
#{s\ 1897}#
#{mod\ 1898}#)
(#{chi-void\ 474}#)))))
#{tmp\ 1938}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 1937}#))))
(if (if (eqv? #{type\ 1892}#
'define-form)
#t
(eqv? #{type\ 1892}#
'define-syntax-form))
(syntax-violation
#f
"definition in expression context"
#{e\ 1894}#
(#{wrap\ 444}#
#{value\ 1893}#
#{w\ 1896}#
#{mod\ 1898}#))
(if (eqv? #{type\ 1892}# (quote syntax))
(syntax-violation
#f
"reference to pattern variable outside syntax form"
(#{source-wrap\ 446}#
#{e\ 1894}#
#{w\ 1896}#
#{s\ 1897}#
#{mod\ 1898}#))
(if (eqv? #{type\ 1892}#
'displaced-lexical)
(syntax-violation
#f
"reference to identifier outside its scope"
(#{source-wrap\ 446}#
#{e\ 1894}#
#{w\ 1896}#
#{s\ 1897}#
#{mod\ 1898}#))
(syntax-violation
#f
"unexpected syntax"
(#{source-wrap\ 446}#
#{e\ 1894}#
#{w\ 1896}#
#{s\ 1897}#
#{mod\ 1898}#))))))))))))))))))
(#{chi-application\ 464}#
(lambda (#{x\ 1953}#
#{e\ 1954}#
#{r\ 1955}#
#{w\ 1956}#
#{s\ 1957}#
#{mod\ 1958}#)
(let ((#{tmp\ 1965}# #{e\ 1954}#))
(let ((#{tmp\ 1966}#
($sc-dispatch
#{tmp\ 1965}#
'(any . each-any))))
(if #{tmp\ 1966}#
(@apply
(lambda (#{e0\ 1969}# #{e1\ 1970}#)
(#{build-application\ 304}#
#{s\ 1957}#
#{x\ 1953}#
(map (lambda (#{e\ 1971}#)
(#{chi\ 460}#
#{e\ 1971}#
#{r\ 1955}#
#{w\ 1956}#
#{mod\ 1958}#))
#{e1\ 1970}#)))
#{tmp\ 1966}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 1965}#))))))
(#{chi-macro\ 466}#
(lambda (#{p\ 1974}#
#{e\ 1975}#
#{r\ 1976}#
#{w\ 1977}#
#{s\ 1978}#
#{rib\ 1979}#
#{mod\ 1980}#)
(letrec*
((#{rebuild-macro-output\ 1989}#
(lambda (#{x\ 1990}# #{m\ 1991}#)
(if (pair? #{x\ 1990}#)
(#{decorate-source\ 298}#
(cons (#{rebuild-macro-output\ 1989}#
(car #{x\ 1990}#)
#{m\ 1991}#)
(#{rebuild-macro-output\ 1989}#
(cdr #{x\ 1990}#)
#{m\ 1991}#))
#{s\ 1978}#)
(if (#{syntax-object?\ 344}# #{x\ 1990}#)
(begin
(let ((#{w\ 1999}#
(#{syntax-object-wrap\ 348}# #{x\ 1990}#)))
(begin
(let ((#{ms\ 2002}# (car #{w\ 1999}#))
(#{s\ 2003}# (cdr #{w\ 1999}#)))
(if (if (pair? #{ms\ 2002}#)
(eq? (car #{ms\ 2002}#) #f)
#f)
(#{make-syntax-object\ 342}#
(#{syntax-object-expression\ 346}#
#{x\ 1990}#)
(cons (cdr #{ms\ 2002}#)
(if #{rib\ 1979}#
(cons #{rib\ 1979}#
(cdr #{s\ 2003}#))
(cdr #{s\ 2003}#)))
(#{syntax-object-module\ 350}#
#{x\ 1990}#))
(#{make-syntax-object\ 342}#
(#{decorate-source\ 298}#
(#{syntax-object-expression\ 346}#
#{x\ 1990}#)
#{s\ 2003}#)
(cons (cons #{m\ 1991}# #{ms\ 2002}#)
(if #{rib\ 1979}#
(cons #{rib\ 1979}#
(cons 'shift
#{s\ 2003}#))
(cons (quote shift) #{s\ 2003}#)))
(#{syntax-object-module\ 350}#
#{x\ 1990}#)))))))
(if (vector? #{x\ 1990}#)
(begin
(let ((#{n\ 2015}# (vector-length #{x\ 1990}#)))
(begin
(let ((#{v\ 2017}#
(#{decorate-source\ 298}#
(make-vector #{n\ 2015}#)
#{x\ 1990}#)))
(letrec*
((#{loop\ 2020}#
(lambda (#{i\ 2021}#)
(if (#{fx=\ 285}#
#{i\ 2021}#
#{n\ 2015}#)
(begin (if #f #f) #{v\ 2017}#)
(begin
(vector-set!
#{v\ 2017}#
#{i\ 2021}#
(#{rebuild-macro-output\ 1989}#
(vector-ref
#{x\ 1990}#
#{i\ 2021}#)
#{m\ 1991}#))
(#{loop\ 2020}#
(#{fx+\ 281}#
#{i\ 2021}#
1)))))))
(begin (#{loop\ 2020}# 0)))))))
(if (symbol? #{x\ 1990}#)
(syntax-violation
#f
"encountered raw symbol in macro output"
(#{source-wrap\ 446}#
#{e\ 1975}#
#{w\ 1977}#
(cdr #{w\ 1977}#)
#{mod\ 1980}#)
#{x\ 1990}#)
(#{decorate-source\ 298}#
#{x\ 1990}#
#{s\ 1978}#))))))))
(begin
(#{rebuild-macro-output\ 1989}#
(#{p\ 1974}#
(#{source-wrap\ 446}#
#{e\ 1975}#
(#{anti-mark\ 416}# #{w\ 1977}#)
#{s\ 1978}#
#{mod\ 1980}#))
(gensym "m"))))))
(#{chi-body\ 468}#
(lambda (#{body\ 2029}#
#{outer-form\ 2030}#
#{r\ 2031}#
#{w\ 2032}#
#{mod\ 2033}#)
(begin
(let ((#{r\ 2041}#
(cons '("placeholder" placeholder)
#{r\ 2031}#)))
(begin
(let ((#{ribcage\ 2043}#
(#{make-ribcage\ 396}#
'()
'()
'())))
(begin
(let ((#{w\ 2046}#
(cons (car #{w\ 2032}#)
(cons #{ribcage\ 2043}#
(cdr #{w\ 2032}#)))))
(letrec*
((#{parse\ 2058}#
(lambda (#{body\ 2059}#
#{ids\ 2060}#
#{labels\ 2061}#
#{var-ids\ 2062}#
#{vars\ 2063}#
#{vals\ 2064}#
#{bindings\ 2065}#)
(if (null? #{body\ 2059}#)
(syntax-violation
#f
"no expressions in body"
#{outer-form\ 2030}#)
(begin
(let ((#{e\ 2070}#
(cdr (car #{body\ 2059}#)))
(#{er\ 2071}#
(car (car #{body\ 2059}#))))
(call-with-values
(lambda ()
(#{syntax-type\ 456}#
#{e\ 2070}#
#{er\ 2071}#
'(())
(#{source-annotation\ 359}#
#{er\ 2071}#)
#{ribcage\ 2043}#
#{mod\ 2033}#
#f))
(lambda (#{type\ 2073}#
#{value\ 2074}#
#{e\ 2075}#
#{w\ 2076}#
#{s\ 2077}#
#{mod\ 2078}#)
(if (eqv? #{type\ 2073}#
'define-form)
(begin
(let ((#{id\ 2088}#
(#{wrap\ 444}#
#{value\ 2074}#
#{w\ 2076}#
#{mod\ 2078}#))
(#{label\ 2089}#
(#{gen-label\ 391}#)))
(begin
(let ((#{var\ 2091}#
(#{gen-var\ 488}#
#{id\ 2088}#)))
(begin
(#{extend-ribcage!\ 420}#
#{ribcage\ 2043}#
#{id\ 2088}#
#{label\ 2089}#)
(#{parse\ 2058}#
(cdr #{body\ 2059}#)
(cons #{id\ 2088}#
#{ids\ 2060}#)
(cons #{label\ 2089}#
#{labels\ 2061}#)
(cons #{id\ 2088}#
#{var-ids\ 2062}#)
(cons #{var\ 2091}#
#{vars\ 2063}#)
(cons (cons #{er\ 2071}#
(#{wrap\ 444}#
#{e\ 2075}#
#{w\ 2076}#
#{mod\ 2078}#))
#{vals\ 2064}#)
(cons (cons 'lexical
#{var\ 2091}#)
#{bindings\ 2065}#)))))))
(if (eqv? #{type\ 2073}#
'define-syntax-form)
(begin
(let ((#{id\ 2096}#
(#{wrap\ 444}#
#{value\ 2074}#
#{w\ 2076}#
#{mod\ 2078}#))
(#{label\ 2097}#
(#{gen-label\ 391}#)))
(begin
(#{extend-ribcage!\ 420}#
#{ribcage\ 2043}#
#{id\ 2096}#
#{label\ 2097}#)
(#{parse\ 2058}#
(cdr #{body\ 2059}#)
(cons #{id\ 2096}#
#{ids\ 2060}#)
(cons #{label\ 2097}#
#{labels\ 2061}#)
#{var-ids\ 2062}#
#{vars\ 2063}#
#{vals\ 2064}#
(cons (cons 'macro
(cons #{er\ 2071}#
(#{wrap\ 444}#
#{e\ 2075}#
#{w\ 2076}#
#{mod\ 2078}#)))
#{bindings\ 2065}#)))))
(if (eqv? #{type\ 2073}#
'begin-form)
(let ((#{tmp\ 2100}#
#{e\ 2075}#))
(let ((#{tmp\ 2101}#
($sc-dispatch
#{tmp\ 2100}#
'(_ . each-any))))
(if #{tmp\ 2101}#
(@apply
(lambda (#{e1\ 2103}#)
(#{parse\ 2058}#
(letrec*
((#{f\ 2106}#
(lambda (#{forms\ 2107}#)
(if (null? #{forms\ 2107}#)
(cdr #{body\ 2059}#)
(cons (cons #{er\ 2071}#
(#{wrap\ 444}#
(car #{forms\ 2107}#)
#{w\ 2076}#
#{mod\ 2078}#))
(#{f\ 2106}#
(cdr #{forms\ 2107}#)))))))
(begin
(#{f\ 2106}#
#{e1\ 2103}#)))
#{ids\ 2060}#
#{labels\ 2061}#
#{var-ids\ 2062}#
#{vars\ 2063}#
#{vals\ 2064}#
#{bindings\ 2065}#))
#{tmp\ 2101}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 2100}#))))
(if (eqv? #{type\ 2073}#
'local-syntax-form)
(#{chi-local-syntax\ 470}#
#{value\ 2074}#
#{e\ 2075}#
#{er\ 2071}#
#{w\ 2076}#
#{s\ 2077}#
#{mod\ 2078}#
(lambda (#{forms\ 2110}#
#{er\ 2111}#
#{w\ 2112}#
#{s\ 2113}#
#{mod\ 2114}#)
(#{parse\ 2058}#
(letrec*
((#{f\ 2122}#
(lambda (#{forms\ 2123}#)
(if (null? #{forms\ 2123}#)
(cdr #{body\ 2059}#)
(cons (cons #{er\ 2111}#
(#{wrap\ 444}#
(car #{forms\ 2123}#)
#{w\ 2112}#
#{mod\ 2114}#))
(#{f\ 2122}#
(cdr #{forms\ 2123}#)))))))
(begin
(#{f\ 2122}#
#{forms\ 2110}#)))
#{ids\ 2060}#
#{labels\ 2061}#
#{var-ids\ 2062}#
#{vars\ 2063}#
#{vals\ 2064}#
#{bindings\ 2065}#)))
(if (null? #{ids\ 2060}#)
(#{build-sequence\ 332}#
#f
(map (lambda (#{x\ 2126}#)
(#{chi\ 460}#
(cdr #{x\ 2126}#)
(car #{x\ 2126}#)
'(())
#{mod\ 2078}#))
(cons (cons #{er\ 2071}#
(#{source-wrap\ 446}#
#{e\ 2075}#
#{w\ 2076}#
#{s\ 2077}#
#{mod\ 2078}#))
(cdr #{body\ 2059}#))))
(begin
(if (not (#{valid-bound-ids?\ 438}#
#{ids\ 2060}#))
(syntax-violation
#f
"invalid or duplicate identifier in definition"
#{outer-form\ 2030}#))
(letrec*
((#{loop\ 2133}#
(lambda (#{bs\ 2134}#
#{er-cache\ 2135}#
#{r-cache\ 2136}#)
(if (not (null? #{bs\ 2134}#))
(begin
(let ((#{b\ 2139}#
(car #{bs\ 2134}#)))
(if (eq? (car #{b\ 2139}#)
'macro)
(begin
(let ((#{er\ 2142}#
(car (cdr #{b\ 2139}#))))
(begin
(let ((#{r-cache\ 2144}#
(if (eq? #{er\ 2142}#
#{er-cache\ 2135}#)
#{r-cache\ 2136}#
(#{macros-only-env\ 370}#
#{er\ 2142}#))))
(begin
(set-cdr!
#{b\ 2139}#
(#{eval-local-transformer\ 472}#
(#{chi\ 460}#
(cdr (cdr #{b\ 2139}#))
#{r-cache\ 2144}#
'(())
#{mod\ 2078}#)
#{mod\ 2078}#))
(#{loop\ 2133}#
(cdr #{bs\ 2134}#)
#{er\ 2142}#
#{r-cache\ 2144}#))))))
(#{loop\ 2133}#
(cdr #{bs\ 2134}#)
#{er-cache\ 2135}#
#{r-cache\ 2136}#))))))))
(begin
(#{loop\ 2133}#
#{bindings\ 2065}#
#f
#f)))
(set-cdr!
#{r\ 2041}#
(#{extend-env\ 366}#
#{labels\ 2061}#
#{bindings\ 2065}#
(cdr #{r\ 2041}#)))
(#{build-letrec\ 338}#
#f
#t
(reverse
(map syntax->datum
#{var-ids\ 2062}#))
(reverse
#{vars\ 2063}#)
(map (lambda (#{x\ 2147}#)
(#{chi\ 460}#
(cdr #{x\ 2147}#)
(car #{x\ 2147}#)
'(())
#{mod\ 2078}#))
(reverse
#{vals\ 2064}#))
(#{build-sequence\ 332}#
#f
(map (lambda (#{x\ 2151}#)
(#{chi\ 460}#
(cdr #{x\ 2151}#)
(car #{x\ 2151}#)
'(())
#{mod\ 2078}#))
(cons (cons #{er\ 2071}#
(#{source-wrap\ 446}#
#{e\ 2075}#
#{w\ 2076}#
#{s\ 2077}#
#{mod\ 2078}#))
(cdr #{body\ 2059}#)))))))))))))))))))
(begin
(#{parse\ 2058}#
(map (lambda (#{x\ 2066}#)
(cons #{r\ 2041}#
(#{wrap\ 444}#
#{x\ 2066}#
#{w\ 2046}#
#{mod\ 2033}#)))
#{body\ 2029}#)
'()
'()
'()
'()
'()
'())))))))))))
(#{chi-local-syntax\ 470}#
(lambda (#{rec?\ 2154}#
#{e\ 2155}#
#{r\ 2156}#
#{w\ 2157}#
#{s\ 2158}#
#{mod\ 2159}#
#{k\ 2160}#)
(let ((#{tmp\ 2168}# #{e\ 2155}#))
(let ((#{tmp\ 2169}#
($sc-dispatch
#{tmp\ 2168}#
'(_ #(each (any any)) any . each-any))))
(if #{tmp\ 2169}#
(@apply
(lambda (#{id\ 2174}#
#{val\ 2175}#
#{e1\ 2176}#
#{e2\ 2177}#)
(begin
(let ((#{ids\ 2179}# #{id\ 2174}#))
(if (not (#{valid-bound-ids?\ 438}# #{ids\ 2179}#))
(syntax-violation
#f
"duplicate bound keyword"
#{e\ 2155}#)
(begin
(let ((#{labels\ 2182}#
(#{gen-labels\ 393}# #{ids\ 2179}#)))
(begin
(let ((#{new-w\ 2184}#
(#{make-binding-wrap\ 422}#
#{ids\ 2179}#
#{labels\ 2182}#
#{w\ 2157}#)))
(#{k\ 2160}#
(cons #{e1\ 2176}# #{e2\ 2177}#)
(#{extend-env\ 366}#
#{labels\ 2182}#
(begin
(let ((#{w\ 2188}#
(if #{rec?\ 2154}#
#{new-w\ 2184}#
#{w\ 2157}#))
(#{trans-r\ 2189}#
(#{macros-only-env\ 370}#
#{r\ 2156}#)))
(map (lambda (#{x\ 2190}#)
(cons 'macro
(#{eval-local-transformer\ 472}#
(#{chi\ 460}#
#{x\ 2190}#
#{trans-r\ 2189}#
#{w\ 2188}#
#{mod\ 2159}#)
#{mod\ 2159}#)))
#{val\ 2175}#)))
#{r\ 2156}#)
#{new-w\ 2184}#
#{s\ 2158}#
#{mod\ 2159}#)))))))))
#{tmp\ 2169}#)
(let ((#{_\ 2195}# #{tmp\ 2168}#))
(syntax-violation
#f
"bad local syntax definition"
(#{source-wrap\ 446}#
#{e\ 2155}#
#{w\ 2157}#
#{s\ 2158}#
#{mod\ 2159}#))))))))
(#{eval-local-transformer\ 472}#
(lambda (#{expanded\ 2196}# #{mod\ 2197}#)
(begin
(let ((#{p\ 2201}#
(#{local-eval-hook\ 291}#
#{expanded\ 2196}#
#{mod\ 2197}#)))
(if (procedure? #{p\ 2201}#)
#{p\ 2201}#
(syntax-violation
#f
"nonprocedure transformer"
#{p\ 2201}#))))))
(#{chi-void\ 474}#
(lambda () (#{build-void\ 302}# #f)))
(#{ellipsis?\ 476}#
(lambda (#{x\ 2203}#)
(if (#{nonsymbol-id?\ 376}# #{x\ 2203}#)
(#{free-id=?\ 434}#
#{x\ 2203}#
'#(syntax-object
...
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i2204"))
#(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))
("i489"
"i487"
"i485"
"i483"
"i481"
"i479"
"i477"
"i475"
"i473"
"i471"
"i469"
"i467"
"i465"
"i463"
"i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i418"
"i417"
"i415"
"i414"
"i413"
"i412"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i392"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i379"
"i377"
"i375"
"i373"
"i371"
"i369"
"i367"
"i365"
"i364"
"i363"
"i362"
"i361"
"i360"
"i358"
"i357"
"i355"
"i353"
"i351"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i39" "i38" "i37" "i35")))
(hygiene guile)))
#f)))
(#{lambda-formals\ 478}#
(lambda (#{orig-args\ 2207}#)
(letrec*
((#{req\ 2210}#
(lambda (#{args\ 2213}# #{rreq\ 2214}#)
(let ((#{tmp\ 2217}# #{args\ 2213}#))
(let ((#{tmp\ 2218}#
($sc-dispatch #{tmp\ 2217}# (quote ()))))
(if #{tmp\ 2218}#
(@apply
(lambda ()
(#{check\ 2212}# (reverse #{rreq\ 2214}#) #f))
#{tmp\ 2218}#)
(let ((#{tmp\ 2219}#
($sc-dispatch
#{tmp\ 2217}#
'(any . any))))
(if (if #{tmp\ 2219}#
(@apply
(lambda (#{a\ 2222}# #{b\ 2223}#)
(#{id?\ 378}# #{a\ 2222}#))
#{tmp\ 2219}#)
#f)
(@apply
(lambda (#{a\ 2226}# #{b\ 2227}#)
(#{req\ 2210}#
#{b\ 2227}#
(cons #{a\ 2226}# #{rreq\ 2214}#)))
#{tmp\ 2219}#)
(let ((#{tmp\ 2228}# (list #{tmp\ 2217}#)))
(if (if #{tmp\ 2228}#
(@apply
(lambda (#{r\ 2230}#)
(#{id?\ 378}# #{r\ 2230}#))
#{tmp\ 2228}#)
#f)
(@apply
(lambda (#{r\ 2232}#)
(#{check\ 2212}#
(reverse #{rreq\ 2214}#)
#{r\ 2232}#))
#{tmp\ 2228}#)
(let ((#{else\ 2234}# #{tmp\ 2217}#))
(syntax-violation
'lambda
"invalid argument list"
#{orig-args\ 2207}#
#{args\ 2213}#)))))))))))
(#{check\ 2212}#
(lambda (#{req\ 2235}# #{rest\ 2236}#)
(if (#{distinct-bound-ids?\ 440}#
(if #{rest\ 2236}#
(cons #{rest\ 2236}# #{req\ 2235}#)
#{req\ 2235}#))
(values #{req\ 2235}# #f #{rest\ 2236}# #f)
(syntax-violation
'lambda
"duplicate identifier in argument list"
#{orig-args\ 2207}#)))))
(begin
(#{req\ 2210}# #{orig-args\ 2207}# (quote ()))))))
(#{chi-simple-lambda\ 480}#
(lambda (#{e\ 2242}#
#{r\ 2243}#
#{w\ 2244}#
#{s\ 2245}#
#{mod\ 2246}#
#{req\ 2247}#
#{rest\ 2248}#
#{meta\ 2249}#
#{body\ 2250}#)
(begin
(let ((#{ids\ 2262}#
(if #{rest\ 2248}#
(append #{req\ 2247}# (list #{rest\ 2248}#))
#{req\ 2247}#)))
(begin
(let ((#{vars\ 2264}#
(map #{gen-var\ 488}# #{ids\ 2262}#)))
(begin
(let ((#{labels\ 2266}#
(#{gen-labels\ 393}# #{ids\ 2262}#)))
(#{build-simple-lambda\ 322}#
#{s\ 2245}#
(map syntax->datum #{req\ 2247}#)
(if #{rest\ 2248}#
(syntax->datum #{rest\ 2248}#)
#f)
#{vars\ 2264}#
#{meta\ 2249}#
(#{chi-body\ 468}#
#{body\ 2250}#
(#{source-wrap\ 446}#
#{e\ 2242}#
#{w\ 2244}#
#{s\ 2245}#
#{mod\ 2246}#)
(#{extend-var-env\ 368}#
#{labels\ 2266}#
#{vars\ 2264}#
#{r\ 2243}#)
(#{make-binding-wrap\ 422}#
#{ids\ 2262}#
#{labels\ 2266}#
#{w\ 2244}#)
#{mod\ 2246}#))))))))))
(#{lambda*-formals\ 482}#
(lambda (#{orig-args\ 2269}#)
(letrec*
((#{req\ 2272}#
(lambda (#{args\ 2281}# #{rreq\ 2282}#)
(let ((#{tmp\ 2285}# #{args\ 2281}#))
(let ((#{tmp\ 2286}#
($sc-dispatch #{tmp\ 2285}# (quote ()))))
(if #{tmp\ 2286}#
(@apply
(lambda ()
(#{check\ 2280}#
(reverse #{rreq\ 2282}#)
'()
#f
'()))
#{tmp\ 2286}#)
(let ((#{tmp\ 2287}#
($sc-dispatch
#{tmp\ 2285}#
'(any . any))))
(if (if #{tmp\ 2287}#
(@apply
(lambda (#{a\ 2290}# #{b\ 2291}#)
(#{id?\ 378}# #{a\ 2290}#))
#{tmp\ 2287}#)
#f)
(@apply
(lambda (#{a\ 2294}# #{b\ 2295}#)
(#{req\ 2272}#
#{b\ 2295}#
(cons #{a\ 2294}# #{rreq\ 2282}#)))
#{tmp\ 2287}#)
(let ((#{tmp\ 2296}#
($sc-dispatch
#{tmp\ 2285}#
'(any . any))))
(if (if #{tmp\ 2296}#
(@apply
(lambda (#{a\ 2299}# #{b\ 2300}#)
(eq? (syntax->datum #{a\ 2299}#)
#:optional))
#{tmp\ 2296}#)
#f)
(@apply
(lambda (#{a\ 2303}# #{b\ 2304}#)
(#{opt\ 2274}#
#{b\ 2304}#
(reverse #{rreq\ 2282}#)
'()))
#{tmp\ 2296}#)
(let ((#{tmp\ 2305}#
($sc-dispatch
#{tmp\ 2285}#
'(any . any))))
(if (if #{tmp\ 2305}#
(@apply
(lambda (#{a\ 2308}# #{b\ 2309}#)
(eq? (syntax->datum #{a\ 2308}#)
#:key))
#{tmp\ 2305}#)
#f)
(@apply
(lambda (#{a\ 2312}# #{b\ 2313}#)
(#{key\ 2276}#
#{b\ 2313}#
(reverse #{rreq\ 2282}#)
'()
'()))
#{tmp\ 2305}#)
(let ((#{tmp\ 2314}#
($sc-dispatch
#{tmp\ 2285}#
'(any any))))
(if (if #{tmp\ 2314}#
(@apply
(lambda (#{a\ 2317}#
#{b\ 2318}#)
(eq? (syntax->datum
#{a\ 2317}#)
#:rest))
#{tmp\ 2314}#)
#f)
(@apply
(lambda (#{a\ 2321}# #{b\ 2322}#)
(#{rest\ 2278}#
#{b\ 2322}#
(reverse #{rreq\ 2282}#)
'()
'()))
#{tmp\ 2314}#)
(let ((#{tmp\ 2323}#
(list #{tmp\ 2285}#)))
(if (if #{tmp\ 2323}#
(@apply
(lambda (#{r\ 2325}#)
(#{id?\ 378}#
#{r\ 2325}#))
#{tmp\ 2323}#)
#f)
(@apply
(lambda (#{r\ 2327}#)
(#{rest\ 2278}#
#{r\ 2327}#
(reverse #{rreq\ 2282}#)
'()
'()))
#{tmp\ 2323}#)
(let ((#{else\ 2329}#
#{tmp\ 2285}#))
(syntax-violation
'lambda*
"invalid argument list"
#{orig-args\ 2269}#
#{args\ 2281}#)))))))))))))))))
(#{opt\ 2274}#
(lambda (#{args\ 2330}# #{req\ 2331}# #{ropt\ 2332}#)
(let ((#{tmp\ 2336}# #{args\ 2330}#))
(let ((#{tmp\ 2337}#
($sc-dispatch #{tmp\ 2336}# (quote ()))))
(if #{tmp\ 2337}#
(@apply
(lambda ()
(#{check\ 2280}#
#{req\ 2331}#
(reverse #{ropt\ 2332}#)
#f
'()))
#{tmp\ 2337}#)
(let ((#{tmp\ 2338}#
($sc-dispatch
#{tmp\ 2336}#
'(any . any))))
(if (if #{tmp\ 2338}#
(@apply
(lambda (#{a\ 2341}# #{b\ 2342}#)
(#{id?\ 378}# #{a\ 2341}#))
#{tmp\ 2338}#)
#f)
(@apply
(lambda (#{a\ 2345}# #{b\ 2346}#)
(#{opt\ 2274}#
#{b\ 2346}#
#{req\ 2331}#
(cons (cons #{a\ 2345}#
'(#(syntax-object
#f
((top)
#(ribcage
#(a b)
#((top) (top))
#("i2343" "i2344"))
#(ribcage () () ())
#(ribcage
#(args req ropt)
#((top) (top) (top))
#("i2333"
"i2334"
"i2335"))
#(ribcage
(check rest key opt req)
((top)
(top)
(top)
(top)
(top))
("i2279"
"i2277"
"i2275"
"i2273"
"i2271"))
#(ribcage
#(orig-args)
#((top))
#("i2270"))
#(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))
("i489"
"i487"
"i485"
"i483"
"i481"
"i479"
"i477"
"i475"
"i473"
"i471"
"i469"
"i467"
"i465"
"i463"
"i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i418"
"i417"
"i415"
"i414"
"i413"
"i412"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i392"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i379"
"i377"
"i375"
"i373"
"i371"
"i369"
"i367"
"i365"
"i364"
"i363"
"i362"
"i361"
"i360"
"i358"
"i357"
"i355"
"i353"
"i351"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top)
(top)
(top)
(top))
("i39"
"i38"
"i37"
"i35")))
(hygiene guile))))
#{ropt\ 2332}#)))
#{tmp\ 2338}#)
(let ((#{tmp\ 2347}#
($sc-dispatch
#{tmp\ 2336}#
'((any any) . any))))
(if (if #{tmp\ 2347}#
(@apply
(lambda (#{a\ 2351}#
#{init\ 2352}#
#{b\ 2353}#)
(#{id?\ 378}# #{a\ 2351}#))
#{tmp\ 2347}#)
#f)
(@apply
(lambda (#{a\ 2357}#
#{init\ 2358}#
#{b\ 2359}#)
(#{opt\ 2274}#
#{b\ 2359}#
#{req\ 2331}#
(cons (list #{a\ 2357}# #{init\ 2358}#)
#{ropt\ 2332}#)))
#{tmp\ 2347}#)
(let ((#{tmp\ 2360}#
($sc-dispatch
#{tmp\ 2336}#
'(any . any))))
(if (if #{tmp\ 2360}#
(@apply
(lambda (#{a\ 2363}# #{b\ 2364}#)
(eq? (syntax->datum #{a\ 2363}#)
#:key))
#{tmp\ 2360}#)
#f)
(@apply
(lambda (#{a\ 2367}# #{b\ 2368}#)
(#{key\ 2276}#
#{b\ 2368}#
#{req\ 2331}#
(reverse #{ropt\ 2332}#)
'()))
#{tmp\ 2360}#)
(let ((#{tmp\ 2369}#
($sc-dispatch
#{tmp\ 2336}#
'(any any))))
(if (if #{tmp\ 2369}#
(@apply
(lambda (#{a\ 2372}#
#{b\ 2373}#)
(eq? (syntax->datum
#{a\ 2372}#)
#:rest))
#{tmp\ 2369}#)
#f)
(@apply
(lambda (#{a\ 2376}# #{b\ 2377}#)
(#{rest\ 2278}#
#{b\ 2377}#
#{req\ 2331}#
(reverse #{ropt\ 2332}#)
'()))
#{tmp\ 2369}#)
(let ((#{tmp\ 2378}#
(list #{tmp\ 2336}#)))
(if (if #{tmp\ 2378}#
(@apply
(lambda (#{r\ 2380}#)
(#{id?\ 378}#
#{r\ 2380}#))
#{tmp\ 2378}#)
#f)
(@apply
(lambda (#{r\ 2382}#)
(#{rest\ 2278}#
#{r\ 2382}#
#{req\ 2331}#
(reverse #{ropt\ 2332}#)
'()))
#{tmp\ 2378}#)
(let ((#{else\ 2384}#
#{tmp\ 2336}#))
(syntax-violation
'lambda*
"invalid optional argument list"
#{orig-args\ 2269}#
#{args\ 2330}#)))))))))))))))))
(#{key\ 2276}#
(lambda (#{args\ 2385}#
#{req\ 2386}#
#{opt\ 2387}#
#{rkey\ 2388}#)
(let ((#{tmp\ 2393}# #{args\ 2385}#))
(let ((#{tmp\ 2394}#
($sc-dispatch #{tmp\ 2393}# (quote ()))))
(if #{tmp\ 2394}#
(@apply
(lambda ()
(#{check\ 2280}#
#{req\ 2386}#
#{opt\ 2387}#
#f
(cons #f (reverse #{rkey\ 2388}#))))
#{tmp\ 2394}#)
(let ((#{tmp\ 2395}#
($sc-dispatch
#{tmp\ 2393}#
'(any . any))))
(if (if #{tmp\ 2395}#
(@apply
(lambda (#{a\ 2398}# #{b\ 2399}#)
(#{id?\ 378}# #{a\ 2398}#))
#{tmp\ 2395}#)
#f)
(@apply
(lambda (#{a\ 2402}# #{b\ 2403}#)
(let ((#{tmp\ 2405}#
(symbol->keyword
(syntax->datum #{a\ 2402}#))))
(let ((#{k\ 2407}# #{tmp\ 2405}#))
(#{key\ 2276}#
#{b\ 2403}#
#{req\ 2386}#
#{opt\ 2387}#
(cons (cons #{k\ 2407}#
(cons #{a\ 2402}#
'(#(syntax-object
#f
((top)
#(ribcage
#(k)
#((top))
#("i2406"))
#(ribcage
#(a b)
#((top) (top))
#("i2400"
"i2401"))
#(ribcage
()
()
())
#(ribcage
#(args
req
opt
rkey)
#((top)
(top)
(top)
(top))
#("i2389"
"i2390"
"i2391"
"i2392"))
#(ribcage
(check rest
key
opt
req)
((top)
(top)
(top)
(top)
(top))
("i2279"
"i2277"
"i2275"
"i2273"
"i2271"))
#(ribcage
#(orig-args)
#((top))
#("i2270"))
#(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))
("i489"
"i487"
"i485"
"i483"
"i481"
"i479"
"i477"
"i475"
"i473"
"i471"
"i469"
"i467"
"i465"
"i463"
"i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i418"
"i417"
"i415"
"i414"
"i413"
"i412"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i392"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i379"
"i377"
"i375"
"i373"
"i371"
"i369"
"i367"
"i365"
"i364"
"i363"
"i362"
"i361"
"i360"
"i358"
"i357"
"i355"
"i353"
"i351"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top)
(top)
(top)
(top))
("i39"
"i38"
"i37"
"i35")))
(hygiene
guile)))))
#{rkey\ 2388}#)))))
#{tmp\ 2395}#)
(let ((#{tmp\ 2408}#
($sc-dispatch
#{tmp\ 2393}#
'((any any) . any))))
(if (if #{tmp\ 2408}#
(@apply
(lambda (#{a\ 2412}#
#{init\ 2413}#
#{b\ 2414}#)
(#{id?\ 378}# #{a\ 2412}#))
#{tmp\ 2408}#)
#f)
(@apply
(lambda (#{a\ 2418}#
#{init\ 2419}#
#{b\ 2420}#)
(let ((#{tmp\ 2422}#
(symbol->keyword
(syntax->datum #{a\ 2418}#))))
(let ((#{k\ 2424}# #{tmp\ 2422}#))
(#{key\ 2276}#
#{b\ 2420}#
#{req\ 2386}#
#{opt\ 2387}#
(cons (list #{k\ 2424}#
#{a\ 2418}#
#{init\ 2419}#)
#{rkey\ 2388}#)))))
#{tmp\ 2408}#)
(let ((#{tmp\ 2425}#
($sc-dispatch
#{tmp\ 2393}#
'((any any any) . any))))
(if (if #{tmp\ 2425}#
(@apply
(lambda (#{a\ 2430}#
#{init\ 2431}#
#{k\ 2432}#
#{b\ 2433}#)
(if (#{id?\ 378}# #{a\ 2430}#)
(keyword?
(syntax->datum #{k\ 2432}#))
#f))
#{tmp\ 2425}#)
#f)
(@apply
(lambda (#{a\ 2440}#
#{init\ 2441}#
#{k\ 2442}#
#{b\ 2443}#)
(#{key\ 2276}#
#{b\ 2443}#
#{req\ 2386}#
#{opt\ 2387}#
(cons (list #{k\ 2442}#
#{a\ 2440}#
#{init\ 2441}#)
#{rkey\ 2388}#)))
#{tmp\ 2425}#)
(let ((#{tmp\ 2444}#
($sc-dispatch
#{tmp\ 2393}#
'(any))))
(if (if #{tmp\ 2444}#
(@apply
(lambda (#{aok\ 2446}#)
(eq? (syntax->datum
#{aok\ 2446}#)
#:allow-other-keys))
#{tmp\ 2444}#)
#f)
(@apply
(lambda (#{aok\ 2448}#)
(#{check\ 2280}#
#{req\ 2386}#
#{opt\ 2387}#
#f
(cons #t
(reverse
#{rkey\ 2388}#))))
#{tmp\ 2444}#)
(let ((#{tmp\ 2449}#
($sc-dispatch
#{tmp\ 2393}#
'(any any any))))
(if (if #{tmp\ 2449}#
(@apply
(lambda (#{aok\ 2453}#
#{a\ 2454}#
#{b\ 2455}#)
(if (eq? (syntax->datum
#{aok\ 2453}#)
#:allow-other-keys)
(eq? (syntax->datum
#{a\ 2454}#)
#:rest)
#f))
#{tmp\ 2449}#)
#f)
(@apply
(lambda (#{aok\ 2461}#
#{a\ 2462}#
#{b\ 2463}#)
(#{rest\ 2278}#
#{b\ 2463}#
#{req\ 2386}#
#{opt\ 2387}#
(cons #t
(reverse
#{rkey\ 2388}#))))
#{tmp\ 2449}#)
(let ((#{tmp\ 2464}#
($sc-dispatch
#{tmp\ 2393}#
'(any . any))))
(if (if #{tmp\ 2464}#
(@apply
(lambda (#{aok\ 2467}#
#{r\ 2468}#)
(if (eq? (syntax->datum
#{aok\ 2467}#)
#:allow-other-keys)
(#{id?\ 378}#
#{r\ 2468}#)
#f))
#{tmp\ 2464}#)
#f)
(@apply
(lambda (#{aok\ 2473}#
#{r\ 2474}#)
(#{rest\ 2278}#
#{r\ 2474}#
#{req\ 2386}#
#{opt\ 2387}#
(cons #t
(reverse
#{rkey\ 2388}#))))
#{tmp\ 2464}#)
(let ((#{tmp\ 2475}#
($sc-dispatch
#{tmp\ 2393}#
'(any any))))
(if (if #{tmp\ 2475}#
(@apply
(lambda (#{a\ 2478}#
#{b\ 2479}#)
(eq? (syntax->datum
#{a\ 2478}#)
#:rest))
#{tmp\ 2475}#)
#f)
(@apply
(lambda (#{a\ 2482}#
#{b\ 2483}#)
(#{rest\ 2278}#
#{b\ 2483}#
#{req\ 2386}#
#{opt\ 2387}#
(cons #f
(reverse
#{rkey\ 2388}#))))
#{tmp\ 2475}#)
(let ((#{tmp\ 2484}#
(list #{tmp\ 2393}#)))
(if (if #{tmp\ 2484}#
(@apply
(lambda (#{r\ 2486}#)
(#{id?\ 378}#
#{r\ 2486}#))
#{tmp\ 2484}#)
#f)
(@apply
(lambda (#{r\ 2488}#)
(#{rest\ 2278}#
#{r\ 2488}#
#{req\ 2386}#
#{opt\ 2387}#
(cons #f
(reverse
#{rkey\ 2388}#))))
#{tmp\ 2484}#)
(let ((#{else\ 2490}#
#{tmp\ 2393}#))
(syntax-violation
'lambda*
"invalid keyword argument list"
#{orig-args\ 2269}#
#{args\ 2385}#)))))))))))))))))))))))
(#{rest\ 2278}#
(lambda (#{args\ 2491}#
#{req\ 2492}#
#{opt\ 2493}#
#{kw\ 2494}#)
(let ((#{tmp\ 2499}# #{args\ 2491}#))
(let ((#{tmp\ 2500}# (list #{tmp\ 2499}#)))
(if (if #{tmp\ 2500}#
(@apply
(lambda (#{r\ 2502}#)
(#{id?\ 378}# #{r\ 2502}#))
#{tmp\ 2500}#)
#f)
(@apply
(lambda (#{r\ 2504}#)
(#{check\ 2280}#
#{req\ 2492}#
#{opt\ 2493}#
#{r\ 2504}#
#{kw\ 2494}#))
#{tmp\ 2500}#)
(let ((#{else\ 2506}# #{tmp\ 2499}#))
(syntax-violation
'lambda*
"invalid rest argument"
#{orig-args\ 2269}#
#{args\ 2491}#)))))))
(#{check\ 2280}#
(lambda (#{req\ 2507}#
#{opt\ 2508}#
#{rest\ 2509}#
#{kw\ 2510}#)
(if (#{distinct-bound-ids?\ 440}#
(append
#{req\ 2507}#
(map car #{opt\ 2508}#)
(if #{rest\ 2509}#
(list #{rest\ 2509}#)
'())
(if (pair? #{kw\ 2510}#)
(map cadr (cdr #{kw\ 2510}#))
'())))
(values
#{req\ 2507}#
#{opt\ 2508}#
#{rest\ 2509}#
#{kw\ 2510}#)
(syntax-violation
'lambda*
"duplicate identifier in argument list"
#{orig-args\ 2269}#)))))
(begin
(#{req\ 2272}# #{orig-args\ 2269}# (quote ()))))))
(#{chi-lambda-case\ 484}#
(lambda (#{e\ 2518}#
#{r\ 2519}#
#{w\ 2520}#
#{s\ 2521}#
#{mod\ 2522}#
#{get-formals\ 2523}#
#{clauses\ 2524}#)
(letrec*
((#{expand-req\ 2533}#
(lambda (#{req\ 2540}#
#{opt\ 2541}#
#{rest\ 2542}#
#{kw\ 2543}#
#{body\ 2544}#)
(begin
(let ((#{vars\ 2552}#
(map #{gen-var\ 488}# #{req\ 2540}#))
(#{labels\ 2553}#
(#{gen-labels\ 393}# #{req\ 2540}#)))
(begin
(let ((#{r*\ 2556}#
(#{extend-var-env\ 368}#
#{labels\ 2553}#
#{vars\ 2552}#
#{r\ 2519}#))
(#{w*\ 2557}#
(#{make-binding-wrap\ 422}#
#{req\ 2540}#
#{labels\ 2553}#
#{w\ 2520}#)))
(#{expand-opt\ 2535}#
(map syntax->datum #{req\ 2540}#)
#{opt\ 2541}#
#{rest\ 2542}#
#{kw\ 2543}#
#{body\ 2544}#
(reverse #{vars\ 2552}#)
#{r*\ 2556}#
#{w*\ 2557}#
'()
'())))))))
(#{expand-opt\ 2535}#
(lambda (#{req\ 2558}#
#{opt\ 2559}#
#{rest\ 2560}#
#{kw\ 2561}#
#{body\ 2562}#
#{vars\ 2563}#
#{r*\ 2564}#
#{w*\ 2565}#
#{out\ 2566}#
#{inits\ 2567}#)
(if (pair? #{opt\ 2559}#)
(let ((#{tmp\ 2580}# (car #{opt\ 2559}#)))
(let ((#{tmp\ 2581}#
($sc-dispatch
#{tmp\ 2580}#
'(any any))))
(if #{tmp\ 2581}#
(@apply
(lambda (#{id\ 2584}# #{i\ 2585}#)
(begin
(let ((#{v\ 2588}#
(#{gen-var\ 488}# #{id\ 2584}#)))
(begin
(let ((#{l\ 2590}#
(#{gen-labels\ 393}#
(list #{v\ 2588}#))))
(begin
(let ((#{r**\ 2592}#
(#{extend-var-env\ 368}#
#{l\ 2590}#
(list #{v\ 2588}#)
#{r*\ 2564}#)))
(begin
(let ((#{w**\ 2594}#
(#{make-binding-wrap\ 422}#
(list #{id\ 2584}#)
#{l\ 2590}#
#{w*\ 2565}#)))
(#{expand-opt\ 2535}#
#{req\ 2558}#
(cdr #{opt\ 2559}#)
#{rest\ 2560}#
#{kw\ 2561}#
#{body\ 2562}#
(cons #{v\ 2588}#
#{vars\ 2563}#)
#{r**\ 2592}#
#{w**\ 2594}#
(cons (syntax->datum
#{id\ 2584}#)
#{out\ 2566}#)
(cons (#{chi\ 460}#
#{i\ 2585}#
#{r*\ 2564}#
#{w*\ 2565}#
#{mod\ 2522}#)
#{inits\ 2567}#)))))))))))
#{tmp\ 2581}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 2580}#))))
(if #{rest\ 2560}#
(begin
(let ((#{v\ 2599}#
(#{gen-var\ 488}# #{rest\ 2560}#)))
(begin
(let ((#{l\ 2601}#
(#{gen-labels\ 393}#
(list #{v\ 2599}#))))
(begin
(let ((#{r*\ 2603}#
(#{extend-var-env\ 368}#
#{l\ 2601}#
(list #{v\ 2599}#)
#{r*\ 2564}#)))
(begin
(let ((#{w*\ 2605}#
(#{make-binding-wrap\ 422}#
(list #{rest\ 2560}#)
#{l\ 2601}#
#{w*\ 2565}#)))
(#{expand-kw\ 2537}#
#{req\ 2558}#
(if (pair? #{out\ 2566}#)
(reverse #{out\ 2566}#)
#f)
(syntax->datum #{rest\ 2560}#)
(if (pair? #{kw\ 2561}#)
(cdr #{kw\ 2561}#)
#{kw\ 2561}#)
#{body\ 2562}#
(cons #{v\ 2599}# #{vars\ 2563}#)
#{r*\ 2603}#
#{w*\ 2605}#
(if (pair? #{kw\ 2561}#)
(car #{kw\ 2561}#)
#f)
'()
#{inits\ 2567}#)))))))))
(#{expand-kw\ 2537}#
#{req\ 2558}#
(if (pair? #{out\ 2566}#)
(reverse #{out\ 2566}#)
#f)
#f
(if (pair? #{kw\ 2561}#)
(cdr #{kw\ 2561}#)
#{kw\ 2561}#)
#{body\ 2562}#
#{vars\ 2563}#
#{r*\ 2564}#
#{w*\ 2565}#
(if (pair? #{kw\ 2561}#) (car #{kw\ 2561}#) #f)
'()
#{inits\ 2567}#)))))
(#{expand-kw\ 2537}#
(lambda (#{req\ 2607}#
#{opt\ 2608}#
#{rest\ 2609}#
#{kw\ 2610}#
#{body\ 2611}#
#{vars\ 2612}#
#{r*\ 2613}#
#{w*\ 2614}#
#{aok\ 2615}#
#{out\ 2616}#
#{inits\ 2617}#)
(if (pair? #{kw\ 2610}#)
(let ((#{tmp\ 2631}# (car #{kw\ 2610}#)))
(let ((#{tmp\ 2632}#
($sc-dispatch
#{tmp\ 2631}#
'(any any any))))
(if #{tmp\ 2632}#
(@apply
(lambda (#{k\ 2636}# #{id\ 2637}# #{i\ 2638}#)
(begin
(let ((#{v\ 2641}#
(#{gen-var\ 488}# #{id\ 2637}#)))
(begin
(let ((#{l\ 2643}#
(#{gen-labels\ 393}#
(list #{v\ 2641}#))))
(begin
(let ((#{r**\ 2645}#
(#{extend-var-env\ 368}#
#{l\ 2643}#
(list #{v\ 2641}#)
#{r*\ 2613}#)))
(begin
(let ((#{w**\ 2647}#
(#{make-binding-wrap\ 422}#
(list #{id\ 2637}#)
#{l\ 2643}#
#{w*\ 2614}#)))
(#{expand-kw\ 2537}#
#{req\ 2607}#
#{opt\ 2608}#
#{rest\ 2609}#
(cdr #{kw\ 2610}#)
#{body\ 2611}#
(cons #{v\ 2641}#
#{vars\ 2612}#)
#{r**\ 2645}#
#{w**\ 2647}#
#{aok\ 2615}#
(cons (list (syntax->datum
#{k\ 2636}#)
(syntax->datum
#{id\ 2637}#)
#{v\ 2641}#)
#{out\ 2616}#)
(cons (#{chi\ 460}#
#{i\ 2638}#
#{r*\ 2613}#
#{w*\ 2614}#
#{mod\ 2522}#)
#{inits\ 2617}#)))))))))))
#{tmp\ 2632}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 2631}#))))
(#{expand-body\ 2539}#
#{req\ 2607}#
#{opt\ 2608}#
#{rest\ 2609}#
(if (begin
(let ((#{t\ 2651}# #{aok\ 2615}#))
(if #{t\ 2651}#
#{t\ 2651}#
(pair? #{out\ 2616}#))))
(cons #{aok\ 2615}# (reverse #{out\ 2616}#))
#f)
#{body\ 2611}#
(reverse #{vars\ 2612}#)
#{r*\ 2613}#
#{w*\ 2614}#
(reverse #{inits\ 2617}#)
'()))))
(#{expand-body\ 2539}#
(lambda (#{req\ 2653}#
#{opt\ 2654}#
#{rest\ 2655}#
#{kw\ 2656}#
#{body\ 2657}#
#{vars\ 2658}#
#{r*\ 2659}#
#{w*\ 2660}#
#{inits\ 2661}#
#{meta\ 2662}#)
(let ((#{tmp\ 2673}# #{body\ 2657}#))
(let ((#{tmp\ 2674}#
($sc-dispatch
#{tmp\ 2673}#
'(any any . each-any))))
(if (if #{tmp\ 2674}#
(@apply
(lambda (#{docstring\ 2678}#
#{e1\ 2679}#
#{e2\ 2680}#)
(string?
(syntax->datum #{docstring\ 2678}#)))
#{tmp\ 2674}#)
#f)
(@apply
(lambda (#{docstring\ 2684}#
#{e1\ 2685}#
#{e2\ 2686}#)
(#{expand-body\ 2539}#
#{req\ 2653}#
#{opt\ 2654}#
#{rest\ 2655}#
#{kw\ 2656}#
(cons #{e1\ 2685}# #{e2\ 2686}#)
#{vars\ 2658}#
#{r*\ 2659}#
#{w*\ 2660}#
#{inits\ 2661}#
(append
#{meta\ 2662}#
(list (cons 'documentation
(syntax->datum
#{docstring\ 2684}#))))))
#{tmp\ 2674}#)
(let ((#{tmp\ 2689}#
($sc-dispatch
#{tmp\ 2673}#
'(#(vector #(each (any . any)))
any
.
each-any))))
(if #{tmp\ 2689}#
(@apply
(lambda (#{k\ 2694}#
#{v\ 2695}#
#{e1\ 2696}#
#{e2\ 2697}#)
(#{expand-body\ 2539}#
#{req\ 2653}#
#{opt\ 2654}#
#{rest\ 2655}#
#{kw\ 2656}#
(cons #{e1\ 2696}# #{e2\ 2697}#)
#{vars\ 2658}#
#{r*\ 2659}#
#{w*\ 2660}#
#{inits\ 2661}#
(append
#{meta\ 2662}#
(syntax->datum
(map cons #{k\ 2694}# #{v\ 2695}#)))))
#{tmp\ 2689}#)
(let ((#{tmp\ 2701}#
($sc-dispatch
#{tmp\ 2673}#
'(any . each-any))))
(if #{tmp\ 2701}#
(@apply
(lambda (#{e1\ 2704}# #{e2\ 2705}#)
(values
#{meta\ 2662}#
#{req\ 2653}#
#{opt\ 2654}#
#{rest\ 2655}#
#{kw\ 2656}#
#{inits\ 2661}#
#{vars\ 2658}#
(#{chi-body\ 468}#
(cons #{e1\ 2704}# #{e2\ 2705}#)
(#{source-wrap\ 446}#
#{e\ 2518}#
#{w\ 2520}#
#{s\ 2521}#
#{mod\ 2522}#)
#{r*\ 2659}#
#{w*\ 2660}#
#{mod\ 2522}#)))
#{tmp\ 2701}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 2673}#)))))))))))
(begin
(let ((#{tmp\ 2707}# #{clauses\ 2524}#))
(let ((#{tmp\ 2708}#
($sc-dispatch #{tmp\ 2707}# (quote ()))))
(if #{tmp\ 2708}#
(@apply
(lambda () (values (quote ()) #f))
#{tmp\ 2708}#)
(let ((#{tmp\ 2709}#
($sc-dispatch
#{tmp\ 2707}#
'((any any . each-any)
.
#(each (any any . each-any))))))
(if #{tmp\ 2709}#
(@apply
(lambda (#{args\ 2716}#
#{e1\ 2717}#
#{e2\ 2718}#
#{args*\ 2719}#
#{e1*\ 2720}#
#{e2*\ 2721}#)
(call-with-values
(lambda ()
(#{get-formals\ 2523}# #{args\ 2716}#))
(lambda (#{req\ 2722}#
#{opt\ 2723}#
#{rest\ 2724}#
#{kw\ 2725}#)
(call-with-values
(lambda ()
(#{expand-req\ 2533}#
#{req\ 2722}#
#{opt\ 2723}#
#{rest\ 2724}#
#{kw\ 2725}#
(cons #{e1\ 2717}# #{e2\ 2718}#)))
(lambda (#{meta\ 2731}#
#{req\ 2732}#
#{opt\ 2733}#
#{rest\ 2734}#
#{kw\ 2735}#
#{inits\ 2736}#
#{vars\ 2737}#
#{body\ 2738}#)
(call-with-values
(lambda ()
(#{chi-lambda-case\ 484}#
#{e\ 2518}#
#{r\ 2519}#
#{w\ 2520}#
#{s\ 2521}#
#{mod\ 2522}#
#{get-formals\ 2523}#
(map (lambda (#{tmp\ 2749}#
#{tmp\ 2748}#
#{tmp\ 2747}#)
(cons #{tmp\ 2747}#
(cons #{tmp\ 2748}#
#{tmp\ 2749}#)))
#{e2*\ 2721}#
#{e1*\ 2720}#
#{args*\ 2719}#)))
(lambda (#{meta*\ 2751}#
#{else*\ 2752}#)
(values
(append
#{meta\ 2731}#
#{meta*\ 2751}#)
(#{build-lambda-case\ 326}#
#{s\ 2521}#
#{req\ 2732}#
#{opt\ 2733}#
#{rest\ 2734}#
#{kw\ 2735}#
#{inits\ 2736}#
#{vars\ 2737}#
#{body\ 2738}#
#{else*\ 2752}#)))))))))
#{tmp\ 2709}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 2707}#))))))))))
(#{strip\ 486}#
(lambda (#{x\ 2755}# #{w\ 2756}#)
(if (memq (quote top) (car #{w\ 2756}#))
#{x\ 2755}#
(letrec*
((#{f\ 2763}#
(lambda (#{x\ 2764}#)
(if (#{syntax-object?\ 344}# #{x\ 2764}#)
(#{strip\ 486}#
(#{syntax-object-expression\ 346}# #{x\ 2764}#)
(#{syntax-object-wrap\ 348}# #{x\ 2764}#))
(if (pair? #{x\ 2764}#)
(begin
(let ((#{a\ 2771}# (#{f\ 2763}# (car #{x\ 2764}#)))
(#{d\ 2772}#
(#{f\ 2763}# (cdr #{x\ 2764}#))))
(if (if (eq? #{a\ 2771}# (car #{x\ 2764}#))
(eq? #{d\ 2772}# (cdr #{x\ 2764}#))
#f)
#{x\ 2764}#
(cons #{a\ 2771}# #{d\ 2772}#))))
(if (vector? #{x\ 2764}#)
(begin
(let ((#{old\ 2778}# (vector->list #{x\ 2764}#)))
(begin
(let ((#{new\ 2780}#
(map #{f\ 2763}# #{old\ 2778}#)))
(if (#{and-map*\ 36}#
eq?
#{old\ 2778}#
#{new\ 2780}#)
#{x\ 2764}#
(list->vector #{new\ 2780}#))))))
#{x\ 2764}#))))))
(begin (#{f\ 2763}# #{x\ 2755}#))))))
(#{gen-var\ 488}#
(lambda (#{id\ 2782}#)
(begin
(let ((#{id\ 2785}#
(if (#{syntax-object?\ 344}# #{id\ 2782}#)
(#{syntax-object-expression\ 346}# #{id\ 2782}#)
#{id\ 2782}#)))
(gensym
(string-append (symbol->string #{id\ 2785}#) " "))))))
(#{lambda-var-list\ 490}#
(lambda (#{vars\ 2787}#)
(letrec*
((#{lvl\ 2793}#
(lambda (#{vars\ 2794}# #{ls\ 2795}# #{w\ 2796}#)
(if (pair? #{vars\ 2794}#)
(#{lvl\ 2793}#
(cdr #{vars\ 2794}#)
(cons (#{wrap\ 444}#
(car #{vars\ 2794}#)
#{w\ 2796}#
#f)
#{ls\ 2795}#)
#{w\ 2796}#)
(if (#{id?\ 378}# #{vars\ 2794}#)
(cons (#{wrap\ 444}# #{vars\ 2794}# #{w\ 2796}# #f)
#{ls\ 2795}#)
(if (null? #{vars\ 2794}#)
#{ls\ 2795}#
(if (#{syntax-object?\ 344}# #{vars\ 2794}#)
(#{lvl\ 2793}#
(#{syntax-object-expression\ 346}#
#{vars\ 2794}#)
#{ls\ 2795}#
(#{join-wraps\ 426}#
#{w\ 2796}#
(#{syntax-object-wrap\ 348}# #{vars\ 2794}#)))
(cons #{vars\ 2794}# #{ls\ 2795}#))))))))
(begin
(#{lvl\ 2793}#
#{vars\ 2787}#
'()
'(())))))))
(begin
(set! #{make-primitive-ref\ 242}#
(lambda (#{src\ 756}# #{name\ 757}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 2)
#{src\ 756}#
#{name\ 757}#)))
(set! #{fx+\ 281}# +)
(set! #{fx-\ 283}# -)
(set! #{fx=\ 285}# =)
(set! #{fx<\ 287}# <)
(set! #{set-syntax-object-expression!\ 352}#
(lambda (#{x\ 1134}# #{update\ 1135}#)
(vector-set! #{x\ 1134}# 1 #{update\ 1135}#)))
(set! #{set-syntax-object-wrap!\ 354}#
(lambda (#{x\ 1138}# #{update\ 1139}#)
(vector-set! #{x\ 1138}# 2 #{update\ 1139}#)))
(set! #{set-syntax-object-module!\ 356}#
(lambda (#{x\ 1142}# #{update\ 1143}#)
(vector-set! #{x\ 1142}# 3 #{update\ 1143}#)))
(set! #{ribcage?\ 398}#
(lambda (#{x\ 1223}#)
(if (vector? #{x\ 1223}#)
(if (= (vector-length #{x\ 1223}#) 4)
(eq? (vector-ref #{x\ 1223}# 0) (quote ribcage))
#f)
#f)))
(begin
(#{global-extend\ 374}#
'local-syntax
'letrec-syntax
#t)
(#{global-extend\ 374}#
'local-syntax
'let-syntax
#f)
(#{global-extend\ 374}#
'core
'fluid-let-syntax
(lambda (#{e\ 2807}#
#{r\ 2808}#
#{w\ 2809}#
#{s\ 2810}#
#{mod\ 2811}#)
(let ((#{tmp\ 2817}# #{e\ 2807}#))
(let ((#{tmp\ 2818}#
($sc-dispatch
#{tmp\ 2817}#
'(_ #(each (any any)) any . each-any))))
(if (if #{tmp\ 2818}#
(@apply
(lambda (#{var\ 2823}#
#{val\ 2824}#
#{e1\ 2825}#
#{e2\ 2826}#)
(#{valid-bound-ids?\ 438}# #{var\ 2823}#))
#{tmp\ 2818}#)
#f)
(@apply
(lambda (#{var\ 2832}#
#{val\ 2833}#
#{e1\ 2834}#
#{e2\ 2835}#)
(begin
(let ((#{names\ 2837}#
(map (lambda (#{x\ 2838}#)
(#{id-var-name\ 432}#
#{x\ 2838}#
#{w\ 2809}#))
#{var\ 2832}#)))
(begin
(for-each
(lambda (#{id\ 2841}# #{n\ 2842}#)
(begin
(let ((#{atom-key\ 2847}#
(car (#{lookup\ 372}#
#{n\ 2842}#
#{r\ 2808}#
#{mod\ 2811}#))))
(if (eqv? #{atom-key\ 2847}#
'displaced-lexical)
(syntax-violation
'fluid-let-syntax
"identifier out of context"
#{e\ 2807}#
(#{source-wrap\ 446}#
#{id\ 2841}#
#{w\ 2809}#
#{s\ 2810}#
#{mod\ 2811}#))))))
#{var\ 2832}#
#{names\ 2837}#)
(#{chi-body\ 468}#
(cons #{e1\ 2834}# #{e2\ 2835}#)
(#{source-wrap\ 446}#
#{e\ 2807}#
#{w\ 2809}#
#{s\ 2810}#
#{mod\ 2811}#)
(#{extend-env\ 366}#
#{names\ 2837}#
(begin
(let ((#{trans-r\ 2853}#
(#{macros-only-env\ 370}#
#{r\ 2808}#)))
(map (lambda (#{x\ 2854}#)
(cons 'macro
(#{eval-local-transformer\ 472}#
(#{chi\ 460}#
#{x\ 2854}#
#{trans-r\ 2853}#
#{w\ 2809}#
#{mod\ 2811}#)
#{mod\ 2811}#)))
#{val\ 2833}#)))
#{r\ 2808}#)
#{w\ 2809}#
#{mod\ 2811}#)))))
#{tmp\ 2818}#)
(let ((#{_\ 2859}# #{tmp\ 2817}#))
(syntax-violation
'fluid-let-syntax
"bad syntax"
(#{source-wrap\ 446}#
#{e\ 2807}#
#{w\ 2809}#
#{s\ 2810}#
#{mod\ 2811}#))))))))
(#{global-extend\ 374}#
'core
'quote
(lambda (#{e\ 2860}#
#{r\ 2861}#
#{w\ 2862}#
#{s\ 2863}#
#{mod\ 2864}#)
(let ((#{tmp\ 2870}# #{e\ 2860}#))
(let ((#{tmp\ 2871}#
($sc-dispatch #{tmp\ 2870}# (quote (_ any)))))
(if #{tmp\ 2871}#
(@apply
(lambda (#{e\ 2873}#)
(#{build-data\ 330}#
#{s\ 2863}#
(#{strip\ 486}# #{e\ 2873}# #{w\ 2862}#)))
#{tmp\ 2871}#)
(let ((#{_\ 2875}# #{tmp\ 2870}#))
(syntax-violation
'quote
"bad syntax"
(#{source-wrap\ 446}#
#{e\ 2860}#
#{w\ 2862}#
#{s\ 2863}#
#{mod\ 2864}#))))))))
(#{global-extend\ 374}#
'core
'syntax
(letrec*
((#{gen-syntax\ 2877}#
(lambda (#{src\ 2892}#
#{e\ 2893}#
#{r\ 2894}#
#{maps\ 2895}#
#{ellipsis?\ 2896}#
#{mod\ 2897}#)
(if (#{id?\ 378}# #{e\ 2893}#)
(begin
(let ((#{label\ 2905}#
(#{id-var-name\ 432}#
#{e\ 2893}#
'(()))))
(begin
(let ((#{b\ 2908}#
(#{lookup\ 372}#
#{label\ 2905}#
#{r\ 2894}#
#{mod\ 2897}#)))
(if (eq? (car #{b\ 2908}#) (quote syntax))
(call-with-values
(lambda ()
(begin
(let ((#{var.lev\ 2911}#
(cdr #{b\ 2908}#)))
(#{gen-ref\ 2879}#
#{src\ 2892}#
(car #{var.lev\ 2911}#)
(cdr #{var.lev\ 2911}#)
#{maps\ 2895}#))))
(lambda (#{var\ 2913}# #{maps\ 2914}#)
(values
(list (quote ref) #{var\ 2913}#)
#{maps\ 2914}#)))
(if (#{ellipsis?\ 2896}# #{e\ 2893}#)
(syntax-violation
'syntax
"misplaced ellipsis"
#{src\ 2892}#)
(values
(list (quote quote) #{e\ 2893}#)
#{maps\ 2895}#)))))))
(let ((#{tmp\ 2919}# #{e\ 2893}#))
(let ((#{tmp\ 2920}#
($sc-dispatch
#{tmp\ 2919}#
'(any any))))
(if (if #{tmp\ 2920}#
(@apply
(lambda (#{dots\ 2923}# #{e\ 2924}#)
(#{ellipsis?\ 2896}# #{dots\ 2923}#))
#{tmp\ 2920}#)
#f)
(@apply
(lambda (#{dots\ 2927}# #{e\ 2928}#)
(#{gen-syntax\ 2877}#
#{src\ 2892}#
#{e\ 2928}#
#{r\ 2894}#
#{maps\ 2895}#
(lambda (#{x\ 2929}#) #f)
#{mod\ 2897}#))
#{tmp\ 2920}#)
(let ((#{tmp\ 2931}#
($sc-dispatch
#{tmp\ 2919}#
'(any any . any))))
(if (if #{tmp\ 2931}#
(@apply
(lambda (#{x\ 2935}#
#{dots\ 2936}#
#{y\ 2937}#)
(#{ellipsis?\ 2896}# #{dots\ 2936}#))
#{tmp\ 2931}#)
#f)
(@apply
(lambda (#{x\ 2941}#
#{dots\ 2942}#
#{y\ 2943}#)
(letrec*
((#{f\ 2947}#
(lambda (#{y\ 2948}# #{k\ 2949}#)
(let ((#{tmp\ 2956}# #{y\ 2948}#))
(let ((#{tmp\ 2957}#
($sc-dispatch
#{tmp\ 2956}#
'(any . any))))
(if (if #{tmp\ 2957}#
(@apply
(lambda (#{dots\ 2960}#
#{y\ 2961}#)
(#{ellipsis?\ 2896}#
#{dots\ 2960}#))
#{tmp\ 2957}#)
#f)
(@apply
(lambda (#{dots\ 2964}#
#{y\ 2965}#)
(#{f\ 2947}#
#{y\ 2965}#
(lambda (#{maps\ 2966}#)
(call-with-values
(lambda ()
(#{k\ 2949}#
(cons '()
#{maps\ 2966}#)))
(lambda (#{x\ 2968}#
#{maps\ 2969}#)
(if (null? (car #{maps\ 2969}#))
(syntax-violation
'syntax
"extra ellipsis"
#{src\ 2892}#)
(values
(#{gen-mappend\ 2881}#
#{x\ 2968}#
(car #{maps\ 2969}#))
(cdr #{maps\ 2969}#))))))))
#{tmp\ 2957}#)
(let ((#{_\ 2973}#
#{tmp\ 2956}#))
(call-with-values
(lambda ()
(#{gen-syntax\ 2877}#
#{src\ 2892}#
#{y\ 2948}#
#{r\ 2894}#
#{maps\ 2895}#
#{ellipsis?\ 2896}#
#{mod\ 2897}#))
(lambda (#{y\ 2974}#
#{maps\ 2975}#)
(call-with-values
(lambda ()
(#{k\ 2949}#
#{maps\ 2975}#))
(lambda (#{x\ 2978}#
#{maps\ 2979}#)
(values
(#{gen-append\ 2887}#
#{x\ 2978}#
#{y\ 2974}#)
#{maps\ 2979}#))))))))))))
(begin
(#{f\ 2947}#
#{y\ 2943}#
(lambda (#{maps\ 2950}#)
(call-with-values
(lambda ()
(#{gen-syntax\ 2877}#
#{src\ 2892}#
#{x\ 2941}#
#{r\ 2894}#
(cons '()
#{maps\ 2950}#)
#{ellipsis?\ 2896}#
#{mod\ 2897}#))
(lambda (#{x\ 2952}#
#{maps\ 2953}#)
(if (null? (car #{maps\ 2953}#))
(syntax-violation
'syntax
"extra ellipsis"
#{src\ 2892}#)
(values
(#{gen-map\ 2883}#
#{x\ 2952}#
(car #{maps\ 2953}#))
(cdr #{maps\ 2953}#))))))))))
#{tmp\ 2931}#)
(let ((#{tmp\ 2982}#
($sc-dispatch
#{tmp\ 2919}#
'(any . any))))
(if #{tmp\ 2982}#
(@apply
(lambda (#{x\ 2985}# #{y\ 2986}#)
(call-with-values
(lambda ()
(#{gen-syntax\ 2877}#
#{src\ 2892}#
#{x\ 2985}#
#{r\ 2894}#
#{maps\ 2895}#
#{ellipsis?\ 2896}#
#{mod\ 2897}#))
(lambda (#{x\ 2987}# #{maps\ 2988}#)
(call-with-values
(lambda ()
(#{gen-syntax\ 2877}#
#{src\ 2892}#
#{y\ 2986}#
#{r\ 2894}#
#{maps\ 2988}#
#{ellipsis?\ 2896}#
#{mod\ 2897}#))
(lambda (#{y\ 2991}#
#{maps\ 2992}#)
(values
(#{gen-cons\ 2885}#
#{x\ 2987}#
#{y\ 2991}#)
#{maps\ 2992}#))))))
#{tmp\ 2982}#)
(let ((#{tmp\ 2995}#
($sc-dispatch
#{tmp\ 2919}#
'#(vector (any . each-any)))))
(if #{tmp\ 2995}#
(@apply
(lambda (#{e1\ 2998}# #{e2\ 2999}#)
(call-with-values
(lambda ()
(#{gen-syntax\ 2877}#
#{src\ 2892}#
(cons #{e1\ 2998}#
#{e2\ 2999}#)
#{r\ 2894}#
#{maps\ 2895}#
#{ellipsis?\ 2896}#
#{mod\ 2897}#))
(lambda (#{e\ 3001}#
#{maps\ 3002}#)
(values
(#{gen-vector\ 2889}#
#{e\ 3001}#)
#{maps\ 3002}#))))
#{tmp\ 2995}#)
(let ((#{_\ 3006}# #{tmp\ 2919}#))
(values
(list (quote quote) #{e\ 2893}#)
#{maps\ 2895}#))))))))))))))
(#{gen-ref\ 2879}#
(lambda (#{src\ 3008}#
#{var\ 3009}#
#{level\ 3010}#
#{maps\ 3011}#)
(if (#{fx=\ 285}# #{level\ 3010}# 0)
(values #{var\ 3009}# #{maps\ 3011}#)
(if (null? #{maps\ 3011}#)
(syntax-violation
'syntax
"missing ellipsis"
#{src\ 3008}#)
(call-with-values
(lambda ()
(#{gen-ref\ 2879}#
#{src\ 3008}#
#{var\ 3009}#
(#{fx-\ 283}# #{level\ 3010}# 1)
(cdr #{maps\ 3011}#)))
(lambda (#{outer-var\ 3016}# #{outer-maps\ 3017}#)
(begin
(let ((#{b\ 3021}#
(assq #{outer-var\ 3016}#
(car #{maps\ 3011}#))))
(if #{b\ 3021}#
(values (cdr #{b\ 3021}#) #{maps\ 3011}#)
(begin
(let ((#{inner-var\ 3023}#
(#{gen-var\ 488}# (quote tmp))))
(values
#{inner-var\ 3023}#
(cons (cons (cons #{outer-var\ 3016}#
#{inner-var\ 3023}#)
(car #{maps\ 3011}#))
#{outer-maps\ 3017}#)))))))))))))
(#{gen-mappend\ 2881}#
(lambda (#{e\ 3024}# #{map-env\ 3025}#)
(list 'apply
'(primitive append)
(#{gen-map\ 2883}# #{e\ 3024}# #{map-env\ 3025}#))))
(#{gen-map\ 2883}#
(lambda (#{e\ 3029}# #{map-env\ 3030}#)
(begin
(let ((#{formals\ 3035}# (map cdr #{map-env\ 3030}#))
(#{actuals\ 3036}#
(map (lambda (#{x\ 3037}#)
(list (quote ref) (car #{x\ 3037}#)))
#{map-env\ 3030}#)))
(if (eq? (car #{e\ 3029}#) (quote ref))
(car #{actuals\ 3036}#)
(if (and-map
(lambda (#{x\ 3044}#)
(if (eq? (car #{x\ 3044}#) (quote ref))
(memq (car (cdr #{x\ 3044}#))
#{formals\ 3035}#)
#f))
(cdr #{e\ 3029}#))
(cons 'map
(cons (list 'primitive
(car #{e\ 3029}#))
(map (begin
(let ((#{r\ 3050}#
(map cons
#{formals\ 3035}#
#{actuals\ 3036}#)))
(lambda (#{x\ 3051}#)
(cdr (assq (car (cdr #{x\ 3051}#))
#{r\ 3050}#)))))
(cdr #{e\ 3029}#))))
(cons 'map
(cons (list 'lambda
#{formals\ 3035}#
#{e\ 3029}#)
#{actuals\ 3036}#))))))))
(#{gen-cons\ 2885}#
(lambda (#{x\ 3055}# #{y\ 3056}#)
(begin
(let ((#{atom-key\ 3061}# (car #{y\ 3056}#)))
(if (eqv? #{atom-key\ 3061}# (quote quote))
(if (eq? (car #{x\ 3055}#) (quote quote))
(list 'quote
(cons (car (cdr #{x\ 3055}#))
(car (cdr #{y\ 3056}#))))
(if (eq? (car (cdr #{y\ 3056}#)) (quote ()))
(list (quote list) #{x\ 3055}#)
(list (quote cons) #{x\ 3055}# #{y\ 3056}#)))
(if (eqv? #{atom-key\ 3061}# (quote list))
(cons 'list
(cons #{x\ 3055}# (cdr #{y\ 3056}#)))
(list (quote cons) #{x\ 3055}# #{y\ 3056}#)))))))
(#{gen-append\ 2887}#
(lambda (#{x\ 3070}# #{y\ 3071}#)
(if (equal? #{y\ 3071}# (quote (quote ())))
#{x\ 3070}#
(list (quote append) #{x\ 3070}# #{y\ 3071}#))))
(#{gen-vector\ 2889}#
(lambda (#{x\ 3075}#)
(if (eq? (car #{x\ 3075}#) (quote list))
(cons (quote vector) (cdr #{x\ 3075}#))
(if (eq? (car #{x\ 3075}#) (quote quote))
(list 'quote
(list->vector (car (cdr #{x\ 3075}#))))
(list (quote list->vector) #{x\ 3075}#)))))
(#{regen\ 2891}#
(lambda (#{x\ 3085}#)
(begin
(let ((#{atom-key\ 3089}# (car #{x\ 3085}#)))
(if (eqv? #{atom-key\ 3089}# (quote ref))
(#{build-lexical-reference\ 310}#
'value
#f
(car (cdr #{x\ 3085}#))
(car (cdr #{x\ 3085}#)))
(if (eqv? #{atom-key\ 3089}# (quote primitive))
(#{build-primref\ 328}#
#f
(car (cdr #{x\ 3085}#)))
(if (eqv? #{atom-key\ 3089}# (quote quote))
(#{build-data\ 330}# #f (car (cdr #{x\ 3085}#)))
(if (eqv? #{atom-key\ 3089}# (quote lambda))
(if (list? (car (cdr #{x\ 3085}#)))
(#{build-simple-lambda\ 322}#
#f
(car (cdr #{x\ 3085}#))
#f
(car (cdr #{x\ 3085}#))
'()
(#{regen\ 2891}#
(car (cdr (cdr #{x\ 3085}#)))))
(error "how did we get here" #{x\ 3085}#))
(#{build-application\ 304}#
#f
(#{build-primref\ 328}#
#f
(car #{x\ 3085}#))
(map #{regen\ 2891}#
(cdr #{x\ 3085}#))))))))))))
(begin
(lambda (#{e\ 3101}#
#{r\ 3102}#
#{w\ 3103}#
#{s\ 3104}#
#{mod\ 3105}#)
(begin
(let ((#{e\ 3112}#
(#{source-wrap\ 446}#
#{e\ 3101}#
#{w\ 3103}#
#{s\ 3104}#
#{mod\ 3105}#)))
(let ((#{tmp\ 3113}# #{e\ 3112}#))
(let ((#{tmp\ 3114}#
($sc-dispatch
#{tmp\ 3113}#
'(_ any))))
(if #{tmp\ 3114}#
(@apply
(lambda (#{x\ 3116}#)
(call-with-values
(lambda ()
(#{gen-syntax\ 2877}#
#{e\ 3112}#
#{x\ 3116}#
#{r\ 3102}#
'()
#{ellipsis?\ 476}#
#{mod\ 3105}#))
(lambda (#{e\ 3117}# #{maps\ 3118}#)
(#{regen\ 2891}# #{e\ 3117}#))))
#{tmp\ 3114}#)
(let ((#{_\ 3122}# #{tmp\ 3113}#))
(syntax-violation
'syntax
"bad `syntax' form"
#{e\ 3112}#)))))))))))
(#{global-extend\ 374}#
'core
'lambda
(lambda (#{e\ 3123}#
#{r\ 3124}#
#{w\ 3125}#
#{s\ 3126}#
#{mod\ 3127}#)
(let ((#{tmp\ 3133}# #{e\ 3123}#))
(let ((#{tmp\ 3134}#
($sc-dispatch
#{tmp\ 3133}#
'(_ any any . each-any))))
(if #{tmp\ 3134}#
(@apply
(lambda (#{args\ 3138}# #{e1\ 3139}# #{e2\ 3140}#)
(call-with-values
(lambda ()
(#{lambda-formals\ 478}# #{args\ 3138}#))
(lambda (#{req\ 3141}#
#{opt\ 3142}#
#{rest\ 3143}#
#{kw\ 3144}#)
(letrec*
((#{lp\ 3152}#
(lambda (#{body\ 3153}# #{meta\ 3154}#)
(let ((#{tmp\ 3156}# #{body\ 3153}#))
(let ((#{tmp\ 3157}#
($sc-dispatch
#{tmp\ 3156}#
'(any any . each-any))))
(if (if #{tmp\ 3157}#
(@apply
(lambda (#{docstring\ 3161}#
#{e1\ 3162}#
#{e2\ 3163}#)
(string?
(syntax->datum
#{docstring\ 3161}#)))
#{tmp\ 3157}#)
#f)
(@apply
(lambda (#{docstring\ 3167}#
#{e1\ 3168}#
#{e2\ 3169}#)
(#{lp\ 3152}#
(cons #{e1\ 3168}#
#{e2\ 3169}#)
(append
#{meta\ 3154}#
(list (cons 'documentation
(syntax->datum
#{docstring\ 3167}#))))))
#{tmp\ 3157}#)
(let ((#{tmp\ 3172}#
($sc-dispatch
#{tmp\ 3156}#
'(#(vector
#(each (any . any)))
any
.
each-any))))
(if #{tmp\ 3172}#
(@apply
(lambda (#{k\ 3177}#
#{v\ 3178}#
#{e1\ 3179}#
#{e2\ 3180}#)
(#{lp\ 3152}#
(cons #{e1\ 3179}#
#{e2\ 3180}#)
(append
#{meta\ 3154}#
(syntax->datum
(map cons
#{k\ 3177}#
#{v\ 3178}#)))))
#{tmp\ 3172}#)
(let ((#{_\ 3185}#
#{tmp\ 3156}#))
(#{chi-simple-lambda\ 480}#
#{e\ 3123}#
#{r\ 3124}#
#{w\ 3125}#
#{s\ 3126}#
#{mod\ 3127}#
#{req\ 3141}#
#{rest\ 3143}#
#{meta\ 3154}#
#{body\ 3153}#))))))))))
(begin
(#{lp\ 3152}#
(cons #{e1\ 3139}# #{e2\ 3140}#)
'()))))))
#{tmp\ 3134}#)
(let ((#{_\ 3187}# #{tmp\ 3133}#))
(syntax-violation
'lambda
"bad lambda"
#{e\ 3123}#)))))))
(#{global-extend\ 374}#
'core
'lambda*
(lambda (#{e\ 3188}#
#{r\ 3189}#
#{w\ 3190}#
#{s\ 3191}#
#{mod\ 3192}#)
(let ((#{tmp\ 3198}# #{e\ 3188}#))
(let ((#{tmp\ 3199}#
($sc-dispatch
#{tmp\ 3198}#
'(_ any any . each-any))))
(if #{tmp\ 3199}#
(@apply
(lambda (#{args\ 3203}# #{e1\ 3204}# #{e2\ 3205}#)
(call-with-values
(lambda ()
(#{chi-lambda-case\ 484}#
#{e\ 3188}#
#{r\ 3189}#
#{w\ 3190}#
#{s\ 3191}#
#{mod\ 3192}#
#{lambda*-formals\ 482}#
(list (cons #{args\ 3203}#
(cons #{e1\ 3204}#
#{e2\ 3205}#)))))
(lambda (#{meta\ 3207}# #{lcase\ 3208}#)
(#{build-case-lambda\ 324}#
#{s\ 3191}#
#{meta\ 3207}#
#{lcase\ 3208}#))))
#{tmp\ 3199}#)
(let ((#{_\ 3212}# #{tmp\ 3198}#))
(syntax-violation
'lambda
"bad lambda*"
#{e\ 3188}#)))))))
(#{global-extend\ 374}#
'core
'case-lambda
(lambda (#{e\ 3213}#
#{r\ 3214}#
#{w\ 3215}#
#{s\ 3216}#
#{mod\ 3217}#)
(let ((#{tmp\ 3223}# #{e\ 3213}#))
(let ((#{tmp\ 3224}#
($sc-dispatch
#{tmp\ 3223}#
'(_ (any any . each-any)
.
#(each (any any . each-any))))))
(if #{tmp\ 3224}#
(@apply
(lambda (#{args\ 3231}#
#{e1\ 3232}#
#{e2\ 3233}#
#{args*\ 3234}#
#{e1*\ 3235}#
#{e2*\ 3236}#)
(call-with-values
(lambda ()
(#{chi-lambda-case\ 484}#
#{e\ 3213}#
#{r\ 3214}#
#{w\ 3215}#
#{s\ 3216}#
#{mod\ 3217}#
#{lambda-formals\ 478}#
(cons (cons #{args\ 3231}#
(cons #{e1\ 3232}# #{e2\ 3233}#))
(map (lambda (#{tmp\ 3240}#
#{tmp\ 3239}#
#{tmp\ 3238}#)
(cons #{tmp\ 3238}#
(cons #{tmp\ 3239}#
#{tmp\ 3240}#)))
#{e2*\ 3236}#
#{e1*\ 3235}#
#{args*\ 3234}#))))
(lambda (#{meta\ 3242}# #{lcase\ 3243}#)
(#{build-case-lambda\ 324}#
#{s\ 3216}#
#{meta\ 3242}#
#{lcase\ 3243}#))))
#{tmp\ 3224}#)
(let ((#{_\ 3247}# #{tmp\ 3223}#))
(syntax-violation
'case-lambda
"bad case-lambda"
#{e\ 3213}#)))))))
(#{global-extend\ 374}#
'core
'case-lambda*
(lambda (#{e\ 3248}#
#{r\ 3249}#
#{w\ 3250}#
#{s\ 3251}#
#{mod\ 3252}#)
(let ((#{tmp\ 3258}# #{e\ 3248}#))
(let ((#{tmp\ 3259}#
($sc-dispatch
#{tmp\ 3258}#
'(_ (any any . each-any)
.
#(each (any any . each-any))))))
(if #{tmp\ 3259}#
(@apply
(lambda (#{args\ 3266}#
#{e1\ 3267}#
#{e2\ 3268}#
#{args*\ 3269}#
#{e1*\ 3270}#
#{e2*\ 3271}#)
(call-with-values
(lambda ()
(#{chi-lambda-case\ 484}#
#{e\ 3248}#
#{r\ 3249}#
#{w\ 3250}#
#{s\ 3251}#
#{mod\ 3252}#
#{lambda*-formals\ 482}#
(cons (cons #{args\ 3266}#
(cons #{e1\ 3267}# #{e2\ 3268}#))
(map (lambda (#{tmp\ 3275}#
#{tmp\ 3274}#
#{tmp\ 3273}#)
(cons #{tmp\ 3273}#
(cons #{tmp\ 3274}#
#{tmp\ 3275}#)))
#{e2*\ 3271}#
#{e1*\ 3270}#
#{args*\ 3269}#))))
(lambda (#{meta\ 3277}# #{lcase\ 3278}#)
(#{build-case-lambda\ 324}#
#{s\ 3251}#
#{meta\ 3277}#
#{lcase\ 3278}#))))
#{tmp\ 3259}#)
(let ((#{_\ 3282}# #{tmp\ 3258}#))
(syntax-violation
'case-lambda
"bad case-lambda*"
#{e\ 3248}#)))))))
(#{global-extend\ 374}#
'core
'let
(letrec*
((#{chi-let\ 3284}#
(lambda (#{e\ 3285}#
#{r\ 3286}#
#{w\ 3287}#
#{s\ 3288}#
#{mod\ 3289}#
#{constructor\ 3290}#
#{ids\ 3291}#
#{vals\ 3292}#
#{exps\ 3293}#)
(if (not (#{valid-bound-ids?\ 438}# #{ids\ 3291}#))
(syntax-violation
'let
"duplicate bound variable"
#{e\ 3285}#)
(begin
(let ((#{labels\ 3305}#
(#{gen-labels\ 393}# #{ids\ 3291}#))
(#{new-vars\ 3306}#
(map #{gen-var\ 488}# #{ids\ 3291}#)))
(begin
(let ((#{nw\ 3309}#
(#{make-binding-wrap\ 422}#
#{ids\ 3291}#
#{labels\ 3305}#
#{w\ 3287}#))
(#{nr\ 3310}#
(#{extend-var-env\ 368}#
#{labels\ 3305}#
#{new-vars\ 3306}#
#{r\ 3286}#)))
(#{constructor\ 3290}#
#{s\ 3288}#
(map syntax->datum #{ids\ 3291}#)
#{new-vars\ 3306}#
(map (lambda (#{x\ 3311}#)
(#{chi\ 460}#
#{x\ 3311}#
#{r\ 3286}#
#{w\ 3287}#
#{mod\ 3289}#))
#{vals\ 3292}#)
(#{chi-body\ 468}#
#{exps\ 3293}#
(#{source-wrap\ 446}#
#{e\ 3285}#
#{nw\ 3309}#
#{s\ 3288}#
#{mod\ 3289}#)
#{nr\ 3310}#
#{nw\ 3309}#
#{mod\ 3289}#))))))))))
(begin
(lambda (#{e\ 3313}#
#{r\ 3314}#
#{w\ 3315}#
#{s\ 3316}#
#{mod\ 3317}#)
(let ((#{tmp\ 3323}# #{e\ 3313}#))
(let ((#{tmp\ 3324}#
($sc-dispatch
#{tmp\ 3323}#
'(_ #(each (any any)) any . each-any))))
(if (if #{tmp\ 3324}#
(@apply
(lambda (#{id\ 3329}#
#{val\ 3330}#
#{e1\ 3331}#
#{e2\ 3332}#)
(and-map #{id?\ 378}# #{id\ 3329}#))
#{tmp\ 3324}#)
#f)
(@apply
(lambda (#{id\ 3338}#
#{val\ 3339}#
#{e1\ 3340}#
#{e2\ 3341}#)
(#{chi-let\ 3284}#
#{e\ 3313}#
#{r\ 3314}#
#{w\ 3315}#
#{s\ 3316}#
#{mod\ 3317}#
#{build-let\ 334}#
#{id\ 3338}#
#{val\ 3339}#
(cons #{e1\ 3340}# #{e2\ 3341}#)))
#{tmp\ 3324}#)
(let ((#{tmp\ 3345}#
($sc-dispatch
#{tmp\ 3323}#
'(_ any
#(each (any any))
any
.
each-any))))
(if (if #{tmp\ 3345}#
(@apply
(lambda (#{f\ 3351}#
#{id\ 3352}#
#{val\ 3353}#
#{e1\ 3354}#
#{e2\ 3355}#)
(if (#{id?\ 378}# #{f\ 3351}#)
(and-map #{id?\ 378}# #{id\ 3352}#)
#f))
#{tmp\ 3345}#)
#f)
(@apply
(lambda (#{f\ 3364}#
#{id\ 3365}#
#{val\ 3366}#
#{e1\ 3367}#
#{e2\ 3368}#)
(#{chi-let\ 3284}#
#{e\ 3313}#
#{r\ 3314}#
#{w\ 3315}#
#{s\ 3316}#
#{mod\ 3317}#
#{build-named-let\ 336}#
(cons #{f\ 3364}# #{id\ 3365}#)
#{val\ 3366}#
(cons #{e1\ 3367}# #{e2\ 3368}#)))
#{tmp\ 3345}#)
(let ((#{_\ 3373}# #{tmp\ 3323}#))
(syntax-violation
'let
"bad let"
(#{source-wrap\ 446}#
#{e\ 3313}#
#{w\ 3315}#
#{s\ 3316}#
#{mod\ 3317}#))))))))))))
(#{global-extend\ 374}#
'core
'letrec
(lambda (#{e\ 3374}#
#{r\ 3375}#
#{w\ 3376}#
#{s\ 3377}#
#{mod\ 3378}#)
(let ((#{tmp\ 3384}# #{e\ 3374}#))
(let ((#{tmp\ 3385}#
($sc-dispatch
#{tmp\ 3384}#
'(_ #(each (any any)) any . each-any))))
(if (if #{tmp\ 3385}#
(@apply
(lambda (#{id\ 3390}#
#{val\ 3391}#
#{e1\ 3392}#
#{e2\ 3393}#)
(and-map #{id?\ 378}# #{id\ 3390}#))
#{tmp\ 3385}#)
#f)
(@apply
(lambda (#{id\ 3399}#
#{val\ 3400}#
#{e1\ 3401}#
#{e2\ 3402}#)
(begin
(let ((#{ids\ 3404}# #{id\ 3399}#))
(if (not (#{valid-bound-ids?\ 438}#
#{ids\ 3404}#))
(syntax-violation
'letrec
"duplicate bound variable"
#{e\ 3374}#)
(begin
(let ((#{labels\ 3408}#
(#{gen-labels\ 393}# #{ids\ 3404}#))
(#{new-vars\ 3409}#
(map #{gen-var\ 488}#
#{ids\ 3404}#)))
(begin
(let ((#{w\ 3412}#
(#{make-binding-wrap\ 422}#
#{ids\ 3404}#
#{labels\ 3408}#
#{w\ 3376}#))
(#{r\ 3413}#
(#{extend-var-env\ 368}#
#{labels\ 3408}#
#{new-vars\ 3409}#
#{r\ 3375}#)))
(#{build-letrec\ 338}#
#{s\ 3377}#
#f
(map syntax->datum #{ids\ 3404}#)
#{new-vars\ 3409}#
(map (lambda (#{x\ 3414}#)
(#{chi\ 460}#
#{x\ 3414}#
#{r\ 3413}#
#{w\ 3412}#
#{mod\ 3378}#))
#{val\ 3400}#)
(#{chi-body\ 468}#
(cons #{e1\ 3401}# #{e2\ 3402}#)
(#{source-wrap\ 446}#
#{e\ 3374}#
#{w\ 3412}#
#{s\ 3377}#
#{mod\ 3378}#)
#{r\ 3413}#
#{w\ 3412}#
#{mod\ 3378}#))))))))))
#{tmp\ 3385}#)
(let ((#{_\ 3419}# #{tmp\ 3384}#))
(syntax-violation
'letrec
"bad letrec"
(#{source-wrap\ 446}#
#{e\ 3374}#
#{w\ 3376}#
#{s\ 3377}#
#{mod\ 3378}#))))))))
(#{global-extend\ 374}#
'core
'letrec*
(lambda (#{e\ 3420}#
#{r\ 3421}#
#{w\ 3422}#
#{s\ 3423}#
#{mod\ 3424}#)
(let ((#{tmp\ 3430}# #{e\ 3420}#))
(let ((#{tmp\ 3431}#
($sc-dispatch
#{tmp\ 3430}#
'(_ #(each (any any)) any . each-any))))
(if (if #{tmp\ 3431}#
(@apply
(lambda (#{id\ 3436}#
#{val\ 3437}#
#{e1\ 3438}#
#{e2\ 3439}#)
(and-map #{id?\ 378}# #{id\ 3436}#))
#{tmp\ 3431}#)
#f)
(@apply
(lambda (#{id\ 3445}#
#{val\ 3446}#
#{e1\ 3447}#
#{e2\ 3448}#)
(begin
(let ((#{ids\ 3450}# #{id\ 3445}#))
(if (not (#{valid-bound-ids?\ 438}#
#{ids\ 3450}#))
(syntax-violation
'letrec*
"duplicate bound variable"
#{e\ 3420}#)
(begin
(let ((#{labels\ 3454}#
(#{gen-labels\ 393}# #{ids\ 3450}#))
(#{new-vars\ 3455}#
(map #{gen-var\ 488}#
#{ids\ 3450}#)))
(begin
(let ((#{w\ 3458}#
(#{make-binding-wrap\ 422}#
#{ids\ 3450}#
#{labels\ 3454}#
#{w\ 3422}#))
(#{r\ 3459}#
(#{extend-var-env\ 368}#
#{labels\ 3454}#
#{new-vars\ 3455}#
#{r\ 3421}#)))
(#{build-letrec\ 338}#
#{s\ 3423}#
#t
(map syntax->datum #{ids\ 3450}#)
#{new-vars\ 3455}#
(map (lambda (#{x\ 3460}#)
(#{chi\ 460}#
#{x\ 3460}#
#{r\ 3459}#
#{w\ 3458}#
#{mod\ 3424}#))
#{val\ 3446}#)
(#{chi-body\ 468}#
(cons #{e1\ 3447}# #{e2\ 3448}#)
(#{source-wrap\ 446}#
#{e\ 3420}#
#{w\ 3458}#
#{s\ 3423}#
#{mod\ 3424}#)
#{r\ 3459}#
#{w\ 3458}#
#{mod\ 3424}#))))))))))
#{tmp\ 3431}#)
(let ((#{_\ 3465}# #{tmp\ 3430}#))
(syntax-violation
'letrec*
"bad letrec*"
(#{source-wrap\ 446}#
#{e\ 3420}#
#{w\ 3422}#
#{s\ 3423}#
#{mod\ 3424}#))))))))
(#{global-extend\ 374}#
'core
'set!
(lambda (#{e\ 3466}#
#{r\ 3467}#
#{w\ 3468}#
#{s\ 3469}#
#{mod\ 3470}#)
(let ((#{tmp\ 3476}# #{e\ 3466}#))
(let ((#{tmp\ 3477}#
($sc-dispatch #{tmp\ 3476}# (quote (_ any any)))))
(if (if #{tmp\ 3477}#
(@apply
(lambda (#{id\ 3480}# #{val\ 3481}#)
(#{id?\ 378}# #{id\ 3480}#))
#{tmp\ 3477}#)
#f)
(@apply
(lambda (#{id\ 3484}# #{val\ 3485}#)
(begin
(let ((#{n\ 3488}#
(#{id-var-name\ 432}#
#{id\ 3484}#
#{w\ 3468}#))
(#{id-mod\ 3489}#
(if (#{syntax-object?\ 344}# #{id\ 3484}#)
(#{syntax-object-module\ 350}#
#{id\ 3484}#)
#{mod\ 3470}#)))
(begin
(let ((#{b\ 3491}#
(#{lookup\ 372}#
#{n\ 3488}#
#{r\ 3467}#
#{id-mod\ 3489}#)))
(begin
(let ((#{atom-key\ 3494}#
(car #{b\ 3491}#)))
(if (eqv? #{atom-key\ 3494}#
'lexical)
(#{build-lexical-assignment\ 312}#
#{s\ 3469}#
(syntax->datum #{id\ 3484}#)
(cdr #{b\ 3491}#)
(#{chi\ 460}#
#{val\ 3485}#
#{r\ 3467}#
#{w\ 3468}#
#{mod\ 3470}#))
(if (eqv? #{atom-key\ 3494}#
'global)
(#{build-global-assignment\ 318}#
#{s\ 3469}#
#{n\ 3488}#
(#{chi\ 460}#
#{val\ 3485}#
#{r\ 3467}#
#{w\ 3468}#
#{mod\ 3470}#)
#{id-mod\ 3489}#)
(if (eqv? #{atom-key\ 3494}#
'macro)
(begin
(let ((#{p\ 3501}#
(cdr #{b\ 3491}#)))
(if (procedure-property
#{p\ 3501}#
'variable-transformer)
(#{chi\ 460}#
(#{chi-macro\ 466}#
#{p\ 3501}#
#{e\ 3466}#
#{r\ 3467}#
#{w\ 3468}#
#{s\ 3469}#
#f
#{mod\ 3470}#)
#{r\ 3467}#
'(())
#{mod\ 3470}#)
(syntax-violation
'set!
"not a variable transformer"
(#{wrap\ 444}#
#{e\ 3466}#
#{w\ 3468}#
#{mod\ 3470}#)
(#{wrap\ 444}#
#{id\ 3484}#
#{w\ 3468}#
#{id-mod\ 3489}#)))))
(if (eqv? #{atom-key\ 3494}#
'displaced-lexical)
(syntax-violation
'set!
"identifier out of context"
(#{wrap\ 444}#
#{id\ 3484}#
#{w\ 3468}#
#{mod\ 3470}#))
(syntax-violation
'set!
"bad set!"
(#{source-wrap\ 446}#
#{e\ 3466}#
#{w\ 3468}#
#{s\ 3469}#
#{mod\ 3470}#)))))))))))))
#{tmp\ 3477}#)
(let ((#{tmp\ 3506}#
($sc-dispatch
#{tmp\ 3476}#
'(_ (any . each-any) any))))
(if #{tmp\ 3506}#
(@apply
(lambda (#{head\ 3510}#
#{tail\ 3511}#
#{val\ 3512}#)
(call-with-values
(lambda ()
(#{syntax-type\ 456}#
#{head\ 3510}#
#{r\ 3467}#
'(())
#f
#f
#{mod\ 3470}#
#t))
(lambda (#{type\ 3515}#
#{value\ 3516}#
#{ee\ 3517}#
#{ww\ 3518}#
#{ss\ 3519}#
#{modmod\ 3520}#)
(if (eqv? #{type\ 3515}# (quote module-ref))
(begin
(let ((#{val\ 3529}#
(#{chi\ 460}#
#{val\ 3512}#
#{r\ 3467}#
#{w\ 3468}#
#{mod\ 3470}#)))
(call-with-values
(lambda ()
(#{value\ 3516}#
(cons #{head\ 3510}#
#{tail\ 3511}#)
#{r\ 3467}#
#{w\ 3468}#))
(lambda (#{e\ 3531}#
#{r\ 3532}#
#{w\ 3533}#
#{s*\ 3534}#
#{mod\ 3535}#)
(let ((#{tmp\ 3541}# #{e\ 3531}#))
(let ((#{tmp\ 3542}#
(list #{tmp\ 3541}#)))
(if (if #{tmp\ 3542}#
(@apply
(lambda (#{e\ 3544}#)
(#{id?\ 378}#
#{e\ 3544}#))
#{tmp\ 3542}#)
#f)
(@apply
(lambda (#{e\ 3546}#)
(#{build-global-assignment\ 318}#
#{s\ 3469}#
(syntax->datum
#{e\ 3546}#)
#{val\ 3529}#
#{mod\ 3535}#))
#{tmp\ 3542}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 3541}#))))))))
(#{build-application\ 304}#
#{s\ 3469}#
(#{chi\ 460}#
(list '#(syntax-object
setter
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(type
value
ee
ww
ss
modmod)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i3521"
"i3522"
"i3523"
"i3524"
"i3525"
"i3526"))
#(ribcage
#(head tail val)
#((top) (top) (top))
#("i3507" "i3508" "i3509"))
#(ribcage () () ())
#(ribcage
#(e r w s mod)
#((top)
(top)
(top)
(top)
(top))
#("i3471"
"i3472"
"i3473"
"i3474"
"i3475"))
#(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))
("i489"
"i487"
"i485"
"i483"
"i481"
"i479"
"i477"
"i475"
"i473"
"i471"
"i469"
"i467"
"i465"
"i463"
"i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i418"
"i417"
"i415"
"i414"
"i413"
"i412"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i392"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i379"
"i377"
"i375"
"i373"
"i371"
"i369"
"i367"
"i365"
"i364"
"i363"
"i362"
"i361"
"i360"
"i358"
"i357"
"i355"
"i353"
"i351"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i39" "i38" "i37" "i35")))
(hygiene guile))
#{head\ 3510}#)
#{r\ 3467}#
#{w\ 3468}#
#{mod\ 3470}#)
(map (lambda (#{e\ 3548}#)
(#{chi\ 460}#
#{e\ 3548}#
#{r\ 3467}#
#{w\ 3468}#
#{mod\ 3470}#))
(append
#{tail\ 3511}#
(list #{val\ 3512}#))))))))
#{tmp\ 3506}#)
(let ((#{_\ 3552}# #{tmp\ 3476}#))
(syntax-violation
'set!
"bad set!"
(#{source-wrap\ 446}#
#{e\ 3466}#
#{w\ 3468}#
#{s\ 3469}#
#{mod\ 3470}#))))))))))
(#{global-extend\ 374}#
'module-ref
'@
(lambda (#{e\ 3553}# #{r\ 3554}# #{w\ 3555}#)
(let ((#{tmp\ 3559}# #{e\ 3553}#))
(let ((#{tmp\ 3560}#
($sc-dispatch
#{tmp\ 3559}#
'(_ each-any any))))
(if (if #{tmp\ 3560}#
(@apply
(lambda (#{mod\ 3563}# #{id\ 3564}#)
(if (and-map #{id?\ 378}# #{mod\ 3563}#)
(#{id?\ 378}# #{id\ 3564}#)
#f))
#{tmp\ 3560}#)
#f)
(@apply
(lambda (#{mod\ 3570}# #{id\ 3571}#)
(values
(syntax->datum #{id\ 3571}#)
#{r\ 3554}#
#{w\ 3555}#
#f
(syntax->datum
(cons '#(syntax-object
public
((top)
#(ribcage
#(mod id)
#((top) (top))
#("i3568" "i3569"))
#(ribcage () () ())
#(ribcage
#(e r w)
#((top) (top) (top))
#("i3556" "i3557" "i3558"))
#(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))
("i489"
"i487"
"i485"
"i483"
"i481"
"i479"
"i477"
"i475"
"i473"
"i471"
"i469"
"i467"
"i465"
"i463"
"i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i418"
"i417"
"i415"
"i414"
"i413"
"i412"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i392"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i379"
"i377"
"i375"
"i373"
"i371"
"i369"
"i367"
"i365"
"i364"
"i363"
"i362"
"i361"
"i360"
"i358"
"i357"
"i355"
"i353"
"i351"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i39" "i38" "i37" "i35")))
(hygiene guile))
#{mod\ 3570}#))))
#{tmp\ 3560}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 3559}#))))))
(#{global-extend\ 374}#
'module-ref
'@@
(lambda (#{e\ 3573}# #{r\ 3574}# #{w\ 3575}#)
(letrec*
((#{remodulate\ 3580}#
(lambda (#{x\ 3581}# #{mod\ 3582}#)
(if (pair? #{x\ 3581}#)
(cons (#{remodulate\ 3580}#
(car #{x\ 3581}#)
#{mod\ 3582}#)
(#{remodulate\ 3580}#
(cdr #{x\ 3581}#)
#{mod\ 3582}#))
(if (#{syntax-object?\ 344}# #{x\ 3581}#)
(#{make-syntax-object\ 342}#
(#{remodulate\ 3580}#
(#{syntax-object-expression\ 346}# #{x\ 3581}#)
#{mod\ 3582}#)
(#{syntax-object-wrap\ 348}# #{x\ 3581}#)
#{mod\ 3582}#)
(if (vector? #{x\ 3581}#)
(begin
(let ((#{n\ 3593}# (vector-length #{x\ 3581}#)))
(begin
(let ((#{v\ 3595}#
(make-vector #{n\ 3593}#)))
(letrec*
((#{loop\ 3598}#
(lambda (#{i\ 3599}#)
(if (#{fx=\ 285}#
#{i\ 3599}#
#{n\ 3593}#)
(begin (if #f #f) #{v\ 3595}#)
(begin
(vector-set!
#{v\ 3595}#
#{i\ 3599}#
(#{remodulate\ 3580}#
(vector-ref
#{x\ 3581}#
#{i\ 3599}#)
#{mod\ 3582}#))
(#{loop\ 3598}#
(#{fx+\ 281}#
#{i\ 3599}#
1)))))))
(begin (#{loop\ 3598}# 0)))))))
#{x\ 3581}#))))))
(begin
(let ((#{tmp\ 3603}# #{e\ 3573}#))
(let ((#{tmp\ 3604}#
($sc-dispatch
#{tmp\ 3603}#
'(_ each-any any))))
(if (if #{tmp\ 3604}#
(@apply
(lambda (#{mod\ 3607}# #{exp\ 3608}#)
(and-map #{id?\ 378}# #{mod\ 3607}#))
#{tmp\ 3604}#)
#f)
(@apply
(lambda (#{mod\ 3612}# #{exp\ 3613}#)
(begin
(let ((#{mod\ 3615}#
(syntax->datum
(cons '#(syntax-object
private
((top)
#(ribcage
#(mod exp)
#((top) (top))
#("i3610" "i3611"))
#(ribcage
(remodulate)
((top))
("i3579"))
#(ribcage
#(e r w)
#((top) (top) (top))
#("i3576"
"i3577"
"i3578"))
#(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))
("i489"
"i487"
"i485"
"i483"
"i481"
"i479"
"i477"
"i475"
"i473"
"i471"
"i469"
"i467"
"i465"
"i463"
"i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i418"
"i417"
"i415"
"i414"
"i413"
"i412"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i392"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i379"
"i377"
"i375"
"i373"
"i371"
"i369"
"i367"
"i365"
"i364"
"i363"
"i362"
"i361"
"i360"
"i358"
"i357"
"i355"
"i353"
"i351"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i39"
"i38"
"i37"
"i35")))
(hygiene guile))
#{mod\ 3612}#))))
(values
(#{remodulate\ 3580}#
#{exp\ 3613}#
#{mod\ 3615}#)
#{r\ 3574}#
#{w\ 3575}#
(#{source-annotation\ 359}# #{exp\ 3613}#)
#{mod\ 3615}#))))
#{tmp\ 3604}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 3603}#))))))))
(#{global-extend\ 374}#
'core
'if
(lambda (#{e\ 3617}#
#{r\ 3618}#
#{w\ 3619}#
#{s\ 3620}#
#{mod\ 3621}#)
(let ((#{tmp\ 3627}# #{e\ 3617}#))
(let ((#{tmp\ 3628}#
($sc-dispatch #{tmp\ 3627}# (quote (_ any any)))))
(if #{tmp\ 3628}#
(@apply
(lambda (#{test\ 3631}# #{then\ 3632}#)
(#{build-conditional\ 306}#
#{s\ 3620}#
(#{chi\ 460}#
#{test\ 3631}#
#{r\ 3618}#
#{w\ 3619}#
#{mod\ 3621}#)
(#{chi\ 460}#
#{then\ 3632}#
#{r\ 3618}#
#{w\ 3619}#
#{mod\ 3621}#)
(#{build-void\ 302}# #f)))
#{tmp\ 3628}#)
(let ((#{tmp\ 3634}#
($sc-dispatch
#{tmp\ 3627}#
'(_ any any any))))
(if #{tmp\ 3634}#
(@apply
(lambda (#{test\ 3638}#
#{then\ 3639}#
#{else\ 3640}#)
(#{build-conditional\ 306}#
#{s\ 3620}#
(#{chi\ 460}#
#{test\ 3638}#
#{r\ 3618}#
#{w\ 3619}#
#{mod\ 3621}#)
(#{chi\ 460}#
#{then\ 3639}#
#{r\ 3618}#
#{w\ 3619}#
#{mod\ 3621}#)
(#{chi\ 460}#
#{else\ 3640}#
#{r\ 3618}#
#{w\ 3619}#
#{mod\ 3621}#)))
#{tmp\ 3634}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 3627}#))))))))
(#{global-extend\ 374}#
'core
'with-fluids
(lambda (#{e\ 3641}#
#{r\ 3642}#
#{w\ 3643}#
#{s\ 3644}#
#{mod\ 3645}#)
(let ((#{tmp\ 3651}# #{e\ 3641}#))
(let ((#{tmp\ 3652}#
($sc-dispatch
#{tmp\ 3651}#
'(_ #(each (any any)) any . each-any))))
(if #{tmp\ 3652}#
(@apply
(lambda (#{fluid\ 3657}#
#{val\ 3658}#
#{b\ 3659}#
#{b*\ 3660}#)
(#{build-dynlet\ 308}#
#{s\ 3644}#
(map (lambda (#{x\ 3661}#)
(#{chi\ 460}#
#{x\ 3661}#
#{r\ 3642}#
#{w\ 3643}#
#{mod\ 3645}#))
#{fluid\ 3657}#)
(map (lambda (#{x\ 3664}#)
(#{chi\ 460}#
#{x\ 3664}#
#{r\ 3642}#
#{w\ 3643}#
#{mod\ 3645}#))
#{val\ 3658}#)
(#{chi-body\ 468}#
(cons #{b\ 3659}# #{b*\ 3660}#)
(#{source-wrap\ 446}#
#{e\ 3641}#
#{w\ 3643}#
#{s\ 3644}#
#{mod\ 3645}#)
#{r\ 3642}#
#{w\ 3643}#
#{mod\ 3645}#)))
#{tmp\ 3652}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 3651}#))))))
(#{global-extend\ 374}#
'begin
'begin
'())
(#{global-extend\ 374}#
'define
'define
'())
(#{global-extend\ 374}#
'define-syntax
'define-syntax
'())
(#{global-extend\ 374}#
'eval-when
'eval-when
'())
(#{global-extend\ 374}#
'core
'syntax-case
(letrec*
((#{convert-pattern\ 3669}#
(lambda (#{pattern\ 3676}# #{keys\ 3677}#)
(letrec*
((#{cvt*\ 3681}#
(lambda (#{p*\ 3684}# #{n\ 3685}# #{ids\ 3686}#)
(if (null? #{p*\ 3684}#)
(values (quote ()) #{ids\ 3686}#)
(call-with-values
(lambda ()
(#{cvt*\ 3681}#
(cdr #{p*\ 3684}#)
#{n\ 3685}#
#{ids\ 3686}#))
(lambda (#{y\ 3690}# #{ids\ 3691}#)
(call-with-values
(lambda ()
(#{cvt\ 3683}#
(car #{p*\ 3684}#)
#{n\ 3685}#
#{ids\ 3691}#))
(lambda (#{x\ 3694}# #{ids\ 3695}#)
(values
(cons #{x\ 3694}# #{y\ 3690}#)
#{ids\ 3695}#))))))))
(#{cvt\ 3683}#
(lambda (#{p\ 3698}# #{n\ 3699}# #{ids\ 3700}#)
(if (#{id?\ 378}# #{p\ 3698}#)
(if (#{bound-id-member?\ 442}#
#{p\ 3698}#
#{keys\ 3677}#)
(values
(vector (quote free-id) #{p\ 3698}#)
#{ids\ 3700}#)
(if (#{free-id=?\ 434}#
#{p\ 3698}#
'#(syntax-object
_
((top)
#(ribcage () () ())
#(ribcage
#(p n ids)
#((top) (top) (top))
#("i3701" "i3702" "i3703"))
#(ribcage
(cvt cvt*)
((top) (top))
("i3682" "i3680"))
#(ribcage
#(pattern keys)
#((top) (top))
#("i3678" "i3679"))
#(ribcage
(gen-syntax-case
gen-clause
build-dispatch-call
convert-pattern)
((top) (top) (top) (top))
("i3674" "i3672" "i3670" "i3668"))
#(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))
("i489"
"i487"
"i485"
"i483"
"i481"
"i479"
"i477"
"i475"
"i473"
"i471"
"i469"
"i467"
"i465"
"i463"
"i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i418"
"i417"
"i415"
"i414"
"i413"
"i412"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i392"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i379"
"i377"
"i375"
"i373"
"i371"
"i369"
"i367"
"i365"
"i364"
"i363"
"i362"
"i361"
"i360"
"i358"
"i357"
"i355"
"i353"
"i351"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i39" "i38" "i37" "i35")))
(hygiene guile)))
(values (quote _) #{ids\ 3700}#)
(values
'any
(cons (cons #{p\ 3698}# #{n\ 3699}#)
#{ids\ 3700}#))))
(let ((#{tmp\ 3709}# #{p\ 3698}#))
(let ((#{tmp\ 3710}#
($sc-dispatch
#{tmp\ 3709}#
'(any any))))
(if (if #{tmp\ 3710}#
(@apply
(lambda (#{x\ 3713}# #{dots\ 3714}#)
(#{ellipsis?\ 476}#
#{dots\ 3714}#))
#{tmp\ 3710}#)
#f)
(@apply
(lambda (#{x\ 3717}# #{dots\ 3718}#)
(call-with-values
(lambda ()
(#{cvt\ 3683}#
#{x\ 3717}#
(#{fx+\ 281}# #{n\ 3699}# 1)
#{ids\ 3700}#))
(lambda (#{p\ 3719}# #{ids\ 3720}#)
(values
(if (eq? #{p\ 3719}# (quote any))
'each-any
(vector
'each
#{p\ 3719}#))
#{ids\ 3720}#))))
#{tmp\ 3710}#)
(let ((#{tmp\ 3723}#
($sc-dispatch
#{tmp\ 3709}#
'(any any . each-any))))
(if (if #{tmp\ 3723}#
(@apply
(lambda (#{x\ 3727}#
#{dots\ 3728}#
#{ys\ 3729}#)
(#{ellipsis?\ 476}#
#{dots\ 3728}#))
#{tmp\ 3723}#)
#f)
(@apply
(lambda (#{x\ 3733}#
#{dots\ 3734}#
#{ys\ 3735}#)
(call-with-values
(lambda ()
(#{cvt*\ 3681}#
#{ys\ 3735}#
#{n\ 3699}#
#{ids\ 3700}#))
(lambda (#{ys\ 3737}#
#{ids\ 3738}#)
(call-with-values
(lambda ()
(#{cvt\ 3683}#
#{x\ 3733}#
(1+ #{n\ 3699}#)
#{ids\ 3738}#))
(lambda (#{x\ 3741}#
#{ids\ 3742}#)
(values
(list->vector
(cons 'each+
(cons #{x\ 3741}#
(cons (reverse
#{ys\ 3737}#)
'(())))))
#{ids\ 3742}#))))))
#{tmp\ 3723}#)
(let ((#{tmp\ 3746}#
($sc-dispatch
#{tmp\ 3709}#
'(any . any))))
(if #{tmp\ 3746}#
(@apply
(lambda (#{x\ 3749}# #{y\ 3750}#)
(call-with-values
(lambda ()
(#{cvt\ 3683}#
#{y\ 3750}#
#{n\ 3699}#
#{ids\ 3700}#))
(lambda (#{y\ 3751}#
#{ids\ 3752}#)
(call-with-values
(lambda ()
(#{cvt\ 3683}#
#{x\ 3749}#
#{n\ 3699}#
#{ids\ 3752}#))
(lambda (#{x\ 3755}#
#{ids\ 3756}#)
(values
(cons #{x\ 3755}#
#{y\ 3751}#)
#{ids\ 3756}#))))))
#{tmp\ 3746}#)
(let ((#{tmp\ 3759}#
($sc-dispatch
#{tmp\ 3709}#
'())))
(if #{tmp\ 3759}#
(@apply
(lambda ()
(values
'()
#{ids\ 3700}#))
#{tmp\ 3759}#)
(let ((#{tmp\ 3760}#
($sc-dispatch
#{tmp\ 3709}#
'#(vector
each-any))))
(if #{tmp\ 3760}#
(@apply
(lambda (#{x\ 3762}#)
(call-with-values
(lambda ()
(#{cvt\ 3683}#
#{x\ 3762}#
#{n\ 3699}#
#{ids\ 3700}#))
(lambda (#{p\ 3764}#
#{ids\ 3765}#)
(values
(vector
'vector
#{p\ 3764}#)
#{ids\ 3765}#))))
#{tmp\ 3760}#)
(let ((#{x\ 3769}#
#{tmp\ 3709}#))
(values
(vector
'atom
(#{strip\ 486}#
#{p\ 3698}#
'(())))
#{ids\ 3700}#)))))))))))))))))
(begin
(#{cvt\ 3683}# #{pattern\ 3676}# 0 (quote ()))))))
(#{build-dispatch-call\ 3671}#
(lambda (#{pvars\ 3771}#
#{exp\ 3772}#
#{y\ 3773}#
#{r\ 3774}#
#{mod\ 3775}#)
(begin
(map cdr #{pvars\ 3771}#)
(let ((#{ids\ 3783}# (map car #{pvars\ 3771}#)))
(begin
(let ((#{labels\ 3787}#
(#{gen-labels\ 393}# #{ids\ 3783}#))
(#{new-vars\ 3788}#
(map #{gen-var\ 488}# #{ids\ 3783}#)))
(#{build-application\ 304}#
#f
(#{build-primref\ 328}# #f (quote apply))
(list (#{build-simple-lambda\ 322}#
#f
(map syntax->datum #{ids\ 3783}#)
#f
#{new-vars\ 3788}#
'()
(#{chi\ 460}#
#{exp\ 3772}#
(#{extend-env\ 366}#
#{labels\ 3787}#
(map (lambda (#{var\ 3792}#
#{level\ 3793}#)
(cons 'syntax
(cons #{var\ 3792}#
#{level\ 3793}#)))
#{new-vars\ 3788}#
(map cdr #{pvars\ 3771}#))
#{r\ 3774}#)
(#{make-binding-wrap\ 422}#
#{ids\ 3783}#
#{labels\ 3787}#
'(()))
#{mod\ 3775}#))
#{y\ 3773}#))))))))
(#{gen-clause\ 3673}#
(lambda (#{x\ 3799}#
#{keys\ 3800}#
#{clauses\ 3801}#
#{r\ 3802}#
#{pat\ 3803}#
#{fender\ 3804}#
#{exp\ 3805}#
#{mod\ 3806}#)
(call-with-values
(lambda ()
(#{convert-pattern\ 3669}#
#{pat\ 3803}#
#{keys\ 3800}#))
(lambda (#{p\ 3815}# #{pvars\ 3816}#)
(if (not (#{distinct-bound-ids?\ 440}#
(map car #{pvars\ 3816}#)))
(syntax-violation
'syntax-case
"duplicate pattern variable"
#{pat\ 3803}#)
(if (not (and-map
(lambda (#{x\ 3823}#)
(not (#{ellipsis?\ 476}#
(car #{x\ 3823}#))))
#{pvars\ 3816}#))
(syntax-violation
'syntax-case
"misplaced ellipsis"
#{pat\ 3803}#)
(begin
(let ((#{y\ 3827}#
(#{gen-var\ 488}# (quote tmp))))
(#{build-application\ 304}#
#f
(#{build-simple-lambda\ 322}#
#f
(list (quote tmp))
#f
(list #{y\ 3827}#)
'()
(begin
(let ((#{y\ 3831}#
(#{build-lexical-reference\ 310}#
'value
#f
'tmp
#{y\ 3827}#)))
(#{build-conditional\ 306}#
#f
(let ((#{tmp\ 3834}#
#{fender\ 3804}#))
(let ((#{tmp\ 3835}#
($sc-dispatch
#{tmp\ 3834}#
'#(atom #t))))
(if #{tmp\ 3835}#
(@apply
(lambda () #{y\ 3831}#)
#{tmp\ 3835}#)
(let ((#{_\ 3837}#
#{tmp\ 3834}#))
(#{build-conditional\ 306}#
#f
#{y\ 3831}#
(#{build-dispatch-call\ 3671}#
#{pvars\ 3816}#
#{fender\ 3804}#
#{y\ 3831}#
#{r\ 3802}#
#{mod\ 3806}#)
(#{build-data\ 330}#
#f
#f))))))
(#{build-dispatch-call\ 3671}#
#{pvars\ 3816}#
#{exp\ 3805}#
#{y\ 3831}#
#{r\ 3802}#
#{mod\ 3806}#)
(#{gen-syntax-case\ 3675}#
#{x\ 3799}#
#{keys\ 3800}#
#{clauses\ 3801}#
#{r\ 3802}#
#{mod\ 3806}#)))))
(list (if (eq? #{p\ 3815}# (quote any))
(#{build-application\ 304}#
#f
(#{build-primref\ 328}#
#f
'list)
(list #{x\ 3799}#))
(#{build-application\ 304}#
#f
(#{build-primref\ 328}#
#f
'$sc-dispatch)
(list #{x\ 3799}#
(#{build-data\ 330}#
#f
#{p\ 3815}#))))))))))))))
(#{gen-syntax-case\ 3675}#
(lambda (#{x\ 3845}#
#{keys\ 3846}#
#{clauses\ 3847}#
#{r\ 3848}#
#{mod\ 3849}#)
(if (null? #{clauses\ 3847}#)
(#{build-application\ 304}#
#f
(#{build-primref\ 328}#
#f
'syntax-violation)
(list (#{build-data\ 330}# #f #f)
(#{build-data\ 330}#
#f
"source expression failed to match any pattern")
#{x\ 3845}#))
(let ((#{tmp\ 3859}# (car #{clauses\ 3847}#)))
(let ((#{tmp\ 3860}#
($sc-dispatch
#{tmp\ 3859}#
'(any any))))
(if #{tmp\ 3860}#
(@apply
(lambda (#{pat\ 3863}# #{exp\ 3864}#)
(if (if (#{id?\ 378}# #{pat\ 3863}#)
(and-map
(lambda (#{x\ 3867}#)
(not (#{free-id=?\ 434}#
#{pat\ 3863}#
#{x\ 3867}#)))
(cons '#(syntax-object
...
((top)
#(ribcage
#(pat exp)
#((top) (top))
#("i3861" "i3862"))
#(ribcage () () ())
#(ribcage
#(x keys clauses r mod)
#((top)
(top)
(top)
(top)
(top))
#("i3850"
"i3851"
"i3852"
"i3853"
"i3854"))
#(ribcage
(gen-syntax-case
gen-clause
build-dispatch-call
convert-pattern)
((top) (top) (top) (top))
("i3674"
"i3672"
"i3670"
"i3668"))
#(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))
("i489"
"i487"
"i485"
"i483"
"i481"
"i479"
"i477"
"i475"
"i473"
"i471"
"i469"
"i467"
"i465"
"i463"
"i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i418"
"i417"
"i415"
"i414"
"i413"
"i412"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i392"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i379"
"i377"
"i375"
"i373"
"i371"
"i369"
"i367"
"i365"
"i364"
"i363"
"i362"
"i361"
"i360"
"i358"
"i357"
"i355"
"i353"
"i351"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i39"
"i38"
"i37"
"i35")))
(hygiene guile))
#{keys\ 3846}#))
#f)
(if (#{free-id=?\ 434}#
'#(syntax-object
pad
((top)
#(ribcage
#(pat exp)
#((top) (top))
#("i3861" "i3862"))
#(ribcage () () ())
#(ribcage
#(x keys clauses r mod)
#((top) (top) (top) (top) (top))
#("i3850"
"i3851"
"i3852"
"i3853"
"i3854"))
#(ribcage
(gen-syntax-case
gen-clause
build-dispatch-call
convert-pattern)
((top) (top) (top) (top))
("i3674"
"i3672"
"i3670"
"i3668"))
#(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))
("i489"
"i487"
"i485"
"i483"
"i481"
"i479"
"i477"
"i475"
"i473"
"i471"
"i469"
"i467"
"i465"
"i463"
"i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i418"
"i417"
"i415"
"i414"
"i413"
"i412"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i392"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i379"
"i377"
"i375"
"i373"
"i371"
"i369"
"i367"
"i365"
"i364"
"i363"
"i362"
"i361"
"i360"
"i358"
"i357"
"i355"
"i353"
"i351"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i39" "i38" "i37" "i35")))
(hygiene guile))
'#(syntax-object
_
((top)
#(ribcage
#(pat exp)
#((top) (top))
#("i3861" "i3862"))
#(ribcage () () ())
#(ribcage
#(x keys clauses r mod)
#((top) (top) (top) (top) (top))
#("i3850"
"i3851"
"i3852"
"i3853"
"i3854"))
#(ribcage
(gen-syntax-case
gen-clause
build-dispatch-call
convert-pattern)
((top) (top) (top) (top))
("i3674"
"i3672"
"i3670"
"i3668"))
#(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))
("i489"
"i487"
"i485"
"i483"
"i481"
"i479"
"i477"
"i475"
"i473"
"i471"
"i469"
"i467"
"i465"
"i463"
"i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i418"
"i417"
"i415"
"i414"
"i413"
"i412"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i392"
"i390"
"i389"
"i388"
"i387"
"i386"
"i385"
"i384"
"i383"
"i382"
"i380"
"i379"
"i377"
"i375"
"i373"
"i371"
"i369"
"i367"
"i365"
"i364"
"i363"
"i362"
"i361"
"i360"
"i358"
"i357"
"i355"
"i353"
"i351"
"i349"
"i347"
"i345"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i329"
"i327"
"i325"
"i323"
"i321"
"i319"
"i317"
"i315"
"i313"
"i311"
"i309"
"i307"
"i305"
"i303"
"i301"
"i299"
"i297"
"i295"
"i293"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i253"
"i251"
"i249"
"i247"
"i245"
"i243"
"i241"
"i239"
"i237"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
("i39" "i38" "i37" "i35")))
(hygiene guile)))
(#{chi\ 460}#
#{exp\ 3864}#
#{r\ 3848}#
'(())
#{mod\ 3849}#)
(begin
(let ((#{labels\ 3872}#
(list (#{gen-label\ 391}#)))
(#{var\ 3873}#
(#{gen-var\ 488}#
#{pat\ 3863}#)))
(#{build-application\ 304}#
#f
(#{build-simple-lambda\ 322}#
#f
(list (syntax->datum
#{pat\ 3863}#))
#f
(list #{var\ 3873}#)
'()
(#{chi\ 460}#
#{exp\ 3864}#
(#{extend-env\ 366}#
#{labels\ 3872}#
(list (cons 'syntax
(cons #{var\ 3873}#
0)))
#{r\ 3848}#)
(#{make-binding-wrap\ 422}#
(list #{pat\ 3863}#)
#{labels\ 3872}#
'(()))
#{mod\ 3849}#))
(list #{x\ 3845}#)))))
(#{gen-clause\ 3673}#
#{x\ 3845}#
#{keys\ 3846}#
(cdr #{clauses\ 3847}#)
#{r\ 3848}#
#{pat\ 3863}#
#t
#{exp\ 3864}#
#{mod\ 3849}#)))
#{tmp\ 3860}#)
(let ((#{tmp\ 3879}#
($sc-dispatch
#{tmp\ 3859}#
'(any any any))))
(if #{tmp\ 3879}#
(@apply
(lambda (#{pat\ 3883}#
#{fender\ 3884}#
#{exp\ 3885}#)
(#{gen-clause\ 3673}#
#{x\ 3845}#
#{keys\ 3846}#
(cdr #{clauses\ 3847}#)
#{r\ 3848}#
#{pat\ 3883}#
#{fender\ 3884}#
#{exp\ 3885}#
#{mod\ 3849}#))
#{tmp\ 3879}#)
(let ((#{_\ 3887}# #{tmp\ 3859}#))
(syntax-violation
'syntax-case
"invalid clause"
(car #{clauses\ 3847}#))))))))))))
(begin
(lambda (#{e\ 3888}#
#{r\ 3889}#
#{w\ 3890}#
#{s\ 3891}#
#{mod\ 3892}#)
(begin
(let ((#{e\ 3899}#
(#{source-wrap\ 446}#
#{e\ 3888}#
#{w\ 3890}#
#{s\ 3891}#
#{mod\ 3892}#)))
(let ((#{tmp\ 3900}# #{e\ 3899}#))
(let ((#{tmp\ 3901}#
($sc-dispatch
#{tmp\ 3900}#
'(_ any each-any . each-any))))
(if #{tmp\ 3901}#
(@apply
(lambda (#{val\ 3905}#
#{key\ 3906}#
#{m\ 3907}#)
(if (and-map
(lambda (#{x\ 3908}#)
(if (#{id?\ 378}# #{x\ 3908}#)
(not (#{ellipsis?\ 476}#
#{x\ 3908}#))
#f))
#{key\ 3906}#)
(begin
(let ((#{x\ 3914}#
(#{gen-var\ 488}# (quote tmp))))
(#{build-application\ 304}#
#{s\ 3891}#
(#{build-simple-lambda\ 322}#
#f
(list (quote tmp))
#f
(list #{x\ 3914}#)
'()
(#{gen-syntax-case\ 3675}#
(#{build-lexical-reference\ 310}#
'value
#f
'tmp
#{x\ 3914}#)
#{key\ 3906}#
#{m\ 3907}#
#{r\ 3889}#
#{mod\ 3892}#))
(list (#{chi\ 460}#
#{val\ 3905}#
#{r\ 3889}#
'(())
#{mod\ 3892}#)))))
(syntax-violation
'syntax-case
"invalid literals list"
#{e\ 3899}#)))
#{tmp\ 3901}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 3900}#))))))))))
(set! macroexpand
(lambda*
(#{x\ 3920}#
#:optional
(#{m\ 3922}# (quote e))
(#{esew\ 3924}# (quote (eval))))
(#{chi-top\ 458}#
#{x\ 3920}#
'()
'((top))
#{m\ 3922}#
#{esew\ 3924}#
(cons 'hygiene
(module-name (current-module))))))
(set! identifier?
(lambda (#{x\ 3928}#)
(#{nonsymbol-id?\ 376}# #{x\ 3928}#)))
(set! datum->syntax
(lambda (#{id\ 3930}# #{datum\ 3931}#)
(#{make-syntax-object\ 342}#
#{datum\ 3931}#
(#{syntax-object-wrap\ 348}# #{id\ 3930}#)
(#{syntax-object-module\ 350}# #{id\ 3930}#))))
(set! syntax->datum
(lambda (#{x\ 3934}#)
(#{strip\ 486}# #{x\ 3934}# (quote (())))))
(set! syntax-source
(lambda (#{x\ 3937}#)
(#{source-annotation\ 359}# #{x\ 3937}#)))
(set! generate-temporaries
(lambda (#{ls\ 3939}#)
(begin
(begin
(let ((#{x\ 3943}# #{ls\ 3939}#))
(if (not (list? #{x\ 3943}#))
(syntax-violation
'generate-temporaries
"invalid argument"
#{x\ 3943}#))))
(map (lambda (#{x\ 3944}#)
(#{wrap\ 444}# (gensym) (quote ((top))) #f))
#{ls\ 3939}#))))
(set! free-identifier=?
(lambda (#{x\ 3948}# #{y\ 3949}#)
(begin
(begin
(let ((#{x\ 3954}# #{x\ 3948}#))
(if (not (#{nonsymbol-id?\ 376}# #{x\ 3954}#))
(syntax-violation
'free-identifier=?
"invalid argument"
#{x\ 3954}#))))
(begin
(let ((#{x\ 3957}# #{y\ 3949}#))
(if (not (#{nonsymbol-id?\ 376}# #{x\ 3957}#))
(syntax-violation
'free-identifier=?
"invalid argument"
#{x\ 3957}#))))
(#{free-id=?\ 434}# #{x\ 3948}# #{y\ 3949}#))))
(set! bound-identifier=?
(lambda (#{x\ 3958}# #{y\ 3959}#)
(begin
(begin
(let ((#{x\ 3964}# #{x\ 3958}#))
(if (not (#{nonsymbol-id?\ 376}# #{x\ 3964}#))
(syntax-violation
'bound-identifier=?
"invalid argument"
#{x\ 3964}#))))
(begin
(let ((#{x\ 3967}# #{y\ 3959}#))
(if (not (#{nonsymbol-id?\ 376}# #{x\ 3967}#))
(syntax-violation
'bound-identifier=?
"invalid argument"
#{x\ 3967}#))))
(#{bound-id=?\ 436}# #{x\ 3958}# #{y\ 3959}#))))
(set! syntax-violation
(lambda (#{who\ 3968}#
#{message\ 3969}#
#{form\ 3970}#
.
#{subform\ 3971}#)
(begin
(begin
(let ((#{x\ 3978}# #{who\ 3968}#))
(if (not (let ((#{x\ 3979}# #{x\ 3978}#))
(begin
(let ((#{t\ 3983}# (not #{x\ 3979}#)))
(if #{t\ 3983}#
#{t\ 3983}#
(begin
(let ((#{t\ 3986}#
(string? #{x\ 3979}#)))
(if #{t\ 3986}#
#{t\ 3986}#
(symbol? #{x\ 3979}#)))))))))
(syntax-violation
'syntax-violation
"invalid argument"
#{x\ 3978}#))))
(begin
(let ((#{x\ 3990}# #{message\ 3969}#))
(if (not (string? #{x\ 3990}#))
(syntax-violation
'syntax-violation
"invalid argument"
#{x\ 3990}#))))
(scm-error
'syntax-error
'macroexpand
(string-append
(if #{who\ 3968}# "~a: " "")
"~a "
(if (null? #{subform\ 3971}#)
"in ~a"
"in subform `~s' of `~s'"))
(begin
(let ((#{tail\ 3992}#
(cons #{message\ 3969}#
(map (lambda (#{x\ 3993}#)
(#{strip\ 486}#
#{x\ 3993}#
'(())))
(append
#{subform\ 3971}#
(list #{form\ 3970}#))))))
(if #{who\ 3968}#
(cons #{who\ 3968}# #{tail\ 3992}#)
#{tail\ 3992}#)))
#f))))
(letrec*
((#{match-each\ 3997}#
(lambda (#{e\ 4010}#
#{p\ 4011}#
#{w\ 4012}#
#{mod\ 4013}#)
(if (pair? #{e\ 4010}#)
(begin
(let ((#{first\ 4021}#
(#{match\ 4009}#
(car #{e\ 4010}#)
#{p\ 4011}#
#{w\ 4012}#
'()
#{mod\ 4013}#)))
(if #{first\ 4021}#
(begin
(let ((#{rest\ 4025}#
(#{match-each\ 3997}#
(cdr #{e\ 4010}#)
#{p\ 4011}#
#{w\ 4012}#
#{mod\ 4013}#)))
(if #{rest\ 4025}#
(cons #{first\ 4021}# #{rest\ 4025}#)
#f)))
#f)))
(if (null? #{e\ 4010}#)
'()
(if (#{syntax-object?\ 344}# #{e\ 4010}#)
(#{match-each\ 3997}#
(#{syntax-object-expression\ 346}# #{e\ 4010}#)
#{p\ 4011}#
(#{join-wraps\ 426}#
#{w\ 4012}#
(#{syntax-object-wrap\ 348}# #{e\ 4010}#))
(#{syntax-object-module\ 350}# #{e\ 4010}#))
#f)))))
(#{match-each+\ 3999}#
(lambda (#{e\ 4033}#
#{x-pat\ 4034}#
#{y-pat\ 4035}#
#{z-pat\ 4036}#
#{w\ 4037}#
#{r\ 4038}#
#{mod\ 4039}#)
(letrec*
((#{f\ 4050}#
(lambda (#{e\ 4051}# #{w\ 4052}#)
(if (pair? #{e\ 4051}#)
(call-with-values
(lambda ()
(#{f\ 4050}# (cdr #{e\ 4051}#) #{w\ 4052}#))
(lambda (#{xr*\ 4055}#
#{y-pat\ 4056}#
#{r\ 4057}#)
(if #{r\ 4057}#
(if (null? #{y-pat\ 4056}#)
(begin
(let ((#{xr\ 4062}#
(#{match\ 4009}#
(car #{e\ 4051}#)
#{x-pat\ 4034}#
#{w\ 4052}#
'()
#{mod\ 4039}#)))
(if #{xr\ 4062}#
(values
(cons #{xr\ 4062}# #{xr*\ 4055}#)
#{y-pat\ 4056}#
#{r\ 4057}#)
(values #f #f #f))))
(values
'()
(cdr #{y-pat\ 4056}#)
(#{match\ 4009}#
(car #{e\ 4051}#)
(car #{y-pat\ 4056}#)
#{w\ 4052}#
#{r\ 4057}#
#{mod\ 4039}#)))
(values #f #f #f))))
(if (#{syntax-object?\ 344}# #{e\ 4051}#)
(#{f\ 4050}#
(#{syntax-object-expression\ 346}# #{e\ 4051}#)
(#{join-wraps\ 426}# #{w\ 4052}# #{e\ 4051}#))
(values
'()
#{y-pat\ 4035}#
(#{match\ 4009}#
#{e\ 4051}#
#{z-pat\ 4036}#
#{w\ 4052}#
#{r\ 4038}#
#{mod\ 4039}#)))))))
(begin (#{f\ 4050}# #{e\ 4033}# #{w\ 4037}#)))))
(#{match-each-any\ 4001}#
(lambda (#{e\ 4066}# #{w\ 4067}# #{mod\ 4068}#)
(if (pair? #{e\ 4066}#)
(begin
(let ((#{l\ 4075}#
(#{match-each-any\ 4001}#
(cdr #{e\ 4066}#)
#{w\ 4067}#
#{mod\ 4068}#)))
(if #{l\ 4075}#
(cons (#{wrap\ 444}#
(car #{e\ 4066}#)
#{w\ 4067}#
#{mod\ 4068}#)
#{l\ 4075}#)
#f)))
(if (null? #{e\ 4066}#)
'()
(if (#{syntax-object?\ 344}# #{e\ 4066}#)
(#{match-each-any\ 4001}#
(#{syntax-object-expression\ 346}# #{e\ 4066}#)
(#{join-wraps\ 426}#
#{w\ 4067}#
(#{syntax-object-wrap\ 348}# #{e\ 4066}#))
#{mod\ 4068}#)
#f)))))
(#{match-empty\ 4003}#
(lambda (#{p\ 4083}# #{r\ 4084}#)
(if (null? #{p\ 4083}#)
#{r\ 4084}#
(if (eq? #{p\ 4083}# (quote _))
#{r\ 4084}#
(if (eq? #{p\ 4083}# (quote any))
(cons (quote ()) #{r\ 4084}#)
(if (pair? #{p\ 4083}#)
(#{match-empty\ 4003}#
(car #{p\ 4083}#)
(#{match-empty\ 4003}#
(cdr #{p\ 4083}#)
#{r\ 4084}#))
(if (eq? #{p\ 4083}# (quote each-any))
(cons (quote ()) #{r\ 4084}#)
(begin
(let ((#{atom-key\ 4100}#
(vector-ref #{p\ 4083}# 0)))
(if (eqv? #{atom-key\ 4100}# (quote each))
(#{match-empty\ 4003}#
(vector-ref #{p\ 4083}# 1)
#{r\ 4084}#)
(if (eqv? #{atom-key\ 4100}# (quote each+))
(#{match-empty\ 4003}#
(vector-ref #{p\ 4083}# 1)
(#{match-empty\ 4003}#
(reverse (vector-ref #{p\ 4083}# 2))
(#{match-empty\ 4003}#
(vector-ref #{p\ 4083}# 3)
#{r\ 4084}#)))
(if (if (eqv? #{atom-key\ 4100}#
'free-id)
#t
(eqv? #{atom-key\ 4100}#
'atom))
#{r\ 4084}#
(if (eqv? #{atom-key\ 4100}#
'vector)
(#{match-empty\ 4003}#
(vector-ref #{p\ 4083}# 1)
#{r\ 4084}#))))))))))))))
(#{combine\ 4005}#
(lambda (#{r*\ 4105}# #{r\ 4106}#)
(if (null? (car #{r*\ 4105}#))
#{r\ 4106}#
(cons (map car #{r*\ 4105}#)
(#{combine\ 4005}#
(map cdr #{r*\ 4105}#)
#{r\ 4106}#)))))
(#{match*\ 4007}#
(lambda (#{e\ 4109}#
#{p\ 4110}#
#{w\ 4111}#
#{r\ 4112}#
#{mod\ 4113}#)
(if (null? #{p\ 4110}#)
(if (null? #{e\ 4109}#) #{r\ 4112}# #f)
(if (pair? #{p\ 4110}#)
(if (pair? #{e\ 4109}#)
(#{match\ 4009}#
(car #{e\ 4109}#)
(car #{p\ 4110}#)
#{w\ 4111}#
(#{match\ 4009}#
(cdr #{e\ 4109}#)
(cdr #{p\ 4110}#)
#{w\ 4111}#
#{r\ 4112}#
#{mod\ 4113}#)
#{mod\ 4113}#)
#f)
(if (eq? #{p\ 4110}# (quote each-any))
(begin
(let ((#{l\ 4130}#
(#{match-each-any\ 4001}#
#{e\ 4109}#
#{w\ 4111}#
#{mod\ 4113}#)))
(if #{l\ 4130}#
(cons #{l\ 4130}# #{r\ 4112}#)
#f)))
(begin
(let ((#{atom-key\ 4136}#
(vector-ref #{p\ 4110}# 0)))
(if (eqv? #{atom-key\ 4136}# (quote each))
(if (null? #{e\ 4109}#)
(#{match-empty\ 4003}#
(vector-ref #{p\ 4110}# 1)
#{r\ 4112}#)
(begin
(let ((#{l\ 4139}#
(#{match-each\ 3997}#
#{e\ 4109}#
(vector-ref #{p\ 4110}# 1)
#{w\ 4111}#
#{mod\ 4113}#)))
(if #{l\ 4139}#
(letrec*
((#{collect\ 4144}#
(lambda (#{l\ 4145}#)
(if (null? (car #{l\ 4145}#))
#{r\ 4112}#
(cons (map car #{l\ 4145}#)
(#{collect\ 4144}#
(map cdr
#{l\ 4145}#)))))))
(begin
(#{collect\ 4144}# #{l\ 4139}#)))
#f))))
(if (eqv? #{atom-key\ 4136}# (quote each+))
(call-with-values
(lambda ()
(#{match-each+\ 3999}#
#{e\ 4109}#
(vector-ref #{p\ 4110}# 1)
(vector-ref #{p\ 4110}# 2)
(vector-ref #{p\ 4110}# 3)
#{w\ 4111}#
#{r\ 4112}#
#{mod\ 4113}#))
(lambda (#{xr*\ 4147}#
#{y-pat\ 4148}#
#{r\ 4149}#)
(if #{r\ 4149}#
(if (null? #{y-pat\ 4148}#)
(if (null? #{xr*\ 4147}#)
(#{match-empty\ 4003}#
(vector-ref #{p\ 4110}# 1)
#{r\ 4149}#)
(#{combine\ 4005}#
#{xr*\ 4147}#
#{r\ 4149}#))
#f)
#f)))
(if (eqv? #{atom-key\ 4136}# (quote free-id))
(if (#{id?\ 378}# #{e\ 4109}#)
(if (#{free-id=?\ 434}#
(#{wrap\ 444}#
#{e\ 4109}#
#{w\ 4111}#
#{mod\ 4113}#)
(vector-ref #{p\ 4110}# 1))
#{r\ 4112}#
#f)
#f)
(if (eqv? #{atom-key\ 4136}# (quote atom))
(if (equal?
(vector-ref #{p\ 4110}# 1)
(#{strip\ 486}#
#{e\ 4109}#
#{w\ 4111}#))
#{r\ 4112}#
#f)
(if (eqv? #{atom-key\ 4136}#
'vector)
(if (vector? #{e\ 4109}#)
(#{match\ 4009}#
(vector->list #{e\ 4109}#)
(vector-ref #{p\ 4110}# 1)
#{w\ 4111}#
#{r\ 4112}#
#{mod\ 4113}#)
#f)))))))))))))
(#{match\ 4009}#
(lambda (#{e\ 4166}#
#{p\ 4167}#
#{w\ 4168}#
#{r\ 4169}#
#{mod\ 4170}#)
(if (not #{r\ 4169}#)
#f
(if (eq? #{p\ 4167}# (quote _))
#{r\ 4169}#
(if (eq? #{p\ 4167}# (quote any))
(cons (#{wrap\ 444}#
#{e\ 4166}#
#{w\ 4168}#
#{mod\ 4170}#)
#{r\ 4169}#)
(if (#{syntax-object?\ 344}# #{e\ 4166}#)
(#{match*\ 4007}#
(#{syntax-object-expression\ 346}# #{e\ 4166}#)
#{p\ 4167}#
(#{join-wraps\ 426}#
#{w\ 4168}#
(#{syntax-object-wrap\ 348}# #{e\ 4166}#))
#{r\ 4169}#
(#{syntax-object-module\ 350}# #{e\ 4166}#))
(#{match*\ 4007}#
#{e\ 4166}#
#{p\ 4167}#
#{w\ 4168}#
#{r\ 4169}#
#{mod\ 4170}#))))))))
(begin
(set! $sc-dispatch
(lambda (#{e\ 4185}# #{p\ 4186}#)
(if (eq? #{p\ 4186}# (quote any))
(list #{e\ 4185}#)
(if (eq? #{p\ 4186}# (quote _))
'()
(if (#{syntax-object?\ 344}# #{e\ 4185}#)
(#{match*\ 4007}#
(#{syntax-object-expression\ 346}# #{e\ 4185}#)
#{p\ 4186}#
(#{syntax-object-wrap\ 348}# #{e\ 4185}#)
'()
(#{syntax-object-module\ 350}# #{e\ 4185}#))
(#{match*\ 4007}#
#{e\ 4185}#
#{p\ 4186}#
'(())
'()
#f))))))))))))))
(define with-syntax
(make-syntax-transformer
'with-syntax
'macro
(lambda (#{x\ 4197}#)
(let ((#{tmp\ 4199}# #{x\ 4197}#))
(let ((#{tmp\ 4200}#
($sc-dispatch
#{tmp\ 4199}#
'(_ () any . each-any))))
(if #{tmp\ 4200}#
(@apply
(lambda (#{e1\ 4203}# #{e2\ 4204}#)
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4201" "i4202"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4198")))
(hygiene guile))
(cons #{e1\ 4203}# #{e2\ 4204}#)))
#{tmp\ 4200}#)
(let ((#{tmp\ 4206}#
($sc-dispatch
#{tmp\ 4199}#
'(_ ((any any)) any . each-any))))
(if #{tmp\ 4206}#
(@apply
(lambda (#{out\ 4211}#
#{in\ 4212}#
#{e1\ 4213}#
#{e2\ 4214}#)
(list '#(syntax-object
syntax-case
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
#("i4207" "i4208" "i4209" "i4210"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4198")))
(hygiene guile))
#{in\ 4212}#
'()
(list #{out\ 4211}#
(cons '#(syntax-object
begin
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
#("i4207" "i4208" "i4209" "i4210"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4198")))
(hygiene guile))
(cons #{e1\ 4213}# #{e2\ 4214}#)))))
#{tmp\ 4206}#)
(let ((#{tmp\ 4216}#
($sc-dispatch
#{tmp\ 4199}#
'(_ #(each (any any)) any . each-any))))
(if #{tmp\ 4216}#
(@apply
(lambda (#{out\ 4221}#
#{in\ 4222}#
#{e1\ 4223}#
#{e2\ 4224}#)
(list '#(syntax-object
syntax-case
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
#("i4217" "i4218" "i4219" "i4220"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4198")))
(hygiene guile))
(cons '#(syntax-object
list
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
#("i4217" "i4218" "i4219" "i4220"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4198")))
(hygiene guile))
#{in\ 4222}#)
'()
(list #{out\ 4221}#
(cons '#(syntax-object
begin
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
#("i4217"
"i4218"
"i4219"
"i4220"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4198")))
(hygiene guile))
(cons #{e1\ 4223}# #{e2\ 4224}#)))))
#{tmp\ 4216}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4199}#)))))))))))
(define syntax-rules
(make-syntax-transformer
'syntax-rules
'macro
(lambda (#{x\ 4228}#)
(let ((#{tmp\ 4230}# #{x\ 4228}#))
(let ((#{tmp\ 4231}#
($sc-dispatch
#{tmp\ 4230}#
'(_ each-any . #(each ((any . any) any))))))
(if #{tmp\ 4231}#
(@apply
(lambda (#{k\ 4236}#
#{keyword\ 4237}#
#{pattern\ 4238}#
#{template\ 4239}#)
(list '#(syntax-object
lambda
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4232" "i4233" "i4234" "i4235"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4229")))
(hygiene guile))
'(#(syntax-object
x
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4232" "i4233" "i4234" "i4235"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4229")))
(hygiene guile)))
(vector
'(#(syntax-object
macro-type
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4232" "i4233" "i4234" "i4235"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4229")))
(hygiene guile))
.
#(syntax-object
syntax-rules
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4232" "i4233" "i4234" "i4235"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4229")))
(hygiene guile)))
(cons '#(syntax-object
patterns
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4232" "i4233" "i4234" "i4235"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4229")))
(hygiene guile))
#{pattern\ 4238}#))
(cons '#(syntax-object
syntax-case
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4232" "i4233" "i4234" "i4235"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4229")))
(hygiene guile))
(cons '#(syntax-object
x
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4232" "i4233" "i4234" "i4235"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4229")))
(hygiene guile))
(cons #{k\ 4236}#
(map (lambda (#{tmp\ 4243}#
#{tmp\ 4242}#)
(list (cons '#(syntax-object
dummy
((top)
#(ribcage
#(k
keyword
pattern
template)
#((top)
(top)
(top)
(top))
#("i4232"
"i4233"
"i4234"
"i4235"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4229")))
(hygiene guile))
#{tmp\ 4242}#)
(list '#(syntax-object
syntax
((top)
#(ribcage
#(k
keyword
pattern
template)
#((top)
(top)
(top)
(top))
#("i4232"
"i4233"
"i4234"
"i4235"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4229")))
(hygiene guile))
#{tmp\ 4243}#)))
#{template\ 4239}#
#{pattern\ 4238}#))))))
#{tmp\ 4231}#)
(let ((#{tmp\ 4244}#
($sc-dispatch
#{tmp\ 4230}#
'(_ each-any any . #(each ((any . any) any))))))
(if (if #{tmp\ 4244}#
(@apply
(lambda (#{k\ 4250}#
#{docstring\ 4251}#
#{keyword\ 4252}#
#{pattern\ 4253}#
#{template\ 4254}#)
(string? (syntax->datum #{docstring\ 4251}#)))
#{tmp\ 4244}#)
#f)
(@apply
(lambda (#{k\ 4260}#
#{docstring\ 4261}#
#{keyword\ 4262}#
#{pattern\ 4263}#
#{template\ 4264}#)
(list '#(syntax-object
lambda
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4255" "i4256" "i4257" "i4258" "i4259"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4229")))
(hygiene guile))
'(#(syntax-object
x
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4255" "i4256" "i4257" "i4258" "i4259"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4229")))
(hygiene guile)))
#{docstring\ 4261}#
(vector
'(#(syntax-object
macro-type
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4255" "i4256" "i4257" "i4258" "i4259"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4229")))
(hygiene guile))
.
#(syntax-object
syntax-rules
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4255" "i4256" "i4257" "i4258" "i4259"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4229")))
(hygiene guile)))
(cons '#(syntax-object
patterns
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4255"
"i4256"
"i4257"
"i4258"
"i4259"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4229")))
(hygiene guile))
#{pattern\ 4263}#))
(cons '#(syntax-object
syntax-case
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4255"
"i4256"
"i4257"
"i4258"
"i4259"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4229")))
(hygiene guile))
(cons '#(syntax-object
x
((top)
#(ribcage
#(k
docstring
keyword
pattern
template)
#((top) (top) (top) (top) (top))
#("i4255"
"i4256"
"i4257"
"i4258"
"i4259"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4229")))
(hygiene guile))
(cons #{k\ 4260}#
(map (lambda (#{tmp\ 4268}#
#{tmp\ 4267}#)
(list (cons '#(syntax-object
dummy
((top)
#(ribcage
#(k
docstring
keyword
pattern
template)
#((top)
(top)
(top)
(top)
(top))
#("i4255"
"i4256"
"i4257"
"i4258"
"i4259"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4229")))
(hygiene
guile))
#{tmp\ 4267}#)
(list '#(syntax-object
syntax
((top)
#(ribcage
#(k
docstring
keyword
pattern
template)
#((top)
(top)
(top)
(top)
(top))
#("i4255"
"i4256"
"i4257"
"i4258"
"i4259"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4229")))
(hygiene
guile))
#{tmp\ 4268}#)))
#{template\ 4264}#
#{pattern\ 4263}#))))))
#{tmp\ 4244}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4230}#)))))))))
(define let*
(make-syntax-transformer
'let*
'macro
(lambda (#{x\ 4269}#)
(let ((#{tmp\ 4271}# #{x\ 4269}#))
(let ((#{tmp\ 4272}#
($sc-dispatch
#{tmp\ 4271}#
'(any #(each (any any)) any . each-any))))
(if (if #{tmp\ 4272}#
(@apply
(lambda (#{let*\ 4278}#
#{x\ 4279}#
#{v\ 4280}#
#{e1\ 4281}#
#{e2\ 4282}#)
(and-map identifier? #{x\ 4279}#))
#{tmp\ 4272}#)
#f)
(@apply
(lambda (#{let*\ 4289}#
#{x\ 4290}#
#{v\ 4291}#
#{e1\ 4292}#
#{e2\ 4293}#)
(letrec*
((#{f\ 4296}#
(lambda (#{bindings\ 4297}#)
(if (null? #{bindings\ 4297}#)
(cons '#(syntax-object
let
((top)
#(ribcage () () ())
#(ribcage
#(f bindings)
#((top) (top))
#("i4294" "i4295"))
#(ribcage
#(let* x v e1 e2)
#((top) (top) (top) (top) (top))
#("i4284"
"i4285"
"i4286"
"i4287"
"i4288"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4270")))
(hygiene guile))
(cons '()
(cons #{e1\ 4292}# #{e2\ 4293}#)))
(let ((#{tmp\ 4302}#
(list (#{f\ 4296}# (cdr #{bindings\ 4297}#))
(car #{bindings\ 4297}#))))
(let ((#{tmp\ 4303}#
($sc-dispatch
#{tmp\ 4302}#
'(any any))))
(if #{tmp\ 4303}#
(@apply
(lambda (#{body\ 4306}# #{binding\ 4307}#)
(list '#(syntax-object
let
((top)
#(ribcage
#(body binding)
#((top) (top))
#("i4304" "i4305"))
#(ribcage () () ())
#(ribcage
#(f bindings)
#((top) (top))
#("i4294" "i4295"))
#(ribcage
#(let* x v e1 e2)
#((top) (top) (top) (top) (top))
#("i4284"
"i4285"
"i4286"
"i4287"
"i4288"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4270")))
(hygiene guile))
(list #{binding\ 4307}#)
#{body\ 4306}#))
#{tmp\ 4303}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4302}#))))))))
(begin
(#{f\ 4296}# (map list #{x\ 4290}# #{v\ 4291}#)))))
#{tmp\ 4272}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4271}#)))))))
(define do
(make-syntax-transformer
'do
'macro
(lambda (#{orig-x\ 4308}#)
(let ((#{tmp\ 4310}# #{orig-x\ 4308}#))
(let ((#{tmp\ 4311}#
($sc-dispatch
#{tmp\ 4310}#
'(_ #(each (any any . any))
(any . each-any)
.
each-any))))
(if #{tmp\ 4311}#
(@apply
(lambda (#{var\ 4318}#
#{init\ 4319}#
#{step\ 4320}#
#{e0\ 4321}#
#{e1\ 4322}#
#{c\ 4323}#)
(let ((#{tmp\ 4325}#
(map (lambda (#{v\ 4346}# #{s\ 4347}#)
(let ((#{tmp\ 4350}# #{s\ 4347}#))
(let ((#{tmp\ 4351}#
($sc-dispatch
#{tmp\ 4350}#
'())))
(if #{tmp\ 4351}#
(@apply
(lambda () #{v\ 4346}#)
#{tmp\ 4351}#)
(let ((#{tmp\ 4352}#
($sc-dispatch
#{tmp\ 4350}#
'(any))))
(if #{tmp\ 4352}#
(@apply
(lambda (#{e\ 4354}#) #{e\ 4354}#)
#{tmp\ 4352}#)
(let ((#{_\ 4356}# #{tmp\ 4350}#))
(syntax-violation
'do
"bad step expression"
#{orig-x\ 4308}#
#{s\ 4347}#))))))))
#{var\ 4318}#
#{step\ 4320}#)))
(let ((#{tmp\ 4326}#
($sc-dispatch #{tmp\ 4325}# (quote each-any))))
(if #{tmp\ 4326}#
(@apply
(lambda (#{step\ 4328}#)
(let ((#{tmp\ 4329}# #{e1\ 4322}#))
(let ((#{tmp\ 4330}#
($sc-dispatch #{tmp\ 4329}# (quote ()))))
(if #{tmp\ 4330}#
(@apply
(lambda ()
(list '#(syntax-object
let
((top)
#(ribcage
#(step)
#((top))
#("i4327"))
#(ribcage
#(var init step e0 e1 c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4312"
"i4313"
"i4314"
"i4315"
"i4316"
"i4317"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4309")))
(hygiene guile))
'#(syntax-object
doloop
((top)
#(ribcage
#(step)
#((top))
#("i4327"))
#(ribcage
#(var init step e0 e1 c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4312"
"i4313"
"i4314"
"i4315"
"i4316"
"i4317"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4309")))
(hygiene guile))
(map list
#{var\ 4318}#
#{init\ 4319}#)
(list '#(syntax-object
if
((top)
#(ribcage
#(step)
#((top))
#("i4327"))
#(ribcage
#(var init step e0 e1 c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4312"
"i4313"
"i4314"
"i4315"
"i4316"
"i4317"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4309")))
(hygiene guile))
(list '#(syntax-object
not
((top)
#(ribcage
#(step)
#((top))
#("i4327"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4312"
"i4313"
"i4314"
"i4315"
"i4316"
"i4317"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4309")))
(hygiene guile))
#{e0\ 4321}#)
(cons '#(syntax-object
begin
((top)
#(ribcage
#(step)
#((top))
#("i4327"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4312"
"i4313"
"i4314"
"i4315"
"i4316"
"i4317"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4309")))
(hygiene guile))
(append
#{c\ 4323}#
(list (cons '#(syntax-object
doloop
((top)
#(ribcage
#(step)
#((top))
#("i4327"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4312"
"i4313"
"i4314"
"i4315"
"i4316"
"i4317"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4309")))
(hygiene
guile))
#{step\ 4328}#)))))))
#{tmp\ 4330}#)
(let ((#{tmp\ 4335}#
($sc-dispatch
#{tmp\ 4329}#
'(any . each-any))))
(if #{tmp\ 4335}#
(@apply
(lambda (#{e1\ 4338}# #{e2\ 4339}#)
(list '#(syntax-object
let
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4336" "i4337"))
#(ribcage
#(step)
#((top))
#("i4327"))
#(ribcage
#(var init step e0 e1 c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4312"
"i4313"
"i4314"
"i4315"
"i4316"
"i4317"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4309")))
(hygiene guile))
'#(syntax-object
doloop
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4336" "i4337"))
#(ribcage
#(step)
#((top))
#("i4327"))
#(ribcage
#(var init step e0 e1 c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4312"
"i4313"
"i4314"
"i4315"
"i4316"
"i4317"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4309")))
(hygiene guile))
(map list
#{var\ 4318}#
#{init\ 4319}#)
(list '#(syntax-object
if
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4336" "i4337"))
#(ribcage
#(step)
#((top))
#("i4327"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4312"
"i4313"
"i4314"
"i4315"
"i4316"
"i4317"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4309")))
(hygiene guile))
#{e0\ 4321}#
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4336"
"i4337"))
#(ribcage
#(step)
#((top))
#("i4327"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4312"
"i4313"
"i4314"
"i4315"
"i4316"
"i4317"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4309")))
(hygiene guile))
(cons #{e1\ 4338}#
#{e2\ 4339}#))
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4336"
"i4337"))
#(ribcage
#(step)
#((top))
#("i4327"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4312"
"i4313"
"i4314"
"i4315"
"i4316"
"i4317"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4309")))
(hygiene guile))
(append
#{c\ 4323}#
(list (cons '#(syntax-object
doloop
((top)
#(ribcage
#(e1
e2)
#((top)
(top))
#("i4336"
"i4337"))
#(ribcage
#(step)
#((top))
#("i4327"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4312"
"i4313"
"i4314"
"i4315"
"i4316"
"i4317"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4309")))
(hygiene
guile))
#{step\ 4328}#)))))))
#{tmp\ 4335}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4329}#)))))))
#{tmp\ 4326}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4325}#)))))
#{tmp\ 4311}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4310}#)))))))
(define quasiquote
(make-syntax-transformer
'quasiquote
'macro
(letrec*
((#{quasicons\ 4363}#
(lambda (#{x\ 4367}# #{y\ 4368}#)
(let ((#{tmp\ 4372}# (list #{x\ 4367}# #{y\ 4368}#)))
(let ((#{tmp\ 4373}#
($sc-dispatch #{tmp\ 4372}# (quote (any any)))))
(if #{tmp\ 4373}#
(@apply
(lambda (#{x\ 4376}# #{y\ 4377}#)
(let ((#{tmp\ 4378}# #{y\ 4377}#))
(let ((#{tmp\ 4379}#
($sc-dispatch
#{tmp\ 4378}#
'(#(free-id
#(syntax-object
quote
((top)
#(ribcage
#(x y)
#((top) (top))
#("i4374" "i4375"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4369" "i4370"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4359" "i4360" "i4361" "i4362")))
(hygiene guile)))
any))))
(if #{tmp\ 4379}#
(@apply
(lambda (#{dy\ 4381}#)
(let ((#{tmp\ 4382}# #{x\ 4376}#))
(let ((#{tmp\ 4383}#
($sc-dispatch
#{tmp\ 4382}#
'(#(free-id
#(syntax-object
quote
((top)
#(ribcage
#(dy)
#((top))
#("i4380"))
#(ribcage
#(x y)
#((top) (top))
#("i4374" "i4375"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4369" "i4370"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4359"
"i4360"
"i4361"
"i4362")))
(hygiene guile)))
any))))
(if #{tmp\ 4383}#
(@apply
(lambda (#{dx\ 4385}#)
(list '#(syntax-object
quote
((top)
#(ribcage
#(dx)
#((top))
#("i4384"))
#(ribcage
#(dy)
#((top))
#("i4380"))
#(ribcage
#(x y)
#((top) (top))
#("i4374" "i4375"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4369" "i4370"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4359"
"i4360"
"i4361"
"i4362")))
(hygiene guile))
(cons #{dx\ 4385}#
#{dy\ 4381}#)))
#{tmp\ 4383}#)
(let ((#{_\ 4387}# #{tmp\ 4382}#))
(if (null? #{dy\ 4381}#)
(list '#(syntax-object
list
((top)
#(ribcage
#(_)
#((top))
#("i4386"))
#(ribcage
#(dy)
#((top))
#("i4380"))
#(ribcage
#(x y)
#((top) (top))
#("i4374" "i4375"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4369" "i4370"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4359"
"i4360"
"i4361"
"i4362")))
(hygiene guile))
#{x\ 4376}#)
(list '#(syntax-object
cons
((top)
#(ribcage
#(_)
#((top))
#("i4386"))
#(ribcage
#(dy)
#((top))
#("i4380"))
#(ribcage
#(x y)
#((top) (top))
#("i4374" "i4375"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4369" "i4370"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4359"
"i4360"
"i4361"
"i4362")))
(hygiene guile))
#{x\ 4376}#
#{y\ 4377}#)))))))
#{tmp\ 4379}#)
(let ((#{tmp\ 4388}#
($sc-dispatch
#{tmp\ 4378}#
'(#(free-id
#(syntax-object
list
((top)
#(ribcage
#(x y)
#((top) (top))
#("i4374" "i4375"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4369" "i4370"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4359"
"i4360"
"i4361"
"i4362")))
(hygiene guile)))
.
any))))
(if #{tmp\ 4388}#
(@apply
(lambda (#{stuff\ 4390}#)
(cons '#(syntax-object
list
((top)
#(ribcage
#(stuff)
#((top))
#("i4389"))
#(ribcage
#(x y)
#((top) (top))
#("i4374" "i4375"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4369" "i4370"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4359"
"i4360"
"i4361"
"i4362")))
(hygiene guile))
(cons #{x\ 4376}# #{stuff\ 4390}#)))
#{tmp\ 4388}#)
(let ((#{else\ 4392}# #{tmp\ 4378}#))
(list '#(syntax-object
cons
((top)
#(ribcage
#(else)
#((top))
#("i4391"))
#(ribcage
#(x y)
#((top) (top))
#("i4374" "i4375"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4369" "i4370"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4359"
"i4360"
"i4361"
"i4362")))
(hygiene guile))
#{x\ 4376}#
#{y\ 4377}#))))))))
#{tmp\ 4373}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4372}#))))))
(#{quasiappend\ 4364}#
(lambda (#{x\ 4393}# #{y\ 4394}#)
(let ((#{tmp\ 4398}# (list #{x\ 4393}# #{y\ 4394}#)))
(let ((#{tmp\ 4399}#
($sc-dispatch #{tmp\ 4398}# (quote (any any)))))
(if #{tmp\ 4399}#
(@apply
(lambda (#{x\ 4402}# #{y\ 4403}#)
(let ((#{tmp\ 4404}# #{y\ 4403}#))
(let ((#{tmp\ 4405}#
($sc-dispatch
#{tmp\ 4404}#
'(#(free-id
#(syntax-object
quote
((top)
#(ribcage
#(x y)
#((top) (top))
#("i4400" "i4401"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4395" "i4396"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4359" "i4360" "i4361" "i4362")))
(hygiene guile)))
()))))
(if #{tmp\ 4405}#
(@apply (lambda () #{x\ 4402}#) #{tmp\ 4405}#)
(let ((#{_\ 4407}# #{tmp\ 4404}#))
(list '#(syntax-object
append
((top)
#(ribcage #(_) #((top)) #("i4406"))
#(ribcage
#(x y)
#((top) (top))
#("i4400" "i4401"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4395" "i4396"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4359" "i4360" "i4361" "i4362")))
(hygiene guile))
#{x\ 4402}#
#{y\ 4403}#))))))
#{tmp\ 4399}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4398}#))))))
(#{quasivector\ 4365}#
(lambda (#{x\ 4408}#)
(let ((#{tmp\ 4411}# #{x\ 4408}#))
(let ((#{x\ 4413}# #{tmp\ 4411}#))
(let ((#{tmp\ 4414}# #{x\ 4413}#))
(let ((#{tmp\ 4415}#
($sc-dispatch
#{tmp\ 4414}#
'(#(free-id
#(syntax-object
quote
((top)
#(ribcage #(x) #((top)) #("i4412"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4409"))
#(ribcage
#(quasicons quasiappend quasivector quasi)
#((top) (top) (top) (top))
#("i4359" "i4360" "i4361" "i4362")))
(hygiene guile)))
each-any))))
(if #{tmp\ 4415}#
(@apply
(lambda (#{x\ 4417}#)
(list '#(syntax-object
quote
((top)
#(ribcage #(x) #((top)) #("i4416"))
#(ribcage #(x) #((top)) #("i4412"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4409"))
#(ribcage
#(quasicons quasiappend quasivector quasi)
#((top) (top) (top) (top))
#("i4359" "i4360" "i4361" "i4362")))
(hygiene guile))
(list->vector #{x\ 4417}#)))
#{tmp\ 4415}#)
(let ((#{tmp\ 4419}#
($sc-dispatch
#{tmp\ 4414}#
'(#(free-id
#(syntax-object
list
((top)
#(ribcage #(x) #((top)) #("i4412"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4409"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4359" "i4360" "i4361" "i4362")))
(hygiene guile)))
.
each-any))))
(if #{tmp\ 4419}#
(@apply
(lambda (#{x\ 4421}#)
(cons '#(syntax-object
vector
((top)
#(ribcage #(x) #((top)) #("i4420"))
#(ribcage #(x) #((top)) #("i4412"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4409"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4359" "i4360" "i4361" "i4362")))
(hygiene guile))
#{x\ 4421}#))
#{tmp\ 4419}#)
(let ((#{_\ 4424}# #{tmp\ 4414}#))
(list '#(syntax-object
list->vector
((top)
#(ribcage #(_) #((top)) #("i4423"))
#(ribcage #(x) #((top)) #("i4412"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4409"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4359" "i4360" "i4361" "i4362")))
(hygiene guile))
#{x\ 4413}#)))))))))))
(#{quasi\ 4366}#
(lambda (#{p\ 4425}# #{lev\ 4426}#)
(let ((#{tmp\ 4429}# #{p\ 4425}#))
(let ((#{tmp\ 4430}#
($sc-dispatch
#{tmp\ 4429}#
'(#(free-id
#(syntax-object
unquote
((top)
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4427" "i4428"))
#(ribcage
#(quasicons quasiappend quasivector quasi)
#((top) (top) (top) (top))
#("i4359" "i4360" "i4361" "i4362")))
(hygiene guile)))
any))))
(if #{tmp\ 4430}#
(@apply
(lambda (#{p\ 4432}#)
(if (= #{lev\ 4426}# 0)
#{p\ 4432}#
(#{quasicons\ 4363}#
'(#(syntax-object
quote
((top)
#(ribcage #(p) #((top)) #("i4431"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4427" "i4428"))
#(ribcage
#(quasicons quasiappend quasivector quasi)
#((top) (top) (top) (top))
#("i4359" "i4360" "i4361" "i4362")))
(hygiene guile))
#(syntax-object
unquote
((top)
#(ribcage #(p) #((top)) #("i4431"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4427" "i4428"))
#(ribcage
#(quasicons quasiappend quasivector quasi)
#((top) (top) (top) (top))
#("i4359" "i4360" "i4361" "i4362")))
(hygiene guile)))
(#{quasi\ 4366}#
(list #{p\ 4432}#)
(1- #{lev\ 4426}#)))))
#{tmp\ 4430}#)
(let ((#{tmp\ 4433}#
($sc-dispatch
#{tmp\ 4429}#
'(#(free-id
#(syntax-object
unquote
((top)
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4427" "i4428"))
#(ribcage
#(quasicons quasiappend quasivector quasi)
#((top) (top) (top) (top))
#("i4359" "i4360" "i4361" "i4362")))
(hygiene guile)))
.
any))))
(if (if #{tmp\ 4433}#
(@apply
(lambda (#{args\ 4435}#) (= #{lev\ 4426}# 0))
#{tmp\ 4433}#)
#f)
(@apply
(lambda (#{args\ 4437}#)
(syntax-violation
'unquote
"unquote takes exactly one argument"
#{p\ 4425}#
(cons '#(syntax-object
unquote
((top)
#(ribcage #(args) #((top)) #("i4436"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4427" "i4428"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4359" "i4360" "i4361" "i4362")))
(hygiene guile))
#{args\ 4437}#)))
#{tmp\ 4433}#)
(let ((#{tmp\ 4438}#
($sc-dispatch
#{tmp\ 4429}#
'((#(free-id
#(syntax-object
unquote-splicing
((top)
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4427" "i4428"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4359" "i4360" "i4361" "i4362")))
(hygiene guile)))
any)
.
any))))
(if #{tmp\ 4438}#
(@apply
(lambda (#{p\ 4441}# #{q\ 4442}#)
(if (= #{lev\ 4426}# 0)
(#{quasiappend\ 4364}#
#{p\ 4441}#
(#{quasi\ 4366}# #{q\ 4442}# #{lev\ 4426}#))
(#{quasicons\ 4363}#
(#{quasicons\ 4363}#
'(#(syntax-object
quote
((top)
#(ribcage
#(p q)
#((top) (top))
#("i4439" "i4440"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4427" "i4428"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4359" "i4360" "i4361" "i4362")))
(hygiene guile))
#(syntax-object
unquote-splicing
((top)
#(ribcage
#(p q)
#((top) (top))
#("i4439" "i4440"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4427" "i4428"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4359" "i4360" "i4361" "i4362")))
(hygiene guile)))
(#{quasi\ 4366}#
(list #{p\ 4441}#)
(1- #{lev\ 4426}#)))
(#{quasi\ 4366}# #{q\ 4442}# #{lev\ 4426}#))))
#{tmp\ 4438}#)
(let ((#{tmp\ 4443}#
($sc-dispatch
#{tmp\ 4429}#
'((#(free-id
#(syntax-object
unquote-splicing
((top)
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4427" "i4428"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4359"
"i4360"
"i4361"
"i4362")))
(hygiene guile)))
.
any)
.
any))))
(if (if #{tmp\ 4443}#
(@apply
(lambda (#{args\ 4446}# #{q\ 4447}#)
(= #{lev\ 4426}# 0))
#{tmp\ 4443}#)
#f)
(@apply
(lambda (#{args\ 4450}# #{q\ 4451}#)
(syntax-violation
'unquote-splicing
"unquote-splicing takes exactly one argument"
#{p\ 4425}#
(cons '#(syntax-object
unquote-splicing
((top)
#(ribcage
#(args q)
#((top) (top))
#("i4448" "i4449"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4427" "i4428"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4359"
"i4360"
"i4361"
"i4362")))
(hygiene guile))
#{args\ 4450}#)))
#{tmp\ 4443}#)
(let ((#{tmp\ 4452}#
($sc-dispatch
#{tmp\ 4429}#
'(#(free-id
#(syntax-object
quasiquote
((top)
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4427" "i4428"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4359"
"i4360"
"i4361"
"i4362")))
(hygiene guile)))
any))))
(if #{tmp\ 4452}#
(@apply
(lambda (#{p\ 4454}#)
(#{quasicons\ 4363}#
'(#(syntax-object
quote
((top)
#(ribcage #(p) #((top)) #("i4453"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4427" "i4428"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4359"
"i4360"
"i4361"
"i4362")))
(hygiene guile))
#(syntax-object
quasiquote
((top)
#(ribcage #(p) #((top)) #("i4453"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4427" "i4428"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i4359"
"i4360"
"i4361"
"i4362")))
(hygiene guile)))
(#{quasi\ 4366}#
(list #{p\ 4454}#)
(1+ #{lev\ 4426}#))))
#{tmp\ 4452}#)
(let ((#{tmp\ 4455}#
($sc-dispatch
#{tmp\ 4429}#
'(any . any))))
(if #{tmp\ 4455}#
(@apply
(lambda (#{p\ 4458}# #{q\ 4459}#)
(#{quasicons\ 4363}#
(#{quasi\ 4366}#
#{p\ 4458}#
#{lev\ 4426}#)
(#{quasi\ 4366}#
#{q\ 4459}#
#{lev\ 4426}#)))
#{tmp\ 4455}#)
(let ((#{tmp\ 4460}#
($sc-dispatch
#{tmp\ 4429}#
'#(vector each-any))))
(if #{tmp\ 4460}#
(@apply
(lambda (#{x\ 4462}#)
(#{quasivector\ 4365}#
(#{quasi\ 4366}#
#{x\ 4462}#
#{lev\ 4426}#)))
#{tmp\ 4460}#)
(let ((#{p\ 4465}# #{tmp\ 4429}#))
(list '#(syntax-object
quote
((top)
#(ribcage
#(p)
#((top))
#("i4464"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4427" "i4428"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top)
(top)
(top)
(top))
#("i4359"
"i4360"
"i4361"
"i4362")))
(hygiene guile))
#{p\ 4465}#))))))))))))))))))))
(begin
(lambda (#{x\ 4466}#)
(let ((#{tmp\ 4468}# #{x\ 4466}#))
(let ((#{tmp\ 4469}#
($sc-dispatch #{tmp\ 4468}# (quote (_ any)))))
(if #{tmp\ 4469}#
(@apply
(lambda (#{e\ 4471}#)
(#{quasi\ 4366}# #{e\ 4471}# 0))
#{tmp\ 4469}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4468}#)))))))))
(define include
(make-syntax-transformer
'include
'macro
(lambda (#{x\ 4472}#)
(letrec*
((#{read-file\ 4475}#
(lambda (#{fn\ 4476}# #{k\ 4477}#)
(begin
(let ((#{p\ 4481}# (open-input-file #{fn\ 4476}#)))
(letrec*
((#{f\ 4485}#
(lambda (#{x\ 4486}# #{result\ 4487}#)
(if (eof-object? #{x\ 4486}#)
(begin
(close-input-port #{p\ 4481}#)
(reverse #{result\ 4487}#))
(#{f\ 4485}#
(read #{p\ 4481}#)
(cons (datum->syntax #{k\ 4477}# #{x\ 4486}#)
#{result\ 4487}#))))))
(begin
(#{f\ 4485}# (read #{p\ 4481}#) (quote ())))))))))
(begin
(let ((#{tmp\ 4488}# #{x\ 4472}#))
(let ((#{tmp\ 4489}#
($sc-dispatch #{tmp\ 4488}# (quote (any any)))))
(if #{tmp\ 4489}#
(@apply
(lambda (#{k\ 4492}# #{filename\ 4493}#)
(begin
(let ((#{fn\ 4495}# (syntax->datum #{filename\ 4493}#)))
(let ((#{tmp\ 4497}#
(#{read-file\ 4475}#
#{fn\ 4495}#
#{filename\ 4493}#)))
(let ((#{tmp\ 4498}#
($sc-dispatch
#{tmp\ 4497}#
'each-any)))
(if #{tmp\ 4498}#
(@apply
(lambda (#{exp\ 4500}#)
(cons '#(syntax-object
begin
((top)
#(ribcage
#(exp)
#((top))
#("i4499"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(fn)
#((top))
#("i4494"))
#(ribcage
#(k filename)
#((top) (top))
#("i4490" "i4491"))
#(ribcage
(read-file)
((top))
("i4474"))
#(ribcage
#(x)
#((top))
#("i4473")))
(hygiene guile))
#{exp\ 4500}#))
#{tmp\ 4498}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4497}#)))))))
#{tmp\ 4489}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4488}#)))))))))
(define include-from-path
(make-syntax-transformer
'include-from-path
'macro
(lambda (#{x\ 4502}#)
(let ((#{tmp\ 4504}# #{x\ 4502}#))
(let ((#{tmp\ 4505}#
($sc-dispatch #{tmp\ 4504}# (quote (any any)))))
(if #{tmp\ 4505}#
(@apply
(lambda (#{k\ 4508}# #{filename\ 4509}#)
(begin
(let ((#{fn\ 4511}# (syntax->datum #{filename\ 4509}#)))
(let ((#{tmp\ 4513}#
(datum->syntax
#{filename\ 4509}#
(begin
(let ((#{t\ 4518}#
(%search-load-path #{fn\ 4511}#)))
(if #{t\ 4518}#
#{t\ 4518}#
(syntax-violation
'include-from-path
"file not found in path"
#{x\ 4502}#
#{filename\ 4509}#)))))))
(let ((#{fn\ 4515}# #{tmp\ 4513}#))
(list '#(syntax-object
include
((top)
#(ribcage #(fn) #((top)) #("i4514"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(fn) #((top)) #("i4510"))
#(ribcage
#(k filename)
#((top) (top))
#("i4506" "i4507"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4503")))
(hygiene guile))
#{fn\ 4515}#))))))
#{tmp\ 4505}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4504}#)))))))
(define unquote
(make-syntax-transformer
'unquote
'macro
(lambda (#{x\ 4520}#)
(let ((#{tmp\ 4522}# #{x\ 4520}#))
(let ((#{tmp\ 4523}#
($sc-dispatch #{tmp\ 4522}# (quote (_ any)))))
(if #{tmp\ 4523}#
(@apply
(lambda (#{e\ 4525}#)
(syntax-violation
'unquote
"expression not valid outside of quasiquote"
#{x\ 4520}#))
#{tmp\ 4523}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4522}#)))))))
(define unquote-splicing
(make-syntax-transformer
'unquote-splicing
'macro
(lambda (#{x\ 4526}#)
(let ((#{tmp\ 4528}# #{x\ 4526}#))
(let ((#{tmp\ 4529}#
($sc-dispatch #{tmp\ 4528}# (quote (_ any)))))
(if #{tmp\ 4529}#
(@apply
(lambda (#{e\ 4531}#)
(syntax-violation
'unquote-splicing
"expression not valid outside of quasiquote"
#{x\ 4526}#))
#{tmp\ 4529}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4528}#)))))))
(define case
(make-syntax-transformer
'case
'macro
(lambda (#{x\ 4532}#)
(let ((#{tmp\ 4534}# #{x\ 4532}#))
(let ((#{tmp\ 4535}#
($sc-dispatch
#{tmp\ 4534}#
'(_ any any . each-any))))
(if #{tmp\ 4535}#
(@apply
(lambda (#{e\ 4539}# #{m1\ 4540}# #{m2\ 4541}#)
(let ((#{tmp\ 4543}#
(letrec*
((#{f\ 4549}#
(lambda (#{clause\ 4550}# #{clauses\ 4551}#)
(if (null? #{clauses\ 4551}#)
(let ((#{tmp\ 4553}# #{clause\ 4550}#))
(let ((#{tmp\ 4554}#
($sc-dispatch
#{tmp\ 4553}#
'(#(free-id
#(syntax-object
else
((top)
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
#("i4546"
"i4547"
"i4548"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
#("i4536"
"i4537"
"i4538"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4533")))
(hygiene guile)))
any
.
each-any))))
(if #{tmp\ 4554}#
(@apply
(lambda (#{e1\ 4557}# #{e2\ 4558}#)
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4555" "i4556"))
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
#("i4546"
"i4547"
"i4548"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
#("i4536"
"i4537"
"i4538"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4533")))
(hygiene guile))
(cons #{e1\ 4557}#
#{e2\ 4558}#)))
#{tmp\ 4554}#)
(let ((#{tmp\ 4560}#
($sc-dispatch
#{tmp\ 4553}#
'(each-any any . each-any))))
(if #{tmp\ 4560}#
(@apply
(lambda (#{k\ 4564}#
#{e1\ 4565}#
#{e2\ 4566}#)
(list '#(syntax-object
if
((top)
#(ribcage
#(k e1 e2)
#((top) (top) (top))
#("i4561"
"i4562"
"i4563"))
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
#("i4546"
"i4547"
"i4548"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
#("i4536"
"i4537"
"i4538"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4533")))
(hygiene guile))
(list '#(syntax-object
memv
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i4561"
"i4562"
"i4563"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4546"
"i4547"
"i4548"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
#("i4536"
"i4537"
"i4538"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4533")))
(hygiene guile))
'#(syntax-object
t
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i4561"
"i4562"
"i4563"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4546"
"i4547"
"i4548"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
#("i4536"
"i4537"
"i4538"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4533")))
(hygiene guile))
(list '#(syntax-object
quote
((top)
#(ribcage
#(k
e1
e2)
#((top)
(top)
(top))
#("i4561"
"i4562"
"i4563"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4546"
"i4547"
"i4548"))
#(ribcage
#(e
m1
m2)
#((top)
(top)
(top))
#("i4536"
"i4537"
"i4538"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4533")))
(hygiene
guile))
#{k\ 4564}#))
(cons '#(syntax-object
begin
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i4561"
"i4562"
"i4563"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4546"
"i4547"
"i4548"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
#("i4536"
"i4537"
"i4538"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4533")))
(hygiene guile))
(cons #{e1\ 4565}#
#{e2\ 4566}#))))
#{tmp\ 4560}#)
(let ((#{_\ 4570}# #{tmp\ 4553}#))
(syntax-violation
'case
"bad clause"
#{x\ 4532}#
#{clause\ 4550}#)))))))
(let ((#{tmp\ 4572}#
(#{f\ 4549}#
(car #{clauses\ 4551}#)
(cdr #{clauses\ 4551}#))))
(let ((#{rest\ 4574}# #{tmp\ 4572}#))
(let ((#{tmp\ 4575}# #{clause\ 4550}#))
(let ((#{tmp\ 4576}#
($sc-dispatch
#{tmp\ 4575}#
'(each-any any . each-any))))
(if #{tmp\ 4576}#
(@apply
(lambda (#{k\ 4580}#
#{e1\ 4581}#
#{e2\ 4582}#)
(list '#(syntax-object
if
((top)
#(ribcage
#(k e1 e2)
#((top) (top) (top))
#("i4577"
"i4578"
"i4579"))
#(ribcage
#(rest)
#((top))
#("i4573"))
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
#("i4546"
"i4547"
"i4548"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
#("i4536"
"i4537"
"i4538"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4533")))
(hygiene guile))
(list '#(syntax-object
memv
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i4577"
"i4578"
"i4579"))
#(ribcage
#(rest)
#((top))
#("i4573"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4546"
"i4547"
"i4548"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
#("i4536"
"i4537"
"i4538"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4533")))
(hygiene guile))
'#(syntax-object
t
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i4577"
"i4578"
"i4579"))
#(ribcage
#(rest)
#((top))
#("i4573"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4546"
"i4547"
"i4548"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
#("i4536"
"i4537"
"i4538"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4533")))
(hygiene guile))
(list '#(syntax-object
quote
((top)
#(ribcage
#(k
e1
e2)
#((top)
(top)
(top))
#("i4577"
"i4578"
"i4579"))
#(ribcage
#(rest)
#((top))
#("i4573"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4546"
"i4547"
"i4548"))
#(ribcage
#(e
m1
m2)
#((top)
(top)
(top))
#("i4536"
"i4537"
"i4538"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4533")))
(hygiene
guile))
#{k\ 4580}#))
(cons '#(syntax-object
begin
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i4577"
"i4578"
"i4579"))
#(ribcage
#(rest)
#((top))
#("i4573"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4546"
"i4547"
"i4548"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
#("i4536"
"i4537"
"i4538"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4533")))
(hygiene guile))
(cons #{e1\ 4581}#
#{e2\ 4582}#))
#{rest\ 4574}#))
#{tmp\ 4576}#)
(let ((#{_\ 4586}# #{tmp\ 4575}#))
(syntax-violation
'case
"bad clause"
#{x\ 4532}#
#{clause\ 4550}#)))))))))))
(begin (#{f\ 4549}# #{m1\ 4540}# #{m2\ 4541}#)))))
(let ((#{body\ 4545}# #{tmp\ 4543}#))
(list '#(syntax-object
let
((top)
#(ribcage #(body) #((top)) #("i4544"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
#("i4536" "i4537" "i4538"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4533")))
(hygiene guile))
(list (list '#(syntax-object
t
((top)
#(ribcage
#(body)
#((top))
#("i4544"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
#("i4536" "i4537" "i4538"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4533")))
(hygiene guile))
#{e\ 4539}#))
#{body\ 4545}#))))
#{tmp\ 4535}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4534}#)))))))
(define make-variable-transformer
(lambda (#{proc\ 4587}#)
(if (procedure? #{proc\ 4587}#)
(begin
(letrec*
((#{trans\ 4590}#
(lambda (#{x\ 4591}#)
(#{proc\ 4587}# #{x\ 4591}#))))
(begin
(set-procedure-property!
#{trans\ 4590}#
'variable-transformer
#t)
#{trans\ 4590}#)))
(error "variable transformer not a procedure"
#{proc\ 4587}#))))
(define identifier-syntax
(make-syntax-transformer
'identifier-syntax
'macro
(lambda (#{x\ 4593}#)
(let ((#{tmp\ 4595}# #{x\ 4593}#))
(let ((#{tmp\ 4596}#
($sc-dispatch #{tmp\ 4595}# (quote (_ any)))))
(if #{tmp\ 4596}#
(@apply
(lambda (#{e\ 4598}#)
(list '#(syntax-object
lambda
((top)
#(ribcage #(e) #((top)) #("i4597"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4594")))
(hygiene guile))
'(#(syntax-object
x
((top)
#(ribcage #(e) #((top)) #("i4597"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4594")))
(hygiene guile)))
'#((#(syntax-object
macro-type
((top)
#(ribcage #(e) #((top)) #("i4597"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4594")))
(hygiene guile))
.
#(syntax-object
identifier-syntax
((top)
#(ribcage #(e) #((top)) #("i4597"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4594")))
(hygiene guile))))
(list '#(syntax-object
syntax-case
((top)
#(ribcage #(e) #((top)) #("i4597"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4594")))
(hygiene guile))
'#(syntax-object
x
((top)
#(ribcage #(e) #((top)) #("i4597"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4594")))
(hygiene guile))
'()
(list '#(syntax-object
id
((top)
#(ribcage #(e) #((top)) #("i4597"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4594")))
(hygiene guile))
'(#(syntax-object
identifier?
((top)
#(ribcage #(e) #((top)) #("i4597"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4594")))
(hygiene guile))
(#(syntax-object
syntax
((top)
#(ribcage #(e) #((top)) #("i4597"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4594")))
(hygiene guile))
#(syntax-object
id
((top)
#(ribcage #(e) #((top)) #("i4597"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4594")))
(hygiene guile))))
(list '#(syntax-object
syntax
((top)
#(ribcage #(e) #((top)) #("i4597"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4594")))
(hygiene guile))
#{e\ 4598}#))
(list '(#(syntax-object
_
((top)
#(ribcage #(e) #((top)) #("i4597"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4594")))
(hygiene guile))
#(syntax-object
x
((top)
#(ribcage #(e) #((top)) #("i4597"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4594")))
(hygiene guile))
#(syntax-object
...
((top)
#(ribcage #(e) #((top)) #("i4597"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4594")))
(hygiene guile)))
(list '#(syntax-object
syntax
((top)
#(ribcage #(e) #((top)) #("i4597"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4594")))
(hygiene guile))
(cons #{e\ 4598}#
'(#(syntax-object
x
((top)
#(ribcage
#(e)
#((top))
#("i4597"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4594")))
(hygiene guile))
#(syntax-object
...
((top)
#(ribcage
#(e)
#((top))
#("i4597"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4594")))
(hygiene guile)))))))))
#{tmp\ 4596}#)
(let ((#{tmp\ 4599}#
($sc-dispatch
#{tmp\ 4595}#
'(_ (any any)
((#(free-id
#(syntax-object
set!
((top)
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4594")))
(hygiene guile)))
any
any)
any)))))
(if (if #{tmp\ 4599}#
(@apply
(lambda (#{id\ 4605}#
#{exp1\ 4606}#
#{var\ 4607}#
#{val\ 4608}#
#{exp2\ 4609}#)
(if (identifier? #{id\ 4605}#)
(identifier? #{var\ 4607}#)
#f))
#{tmp\ 4599}#)
#f)
(@apply
(lambda (#{id\ 4617}#
#{exp1\ 4618}#
#{var\ 4619}#
#{val\ 4620}#
#{exp2\ 4621}#)
(list '#(syntax-object
make-variable-transformer
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4612" "i4613" "i4614" "i4615" "i4616"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4594")))
(hygiene guile))
(list '#(syntax-object
lambda
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4612"
"i4613"
"i4614"
"i4615"
"i4616"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4594")))
(hygiene guile))
'(#(syntax-object
x
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4612"
"i4613"
"i4614"
"i4615"
"i4616"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4594")))
(hygiene guile)))
'#((#(syntax-object
macro-type
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4612"
"i4613"
"i4614"
"i4615"
"i4616"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4594")))
(hygiene guile))
.
#(syntax-object
variable-transformer
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4612"
"i4613"
"i4614"
"i4615"
"i4616"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4594")))
(hygiene guile))))
(list '#(syntax-object
syntax-case
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4612"
"i4613"
"i4614"
"i4615"
"i4616"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4594")))
(hygiene guile))
'#(syntax-object
x
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4612"
"i4613"
"i4614"
"i4615"
"i4616"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4594")))
(hygiene guile))
'(#(syntax-object
set!
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4612"
"i4613"
"i4614"
"i4615"
"i4616"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4594")))
(hygiene guile)))
(list (list '#(syntax-object
set!
((top)
#(ribcage
#(id exp1 var val exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4612"
"i4613"
"i4614"
"i4615"
"i4616"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4594")))
(hygiene guile))
#{var\ 4619}#
#{val\ 4620}#)
(list '#(syntax-object
syntax
((top)
#(ribcage
#(id exp1 var val exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4612"
"i4613"
"i4614"
"i4615"
"i4616"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4594")))
(hygiene guile))
#{exp2\ 4621}#))
(list (cons #{id\ 4617}#
'(#(syntax-object
x
((top)
#(ribcage
#(id
exp1
var
val
exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4612"
"i4613"
"i4614"
"i4615"
"i4616"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4594")))
(hygiene guile))
#(syntax-object
...
((top)
#(ribcage
#(id
exp1
var
val
exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4612"
"i4613"
"i4614"
"i4615"
"i4616"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4594")))
(hygiene guile))))
(list '#(syntax-object
syntax
((top)
#(ribcage
#(id exp1 var val exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4612"
"i4613"
"i4614"
"i4615"
"i4616"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4594")))
(hygiene guile))
(cons #{exp1\ 4618}#
'(#(syntax-object
x
((top)
#(ribcage
#(id
exp1
var
val
exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4612"
"i4613"
"i4614"
"i4615"
"i4616"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4594")))
(hygiene guile))
#(syntax-object
...
((top)
#(ribcage
#(id
exp1
var
val
exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4612"
"i4613"
"i4614"
"i4615"
"i4616"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4594")))
(hygiene
guile))))))
(list #{id\ 4617}#
(list '#(syntax-object
identifier?
((top)
#(ribcage
#(id exp1 var val exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4612"
"i4613"
"i4614"
"i4615"
"i4616"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4594")))
(hygiene guile))
(list '#(syntax-object
syntax
((top)
#(ribcage
#(id
exp1
var
val
exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4612"
"i4613"
"i4614"
"i4615"
"i4616"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4594")))
(hygiene guile))
#{id\ 4617}#))
(list '#(syntax-object
syntax
((top)
#(ribcage
#(id exp1 var val exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4612"
"i4613"
"i4614"
"i4615"
"i4616"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4594")))
(hygiene guile))
#{exp1\ 4618}#))))))
#{tmp\ 4599}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4595}#)))))))))
(define define*
(make-syntax-transformer
'define*
'macro
(lambda (#{x\ 4622}#)
(let ((#{tmp\ 4624}# #{x\ 4622}#))
(let ((#{tmp\ 4625}#
($sc-dispatch
#{tmp\ 4624}#
'(_ (any . any) any . each-any))))
(if #{tmp\ 4625}#
(@apply
(lambda (#{id\ 4630}#
#{args\ 4631}#
#{b0\ 4632}#
#{b1\ 4633}#)
(list '#(syntax-object
define
((top)
#(ribcage
#(id args b0 b1)
#((top) (top) (top) (top))
#("i4626" "i4627" "i4628" "i4629"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4623")))
(hygiene guile))
#{id\ 4630}#
(cons '#(syntax-object
lambda*
((top)
#(ribcage
#(id args b0 b1)
#((top) (top) (top) (top))
#("i4626" "i4627" "i4628" "i4629"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4623")))
(hygiene guile))
(cons #{args\ 4631}#
(cons #{b0\ 4632}# #{b1\ 4633}#)))))
#{tmp\ 4625}#)
(let ((#{tmp\ 4635}#
($sc-dispatch #{tmp\ 4624}# (quote (_ any any)))))
(if (if #{tmp\ 4635}#
(@apply
(lambda (#{id\ 4638}# #{val\ 4639}#)
(identifier?
'#(syntax-object
x
((top)
#(ribcage
#(id val)
#((top) (top))
#("i4636" "i4637"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4623")))
(hygiene guile))))
#{tmp\ 4635}#)
#f)
(@apply
(lambda (#{id\ 4642}# #{val\ 4643}#)
(list '#(syntax-object
define
((top)
#(ribcage
#(id val)
#((top) (top))
#("i4640" "i4641"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4623")))
(hygiene guile))
#{id\ 4642}#
#{val\ 4643}#))
#{tmp\ 4635}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp\ 4624}#)))))))))