1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-05 03:30:24 +02:00
guile/module/ice-9/psyntax-pp.scm
Stefan Israelsson Tampe 0ed9680fba psyntax: enable dotted tail patterns
* module/ice-9/psyntax.scm (syntax-case): enabled the use of a
  general last cdr instead of just '() in matching with both
  a ellipsis (p ...) and a last rest pattern (. q)

* module/ice-9/psyntax-pp.scm: Regenerated.
2011-06-21 22:41:08 +02:00

18674 lines
1,009 KiB
Scheme

(eval-when (compile) (set-current-module (resolve-module (quote (guile)))))
(if #f #f)
(letrec*
((#{make-void 203}#
(lambda (#{src 761}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 0)
#{src 761}#)))
(#{make-const 205}#
(lambda (#{src 763}# #{exp 764}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 1)
#{src 763}#
#{exp 764}#)))
(#{make-lexical-ref 209}#
(lambda (#{src 771}# #{name 772}# #{gensym 773}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 3)
#{src 771}#
#{name 772}#
#{gensym 773}#)))
(#{make-lexical-set 211}#
(lambda (#{src 777}#
#{name 778}#
#{gensym 779}#
#{exp 780}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 4)
#{src 777}#
#{name 778}#
#{gensym 779}#
#{exp 780}#)))
(#{make-module-ref 213}#
(lambda (#{src 785}#
#{mod 786}#
#{name 787}#
#{public? 788}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 5)
#{src 785}#
#{mod 786}#
#{name 787}#
#{public? 788}#)))
(#{make-module-set 215}#
(lambda (#{src 793}#
#{mod 794}#
#{name 795}#
#{public? 796}#
#{exp 797}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 6)
#{src 793}#
#{mod 794}#
#{name 795}#
#{public? 796}#
#{exp 797}#)))
(#{make-toplevel-ref 217}#
(lambda (#{src 803}# #{name 804}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 7)
#{src 803}#
#{name 804}#)))
(#{make-toplevel-set 219}#
(lambda (#{src 807}# #{name 808}# #{exp 809}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 8)
#{src 807}#
#{name 808}#
#{exp 809}#)))
(#{make-toplevel-define 221}#
(lambda (#{src 813}# #{name 814}# #{exp 815}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 9)
#{src 813}#
#{name 814}#
#{exp 815}#)))
(#{make-conditional 223}#
(lambda (#{src 819}#
#{test 820}#
#{consequent 821}#
#{alternate 822}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 10)
#{src 819}#
#{test 820}#
#{consequent 821}#
#{alternate 822}#)))
(#{make-application 225}#
(lambda (#{src 827}# #{proc 828}# #{args 829}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 11)
#{src 827}#
#{proc 828}#
#{args 829}#)))
(#{make-sequence 227}#
(lambda (#{src 833}# #{exps 834}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 12)
#{src 833}#
#{exps 834}#)))
(#{make-lambda 229}#
(lambda (#{src 837}# #{meta 838}# #{body 839}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 13)
#{src 837}#
#{meta 838}#
#{body 839}#)))
(#{make-lambda-case 231}#
(lambda (#{src 843}#
#{req 844}#
#{opt 845}#
#{rest 846}#
#{kw 847}#
#{inits 848}#
#{gensyms 849}#
#{body 850}#
#{alternate 851}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 14)
#{src 843}#
#{req 844}#
#{opt 845}#
#{rest 846}#
#{kw 847}#
#{inits 848}#
#{gensyms 849}#
#{body 850}#
#{alternate 851}#)))
(#{make-let 233}#
(lambda (#{src 861}#
#{names 862}#
#{gensyms 863}#
#{vals 864}#
#{body 865}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 15)
#{src 861}#
#{names 862}#
#{gensyms 863}#
#{vals 864}#
#{body 865}#)))
(#{make-letrec 235}#
(lambda (#{src 871}#
#{in-order? 872}#
#{names 873}#
#{gensyms 874}#
#{vals 875}#
#{body 876}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 16)
#{src 871}#
#{in-order? 872}#
#{names 873}#
#{gensyms 874}#
#{vals 875}#
#{body 876}#)))
(#{make-dynlet 237}#
(lambda (#{src 883}#
#{fluids 884}#
#{vals 885}#
#{body 886}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 17)
#{src 883}#
#{fluids 884}#
#{vals 885}#
#{body 886}#)))
(#{lambda? 240}#
(lambda (#{x 891}#)
(if (struct? #{x 891}#)
(eq? (struct-vtable #{x 891}#)
(vector-ref %expanded-vtables 13))
#f)))
(#{lambda-meta 242}#
(lambda (#{x 895}#) (struct-ref #{x 895}# 1)))
(#{set-lambda-meta! 244}#
(lambda (#{x 897}# #{v 898}#)
(struct-set! #{x 897}# 1 #{v 898}#)))
(#{top-level-eval-hook 250}#
(lambda (#{x 901}# #{mod 902}#)
(primitive-eval #{x 901}#)))
(#{local-eval-hook 252}#
(lambda (#{x 905}# #{mod 906}#)
(primitive-eval #{x 905}#)))
(#{put-global-definition-hook 255}#
(lambda (#{symbol 909}# #{type 910}# #{val 911}#)
(module-define!
(current-module)
#{symbol 909}#
(make-syntax-transformer
#{symbol 909}#
#{type 910}#
#{val 911}#))))
(#{get-global-definition-hook 257}#
(lambda (#{symbol 915}# #{module 916}#)
(begin
(if (if (not #{module 916}#) (current-module) #f)
(warn "module system is booted, we should have a module"
#{symbol 915}#))
(begin
(let ((#{v 922}# (module-variable
(if #{module 916}#
(resolve-module (cdr #{module 916}#))
(current-module))
#{symbol 915}#)))
(if #{v 922}#
(if (variable-bound? #{v 922}#)
(begin
(let ((#{val 927}# (variable-ref #{v 922}#)))
(if (macro? #{val 927}#)
(if (macro-type #{val 927}#)
(cons (macro-type #{val 927}#)
(macro-binding #{val 927}#))
#f)
#f)))
#f)
#f))))))
(#{decorate-source 259}#
(lambda (#{e 931}# #{s 932}#)
(begin
(if (if (pair? #{e 931}#) #{s 932}# #f)
(set-source-properties! #{e 931}# #{s 932}#))
#{e 931}#)))
(#{maybe-name-value! 261}#
(lambda (#{name 937}# #{val 938}#)
(if (#{lambda? 240}# #{val 938}#)
(begin
(let ((#{meta 942}# (#{lambda-meta 242}# #{val 938}#)))
(if (not (assq 'name #{meta 942}#))
(#{set-lambda-meta! 244}#
#{val 938}#
(cons (cons 'name #{name 937}#) #{meta 942}#))))))))
(#{build-void 263}#
(lambda (#{source 943}#)
(#{make-void 203}# #{source 943}#)))
(#{build-application 265}#
(lambda (#{source 945}# #{fun-exp 946}# #{arg-exps 947}#)
(#{make-application 225}#
#{source 945}#
#{fun-exp 946}#
#{arg-exps 947}#)))
(#{build-conditional 267}#
(lambda (#{source 951}#
#{test-exp 952}#
#{then-exp 953}#
#{else-exp 954}#)
(#{make-conditional 223}#
#{source 951}#
#{test-exp 952}#
#{then-exp 953}#
#{else-exp 954}#)))
(#{build-dynlet 269}#
(lambda (#{source 959}#
#{fluids 960}#
#{vals 961}#
#{body 962}#)
(#{make-dynlet 237}#
#{source 959}#
#{fluids 960}#
#{vals 961}#
#{body 962}#)))
(#{build-lexical-reference 271}#
(lambda (#{type 967}#
#{source 968}#
#{name 969}#
#{var 970}#)
(#{make-lexical-ref 209}#
#{source 968}#
#{name 969}#
#{var 970}#)))
(#{build-lexical-assignment 273}#
(lambda (#{source 975}#
#{name 976}#
#{var 977}#
#{exp 978}#)
(begin
(#{maybe-name-value! 261}#
#{name 976}#
#{exp 978}#)
(#{make-lexical-set 211}#
#{source 975}#
#{name 976}#
#{var 977}#
#{exp 978}#))))
(#{analyze-variable 275}#
(lambda (#{mod 983}#
#{var 984}#
#{modref-cont 985}#
#{bare-cont 986}#)
(if (not #{mod 983}#)
(#{bare-cont 986}# #{var 984}#)
(begin
(let ((#{kind 993}# (car #{mod 983}#))
(#{mod 994}# (cdr #{mod 983}#)))
(if (eqv? #{kind 993}# 'public)
(#{modref-cont 985}# #{mod 994}# #{var 984}# #t)
(if (eqv? #{kind 993}# 'private)
(if (not (equal?
#{mod 994}#
(module-name (current-module))))
(#{modref-cont 985}# #{mod 994}# #{var 984}# #f)
(#{bare-cont 986}# #{var 984}#))
(if (eqv? #{kind 993}# 'bare)
(#{bare-cont 986}# #{var 984}#)
(if (eqv? #{kind 993}# 'hygiene)
(if (if (not (equal?
#{mod 994}#
(module-name (current-module))))
(module-variable
(resolve-module #{mod 994}#)
#{var 984}#)
#f)
(#{modref-cont 985}# #{mod 994}# #{var 984}# #f)
(#{bare-cont 986}# #{var 984}#))
(syntax-violation
#f
"bad module kind"
#{var 984}#
#{mod 994}#))))))))))
(#{build-global-reference 277}#
(lambda (#{source 1002}# #{var 1003}# #{mod 1004}#)
(#{analyze-variable 275}#
#{mod 1004}#
#{var 1003}#
(lambda (#{mod 1008}# #{var 1009}# #{public? 1010}#)
(#{make-module-ref 213}#
#{source 1002}#
#{mod 1008}#
#{var 1009}#
#{public? 1010}#))
(lambda (#{var 1014}#)
(#{make-toplevel-ref 217}#
#{source 1002}#
#{var 1014}#)))))
(#{build-global-assignment 279}#
(lambda (#{source 1016}#
#{var 1017}#
#{exp 1018}#
#{mod 1019}#)
(begin
(#{maybe-name-value! 261}#
#{var 1017}#
#{exp 1018}#)
(#{analyze-variable 275}#
#{mod 1019}#
#{var 1017}#
(lambda (#{mod 1024}# #{var 1025}# #{public? 1026}#)
(#{make-module-set 215}#
#{source 1016}#
#{mod 1024}#
#{var 1025}#
#{public? 1026}#
#{exp 1018}#))
(lambda (#{var 1030}#)
(#{make-toplevel-set 219}#
#{source 1016}#
#{var 1030}#
#{exp 1018}#))))))
(#{build-global-definition 281}#
(lambda (#{source 1032}# #{var 1033}# #{exp 1034}#)
(begin
(#{maybe-name-value! 261}#
#{var 1033}#
#{exp 1034}#)
(#{make-toplevel-define 221}#
#{source 1032}#
#{var 1033}#
#{exp 1034}#))))
(#{build-simple-lambda 283}#
(lambda (#{src 1038}#
#{req 1039}#
#{rest 1040}#
#{vars 1041}#
#{meta 1042}#
#{exp 1043}#)
(#{make-lambda 229}#
#{src 1038}#
#{meta 1042}#
(#{make-lambda-case 231}#
#{src 1038}#
#{req 1039}#
#f
#{rest 1040}#
#f
'()
#{vars 1041}#
#{exp 1043}#
#f))))
(#{build-case-lambda 285}#
(lambda (#{src 1050}# #{meta 1051}# #{body 1052}#)
(#{make-lambda 229}#
#{src 1050}#
#{meta 1051}#
#{body 1052}#)))
(#{build-lambda-case 287}#
(lambda (#{src 1056}#
#{req 1057}#
#{opt 1058}#
#{rest 1059}#
#{kw 1060}#
#{inits 1061}#
#{vars 1062}#
#{body 1063}#
#{else-case 1064}#)
(#{make-lambda-case 231}#
#{src 1056}#
#{req 1057}#
#{opt 1058}#
#{rest 1059}#
#{kw 1060}#
#{inits 1061}#
#{vars 1062}#
#{body 1063}#
#{else-case 1064}#)))
(#{build-primref 289}#
(lambda (#{src 1074}# #{name 1075}#)
(if (equal? (module-name (current-module)) '(guile))
(#{make-toplevel-ref 217}#
#{src 1074}#
#{name 1075}#)
(#{make-module-ref 213}#
#{src 1074}#
'(guile)
#{name 1075}#
#f))))
(#{build-data 291}#
(lambda (#{src 1078}# #{exp 1079}#)
(#{make-const 205}# #{src 1078}# #{exp 1079}#)))
(#{build-sequence 293}#
(lambda (#{src 1082}# #{exps 1083}#)
(if (null? (cdr #{exps 1083}#))
(car #{exps 1083}#)
(#{make-sequence 227}#
#{src 1082}#
#{exps 1083}#))))
(#{build-let 295}#
(lambda (#{src 1086}#
#{ids 1087}#
#{vars 1088}#
#{val-exps 1089}#
#{body-exp 1090}#)
(begin
(for-each
#{maybe-name-value! 261}#
#{ids 1087}#
#{val-exps 1089}#)
(if (null? #{vars 1088}#)
#{body-exp 1090}#
(#{make-let 233}#
#{src 1086}#
#{ids 1087}#
#{vars 1088}#
#{val-exps 1089}#
#{body-exp 1090}#)))))
(#{build-named-let 297}#
(lambda (#{src 1096}#
#{ids 1097}#
#{vars 1098}#
#{val-exps 1099}#
#{body-exp 1100}#)
(begin
(let ((#{f 1110}# (car #{vars 1098}#))
(#{f-name 1111}# (car #{ids 1097}#))
(#{vars 1112}# (cdr #{vars 1098}#))
(#{ids 1113}# (cdr #{ids 1097}#)))
(begin
(let ((#{proc 1115}#
(#{build-simple-lambda 283}#
#{src 1096}#
#{ids 1113}#
#f
#{vars 1112}#
'()
#{body-exp 1100}#)))
(begin
(#{maybe-name-value! 261}#
#{f-name 1111}#
#{proc 1115}#)
(for-each
#{maybe-name-value! 261}#
#{ids 1113}#
#{val-exps 1099}#)
(#{make-letrec 235}#
#{src 1096}#
#f
(list #{f-name 1111}#)
(list #{f 1110}#)
(list #{proc 1115}#)
(#{build-application 265}#
#{src 1096}#
(#{build-lexical-reference 271}#
'fun
#{src 1096}#
#{f-name 1111}#
#{f 1110}#)
#{val-exps 1099}#)))))))))
(#{build-letrec 299}#
(lambda (#{src 1116}#
#{in-order? 1117}#
#{ids 1118}#
#{vars 1119}#
#{val-exps 1120}#
#{body-exp 1121}#)
(if (null? #{vars 1119}#)
#{body-exp 1121}#
(begin
(for-each
#{maybe-name-value! 261}#
#{ids 1118}#
#{val-exps 1120}#)
(#{make-letrec 235}#
#{src 1116}#
#{in-order? 1117}#
#{ids 1118}#
#{vars 1119}#
#{val-exps 1120}#
#{body-exp 1121}#)))))
(#{make-syntax-object 303}#
(lambda (#{expression 1128}#
#{wrap 1129}#
#{module 1130}#)
(vector
'syntax-object
#{expression 1128}#
#{wrap 1129}#
#{module 1130}#)))
(#{syntax-object? 305}#
(lambda (#{x 1134}#)
(if (vector? #{x 1134}#)
(if (= (vector-length #{x 1134}#) 4)
(eq? (vector-ref #{x 1134}# 0) 'syntax-object)
#f)
#f)))
(#{syntax-object-expression 307}#
(lambda (#{x 1139}#) (vector-ref #{x 1139}# 1)))
(#{syntax-object-wrap 309}#
(lambda (#{x 1141}#) (vector-ref #{x 1141}# 2)))
(#{syntax-object-module 311}#
(lambda (#{x 1143}#) (vector-ref #{x 1143}# 3)))
(#{source-annotation 320}#
(lambda (#{x 1157}#)
(if (#{syntax-object? 305}# #{x 1157}#)
(#{source-annotation 320}#
(#{syntax-object-expression 307}# #{x 1157}#))
(if (pair? #{x 1157}#)
(begin
(let ((#{props 1164}# (source-properties #{x 1157}#)))
(if (pair? #{props 1164}#) #{props 1164}# #f)))
#f))))
(#{extend-env 327}#
(lambda (#{labels 1166}# #{bindings 1167}# #{r 1168}#)
(if (null? #{labels 1166}#)
#{r 1168}#
(#{extend-env 327}#
(cdr #{labels 1166}#)
(cdr #{bindings 1167}#)
(cons (cons (car #{labels 1166}#)
(car #{bindings 1167}#))
#{r 1168}#)))))
(#{extend-var-env 329}#
(lambda (#{labels 1172}# #{vars 1173}# #{r 1174}#)
(if (null? #{labels 1172}#)
#{r 1174}#
(#{extend-var-env 329}#
(cdr #{labels 1172}#)
(cdr #{vars 1173}#)
(cons (cons (car #{labels 1172}#)
(cons 'lexical (car #{vars 1173}#)))
#{r 1174}#)))))
(#{macros-only-env 331}#
(lambda (#{r 1179}#)
(if (null? #{r 1179}#)
'()
(begin
(let ((#{a 1182}# (car #{r 1179}#)))
(if (eq? (car (cdr #{a 1182}#)) 'macro)
(cons #{a 1182}#
(#{macros-only-env 331}# (cdr #{r 1179}#)))
(#{macros-only-env 331}# (cdr #{r 1179}#))))))))
(#{lookup 333}#
(lambda (#{x 1183}# #{r 1184}# #{mod 1185}#)
(begin
(let ((#{t 1191}# (assq #{x 1183}# #{r 1184}#)))
(if #{t 1191}#
(cdr #{t 1191}#)
(if (symbol? #{x 1183}#)
(begin
(let ((#{t 1197}#
(#{get-global-definition-hook 257}#
#{x 1183}#
#{mod 1185}#)))
(if #{t 1197}# #{t 1197}# '(global))))
'(displaced-lexical)))))))
(#{global-extend 335}#
(lambda (#{type 1202}# #{sym 1203}# #{val 1204}#)
(#{put-global-definition-hook 255}#
#{sym 1203}#
#{type 1202}#
#{val 1204}#)))
(#{nonsymbol-id? 337}#
(lambda (#{x 1208}#)
(if (#{syntax-object? 305}# #{x 1208}#)
(symbol?
(#{syntax-object-expression 307}# #{x 1208}#))
#f)))
(#{id? 339}#
(lambda (#{x 1212}#)
(if (symbol? #{x 1212}#)
#t
(if (#{syntax-object? 305}# #{x 1212}#)
(symbol?
(#{syntax-object-expression 307}# #{x 1212}#))
#f))))
(#{id-sym-name&marks 342}#
(lambda (#{x 1219}# #{w 1220}#)
(if (#{syntax-object? 305}# #{x 1219}#)
(values
(#{syntax-object-expression 307}# #{x 1219}#)
(#{join-marks 389}#
(car #{w 1220}#)
(car (#{syntax-object-wrap 309}# #{x 1219}#))))
(values #{x 1219}# (car #{w 1220}#)))))
(#{gen-label 352}#
(lambda () (symbol->string (gensym "i"))))
(#{gen-labels 354}#
(lambda (#{ls 1226}#)
(if (null? #{ls 1226}#)
'()
(cons (#{gen-label 352}#)
(#{gen-labels 354}# (cdr #{ls 1226}#))))))
(#{make-ribcage 357}#
(lambda (#{symnames 1228}#
#{marks 1229}#
#{labels 1230}#)
(vector
'ribcage
#{symnames 1228}#
#{marks 1229}#
#{labels 1230}#)))
(#{ribcage-symnames 361}#
(lambda (#{x 1239}#) (vector-ref #{x 1239}# 1)))
(#{ribcage-marks 363}#
(lambda (#{x 1241}#) (vector-ref #{x 1241}# 2)))
(#{ribcage-labels 365}#
(lambda (#{x 1243}#) (vector-ref #{x 1243}# 3)))
(#{set-ribcage-symnames! 367}#
(lambda (#{x 1245}# #{update 1246}#)
(vector-set! #{x 1245}# 1 #{update 1246}#)))
(#{set-ribcage-marks! 369}#
(lambda (#{x 1249}# #{update 1250}#)
(vector-set! #{x 1249}# 2 #{update 1250}#)))
(#{set-ribcage-labels! 371}#
(lambda (#{x 1253}# #{update 1254}#)
(vector-set! #{x 1253}# 3 #{update 1254}#)))
(#{anti-mark 377}#
(lambda (#{w 1257}#)
(cons (cons #f (car #{w 1257}#))
(cons 'shift (cdr #{w 1257}#)))))
(#{extend-ribcage! 381}#
(lambda (#{ribcage 1263}# #{id 1264}# #{label 1265}#)
(begin
(#{set-ribcage-symnames! 367}#
#{ribcage 1263}#
(cons (#{syntax-object-expression 307}# #{id 1264}#)
(#{ribcage-symnames 361}# #{ribcage 1263}#)))
(#{set-ribcage-marks! 369}#
#{ribcage 1263}#
(cons (car (#{syntax-object-wrap 309}# #{id 1264}#))
(#{ribcage-marks 363}# #{ribcage 1263}#)))
(#{set-ribcage-labels! 371}#
#{ribcage 1263}#
(cons #{label 1265}#
(#{ribcage-labels 365}# #{ribcage 1263}#))))))
(#{make-binding-wrap 383}#
(lambda (#{ids 1270}# #{labels 1271}# #{w 1272}#)
(if (null? #{ids 1270}#)
#{w 1272}#
(cons (car #{w 1272}#)
(cons (begin
(let ((#{labelvec 1279}#
(list->vector #{labels 1271}#)))
(begin
(let ((#{n 1281}#
(vector-length #{labelvec 1279}#)))
(begin
(let ((#{symnamevec 1284}#
(make-vector #{n 1281}#))
(#{marksvec 1285}#
(make-vector #{n 1281}#)))
(begin
(letrec*
((#{f 1289}#
(lambda (#{ids 1290}# #{i 1291}#)
(if (not (null? #{ids 1290}#))
(call-with-values
(lambda ()
(#{id-sym-name&marks 342}#
(car #{ids 1290}#)
#{w 1272}#))
(lambda (#{symname 1292}#
#{marks 1293}#)
(begin
(vector-set!
#{symnamevec 1284}#
#{i 1291}#
#{symname 1292}#)
(vector-set!
#{marksvec 1285}#
#{i 1291}#
#{marks 1293}#)
(#{f 1289}#
(cdr #{ids 1290}#)
(#{1+}# #{i 1291}#)))))))))
(begin (#{f 1289}# #{ids 1270}# 0)))
(#{make-ribcage 357}#
#{symnamevec 1284}#
#{marksvec 1285}#
#{labelvec 1279}#))))))))
(cdr #{w 1272}#))))))
(#{smart-append 385}#
(lambda (#{m1 1298}# #{m2 1299}#)
(if (null? #{m2 1299}#)
#{m1 1298}#
(append #{m1 1298}# #{m2 1299}#))))
(#{join-wraps 387}#
(lambda (#{w1 1302}# #{w2 1303}#)
(begin
(let ((#{m1 1308}# (car #{w1 1302}#))
(#{s1 1309}# (cdr #{w1 1302}#)))
(if (null? #{m1 1308}#)
(if (null? #{s1 1309}#)
#{w2 1303}#
(cons (car #{w2 1303}#)
(#{smart-append 385}#
#{s1 1309}#
(cdr #{w2 1303}#))))
(cons (#{smart-append 385}#
#{m1 1308}#
(car #{w2 1303}#))
(#{smart-append 385}#
#{s1 1309}#
(cdr #{w2 1303}#))))))))
(#{join-marks 389}#
(lambda (#{m1 1318}# #{m2 1319}#)
(#{smart-append 385}# #{m1 1318}# #{m2 1319}#)))
(#{same-marks? 391}#
(lambda (#{x 1322}# #{y 1323}#)
(begin
(let ((#{t 1328}# (eq? #{x 1322}# #{y 1323}#)))
(if #{t 1328}#
#{t 1328}#
(if (not (null? #{x 1322}#))
(if (not (null? #{y 1323}#))
(if (eq? (car #{x 1322}#) (car #{y 1323}#))
(#{same-marks? 391}#
(cdr #{x 1322}#)
(cdr #{y 1323}#))
#f)
#f)
#f))))))
(#{id-var-name 393}#
(lambda (#{id 1334}# #{w 1335}#)
(letrec*
((#{search 1340}#
(lambda (#{sym 1356}# #{subst 1357}# #{marks 1358}#)
(if (null? #{subst 1357}#)
(values #f #{marks 1358}#)
(begin
(let ((#{fst 1363}# (car #{subst 1357}#)))
(if (eq? #{fst 1363}# 'shift)
(#{search 1340}#
#{sym 1356}#
(cdr #{subst 1357}#)
(cdr #{marks 1358}#))
(begin
(let ((#{symnames 1365}#
(#{ribcage-symnames 361}# #{fst 1363}#)))
(if (vector? #{symnames 1365}#)
(#{search-vector-rib 1344}#
#{sym 1356}#
#{subst 1357}#
#{marks 1358}#
#{symnames 1365}#
#{fst 1363}#)
(#{search-list-rib 1342}#
#{sym 1356}#
#{subst 1357}#
#{marks 1358}#
#{symnames 1365}#
#{fst 1363}#))))))))))
(#{search-list-rib 1342}#
(lambda (#{sym 1366}#
#{subst 1367}#
#{marks 1368}#
#{symnames 1369}#
#{ribcage 1370}#)
(letrec*
((#{f 1379}#
(lambda (#{symnames 1380}# #{i 1381}#)
(if (null? #{symnames 1380}#)
(#{search 1340}#
#{sym 1366}#
(cdr #{subst 1367}#)
#{marks 1368}#)
(if (if (eq? (car #{symnames 1380}#) #{sym 1366}#)
(#{same-marks? 391}#
#{marks 1368}#
(list-ref
(#{ribcage-marks 363}# #{ribcage 1370}#)
#{i 1381}#))
#f)
(values
(list-ref
(#{ribcage-labels 365}# #{ribcage 1370}#)
#{i 1381}#)
#{marks 1368}#)
(#{f 1379}#
(cdr #{symnames 1380}#)
(#{1+}# #{i 1381}#)))))))
(begin (#{f 1379}# #{symnames 1369}# 0)))))
(#{search-vector-rib 1344}#
(lambda (#{sym 1390}#
#{subst 1391}#
#{marks 1392}#
#{symnames 1393}#
#{ribcage 1394}#)
(begin
(let ((#{n 1401}# (vector-length #{symnames 1393}#)))
(letrec*
((#{f 1404}#
(lambda (#{i 1405}#)
(if (= #{i 1405}# #{n 1401}#)
(#{search 1340}#
#{sym 1390}#
(cdr #{subst 1391}#)
#{marks 1392}#)
(if (if (eq? (vector-ref
#{symnames 1393}#
#{i 1405}#)
#{sym 1390}#)
(#{same-marks? 391}#
#{marks 1392}#
(vector-ref
(#{ribcage-marks 363}# #{ribcage 1394}#)
#{i 1405}#))
#f)
(values
(vector-ref
(#{ribcage-labels 365}# #{ribcage 1394}#)
#{i 1405}#)
#{marks 1392}#)
(#{f 1404}# (#{1+}# #{i 1405}#)))))))
(begin (#{f 1404}# 0))))))))
(begin
(if (symbol? #{id 1334}#)
(begin
(let ((#{t 1417}#
(#{search 1340}#
#{id 1334}#
(cdr #{w 1335}#)
(car #{w 1335}#))))
(if #{t 1417}# #{t 1417}# #{id 1334}#)))
(if (#{syntax-object? 305}# #{id 1334}#)
(begin
(let ((#{id 1426}#
(#{syntax-object-expression 307}# #{id 1334}#))
(#{w1 1427}#
(#{syntax-object-wrap 309}# #{id 1334}#)))
(begin
(let ((#{marks 1429}#
(#{join-marks 389}#
(car #{w 1335}#)
(car #{w1 1427}#))))
(call-with-values
(lambda ()
(#{search 1340}#
#{id 1426}#
(cdr #{w 1335}#)
#{marks 1429}#))
(lambda (#{new-id 1433}# #{marks 1434}#)
(begin
(let ((#{t 1439}# #{new-id 1433}#))
(if #{t 1439}#
#{t 1439}#
(begin
(let ((#{t 1442}#
(#{search 1340}#
#{id 1426}#
(cdr #{w1 1427}#)
#{marks 1434}#)))
(if #{t 1442}#
#{t 1442}#
#{id 1426}#))))))))))))
(syntax-violation
'id-var-name
"invalid id"
#{id 1334}#)))))))
(#{free-id=? 395}#
(lambda (#{i 1447}# #{j 1448}#)
(if (eq? (begin
(let ((#{x 1454}# #{i 1447}#))
(if (#{syntax-object? 305}# #{x 1454}#)
(#{syntax-object-expression 307}# #{x 1454}#)
#{x 1454}#)))
(begin
(let ((#{x 1457}# #{j 1448}#))
(if (#{syntax-object? 305}# #{x 1457}#)
(#{syntax-object-expression 307}# #{x 1457}#)
#{x 1457}#))))
(eq? (#{id-var-name 393}# #{i 1447}# '(()))
(#{id-var-name 393}# #{j 1448}# '(())))
#f)))
(#{bound-id=? 397}#
(lambda (#{i 1461}# #{j 1462}#)
(if (if (#{syntax-object? 305}# #{i 1461}#)
(#{syntax-object? 305}# #{j 1462}#)
#f)
(if (eq? (#{syntax-object-expression 307}# #{i 1461}#)
(#{syntax-object-expression 307}# #{j 1462}#))
(#{same-marks? 391}#
(car (#{syntax-object-wrap 309}# #{i 1461}#))
(car (#{syntax-object-wrap 309}# #{j 1462}#)))
#f)
(eq? #{i 1461}# #{j 1462}#))))
(#{valid-bound-ids? 399}#
(lambda (#{ids 1471}#)
(if (letrec*
((#{all-ids? 1476}#
(lambda (#{ids 1477}#)
(begin
(let ((#{t 1480}# (null? #{ids 1477}#)))
(if #{t 1480}#
#{t 1480}#
(if (#{id? 339}# (car #{ids 1477}#))
(#{all-ids? 1476}# (cdr #{ids 1477}#))
#f)))))))
(begin (#{all-ids? 1476}# #{ids 1471}#)))
(#{distinct-bound-ids? 401}# #{ids 1471}#)
#f)))
(#{distinct-bound-ids? 401}#
(lambda (#{ids 1485}#)
(letrec*
((#{distinct? 1489}#
(lambda (#{ids 1490}#)
(begin
(let ((#{t 1493}# (null? #{ids 1490}#)))
(if #{t 1493}#
#{t 1493}#
(if (not (#{bound-id-member? 403}#
(car #{ids 1490}#)
(cdr #{ids 1490}#)))
(#{distinct? 1489}# (cdr #{ids 1490}#))
#f)))))))
(begin (#{distinct? 1489}# #{ids 1485}#)))))
(#{bound-id-member? 403}#
(lambda (#{x 1497}# #{list 1498}#)
(if (not (null? #{list 1498}#))
(begin
(let ((#{t 1505}#
(#{bound-id=? 397}#
#{x 1497}#
(car #{list 1498}#))))
(if #{t 1505}#
#{t 1505}#
(#{bound-id-member? 403}#
#{x 1497}#
(cdr #{list 1498}#)))))
#f)))
(#{wrap 405}#
(lambda (#{x 1507}# #{w 1508}# #{defmod 1509}#)
(if (if (null? (car #{w 1508}#))
(null? (cdr #{w 1508}#))
#f)
#{x 1507}#
(if (#{syntax-object? 305}# #{x 1507}#)
(#{make-syntax-object 303}#
(#{syntax-object-expression 307}# #{x 1507}#)
(#{join-wraps 387}#
#{w 1508}#
(#{syntax-object-wrap 309}# #{x 1507}#))
(#{syntax-object-module 311}# #{x 1507}#))
(if (null? #{x 1507}#)
#{x 1507}#
(#{make-syntax-object 303}#
#{x 1507}#
#{w 1508}#
#{defmod 1509}#))))))
(#{source-wrap 407}#
(lambda (#{x 1524}#
#{w 1525}#
#{s 1526}#
#{defmod 1527}#)
(#{wrap 405}#
(#{decorate-source 259}# #{x 1524}# #{s 1526}#)
#{w 1525}#
#{defmod 1527}#)))
(#{chi-sequence 409}#
(lambda (#{body 1532}#
#{r 1533}#
#{w 1534}#
#{s 1535}#
#{mod 1536}#)
(#{build-sequence 293}#
#{s 1535}#
(letrec*
((#{dobody 1547}#
(lambda (#{body 1548}#
#{r 1549}#
#{w 1550}#
#{mod 1551}#)
(if (null? #{body 1548}#)
'()
(begin
(let ((#{first 1553}#
(#{chi 419}#
(car #{body 1548}#)
#{r 1549}#
#{w 1550}#
#{mod 1551}#)))
(cons #{first 1553}#
(#{dobody 1547}#
(cdr #{body 1548}#)
#{r 1549}#
#{w 1550}#
#{mod 1551}#))))))))
(begin
(#{dobody 1547}#
#{body 1532}#
#{r 1533}#
#{w 1534}#
#{mod 1536}#))))))
(#{chi-top-sequence 411}#
(lambda (#{body 1554}#
#{r 1555}#
#{w 1556}#
#{s 1557}#
#{m 1558}#
#{esew 1559}#
#{mod 1560}#)
(letrec*
((#{scan 1569}#
(lambda (#{body 1570}#
#{r 1571}#
#{w 1572}#
#{s 1573}#
#{m 1574}#
#{esew 1575}#
#{mod 1576}#
#{exps 1577}#)
(if (null? #{body 1570}#)
#{exps 1577}#
(call-with-values
(lambda ()
(call-with-values
(lambda ()
(begin
(let ((#{e 1590}# (car #{body 1570}#)))
(#{syntax-type 417}#
#{e 1590}#
#{r 1571}#
#{w 1572}#
(begin
(let ((#{t 1593}#
(#{source-annotation 320}#
#{e 1590}#)))
(if #{t 1593}# #{t 1593}# #{s 1573}#)))
#f
#{mod 1576}#
#f))))
(lambda (#{type 1595}#
#{value 1596}#
#{e 1597}#
#{w 1598}#
#{s 1599}#
#{mod 1600}#)
(if (eqv? #{type 1595}# 'begin-form)
(let ((#{tmp 1608}# #{e 1597}#))
(let ((#{tmp 1609}#
($sc-dispatch #{tmp 1608}# '(_))))
(if #{tmp 1609}#
(@apply (lambda () #{exps 1577}#) #{tmp 1609}#)
(let ((#{tmp 1610}#
($sc-dispatch
#{tmp 1608}#
'(_ any . each-any))))
(if #{tmp 1610}#
(@apply
(lambda (#{e1 1613}# #{e2 1614}#)
(#{scan 1569}#
(cons #{e1 1613}# #{e2 1614}#)
#{r 1571}#
#{w 1598}#
#{s 1599}#
#{m 1574}#
#{esew 1575}#
#{mod 1600}#
#{exps 1577}#))
#{tmp 1610}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 1608}#))))))
(if (eqv? #{type 1595}# 'local-syntax-form)
(#{chi-local-syntax 429}#
#{value 1596}#
#{e 1597}#
#{r 1571}#
#{w 1598}#
#{s 1599}#
#{mod 1600}#
(lambda (#{body 1617}#
#{r 1618}#
#{w 1619}#
#{s 1620}#
#{mod 1621}#)
(#{scan 1569}#
#{body 1617}#
#{r 1618}#
#{w 1619}#
#{s 1620}#
#{m 1574}#
#{esew 1575}#
#{mod 1621}#
#{exps 1577}#)))
(if (eqv? #{type 1595}# 'eval-when-form)
(let ((#{tmp 1628}# #{e 1597}#))
(let ((#{tmp 1629}#
($sc-dispatch
#{tmp 1628}#
'(_ each-any any . each-any))))
(if #{tmp 1629}#
(@apply
(lambda (#{x 1633}#
#{e1 1634}#
#{e2 1635}#)
(begin
(let ((#{when-list 1638}#
(#{chi-when-list 415}#
#{e 1597}#
#{x 1633}#
#{w 1598}#))
(#{body 1639}#
(cons #{e1 1634}#
#{e2 1635}#)))
(if (eq? #{m 1574}# 'e)
(if (memq 'eval
#{when-list 1638}#)
(#{scan 1569}#
#{body 1639}#
#{r 1571}#
#{w 1598}#
#{s 1599}#
(if (memq 'expand
#{when-list 1638}#)
'c&e
'e)
'(eval)
#{mod 1600}#
#{exps 1577}#)
(begin
(if (memq 'expand
#{when-list 1638}#)
(#{top-level-eval-hook 250}#
(#{chi-top-sequence 411}#
#{body 1639}#
#{r 1571}#
#{w 1598}#
#{s 1599}#
'e
'(eval)
#{mod 1600}#)
#{mod 1600}#))
(values #{exps 1577}#)))
(if (memq 'load
#{when-list 1638}#)
(if (begin
(let ((#{t 1648}#
(memq 'compile
#{when-list 1638}#)))
(if #{t 1648}#
#{t 1648}#
(begin
(let ((#{t 1651}#
(memq 'expand
#{when-list 1638}#)))
(if #{t 1651}#
#{t 1651}#
(if (eq? #{m 1574}#
'c&e)
(memq 'eval
#{when-list 1638}#)
#f)))))))
(#{scan 1569}#
#{body 1639}#
#{r 1571}#
#{w 1598}#
#{s 1599}#
'c&e
'(compile load)
#{mod 1600}#
#{exps 1577}#)
(if (if (eq? #{m 1574}# 'c)
#t
(eq? #{m 1574}# 'c&e))
(#{scan 1569}#
#{body 1639}#
#{r 1571}#
#{w 1598}#
#{s 1599}#
'c
'(load)
#{mod 1600}#
#{exps 1577}#)
(values #{exps 1577}#)))
(if (begin
(let ((#{t 1659}#
(memq 'compile
#{when-list 1638}#)))
(if #{t 1659}#
#{t 1659}#
(begin
(let ((#{t 1662}#
(memq 'expand
#{when-list 1638}#)))
(if #{t 1662}#
#{t 1662}#
(if (eq? #{m 1574}#
'c&e)
(memq 'eval
#{when-list 1638}#)
#f)))))))
(begin
(#{top-level-eval-hook 250}#
(#{chi-top-sequence 411}#
#{body 1639}#
#{r 1571}#
#{w 1598}#
#{s 1599}#
'e
'(eval)
#{mod 1600}#)
#{mod 1600}#)
(values #{exps 1577}#))
(values #{exps 1577}#)))))))
#{tmp 1629}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 1628}#))))
(if (eqv? #{type 1595}# 'define-syntax-form)
(begin
(let ((#{n 1670}#
(#{id-var-name 393}#
#{value 1596}#
#{w 1598}#))
(#{r 1671}#
(#{macros-only-env 331}#
#{r 1571}#)))
(if (eqv? #{m 1574}# 'c)
(if (memq 'compile #{esew 1575}#)
(begin
(let ((#{e 1674}#
(#{chi-install-global 413}#
#{n 1670}#
(#{chi 419}#
#{e 1597}#
#{r 1671}#
#{w 1598}#
#{mod 1600}#))))
(begin
(#{top-level-eval-hook 250}#
#{e 1674}#
#{mod 1600}#)
(if (memq 'load #{esew 1575}#)
(values
(cons #{e 1674}#
#{exps 1577}#))
(values #{exps 1577}#)))))
(if (memq 'load #{esew 1575}#)
(values
(cons (#{chi-install-global 413}#
#{n 1670}#
(#{chi 419}#
#{e 1597}#
#{r 1671}#
#{w 1598}#
#{mod 1600}#))
#{exps 1577}#))
(values #{exps 1577}#)))
(if (eqv? #{m 1574}# 'c&e)
(begin
(let ((#{e 1677}#
(#{chi-install-global 413}#
#{n 1670}#
(#{chi 419}#
#{e 1597}#
#{r 1671}#
#{w 1598}#
#{mod 1600}#))))
(begin
(#{top-level-eval-hook 250}#
#{e 1677}#
#{mod 1600}#)
(values
(cons #{e 1677}#
#{exps 1577}#)))))
(begin
(if (memq 'eval #{esew 1575}#)
(#{top-level-eval-hook 250}#
(#{chi-install-global 413}#
#{n 1670}#
(#{chi 419}#
#{e 1597}#
#{r 1671}#
#{w 1598}#
#{mod 1600}#))
#{mod 1600}#))
(values #{exps 1577}#))))))
(if (eqv? #{type 1595}# 'define-form)
(begin
(let ((#{n 1682}#
(#{id-var-name 393}#
#{value 1596}#
#{w 1598}#)))
(begin
(let ((#{type 1684}#
(car (#{lookup 333}#
#{n 1682}#
#{r 1571}#
#{mod 1600}#))))
(if (if (eqv? #{type 1684}# 'global)
#t
(if (eqv? #{type 1684}# 'core)
#t
(if (eqv? #{type 1684}#
'macro)
#t
(eqv? #{type 1684}#
'module-ref))))
(begin
(if (if (if (eq? #{m 1574}# 'c)
#t
(eq? #{m 1574}# 'c&e))
(if (not (module-local-variable
(current-module)
#{n 1682}#))
(current-module)
#f)
#f)
(begin
(let ((#{old 1691}#
(module-variable
(current-module)
#{n 1682}#)))
(if (if (variable?
#{old 1691}#)
(variable-bound?
#{old 1691}#)
#f)
(module-define!
(current-module)
#{n 1682}#
(variable-ref
#{old 1691}#))
(module-add!
(current-module)
#{n 1682}#
(make-undefined-variable))))))
(values
(cons (if (eq? #{m 1574}# 'c&e)
(begin
(let ((#{x 1695}#
(#{build-global-definition 281}#
#{s 1599}#
#{n 1682}#
(#{chi 419}#
#{e 1597}#
#{r 1571}#
#{w 1598}#
#{mod 1600}#))))
(begin
(#{top-level-eval-hook 250}#
#{x 1695}#
#{mod 1600}#)
#{x 1695}#)))
(lambda ()
(#{build-global-definition 281}#
#{s 1599}#
#{n 1682}#
(#{chi 419}#
#{e 1597}#
#{r 1571}#
#{w 1598}#
#{mod 1600}#))))
#{exps 1577}#)))
(if (eqv? #{type 1684}#
'displaced-lexical)
(syntax-violation
#f
"identifier out of context"
#{e 1597}#
(#{wrap 405}#
#{value 1596}#
#{w 1598}#
#{mod 1600}#))
(syntax-violation
#f
"cannot define keyword at top level"
#{e 1597}#
(#{wrap 405}#
#{value 1596}#
#{w 1598}#
#{mod 1600}#))))))))
(values
(cons (if (eq? #{m 1574}# 'c&e)
(begin
(let ((#{x 1700}#
(#{chi-expr 421}#
#{type 1595}#
#{value 1596}#
#{e 1597}#
#{r 1571}#
#{w 1598}#
#{s 1599}#
#{mod 1600}#)))
(begin
(#{top-level-eval-hook 250}#
#{x 1700}#
#{mod 1600}#)
#{x 1700}#)))
(lambda ()
(#{chi-expr 421}#
#{type 1595}#
#{value 1596}#
#{e 1597}#
#{r 1571}#
#{w 1598}#
#{s 1599}#
#{mod 1600}#)))
#{exps 1577}#))))))))))
(lambda (#{exps 1701}#)
(#{scan 1569}#
(cdr #{body 1570}#)
#{r 1571}#
#{w 1572}#
#{s 1573}#
#{m 1574}#
#{esew 1575}#
#{mod 1576}#
#{exps 1701}#)))))))
(begin
(call-with-values
(lambda ()
(#{scan 1569}#
#{body 1554}#
#{r 1555}#
#{w 1556}#
#{s 1557}#
#{m 1558}#
#{esew 1559}#
#{mod 1560}#
'()))
(lambda (#{exps 1703}#)
(if (null? #{exps 1703}#)
(#{build-void 263}# #{s 1557}#)
(#{build-sequence 293}#
#{s 1557}#
(letrec*
((#{lp 1708}#
(lambda (#{in 1709}# #{out 1710}#)
(if (null? #{in 1709}#)
#{out 1710}#
(begin
(let ((#{e 1712}# (car #{in 1709}#)))
(#{lp 1708}#
(cdr #{in 1709}#)
(cons (if (procedure? #{e 1712}#)
(#{e 1712}#)
#{e 1712}#)
#{out 1710}#))))))))
(begin (#{lp 1708}# #{exps 1703}# '())))))))))))
(#{chi-install-global 413}#
(lambda (#{name 1713}# #{e 1714}#)
(#{build-global-definition 281}#
#f
#{name 1713}#
(#{build-application 265}#
#f
(#{build-primref 289}#
#f
'make-syntax-transformer)
(list (#{build-data 291}# #f #{name 1713}#)
(#{build-data 291}# #f 'macro)
#{e 1714}#)))))
(#{chi-when-list 415}#
(lambda (#{e 1722}# #{when-list 1723}# #{w 1724}#)
(letrec*
((#{f 1731}#
(lambda (#{when-list 1732}# #{situations 1733}#)
(if (null? #{when-list 1732}#)
#{situations 1733}#
(#{f 1731}#
(cdr #{when-list 1732}#)
(cons (begin
(let ((#{x 1735}# (car #{when-list 1732}#)))
(if (#{free-id=? 395}#
#{x 1735}#
'#(syntax-object
compile
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i1734"))
#(ribcage () () ())
#(ribcage
#(f when-list situations)
#((top) (top) (top))
#("i1728" "i1729" "i1730"))
#(ribcage () () ())
#(ribcage
#(e when-list w)
#((top) (top) (top))
#("i1725" "i1726" "i1727"))
#(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
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))
("i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i414"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i390"
"i388"
"i386"
"i384"
"i382"
"i380"
"i379"
"i378"
"i376"
"i375"
"i374"
"i373"
"i372"
"i370"
"i368"
"i366"
"i364"
"i362"
"i360"
"i358"
"i356"
"i353"
"i351"
"i350"
"i349"
"i348"
"i347"
"i346"
"i345"
"i344"
"i343"
"i341"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i325"
"i324"
"i323"
"i322"
"i321"
"i319"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i253"
"i251"
"i249"
"i248"
"i247"
"i246"
"i245"
"i243"
"i241"
"i239"
"i236"
"i234"
"i232"
"i230"
"i228"
"i226"
"i224"
"i222"
"i220"
"i218"
"i216"
"i214"
"i212"
"i210"
"i208"
"i206"
"i204"
"i202"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors)
((top) (top) (top))
("i40" "i39" "i38")))
(hygiene guile)))
'compile
(if (#{free-id=? 395}#
#{x 1735}#
'#(syntax-object
load
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i1734"))
#(ribcage () () ())
#(ribcage
#(f when-list situations)
#((top) (top) (top))
#("i1728" "i1729" "i1730"))
#(ribcage () () ())
#(ribcage
#(e when-list w)
#((top) (top) (top))
#("i1725" "i1726" "i1727"))
#(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
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))
("i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i414"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i390"
"i388"
"i386"
"i384"
"i382"
"i380"
"i379"
"i378"
"i376"
"i375"
"i374"
"i373"
"i372"
"i370"
"i368"
"i366"
"i364"
"i362"
"i360"
"i358"
"i356"
"i353"
"i351"
"i350"
"i349"
"i348"
"i347"
"i346"
"i345"
"i344"
"i343"
"i341"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i325"
"i324"
"i323"
"i322"
"i321"
"i319"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i253"
"i251"
"i249"
"i248"
"i247"
"i246"
"i245"
"i243"
"i241"
"i239"
"i236"
"i234"
"i232"
"i230"
"i228"
"i226"
"i224"
"i222"
"i220"
"i218"
"i216"
"i214"
"i212"
"i210"
"i208"
"i206"
"i204"
"i202"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors)
((top) (top) (top))
("i40" "i39" "i38")))
(hygiene guile)))
'load
(if (#{free-id=? 395}#
#{x 1735}#
'#(syntax-object
eval
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i1734"))
#(ribcage () () ())
#(ribcage
#(f when-list situations)
#((top) (top) (top))
#("i1728" "i1729" "i1730"))
#(ribcage () () ())
#(ribcage
#(e when-list w)
#((top) (top) (top))
#("i1725" "i1726" "i1727"))
#(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
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))
("i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i414"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i390"
"i388"
"i386"
"i384"
"i382"
"i380"
"i379"
"i378"
"i376"
"i375"
"i374"
"i373"
"i372"
"i370"
"i368"
"i366"
"i364"
"i362"
"i360"
"i358"
"i356"
"i353"
"i351"
"i350"
"i349"
"i348"
"i347"
"i346"
"i345"
"i344"
"i343"
"i341"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i325"
"i324"
"i323"
"i322"
"i321"
"i319"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i253"
"i251"
"i249"
"i248"
"i247"
"i246"
"i245"
"i243"
"i241"
"i239"
"i236"
"i234"
"i232"
"i230"
"i228"
"i226"
"i224"
"i222"
"i220"
"i218"
"i216"
"i214"
"i212"
"i210"
"i208"
"i206"
"i204"
"i202"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors)
((top) (top) (top))
("i40" "i39" "i38")))
(hygiene guile)))
'eval
(if (#{free-id=? 395}#
#{x 1735}#
'#(syntax-object
expand
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i1734"))
#(ribcage () () ())
#(ribcage
#(f when-list situations)
#((top) (top) (top))
#("i1728" "i1729" "i1730"))
#(ribcage () () ())
#(ribcage
#(e when-list w)
#((top) (top) (top))
#("i1725" "i1726" "i1727"))
#(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
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))
("i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i414"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i390"
"i388"
"i386"
"i384"
"i382"
"i380"
"i379"
"i378"
"i376"
"i375"
"i374"
"i373"
"i372"
"i370"
"i368"
"i366"
"i364"
"i362"
"i360"
"i358"
"i356"
"i353"
"i351"
"i350"
"i349"
"i348"
"i347"
"i346"
"i345"
"i344"
"i343"
"i341"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i325"
"i324"
"i323"
"i322"
"i321"
"i319"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i253"
"i251"
"i249"
"i248"
"i247"
"i246"
"i245"
"i243"
"i241"
"i239"
"i236"
"i234"
"i232"
"i230"
"i228"
"i226"
"i224"
"i222"
"i220"
"i218"
"i216"
"i214"
"i212"
"i210"
"i208"
"i206"
"i204"
"i202"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors)
((top) (top) (top))
("i40" "i39" "i38")))
(hygiene guile)))
'expand
(syntax-violation
'eval-when
"invalid situation"
#{e 1722}#
(#{wrap 405}#
#{x 1735}#
#{w 1724}#
#f))))))))
#{situations 1733}#))))))
(begin (#{f 1731}# #{when-list 1723}# '())))))
(#{syntax-type 417}#
(lambda (#{e 1745}#
#{r 1746}#
#{w 1747}#
#{s 1748}#
#{rib 1749}#
#{mod 1750}#
#{for-car? 1751}#)
(if (symbol? #{e 1745}#)
(begin
(let ((#{n 1763}#
(#{id-var-name 393}# #{e 1745}# #{w 1747}#)))
(begin
(let ((#{b 1765}#
(#{lookup 333}#
#{n 1763}#
#{r 1746}#
#{mod 1750}#)))
(begin
(let ((#{type 1767}# (car #{b 1765}#)))
(if (eqv? #{type 1767}# 'lexical)
(values
#{type 1767}#
(cdr #{b 1765}#)
#{e 1745}#
#{w 1747}#
#{s 1748}#
#{mod 1750}#)
(if (eqv? #{type 1767}# 'global)
(values
#{type 1767}#
#{n 1763}#
#{e 1745}#
#{w 1747}#
#{s 1748}#
#{mod 1750}#)
(if (eqv? #{type 1767}# 'macro)
(if #{for-car? 1751}#
(values
#{type 1767}#
(cdr #{b 1765}#)
#{e 1745}#
#{w 1747}#
#{s 1748}#
#{mod 1750}#)
(#{syntax-type 417}#
(#{chi-macro 425}#
(cdr #{b 1765}#)
#{e 1745}#
#{r 1746}#
#{w 1747}#
#{s 1748}#
#{rib 1749}#
#{mod 1750}#)
#{r 1746}#
'(())
#{s 1748}#
#{rib 1749}#
#{mod 1750}#
#f))
(values
#{type 1767}#
(cdr #{b 1765}#)
#{e 1745}#
#{w 1747}#
#{s 1748}#
#{mod 1750}#))))))))))
(if (pair? #{e 1745}#)
(begin
(let ((#{first 1781}# (car #{e 1745}#)))
(call-with-values
(lambda ()
(#{syntax-type 417}#
#{first 1781}#
#{r 1746}#
#{w 1747}#
#{s 1748}#
#{rib 1749}#
#{mod 1750}#
#t))
(lambda (#{ftype 1782}#
#{fval 1783}#
#{fe 1784}#
#{fw 1785}#
#{fs 1786}#
#{fmod 1787}#)
(if (eqv? #{ftype 1782}# 'lexical)
(values
'lexical-call
#{fval 1783}#
#{e 1745}#
#{w 1747}#
#{s 1748}#
#{mod 1750}#)
(if (eqv? #{ftype 1782}# 'global)
(values
'global-call
(#{make-syntax-object 303}#
#{fval 1783}#
#{w 1747}#
#{fmod 1787}#)
#{e 1745}#
#{w 1747}#
#{s 1748}#
#{mod 1750}#)
(if (eqv? #{ftype 1782}# 'macro)
(#{syntax-type 417}#
(#{chi-macro 425}#
#{fval 1783}#
#{e 1745}#
#{r 1746}#
#{w 1747}#
#{s 1748}#
#{rib 1749}#
#{mod 1750}#)
#{r 1746}#
'(())
#{s 1748}#
#{rib 1749}#
#{mod 1750}#
#{for-car? 1751}#)
(if (eqv? #{ftype 1782}# 'module-ref)
(call-with-values
(lambda ()
(#{fval 1783}#
#{e 1745}#
#{r 1746}#
#{w 1747}#))
(lambda (#{e 1799}#
#{r 1800}#
#{w 1801}#
#{s 1802}#
#{mod 1803}#)
(#{syntax-type 417}#
#{e 1799}#
#{r 1800}#
#{w 1801}#
#{s 1802}#
#{rib 1749}#
#{mod 1803}#
#{for-car? 1751}#)))
(if (eqv? #{ftype 1782}# 'core)
(values
'core-form
#{fval 1783}#
#{e 1745}#
#{w 1747}#
#{s 1748}#
#{mod 1750}#)
(if (eqv? #{ftype 1782}# 'local-syntax)
(values
'local-syntax-form
#{fval 1783}#
#{e 1745}#
#{w 1747}#
#{s 1748}#
#{mod 1750}#)
(if (eqv? #{ftype 1782}# 'begin)
(values
'begin-form
#f
#{e 1745}#
#{w 1747}#
#{s 1748}#
#{mod 1750}#)
(if (eqv? #{ftype 1782}# 'eval-when)
(values
'eval-when-form
#f
#{e 1745}#
#{w 1747}#
#{s 1748}#
#{mod 1750}#)
(if (eqv? #{ftype 1782}# 'define)
(let ((#{tmp 1814}# #{e 1745}#))
(let ((#{tmp 1815}#
($sc-dispatch
#{tmp 1814}#
'(_ any any))))
(if (if #{tmp 1815}#
(@apply
(lambda (#{name 1818}#
#{val 1819}#)
(#{id? 339}# #{name 1818}#))
#{tmp 1815}#)
#f)
(@apply
(lambda (#{name 1822}#
#{val 1823}#)
(values
'define-form
#{name 1822}#
#{val 1823}#
#{w 1747}#
#{s 1748}#
#{mod 1750}#))
#{tmp 1815}#)
(let ((#{tmp 1824}#
($sc-dispatch
#{tmp 1814}#
'(_ (any . any)
any
.
each-any))))
(if (if #{tmp 1824}#
(@apply
(lambda (#{name 1829}#
#{args 1830}#
#{e1 1831}#
#{e2 1832}#)
(if (#{id? 339}#
#{name 1829}#)
(#{valid-bound-ids? 399}#
(#{lambda-var-list 449}#
#{args 1830}#))
#f))
#{tmp 1824}#)
#f)
(@apply
(lambda (#{name 1839}#
#{args 1840}#
#{e1 1841}#
#{e2 1842}#)
(values
'define-form
(#{wrap 405}#
#{name 1839}#
#{w 1747}#
#{mod 1750}#)
(#{decorate-source 259}#
(cons '#(syntax-object
lambda
((top)
#(ribcage
#(name
args
e1
e2)
#((top)
(top)
(top)
(top))
#("i1835"
"i1836"
"i1837"
"i1838"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(ftype
fval
fe
fw
fs
fmod)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i1788"
"i1789"
"i1790"
"i1791"
"i1792"
"i1793"))
#(ribcage
()
()
())
#(ribcage
#(first)
#((top))
#("i1780"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(e
r
w
s
rib
mod
for-car?)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i1752"
"i1753"
"i1754"
"i1755"
"i1756"
"i1757"
"i1758"))
#(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
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))
("i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i414"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i390"
"i388"
"i386"
"i384"
"i382"
"i380"
"i379"
"i378"
"i376"
"i375"
"i374"
"i373"
"i372"
"i370"
"i368"
"i366"
"i364"
"i362"
"i360"
"i358"
"i356"
"i353"
"i351"
"i350"
"i349"
"i348"
"i347"
"i346"
"i345"
"i344"
"i343"
"i341"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i325"
"i324"
"i323"
"i322"
"i321"
"i319"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i253"
"i251"
"i249"
"i248"
"i247"
"i246"
"i245"
"i243"
"i241"
"i239"
"i236"
"i234"
"i232"
"i230"
"i228"
"i226"
"i224"
"i222"
"i220"
"i218"
"i216"
"i214"
"i212"
"i210"
"i208"
"i206"
"i204"
"i202"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors)
((top)
(top)
(top))
("i40"
"i39"
"i38")))
(hygiene
guile))
(#{wrap 405}#
(cons #{args 1840}#
(cons #{e1 1841}#
#{e2 1842}#))
#{w 1747}#
#{mod 1750}#))
#{s 1748}#)
'(())
#{s 1748}#
#{mod 1750}#))
#{tmp 1824}#)
(let ((#{tmp 1845}#
($sc-dispatch
#{tmp 1814}#
'(_ any))))
(if (if #{tmp 1845}#
(@apply
(lambda (#{name 1847}#)
(#{id? 339}#
#{name 1847}#))
#{tmp 1845}#)
#f)
(@apply
(lambda (#{name 1849}#)
(values
'define-form
(#{wrap 405}#
#{name 1849}#
#{w 1747}#
#{mod 1750}#)
'(#(syntax-object
if
((top)
#(ribcage
#(name)
#((top))
#("i1848"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(ftype
fval
fe
fw
fs
fmod)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i1788"
"i1789"
"i1790"
"i1791"
"i1792"
"i1793"))
#(ribcage
()
()
())
#(ribcage
#(first)
#((top))
#("i1780"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(e
r
w
s
rib
mod
for-car?)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i1752"
"i1753"
"i1754"
"i1755"
"i1756"
"i1757"
"i1758"))
#(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
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))
("i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i414"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i390"
"i388"
"i386"
"i384"
"i382"
"i380"
"i379"
"i378"
"i376"
"i375"
"i374"
"i373"
"i372"
"i370"
"i368"
"i366"
"i364"
"i362"
"i360"
"i358"
"i356"
"i353"
"i351"
"i350"
"i349"
"i348"
"i347"
"i346"
"i345"
"i344"
"i343"
"i341"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i325"
"i324"
"i323"
"i322"
"i321"
"i319"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i253"
"i251"
"i249"
"i248"
"i247"
"i246"
"i245"
"i243"
"i241"
"i239"
"i236"
"i234"
"i232"
"i230"
"i228"
"i226"
"i224"
"i222"
"i220"
"i218"
"i216"
"i214"
"i212"
"i210"
"i208"
"i206"
"i204"
"i202"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors)
((top)
(top)
(top))
("i40"
"i39"
"i38")))
(hygiene guile))
#(syntax-object
#f
((top)
#(ribcage
#(name)
#((top))
#("i1848"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(ftype
fval
fe
fw
fs
fmod)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i1788"
"i1789"
"i1790"
"i1791"
"i1792"
"i1793"))
#(ribcage
()
()
())
#(ribcage
#(first)
#((top))
#("i1780"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(e
r
w
s
rib
mod
for-car?)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i1752"
"i1753"
"i1754"
"i1755"
"i1756"
"i1757"
"i1758"))
#(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
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))
("i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i414"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i390"
"i388"
"i386"
"i384"
"i382"
"i380"
"i379"
"i378"
"i376"
"i375"
"i374"
"i373"
"i372"
"i370"
"i368"
"i366"
"i364"
"i362"
"i360"
"i358"
"i356"
"i353"
"i351"
"i350"
"i349"
"i348"
"i347"
"i346"
"i345"
"i344"
"i343"
"i341"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i325"
"i324"
"i323"
"i322"
"i321"
"i319"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i253"
"i251"
"i249"
"i248"
"i247"
"i246"
"i245"
"i243"
"i241"
"i239"
"i236"
"i234"
"i232"
"i230"
"i228"
"i226"
"i224"
"i222"
"i220"
"i218"
"i216"
"i214"
"i212"
"i210"
"i208"
"i206"
"i204"
"i202"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors)
((top)
(top)
(top))
("i40"
"i39"
"i38")))
(hygiene guile))
#(syntax-object
#f
((top)
#(ribcage
#(name)
#((top))
#("i1848"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(ftype
fval
fe
fw
fs
fmod)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i1788"
"i1789"
"i1790"
"i1791"
"i1792"
"i1793"))
#(ribcage
()
()
())
#(ribcage
#(first)
#((top))
#("i1780"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(e
r
w
s
rib
mod
for-car?)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i1752"
"i1753"
"i1754"
"i1755"
"i1756"
"i1757"
"i1758"))
#(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
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))
("i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i414"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i390"
"i388"
"i386"
"i384"
"i382"
"i380"
"i379"
"i378"
"i376"
"i375"
"i374"
"i373"
"i372"
"i370"
"i368"
"i366"
"i364"
"i362"
"i360"
"i358"
"i356"
"i353"
"i351"
"i350"
"i349"
"i348"
"i347"
"i346"
"i345"
"i344"
"i343"
"i341"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i325"
"i324"
"i323"
"i322"
"i321"
"i319"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i253"
"i251"
"i249"
"i248"
"i247"
"i246"
"i245"
"i243"
"i241"
"i239"
"i236"
"i234"
"i232"
"i230"
"i228"
"i226"
"i224"
"i222"
"i220"
"i218"
"i216"
"i214"
"i212"
"i210"
"i208"
"i206"
"i204"
"i202"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors)
((top)
(top)
(top))
("i40"
"i39"
"i38")))
(hygiene guile)))
'(())
#{s 1748}#
#{mod 1750}#))
#{tmp 1845}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 1814}#))))))))
(if (eqv? #{ftype 1782}# 'define-syntax)
(let ((#{tmp 1852}# #{e 1745}#))
(let ((#{tmp 1853}#
($sc-dispatch
#{tmp 1852}#
'(_ any any))))
(if (if #{tmp 1853}#
(@apply
(lambda (#{name 1856}#
#{val 1857}#)
(#{id? 339}#
#{name 1856}#))
#{tmp 1853}#)
#f)
(@apply
(lambda (#{name 1860}#
#{val 1861}#)
(values
'define-syntax-form
#{name 1860}#
#{val 1861}#
#{w 1747}#
#{s 1748}#
#{mod 1750}#))
#{tmp 1853}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 1852}#))))
(values
'call
#f
#{e 1745}#
#{w 1747}#
#{s 1748}#
#{mod 1750}#)))))))))))))))
(if (#{syntax-object? 305}# #{e 1745}#)
(#{syntax-type 417}#
(#{syntax-object-expression 307}# #{e 1745}#)
#{r 1746}#
(#{join-wraps 387}#
#{w 1747}#
(#{syntax-object-wrap 309}# #{e 1745}#))
(begin
(let ((#{t 1867}#
(#{source-annotation 320}# #{e 1745}#)))
(if #{t 1867}# #{t 1867}# #{s 1748}#)))
#{rib 1749}#
(begin
(let ((#{t 1871}#
(#{syntax-object-module 311}# #{e 1745}#)))
(if #{t 1871}# #{t 1871}# #{mod 1750}#)))
#{for-car? 1751}#)
(if (self-evaluating? #{e 1745}#)
(values
'constant
#f
#{e 1745}#
#{w 1747}#
#{s 1748}#
#{mod 1750}#)
(values
'other
#f
#{e 1745}#
#{w 1747}#
#{s 1748}#
#{mod 1750}#)))))))
(#{chi 419}#
(lambda (#{e 1876}# #{r 1877}# #{w 1878}# #{mod 1879}#)
(call-with-values
(lambda ()
(#{syntax-type 417}#
#{e 1876}#
#{r 1877}#
#{w 1878}#
(#{source-annotation 320}# #{e 1876}#)
#f
#{mod 1879}#
#f))
(lambda (#{type 1884}#
#{value 1885}#
#{e 1886}#
#{w 1887}#
#{s 1888}#
#{mod 1889}#)
(#{chi-expr 421}#
#{type 1884}#
#{value 1885}#
#{e 1886}#
#{r 1877}#
#{w 1887}#
#{s 1888}#
#{mod 1889}#)))))
(#{chi-expr 421}#
(lambda (#{type 1896}#
#{value 1897}#
#{e 1898}#
#{r 1899}#
#{w 1900}#
#{s 1901}#
#{mod 1902}#)
(if (eqv? #{type 1896}# 'lexical)
(#{build-lexical-reference 271}#
'value
#{s 1901}#
#{e 1898}#
#{value 1897}#)
(if (if (eqv? #{type 1896}# 'core)
#t
(eqv? #{type 1896}# 'core-form))
(#{value 1897}#
#{e 1898}#
#{r 1899}#
#{w 1900}#
#{s 1901}#
#{mod 1902}#)
(if (eqv? #{type 1896}# 'module-ref)
(call-with-values
(lambda ()
(#{value 1897}# #{e 1898}# #{r 1899}# #{w 1900}#))
(lambda (#{e 1913}#
#{r 1914}#
#{w 1915}#
#{s 1916}#
#{mod 1917}#)
(#{chi 419}#
#{e 1913}#
#{r 1914}#
#{w 1915}#
#{mod 1917}#)))
(if (eqv? #{type 1896}# 'lexical-call)
(#{chi-application 423}#
(begin
(let ((#{id 1925}# (car #{e 1898}#)))
(#{build-lexical-reference 271}#
'fun
(#{source-annotation 320}# #{id 1925}#)
(if (#{syntax-object? 305}# #{id 1925}#)
(syntax->datum #{id 1925}#)
#{id 1925}#)
#{value 1897}#)))
#{e 1898}#
#{r 1899}#
#{w 1900}#
#{s 1901}#
#{mod 1902}#)
(if (eqv? #{type 1896}# 'global-call)
(#{chi-application 423}#
(#{build-global-reference 277}#
(#{source-annotation 320}# (car #{e 1898}#))
(if (#{syntax-object? 305}# #{value 1897}#)
(#{syntax-object-expression 307}# #{value 1897}#)
#{value 1897}#)
(if (#{syntax-object? 305}# #{value 1897}#)
(#{syntax-object-module 311}# #{value 1897}#)
#{mod 1902}#))
#{e 1898}#
#{r 1899}#
#{w 1900}#
#{s 1901}#
#{mod 1902}#)
(if (eqv? #{type 1896}# 'constant)
(#{build-data 291}#
#{s 1901}#
(#{strip 445}#
(#{source-wrap 407}#
#{e 1898}#
#{w 1900}#
#{s 1901}#
#{mod 1902}#)
'(())))
(if (eqv? #{type 1896}# 'global)
(#{build-global-reference 277}#
#{s 1901}#
#{value 1897}#
#{mod 1902}#)
(if (eqv? #{type 1896}# 'call)
(#{chi-application 423}#
(#{chi 419}#
(car #{e 1898}#)
#{r 1899}#
#{w 1900}#
#{mod 1902}#)
#{e 1898}#
#{r 1899}#
#{w 1900}#
#{s 1901}#
#{mod 1902}#)
(if (eqv? #{type 1896}# 'begin-form)
(let ((#{tmp 1932}# #{e 1898}#))
(let ((#{tmp 1933}#
($sc-dispatch
#{tmp 1932}#
'(_ any . each-any))))
(if #{tmp 1933}#
(@apply
(lambda (#{e1 1936}# #{e2 1937}#)
(#{chi-sequence 409}#
(cons #{e1 1936}# #{e2 1937}#)
#{r 1899}#
#{w 1900}#
#{s 1901}#
#{mod 1902}#))
#{tmp 1933}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 1932}#))))
(if (eqv? #{type 1896}# 'local-syntax-form)
(#{chi-local-syntax 429}#
#{value 1897}#
#{e 1898}#
#{r 1899}#
#{w 1900}#
#{s 1901}#
#{mod 1902}#
#{chi-sequence 409}#)
(if (eqv? #{type 1896}# 'eval-when-form)
(let ((#{tmp 1941}# #{e 1898}#))
(let ((#{tmp 1942}#
($sc-dispatch
#{tmp 1941}#
'(_ each-any any . each-any))))
(if #{tmp 1942}#
(@apply
(lambda (#{x 1946}#
#{e1 1947}#
#{e2 1948}#)
(begin
(let ((#{when-list 1950}#
(#{chi-when-list 415}#
#{e 1898}#
#{x 1946}#
#{w 1900}#)))
(if (memq 'eval #{when-list 1950}#)
(#{chi-sequence 409}#
(cons #{e1 1947}# #{e2 1948}#)
#{r 1899}#
#{w 1900}#
#{s 1901}#
#{mod 1902}#)
(#{chi-void 433}#)))))
#{tmp 1942}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 1941}#))))
(if (if (eqv? #{type 1896}# 'define-form)
#t
(eqv? #{type 1896}# 'define-syntax-form))
(syntax-violation
#f
"definition in expression context"
#{e 1898}#
(#{wrap 405}#
#{value 1897}#
#{w 1900}#
#{mod 1902}#))
(if (eqv? #{type 1896}# 'syntax)
(syntax-violation
#f
"reference to pattern variable outside syntax form"
(#{source-wrap 407}#
#{e 1898}#
#{w 1900}#
#{s 1901}#
#{mod 1902}#))
(if (eqv? #{type 1896}# 'displaced-lexical)
(syntax-violation
#f
"reference to identifier outside its scope"
(#{source-wrap 407}#
#{e 1898}#
#{w 1900}#
#{s 1901}#
#{mod 1902}#))
(syntax-violation
#f
"unexpected syntax"
(#{source-wrap 407}#
#{e 1898}#
#{w 1900}#
#{s 1901}#
#{mod 1902}#))))))))))))))))))
(#{chi-application 423}#
(lambda (#{x 1957}#
#{e 1958}#
#{r 1959}#
#{w 1960}#
#{s 1961}#
#{mod 1962}#)
(let ((#{tmp 1969}# #{e 1958}#))
(let ((#{tmp 1970}#
($sc-dispatch #{tmp 1969}# '(any . each-any))))
(if #{tmp 1970}#
(@apply
(lambda (#{e0 1973}# #{e1 1974}#)
(#{build-application 265}#
#{s 1961}#
#{x 1957}#
(map (lambda (#{e 1975}#)
(#{chi 419}#
#{e 1975}#
#{r 1959}#
#{w 1960}#
#{mod 1962}#))
#{e1 1974}#)))
#{tmp 1970}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 1969}#))))))
(#{chi-macro 425}#
(lambda (#{p 1978}#
#{e 1979}#
#{r 1980}#
#{w 1981}#
#{s 1982}#
#{rib 1983}#
#{mod 1984}#)
(letrec*
((#{rebuild-macro-output 1993}#
(lambda (#{x 1994}# #{m 1995}#)
(if (pair? #{x 1994}#)
(#{decorate-source 259}#
(cons (#{rebuild-macro-output 1993}#
(car #{x 1994}#)
#{m 1995}#)
(#{rebuild-macro-output 1993}#
(cdr #{x 1994}#)
#{m 1995}#))
#{s 1982}#)
(if (#{syntax-object? 305}# #{x 1994}#)
(begin
(let ((#{w 2003}#
(#{syntax-object-wrap 309}# #{x 1994}#)))
(begin
(let ((#{ms 2006}# (car #{w 2003}#))
(#{s 2007}# (cdr #{w 2003}#)))
(if (if (pair? #{ms 2006}#)
(eq? (car #{ms 2006}#) #f)
#f)
(#{make-syntax-object 303}#
(#{syntax-object-expression 307}# #{x 1994}#)
(cons (cdr #{ms 2006}#)
(if #{rib 1983}#
(cons #{rib 1983}# (cdr #{s 2007}#))
(cdr #{s 2007}#)))
(#{syntax-object-module 311}# #{x 1994}#))
(#{make-syntax-object 303}#
(#{decorate-source 259}#
(#{syntax-object-expression 307}# #{x 1994}#)
#{s 2007}#)
(cons (cons #{m 1995}# #{ms 2006}#)
(if #{rib 1983}#
(cons #{rib 1983}#
(cons 'shift #{s 2007}#))
(cons 'shift #{s 2007}#)))
(#{syntax-object-module 311}# #{x 1994}#)))))))
(if (vector? #{x 1994}#)
(begin
(let ((#{n 2019}# (vector-length #{x 1994}#)))
(begin
(let ((#{v 2021}#
(#{decorate-source 259}#
(make-vector #{n 2019}#)
#{x 1994}#)))
(letrec*
((#{loop 2024}#
(lambda (#{i 2025}#)
(if (= #{i 2025}# #{n 2019}#)
(begin (if #f #f) #{v 2021}#)
(begin
(vector-set!
#{v 2021}#
#{i 2025}#
(#{rebuild-macro-output 1993}#
(vector-ref #{x 1994}# #{i 2025}#)
#{m 1995}#))
(#{loop 2024}# (#{1+}# #{i 2025}#)))))))
(begin (#{loop 2024}# 0)))))))
(if (symbol? #{x 1994}#)
(syntax-violation
#f
"encountered raw symbol in macro output"
(#{source-wrap 407}#
#{e 1979}#
#{w 1981}#
(cdr #{w 1981}#)
#{mod 1984}#)
#{x 1994}#)
(#{decorate-source 259}# #{x 1994}# #{s 1982}#))))))))
(begin
(#{rebuild-macro-output 1993}#
(#{p 1978}#
(#{source-wrap 407}#
#{e 1979}#
(#{anti-mark 377}# #{w 1981}#)
#{s 1982}#
#{mod 1984}#))
(gensym "m"))))))
(#{chi-body 427}#
(lambda (#{body 2035}#
#{outer-form 2036}#
#{r 2037}#
#{w 2038}#
#{mod 2039}#)
(begin
(let ((#{r 2047}#
(cons '("placeholder" placeholder) #{r 2037}#)))
(begin
(let ((#{ribcage 2049}#
(#{make-ribcage 357}# '() '() '())))
(begin
(let ((#{w 2052}#
(cons (car #{w 2038}#)
(cons #{ribcage 2049}# (cdr #{w 2038}#)))))
(letrec*
((#{parse 2064}#
(lambda (#{body 2065}#
#{ids 2066}#
#{labels 2067}#
#{var-ids 2068}#
#{vars 2069}#
#{vals 2070}#
#{bindings 2071}#)
(if (null? #{body 2065}#)
(syntax-violation
#f
"no expressions in body"
#{outer-form 2036}#)
(begin
(let ((#{e 2076}# (cdr (car #{body 2065}#)))
(#{er 2077}# (car (car #{body 2065}#))))
(call-with-values
(lambda ()
(#{syntax-type 417}#
#{e 2076}#
#{er 2077}#
'(())
(#{source-annotation 320}# #{er 2077}#)
#{ribcage 2049}#
#{mod 2039}#
#f))
(lambda (#{type 2079}#
#{value 2080}#
#{e 2081}#
#{w 2082}#
#{s 2083}#
#{mod 2084}#)
(if (eqv? #{type 2079}# 'define-form)
(begin
(let ((#{id 2094}#
(#{wrap 405}#
#{value 2080}#
#{w 2082}#
#{mod 2084}#))
(#{label 2095}#
(#{gen-label 352}#)))
(begin
(let ((#{var 2097}#
(#{gen-var 447}#
#{id 2094}#)))
(begin
(#{extend-ribcage! 381}#
#{ribcage 2049}#
#{id 2094}#
#{label 2095}#)
(#{parse 2064}#
(cdr #{body 2065}#)
(cons #{id 2094}#
#{ids 2066}#)
(cons #{label 2095}#
#{labels 2067}#)
(cons #{id 2094}#
#{var-ids 2068}#)
(cons #{var 2097}#
#{vars 2069}#)
(cons (cons #{er 2077}#
(#{wrap 405}#
#{e 2081}#
#{w 2082}#
#{mod 2084}#))
#{vals 2070}#)
(cons (cons 'lexical
#{var 2097}#)
#{bindings 2071}#)))))))
(if (eqv? #{type 2079}#
'define-syntax-form)
(begin
(let ((#{id 2102}#
(#{wrap 405}#
#{value 2080}#
#{w 2082}#
#{mod 2084}#))
(#{label 2103}#
(#{gen-label 352}#)))
(begin
(#{extend-ribcage! 381}#
#{ribcage 2049}#
#{id 2102}#
#{label 2103}#)
(#{parse 2064}#
(cdr #{body 2065}#)
(cons #{id 2102}# #{ids 2066}#)
(cons #{label 2103}#
#{labels 2067}#)
#{var-ids 2068}#
#{vars 2069}#
#{vals 2070}#
(cons (cons 'macro
(cons #{er 2077}#
(#{wrap 405}#
#{e 2081}#
#{w 2082}#
#{mod 2084}#)))
#{bindings 2071}#)))))
(if (eqv? #{type 2079}# 'begin-form)
(let ((#{tmp 2106}# #{e 2081}#))
(let ((#{tmp 2107}#
($sc-dispatch
#{tmp 2106}#
'(_ . each-any))))
(if #{tmp 2107}#
(@apply
(lambda (#{e1 2109}#)
(#{parse 2064}#
(letrec*
((#{f 2112}#
(lambda (#{forms 2113}#)
(if (null? #{forms 2113}#)
(cdr #{body 2065}#)
(cons (cons #{er 2077}#
(#{wrap 405}#
(car #{forms 2113}#)
#{w 2082}#
#{mod 2084}#))
(#{f 2112}#
(cdr #{forms 2113}#)))))))
(begin
(#{f 2112}#
#{e1 2109}#)))
#{ids 2066}#
#{labels 2067}#
#{var-ids 2068}#
#{vars 2069}#
#{vals 2070}#
#{bindings 2071}#))
#{tmp 2107}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 2106}#))))
(if (eqv? #{type 2079}#
'local-syntax-form)
(#{chi-local-syntax 429}#
#{value 2080}#
#{e 2081}#
#{er 2077}#
#{w 2082}#
#{s 2083}#
#{mod 2084}#
(lambda (#{forms 2116}#
#{er 2117}#
#{w 2118}#
#{s 2119}#
#{mod 2120}#)
(#{parse 2064}#
(letrec*
((#{f 2128}#
(lambda (#{forms 2129}#)
(if (null? #{forms 2129}#)
(cdr #{body 2065}#)
(cons (cons #{er 2117}#
(#{wrap 405}#
(car #{forms 2129}#)
#{w 2118}#
#{mod 2120}#))
(#{f 2128}#
(cdr #{forms 2129}#)))))))
(begin
(#{f 2128}#
#{forms 2116}#)))
#{ids 2066}#
#{labels 2067}#
#{var-ids 2068}#
#{vars 2069}#
#{vals 2070}#
#{bindings 2071}#)))
(if (null? #{ids 2066}#)
(#{build-sequence 293}#
#f
(map (lambda (#{x 2132}#)
(#{chi 419}#
(cdr #{x 2132}#)
(car #{x 2132}#)
'(())
#{mod 2084}#))
(cons (cons #{er 2077}#
(#{source-wrap 407}#
#{e 2081}#
#{w 2082}#
#{s 2083}#
#{mod 2084}#))
(cdr #{body 2065}#))))
(begin
(if (not (#{valid-bound-ids? 399}#
#{ids 2066}#))
(syntax-violation
#f
"invalid or duplicate identifier in definition"
#{outer-form 2036}#))
(letrec*
((#{loop 2139}#
(lambda (#{bs 2140}#
#{er-cache 2141}#
#{r-cache 2142}#)
(if (not (null? #{bs 2140}#))
(begin
(let ((#{b 2145}#
(car #{bs 2140}#)))
(if (eq? (car #{b 2145}#)
'macro)
(begin
(let ((#{er 2148}#
(car (cdr #{b 2145}#))))
(begin
(let ((#{r-cache 2150}#
(if (eq? #{er 2148}#
#{er-cache 2141}#)
#{r-cache 2142}#
(#{macros-only-env 331}#
#{er 2148}#))))
(begin
(set-cdr!
#{b 2145}#
(#{eval-local-transformer 431}#
(#{chi 419}#
(cdr (cdr #{b 2145}#))
#{r-cache 2150}#
'(())
#{mod 2084}#)
#{mod 2084}#))
(#{loop 2139}#
(cdr #{bs 2140}#)
#{er 2148}#
#{r-cache 2150}#))))))
(#{loop 2139}#
(cdr #{bs 2140}#)
#{er-cache 2141}#
#{r-cache 2142}#))))))))
(begin
(#{loop 2139}#
#{bindings 2071}#
#f
#f)))
(set-cdr!
#{r 2047}#
(#{extend-env 327}#
#{labels 2067}#
#{bindings 2071}#
(cdr #{r 2047}#)))
(#{build-letrec 299}#
#f
#t
(reverse
(map syntax->datum
#{var-ids 2068}#))
(reverse #{vars 2069}#)
(map (lambda (#{x 2153}#)
(#{chi 419}#
(cdr #{x 2153}#)
(car #{x 2153}#)
'(())
#{mod 2084}#))
(reverse #{vals 2070}#))
(#{build-sequence 293}#
#f
(map (lambda (#{x 2157}#)
(#{chi 419}#
(cdr #{x 2157}#)
(car #{x 2157}#)
'(())
#{mod 2084}#))
(cons (cons #{er 2077}#
(#{source-wrap 407}#
#{e 2081}#
#{w 2082}#
#{s 2083}#
#{mod 2084}#))
(cdr #{body 2065}#)))))))))))))))))))
(begin
(#{parse 2064}#
(map (lambda (#{x 2072}#)
(cons #{r 2047}#
(#{wrap 405}#
#{x 2072}#
#{w 2052}#
#{mod 2039}#)))
#{body 2035}#)
'()
'()
'()
'()
'()
'())))))))))))
(#{chi-local-syntax 429}#
(lambda (#{rec? 2160}#
#{e 2161}#
#{r 2162}#
#{w 2163}#
#{s 2164}#
#{mod 2165}#
#{k 2166}#)
(let ((#{tmp 2174}# #{e 2161}#))
(let ((#{tmp 2175}#
($sc-dispatch
#{tmp 2174}#
'(_ #(each (any any)) any . each-any))))
(if #{tmp 2175}#
(@apply
(lambda (#{id 2180}#
#{val 2181}#
#{e1 2182}#
#{e2 2183}#)
(begin
(let ((#{ids 2185}# #{id 2180}#))
(if (not (#{valid-bound-ids? 399}# #{ids 2185}#))
(syntax-violation
#f
"duplicate bound keyword"
#{e 2161}#)
(begin
(let ((#{labels 2188}#
(#{gen-labels 354}# #{ids 2185}#)))
(begin
(let ((#{new-w 2190}#
(#{make-binding-wrap 383}#
#{ids 2185}#
#{labels 2188}#
#{w 2163}#)))
(#{k 2166}#
(cons #{e1 2182}# #{e2 2183}#)
(#{extend-env 327}#
#{labels 2188}#
(begin
(let ((#{w 2194}#
(if #{rec? 2160}#
#{new-w 2190}#
#{w 2163}#))
(#{trans-r 2195}#
(#{macros-only-env 331}#
#{r 2162}#)))
(map (lambda (#{x 2196}#)
(cons 'macro
(#{eval-local-transformer 431}#
(#{chi 419}#
#{x 2196}#
#{trans-r 2195}#
#{w 2194}#
#{mod 2165}#)
#{mod 2165}#)))
#{val 2181}#)))
#{r 2162}#)
#{new-w 2190}#
#{s 2164}#
#{mod 2165}#)))))))))
#{tmp 2175}#)
(let ((#{_ 2201}# #{tmp 2174}#))
(syntax-violation
#f
"bad local syntax definition"
(#{source-wrap 407}#
#{e 2161}#
#{w 2163}#
#{s 2164}#
#{mod 2165}#))))))))
(#{eval-local-transformer 431}#
(lambda (#{expanded 2202}# #{mod 2203}#)
(begin
(let ((#{p 2207}#
(#{local-eval-hook 252}#
#{expanded 2202}#
#{mod 2203}#)))
(if (procedure? #{p 2207}#)
#{p 2207}#
(syntax-violation
#f
"nonprocedure transformer"
#{p 2207}#))))))
(#{chi-void 433}#
(lambda () (#{build-void 263}# #f)))
(#{ellipsis? 435}#
(lambda (#{x 2209}#)
(if (#{nonsymbol-id? 337}# #{x 2209}#)
(#{free-id=? 395}#
#{x 2209}#
'#(syntax-object
...
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i2210"))
#(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
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))
("i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i414"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i390"
"i388"
"i386"
"i384"
"i382"
"i380"
"i379"
"i378"
"i376"
"i375"
"i374"
"i373"
"i372"
"i370"
"i368"
"i366"
"i364"
"i362"
"i360"
"i358"
"i356"
"i353"
"i351"
"i350"
"i349"
"i348"
"i347"
"i346"
"i345"
"i344"
"i343"
"i341"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i325"
"i324"
"i323"
"i322"
"i321"
"i319"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i253"
"i251"
"i249"
"i248"
"i247"
"i246"
"i245"
"i243"
"i241"
"i239"
"i236"
"i234"
"i232"
"i230"
"i228"
"i226"
"i224"
"i222"
"i220"
"i218"
"i216"
"i214"
"i212"
"i210"
"i208"
"i206"
"i204"
"i202"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors)
((top) (top) (top))
("i40" "i39" "i38")))
(hygiene guile)))
#f)))
(#{lambda-formals 437}#
(lambda (#{orig-args 2213}#)
(letrec*
((#{req 2216}#
(lambda (#{args 2219}# #{rreq 2220}#)
(let ((#{tmp 2223}# #{args 2219}#))
(let ((#{tmp 2224}# ($sc-dispatch #{tmp 2223}# '())))
(if #{tmp 2224}#
(@apply
(lambda ()
(#{check 2218}# (reverse #{rreq 2220}#) #f))
#{tmp 2224}#)
(let ((#{tmp 2225}#
($sc-dispatch #{tmp 2223}# '(any . any))))
(if (if #{tmp 2225}#
(@apply
(lambda (#{a 2228}# #{b 2229}#)
(#{id? 339}# #{a 2228}#))
#{tmp 2225}#)
#f)
(@apply
(lambda (#{a 2232}# #{b 2233}#)
(#{req 2216}#
#{b 2233}#
(cons #{a 2232}# #{rreq 2220}#)))
#{tmp 2225}#)
(let ((#{tmp 2234}# (list #{tmp 2223}#)))
(if (if #{tmp 2234}#
(@apply
(lambda (#{r 2236}#)
(#{id? 339}# #{r 2236}#))
#{tmp 2234}#)
#f)
(@apply
(lambda (#{r 2238}#)
(#{check 2218}#
(reverse #{rreq 2220}#)
#{r 2238}#))
#{tmp 2234}#)
(let ((#{else 2240}# #{tmp 2223}#))
(syntax-violation
'lambda
"invalid argument list"
#{orig-args 2213}#
#{args 2219}#)))))))))))
(#{check 2218}#
(lambda (#{req 2241}# #{rest 2242}#)
(if (#{distinct-bound-ids? 401}#
(if #{rest 2242}#
(cons #{rest 2242}# #{req 2241}#)
#{req 2241}#))
(values #{req 2241}# #f #{rest 2242}# #f)
(syntax-violation
'lambda
"duplicate identifier in argument list"
#{orig-args 2213}#)))))
(begin (#{req 2216}# #{orig-args 2213}# '())))))
(#{chi-simple-lambda 439}#
(lambda (#{e 2248}#
#{r 2249}#
#{w 2250}#
#{s 2251}#
#{mod 2252}#
#{req 2253}#
#{rest 2254}#
#{meta 2255}#
#{body 2256}#)
(begin
(let ((#{ids 2268}#
(if #{rest 2254}#
(append #{req 2253}# (list #{rest 2254}#))
#{req 2253}#)))
(begin
(let ((#{vars 2270}#
(map #{gen-var 447}# #{ids 2268}#)))
(begin
(let ((#{labels 2272}#
(#{gen-labels 354}# #{ids 2268}#)))
(#{build-simple-lambda 283}#
#{s 2251}#
(map syntax->datum #{req 2253}#)
(if #{rest 2254}#
(syntax->datum #{rest 2254}#)
#f)
#{vars 2270}#
#{meta 2255}#
(#{chi-body 427}#
#{body 2256}#
(#{source-wrap 407}#
#{e 2248}#
#{w 2250}#
#{s 2251}#
#{mod 2252}#)
(#{extend-var-env 329}#
#{labels 2272}#
#{vars 2270}#
#{r 2249}#)
(#{make-binding-wrap 383}#
#{ids 2268}#
#{labels 2272}#
#{w 2250}#)
#{mod 2252}#))))))))))
(#{lambda*-formals 441}#
(lambda (#{orig-args 2275}#)
(letrec*
((#{req 2278}#
(lambda (#{args 2287}# #{rreq 2288}#)
(let ((#{tmp 2291}# #{args 2287}#))
(let ((#{tmp 2292}# ($sc-dispatch #{tmp 2291}# '())))
(if #{tmp 2292}#
(@apply
(lambda ()
(#{check 2286}#
(reverse #{rreq 2288}#)
'()
#f
'()))
#{tmp 2292}#)
(let ((#{tmp 2293}#
($sc-dispatch #{tmp 2291}# '(any . any))))
(if (if #{tmp 2293}#
(@apply
(lambda (#{a 2296}# #{b 2297}#)
(#{id? 339}# #{a 2296}#))
#{tmp 2293}#)
#f)
(@apply
(lambda (#{a 2300}# #{b 2301}#)
(#{req 2278}#
#{b 2301}#
(cons #{a 2300}# #{rreq 2288}#)))
#{tmp 2293}#)
(let ((#{tmp 2302}#
($sc-dispatch #{tmp 2291}# '(any . any))))
(if (if #{tmp 2302}#
(@apply
(lambda (#{a 2305}# #{b 2306}#)
(eq? (syntax->datum #{a 2305}#)
#:optional))
#{tmp 2302}#)
#f)
(@apply
(lambda (#{a 2309}# #{b 2310}#)
(#{opt 2280}#
#{b 2310}#
(reverse #{rreq 2288}#)
'()))
#{tmp 2302}#)
(let ((#{tmp 2311}#
($sc-dispatch #{tmp 2291}# '(any . any))))
(if (if #{tmp 2311}#
(@apply
(lambda (#{a 2314}# #{b 2315}#)
(eq? (syntax->datum #{a 2314}#) #:key))
#{tmp 2311}#)
#f)
(@apply
(lambda (#{a 2318}# #{b 2319}#)
(#{key 2282}#
#{b 2319}#
(reverse #{rreq 2288}#)
'()
'()))
#{tmp 2311}#)
(let ((#{tmp 2320}#
($sc-dispatch
#{tmp 2291}#
'(any any))))
(if (if #{tmp 2320}#
(@apply
(lambda (#{a 2323}# #{b 2324}#)
(eq? (syntax->datum #{a 2323}#)
#:rest))
#{tmp 2320}#)
#f)
(@apply
(lambda (#{a 2327}# #{b 2328}#)
(#{rest 2284}#
#{b 2328}#
(reverse #{rreq 2288}#)
'()
'()))
#{tmp 2320}#)
(let ((#{tmp 2329}# (list #{tmp 2291}#)))
(if (if #{tmp 2329}#
(@apply
(lambda (#{r 2331}#)
(#{id? 339}# #{r 2331}#))
#{tmp 2329}#)
#f)
(@apply
(lambda (#{r 2333}#)
(#{rest 2284}#
#{r 2333}#
(reverse #{rreq 2288}#)
'()
'()))
#{tmp 2329}#)
(let ((#{else 2335}# #{tmp 2291}#))
(syntax-violation
'lambda*
"invalid argument list"
#{orig-args 2275}#
#{args 2287}#)))))))))))))))))
(#{opt 2280}#
(lambda (#{args 2336}# #{req 2337}# #{ropt 2338}#)
(let ((#{tmp 2342}# #{args 2336}#))
(let ((#{tmp 2343}# ($sc-dispatch #{tmp 2342}# '())))
(if #{tmp 2343}#
(@apply
(lambda ()
(#{check 2286}#
#{req 2337}#
(reverse #{ropt 2338}#)
#f
'()))
#{tmp 2343}#)
(let ((#{tmp 2344}#
($sc-dispatch #{tmp 2342}# '(any . any))))
(if (if #{tmp 2344}#
(@apply
(lambda (#{a 2347}# #{b 2348}#)
(#{id? 339}# #{a 2347}#))
#{tmp 2344}#)
#f)
(@apply
(lambda (#{a 2351}# #{b 2352}#)
(#{opt 2280}#
#{b 2352}#
#{req 2337}#
(cons (cons #{a 2351}#
'(#(syntax-object
#f
((top)
#(ribcage
#(a b)
#((top) (top))
#("i2349" "i2350"))
#(ribcage () () ())
#(ribcage
#(args req ropt)
#((top) (top) (top))
#("i2339" "i2340" "i2341"))
#(ribcage
(check rest key opt req)
((top)
(top)
(top)
(top)
(top))
("i2285"
"i2283"
"i2281"
"i2279"
"i2277"))
#(ribcage
#(orig-args)
#((top))
#("i2276"))
#(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
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))
("i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i414"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i390"
"i388"
"i386"
"i384"
"i382"
"i380"
"i379"
"i378"
"i376"
"i375"
"i374"
"i373"
"i372"
"i370"
"i368"
"i366"
"i364"
"i362"
"i360"
"i358"
"i356"
"i353"
"i351"
"i350"
"i349"
"i348"
"i347"
"i346"
"i345"
"i344"
"i343"
"i341"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i325"
"i324"
"i323"
"i322"
"i321"
"i319"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i253"
"i251"
"i249"
"i248"
"i247"
"i246"
"i245"
"i243"
"i241"
"i239"
"i236"
"i234"
"i232"
"i230"
"i228"
"i226"
"i224"
"i222"
"i220"
"i218"
"i216"
"i214"
"i212"
"i210"
"i208"
"i206"
"i204"
"i202"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors)
((top) (top) (top))
("i40" "i39" "i38")))
(hygiene guile))))
#{ropt 2338}#)))
#{tmp 2344}#)
(let ((#{tmp 2353}#
($sc-dispatch
#{tmp 2342}#
'((any any) . any))))
(if (if #{tmp 2353}#
(@apply
(lambda (#{a 2357}# #{init 2358}# #{b 2359}#)
(#{id? 339}# #{a 2357}#))
#{tmp 2353}#)
#f)
(@apply
(lambda (#{a 2363}# #{init 2364}# #{b 2365}#)
(#{opt 2280}#
#{b 2365}#
#{req 2337}#
(cons (list #{a 2363}# #{init 2364}#)
#{ropt 2338}#)))
#{tmp 2353}#)
(let ((#{tmp 2366}#
($sc-dispatch #{tmp 2342}# '(any . any))))
(if (if #{tmp 2366}#
(@apply
(lambda (#{a 2369}# #{b 2370}#)
(eq? (syntax->datum #{a 2369}#) #:key))
#{tmp 2366}#)
#f)
(@apply
(lambda (#{a 2373}# #{b 2374}#)
(#{key 2282}#
#{b 2374}#
#{req 2337}#
(reverse #{ropt 2338}#)
'()))
#{tmp 2366}#)
(let ((#{tmp 2375}#
($sc-dispatch
#{tmp 2342}#
'(any any))))
(if (if #{tmp 2375}#
(@apply
(lambda (#{a 2378}# #{b 2379}#)
(eq? (syntax->datum #{a 2378}#)
#:rest))
#{tmp 2375}#)
#f)
(@apply
(lambda (#{a 2382}# #{b 2383}#)
(#{rest 2284}#
#{b 2383}#
#{req 2337}#
(reverse #{ropt 2338}#)
'()))
#{tmp 2375}#)
(let ((#{tmp 2384}# (list #{tmp 2342}#)))
(if (if #{tmp 2384}#
(@apply
(lambda (#{r 2386}#)
(#{id? 339}# #{r 2386}#))
#{tmp 2384}#)
#f)
(@apply
(lambda (#{r 2388}#)
(#{rest 2284}#
#{r 2388}#
#{req 2337}#
(reverse #{ropt 2338}#)
'()))
#{tmp 2384}#)
(let ((#{else 2390}# #{tmp 2342}#))
(syntax-violation
'lambda*
"invalid optional argument list"
#{orig-args 2275}#
#{args 2336}#)))))))))))))))))
(#{key 2282}#
(lambda (#{args 2391}#
#{req 2392}#
#{opt 2393}#
#{rkey 2394}#)
(let ((#{tmp 2399}# #{args 2391}#))
(let ((#{tmp 2400}# ($sc-dispatch #{tmp 2399}# '())))
(if #{tmp 2400}#
(@apply
(lambda ()
(#{check 2286}#
#{req 2392}#
#{opt 2393}#
#f
(cons #f (reverse #{rkey 2394}#))))
#{tmp 2400}#)
(let ((#{tmp 2401}#
($sc-dispatch #{tmp 2399}# '(any . any))))
(if (if #{tmp 2401}#
(@apply
(lambda (#{a 2404}# #{b 2405}#)
(#{id? 339}# #{a 2404}#))
#{tmp 2401}#)
#f)
(@apply
(lambda (#{a 2408}# #{b 2409}#)
(let ((#{tmp 2411}#
(symbol->keyword
(syntax->datum #{a 2408}#))))
(let ((#{k 2413}# #{tmp 2411}#))
(#{key 2282}#
#{b 2409}#
#{req 2392}#
#{opt 2393}#
(cons (cons #{k 2413}#
(cons #{a 2408}#
'(#(syntax-object
#f
((top)
#(ribcage () () ())
#(ribcage
#(k)
#((top))
#("i2412"))
#(ribcage
#(a b)
#((top) (top))
#("i2406" "i2407"))
#(ribcage () () ())
#(ribcage
#(args req opt rkey)
#((top)
(top)
(top)
(top))
#("i2395"
"i2396"
"i2397"
"i2398"))
#(ribcage
(check rest
key
opt
req)
((top)
(top)
(top)
(top)
(top))
("i2285"
"i2283"
"i2281"
"i2279"
"i2277"))
#(ribcage
#(orig-args)
#((top))
#("i2276"))
#(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
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))
("i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i414"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i390"
"i388"
"i386"
"i384"
"i382"
"i380"
"i379"
"i378"
"i376"
"i375"
"i374"
"i373"
"i372"
"i370"
"i368"
"i366"
"i364"
"i362"
"i360"
"i358"
"i356"
"i353"
"i351"
"i350"
"i349"
"i348"
"i347"
"i346"
"i345"
"i344"
"i343"
"i341"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i325"
"i324"
"i323"
"i322"
"i321"
"i319"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i253"
"i251"
"i249"
"i248"
"i247"
"i246"
"i245"
"i243"
"i241"
"i239"
"i236"
"i234"
"i232"
"i230"
"i228"
"i226"
"i224"
"i222"
"i220"
"i218"
"i216"
"i214"
"i212"
"i210"
"i208"
"i206"
"i204"
"i202"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors)
((top) (top) (top))
("i40"
"i39"
"i38")))
(hygiene guile)))))
#{rkey 2394}#)))))
#{tmp 2401}#)
(let ((#{tmp 2414}#
($sc-dispatch
#{tmp 2399}#
'((any any) . any))))
(if (if #{tmp 2414}#
(@apply
(lambda (#{a 2418}# #{init 2419}# #{b 2420}#)
(#{id? 339}# #{a 2418}#))
#{tmp 2414}#)
#f)
(@apply
(lambda (#{a 2424}# #{init 2425}# #{b 2426}#)
(let ((#{tmp 2428}#
(symbol->keyword
(syntax->datum #{a 2424}#))))
(let ((#{k 2430}# #{tmp 2428}#))
(#{key 2282}#
#{b 2426}#
#{req 2392}#
#{opt 2393}#
(cons (list #{k 2430}#
#{a 2424}#
#{init 2425}#)
#{rkey 2394}#)))))
#{tmp 2414}#)
(let ((#{tmp 2431}#
($sc-dispatch
#{tmp 2399}#
'((any any any) . any))))
(if (if #{tmp 2431}#
(@apply
(lambda (#{a 2436}#
#{init 2437}#
#{k 2438}#
#{b 2439}#)
(if (#{id? 339}# #{a 2436}#)
(keyword? (syntax->datum #{k 2438}#))
#f))
#{tmp 2431}#)
#f)
(@apply
(lambda (#{a 2446}#
#{init 2447}#
#{k 2448}#
#{b 2449}#)
(#{key 2282}#
#{b 2449}#
#{req 2392}#
#{opt 2393}#
(cons (list #{k 2448}#
#{a 2446}#
#{init 2447}#)
#{rkey 2394}#)))
#{tmp 2431}#)
(let ((#{tmp 2450}#
($sc-dispatch #{tmp 2399}# '(any))))
(if (if #{tmp 2450}#
(@apply
(lambda (#{aok 2452}#)
(eq? (syntax->datum #{aok 2452}#)
#:allow-other-keys))
#{tmp 2450}#)
#f)
(@apply
(lambda (#{aok 2454}#)
(#{check 2286}#
#{req 2392}#
#{opt 2393}#
#f
(cons #t (reverse #{rkey 2394}#))))
#{tmp 2450}#)
(let ((#{tmp 2455}#
($sc-dispatch
#{tmp 2399}#
'(any any any))))
(if (if #{tmp 2455}#
(@apply
(lambda (#{aok 2459}#
#{a 2460}#
#{b 2461}#)
(if (eq? (syntax->datum
#{aok 2459}#)
#:allow-other-keys)
(eq? (syntax->datum
#{a 2460}#)
#:rest)
#f))
#{tmp 2455}#)
#f)
(@apply
(lambda (#{aok 2467}#
#{a 2468}#
#{b 2469}#)
(#{rest 2284}#
#{b 2469}#
#{req 2392}#
#{opt 2393}#
(cons #t
(reverse #{rkey 2394}#))))
#{tmp 2455}#)
(let ((#{tmp 2470}#
($sc-dispatch
#{tmp 2399}#
'(any . any))))
(if (if #{tmp 2470}#
(@apply
(lambda (#{aok 2473}#
#{r 2474}#)
(if (eq? (syntax->datum
#{aok 2473}#)
#:allow-other-keys)
(#{id? 339}# #{r 2474}#)
#f))
#{tmp 2470}#)
#f)
(@apply
(lambda (#{aok 2479}# #{r 2480}#)
(#{rest 2284}#
#{r 2480}#
#{req 2392}#
#{opt 2393}#
(cons #t
(reverse
#{rkey 2394}#))))
#{tmp 2470}#)
(let ((#{tmp 2481}#
($sc-dispatch
#{tmp 2399}#
'(any any))))
(if (if #{tmp 2481}#
(@apply
(lambda (#{a 2484}#
#{b 2485}#)
(eq? (syntax->datum
#{a 2484}#)
#:rest))
#{tmp 2481}#)
#f)
(@apply
(lambda (#{a 2488}#
#{b 2489}#)
(#{rest 2284}#
#{b 2489}#
#{req 2392}#
#{opt 2393}#
(cons #f
(reverse
#{rkey 2394}#))))
#{tmp 2481}#)
(let ((#{tmp 2490}#
(list #{tmp 2399}#)))
(if (if #{tmp 2490}#
(@apply
(lambda (#{r 2492}#)
(#{id? 339}#
#{r 2492}#))
#{tmp 2490}#)
#f)
(@apply
(lambda (#{r 2494}#)
(#{rest 2284}#
#{r 2494}#
#{req 2392}#
#{opt 2393}#
(cons #f
(reverse
#{rkey 2394}#))))
#{tmp 2490}#)
(let ((#{else 2496}#
#{tmp 2399}#))
(syntax-violation
'lambda*
"invalid keyword argument list"
#{orig-args 2275}#
#{args 2391}#)))))))))))))))))))))))
(#{rest 2284}#
(lambda (#{args 2497}#
#{req 2498}#
#{opt 2499}#
#{kw 2500}#)
(let ((#{tmp 2505}# #{args 2497}#))
(let ((#{tmp 2506}# (list #{tmp 2505}#)))
(if (if #{tmp 2506}#
(@apply
(lambda (#{r 2508}#) (#{id? 339}# #{r 2508}#))
#{tmp 2506}#)
#f)
(@apply
(lambda (#{r 2510}#)
(#{check 2286}#
#{req 2498}#
#{opt 2499}#
#{r 2510}#
#{kw 2500}#))
#{tmp 2506}#)
(let ((#{else 2512}# #{tmp 2505}#))
(syntax-violation
'lambda*
"invalid rest argument"
#{orig-args 2275}#
#{args 2497}#)))))))
(#{check 2286}#
(lambda (#{req 2513}#
#{opt 2514}#
#{rest 2515}#
#{kw 2516}#)
(if (#{distinct-bound-ids? 401}#
(append
#{req 2513}#
(map car #{opt 2514}#)
(if #{rest 2515}# (list #{rest 2515}#) '())
(if (pair? #{kw 2516}#)
(map cadr (cdr #{kw 2516}#))
'())))
(values
#{req 2513}#
#{opt 2514}#
#{rest 2515}#
#{kw 2516}#)
(syntax-violation
'lambda*
"duplicate identifier in argument list"
#{orig-args 2275}#)))))
(begin (#{req 2278}# #{orig-args 2275}# '())))))
(#{chi-lambda-case 443}#
(lambda (#{e 2524}#
#{r 2525}#
#{w 2526}#
#{s 2527}#
#{mod 2528}#
#{get-formals 2529}#
#{clauses 2530}#)
(letrec*
((#{expand-req 2539}#
(lambda (#{req 2546}#
#{opt 2547}#
#{rest 2548}#
#{kw 2549}#
#{body 2550}#)
(begin
(let ((#{vars 2558}#
(map #{gen-var 447}# #{req 2546}#))
(#{labels 2559}#
(#{gen-labels 354}# #{req 2546}#)))
(begin
(let ((#{r* 2562}#
(#{extend-var-env 329}#
#{labels 2559}#
#{vars 2558}#
#{r 2525}#))
(#{w* 2563}#
(#{make-binding-wrap 383}#
#{req 2546}#
#{labels 2559}#
#{w 2526}#)))
(#{expand-opt 2541}#
(map syntax->datum #{req 2546}#)
#{opt 2547}#
#{rest 2548}#
#{kw 2549}#
#{body 2550}#
(reverse #{vars 2558}#)
#{r* 2562}#
#{w* 2563}#
'()
'())))))))
(#{expand-opt 2541}#
(lambda (#{req 2564}#
#{opt 2565}#
#{rest 2566}#
#{kw 2567}#
#{body 2568}#
#{vars 2569}#
#{r* 2570}#
#{w* 2571}#
#{out 2572}#
#{inits 2573}#)
(if (pair? #{opt 2565}#)
(let ((#{tmp 2586}# (car #{opt 2565}#)))
(let ((#{tmp 2587}#
($sc-dispatch #{tmp 2586}# '(any any))))
(if #{tmp 2587}#
(@apply
(lambda (#{id 2590}# #{i 2591}#)
(begin
(let ((#{v 2594}# (#{gen-var 447}# #{id 2590}#)))
(begin
(let ((#{l 2596}#
(#{gen-labels 354}#
(list #{v 2594}#))))
(begin
(let ((#{r** 2598}#
(#{extend-var-env 329}#
#{l 2596}#
(list #{v 2594}#)
#{r* 2570}#)))
(begin
(let ((#{w** 2600}#
(#{make-binding-wrap 383}#
(list #{id 2590}#)
#{l 2596}#
#{w* 2571}#)))
(#{expand-opt 2541}#
#{req 2564}#
(cdr #{opt 2565}#)
#{rest 2566}#
#{kw 2567}#
#{body 2568}#
(cons #{v 2594}# #{vars 2569}#)
#{r** 2598}#
#{w** 2600}#
(cons (syntax->datum #{id 2590}#)
#{out 2572}#)
(cons (#{chi 419}#
#{i 2591}#
#{r* 2570}#
#{w* 2571}#
#{mod 2528}#)
#{inits 2573}#)))))))))))
#{tmp 2587}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 2586}#))))
(if #{rest 2566}#
(begin
(let ((#{v 2605}# (#{gen-var 447}# #{rest 2566}#)))
(begin
(let ((#{l 2607}#
(#{gen-labels 354}# (list #{v 2605}#))))
(begin
(let ((#{r* 2609}#
(#{extend-var-env 329}#
#{l 2607}#
(list #{v 2605}#)
#{r* 2570}#)))
(begin
(let ((#{w* 2611}#
(#{make-binding-wrap 383}#
(list #{rest 2566}#)
#{l 2607}#
#{w* 2571}#)))
(#{expand-kw 2543}#
#{req 2564}#
(if (pair? #{out 2572}#)
(reverse #{out 2572}#)
#f)
(syntax->datum #{rest 2566}#)
(if (pair? #{kw 2567}#)
(cdr #{kw 2567}#)
#{kw 2567}#)
#{body 2568}#
(cons #{v 2605}# #{vars 2569}#)
#{r* 2609}#
#{w* 2611}#
(if (pair? #{kw 2567}#)
(car #{kw 2567}#)
#f)
'()
#{inits 2573}#)))))))))
(#{expand-kw 2543}#
#{req 2564}#
(if (pair? #{out 2572}#)
(reverse #{out 2572}#)
#f)
#f
(if (pair? #{kw 2567}#)
(cdr #{kw 2567}#)
#{kw 2567}#)
#{body 2568}#
#{vars 2569}#
#{r* 2570}#
#{w* 2571}#
(if (pair? #{kw 2567}#) (car #{kw 2567}#) #f)
'()
#{inits 2573}#)))))
(#{expand-kw 2543}#
(lambda (#{req 2613}#
#{opt 2614}#
#{rest 2615}#
#{kw 2616}#
#{body 2617}#
#{vars 2618}#
#{r* 2619}#
#{w* 2620}#
#{aok 2621}#
#{out 2622}#
#{inits 2623}#)
(if (pair? #{kw 2616}#)
(let ((#{tmp 2637}# (car #{kw 2616}#)))
(let ((#{tmp 2638}#
($sc-dispatch #{tmp 2637}# '(any any any))))
(if #{tmp 2638}#
(@apply
(lambda (#{k 2642}# #{id 2643}# #{i 2644}#)
(begin
(let ((#{v 2647}# (#{gen-var 447}# #{id 2643}#)))
(begin
(let ((#{l 2649}#
(#{gen-labels 354}#
(list #{v 2647}#))))
(begin
(let ((#{r** 2651}#
(#{extend-var-env 329}#
#{l 2649}#
(list #{v 2647}#)
#{r* 2619}#)))
(begin
(let ((#{w** 2653}#
(#{make-binding-wrap 383}#
(list #{id 2643}#)
#{l 2649}#
#{w* 2620}#)))
(#{expand-kw 2543}#
#{req 2613}#
#{opt 2614}#
#{rest 2615}#
(cdr #{kw 2616}#)
#{body 2617}#
(cons #{v 2647}# #{vars 2618}#)
#{r** 2651}#
#{w** 2653}#
#{aok 2621}#
(cons (list (syntax->datum
#{k 2642}#)
(syntax->datum
#{id 2643}#)
#{v 2647}#)
#{out 2622}#)
(cons (#{chi 419}#
#{i 2644}#
#{r* 2619}#
#{w* 2620}#
#{mod 2528}#)
#{inits 2623}#)))))))))))
#{tmp 2638}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 2637}#))))
(#{expand-body 2545}#
#{req 2613}#
#{opt 2614}#
#{rest 2615}#
(if (begin
(let ((#{t 2657}# #{aok 2621}#))
(if #{t 2657}# #{t 2657}# (pair? #{out 2622}#))))
(cons #{aok 2621}# (reverse #{out 2622}#))
#f)
#{body 2617}#
(reverse #{vars 2618}#)
#{r* 2619}#
#{w* 2620}#
(reverse #{inits 2623}#)
'()))))
(#{expand-body 2545}#
(lambda (#{req 2659}#
#{opt 2660}#
#{rest 2661}#
#{kw 2662}#
#{body 2663}#
#{vars 2664}#
#{r* 2665}#
#{w* 2666}#
#{inits 2667}#
#{meta 2668}#)
(let ((#{tmp 2679}# #{body 2663}#))
(let ((#{tmp 2680}#
($sc-dispatch #{tmp 2679}# '(any any . each-any))))
(if (if #{tmp 2680}#
(@apply
(lambda (#{docstring 2684}# #{e1 2685}# #{e2 2686}#)
(string? (syntax->datum #{docstring 2684}#)))
#{tmp 2680}#)
#f)
(@apply
(lambda (#{docstring 2690}# #{e1 2691}# #{e2 2692}#)
(#{expand-body 2545}#
#{req 2659}#
#{opt 2660}#
#{rest 2661}#
#{kw 2662}#
(cons #{e1 2691}# #{e2 2692}#)
#{vars 2664}#
#{r* 2665}#
#{w* 2666}#
#{inits 2667}#
(append
#{meta 2668}#
(list (cons 'documentation
(syntax->datum #{docstring 2690}#))))))
#{tmp 2680}#)
(let ((#{tmp 2695}#
($sc-dispatch
#{tmp 2679}#
'(#(vector #(each (any . any)))
any
.
each-any))))
(if #{tmp 2695}#
(@apply
(lambda (#{k 2700}#
#{v 2701}#
#{e1 2702}#
#{e2 2703}#)
(#{expand-body 2545}#
#{req 2659}#
#{opt 2660}#
#{rest 2661}#
#{kw 2662}#
(cons #{e1 2702}# #{e2 2703}#)
#{vars 2664}#
#{r* 2665}#
#{w* 2666}#
#{inits 2667}#
(append
#{meta 2668}#
(syntax->datum
(map cons #{k 2700}# #{v 2701}#)))))
#{tmp 2695}#)
(let ((#{tmp 2707}#
($sc-dispatch #{tmp 2679}# '(any . each-any))))
(if #{tmp 2707}#
(@apply
(lambda (#{e1 2710}# #{e2 2711}#)
(values
#{meta 2668}#
#{req 2659}#
#{opt 2660}#
#{rest 2661}#
#{kw 2662}#
#{inits 2667}#
#{vars 2664}#
(#{chi-body 427}#
(cons #{e1 2710}# #{e2 2711}#)
(#{source-wrap 407}#
#{e 2524}#
#{w 2526}#
#{s 2527}#
#{mod 2528}#)
#{r* 2665}#
#{w* 2666}#
#{mod 2528}#)))
#{tmp 2707}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 2679}#)))))))))))
(begin
(let ((#{tmp 2713}# #{clauses 2530}#))
(let ((#{tmp 2714}# ($sc-dispatch #{tmp 2713}# '())))
(if #{tmp 2714}#
(@apply (lambda () (values '() #f)) #{tmp 2714}#)
(let ((#{tmp 2715}#
($sc-dispatch
#{tmp 2713}#
'((any any . each-any)
.
#(each (any any . each-any))))))
(if #{tmp 2715}#
(@apply
(lambda (#{args 2722}#
#{e1 2723}#
#{e2 2724}#
#{args* 2725}#
#{e1* 2726}#
#{e2* 2727}#)
(call-with-values
(lambda () (#{get-formals 2529}# #{args 2722}#))
(lambda (#{req 2728}#
#{opt 2729}#
#{rest 2730}#
#{kw 2731}#)
(call-with-values
(lambda ()
(#{expand-req 2539}#
#{req 2728}#
#{opt 2729}#
#{rest 2730}#
#{kw 2731}#
(cons #{e1 2723}# #{e2 2724}#)))
(lambda (#{meta 2737}#
#{req 2738}#
#{opt 2739}#
#{rest 2740}#
#{kw 2741}#
#{inits 2742}#
#{vars 2743}#
#{body 2744}#)
(call-with-values
(lambda ()
(#{chi-lambda-case 443}#
#{e 2524}#
#{r 2525}#
#{w 2526}#
#{s 2527}#
#{mod 2528}#
#{get-formals 2529}#
(map (lambda (#{tmp 2755}#
#{tmp 2754}#
#{tmp 2753}#)
(cons #{tmp 2753}#
(cons #{tmp 2754}#
#{tmp 2755}#)))
#{e2* 2727}#
#{e1* 2726}#
#{args* 2725}#)))
(lambda (#{meta* 2757}# #{else* 2758}#)
(values
(append #{meta 2737}# #{meta* 2757}#)
(#{build-lambda-case 287}#
#{s 2527}#
#{req 2738}#
#{opt 2739}#
#{rest 2740}#
#{kw 2741}#
#{inits 2742}#
#{vars 2743}#
#{body 2744}#
#{else* 2758}#)))))))))
#{tmp 2715}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 2713}#))))))))))
(#{strip 445}#
(lambda (#{x 2761}# #{w 2762}#)
(if (memq 'top (car #{w 2762}#))
#{x 2761}#
(letrec*
((#{f 2769}#
(lambda (#{x 2770}#)
(if (#{syntax-object? 305}# #{x 2770}#)
(#{strip 445}#
(#{syntax-object-expression 307}# #{x 2770}#)
(#{syntax-object-wrap 309}# #{x 2770}#))
(if (pair? #{x 2770}#)
(begin
(let ((#{a 2777}# (#{f 2769}# (car #{x 2770}#)))
(#{d 2778}# (#{f 2769}# (cdr #{x 2770}#))))
(if (if (eq? #{a 2777}# (car #{x 2770}#))
(eq? #{d 2778}# (cdr #{x 2770}#))
#f)
#{x 2770}#
(cons #{a 2777}# #{d 2778}#))))
(if (vector? #{x 2770}#)
(begin
(let ((#{old 2784}# (vector->list #{x 2770}#)))
(begin
(let ((#{new 2786}# (map #{f 2769}# #{old 2784}#)))
(letrec*
((#{lp 2790}#
(lambda (#{l1 2791}# #{l2 2792}#)
(if (null? #{l1 2791}#)
#{x 2770}#
(if (eq? (car #{l1 2791}#)
(car #{l2 2792}#))
(#{lp 2790}#
(cdr #{l1 2791}#)
(cdr #{l2 2792}#))
(list->vector #{new 2786}#))))))
(begin
(#{lp 2790}# #{old 2784}# #{new 2786}#)))))))
#{x 2770}#))))))
(begin (#{f 2769}# #{x 2761}#))))))
(#{gen-var 447}#
(lambda (#{id 2794}#)
(begin
(let ((#{id 2797}#
(if (#{syntax-object? 305}# #{id 2794}#)
(#{syntax-object-expression 307}# #{id 2794}#)
#{id 2794}#)))
(gensym
(string-append (symbol->string #{id 2797}#) " "))))))
(#{lambda-var-list 449}#
(lambda (#{vars 2799}#)
(letrec*
((#{lvl 2805}#
(lambda (#{vars 2806}# #{ls 2807}# #{w 2808}#)
(if (pair? #{vars 2806}#)
(#{lvl 2805}#
(cdr #{vars 2806}#)
(cons (#{wrap 405}# (car #{vars 2806}#) #{w 2808}# #f)
#{ls 2807}#)
#{w 2808}#)
(if (#{id? 339}# #{vars 2806}#)
(cons (#{wrap 405}# #{vars 2806}# #{w 2808}# #f)
#{ls 2807}#)
(if (null? #{vars 2806}#)
#{ls 2807}#
(if (#{syntax-object? 305}# #{vars 2806}#)
(#{lvl 2805}#
(#{syntax-object-expression 307}# #{vars 2806}#)
#{ls 2807}#
(#{join-wraps 387}#
#{w 2808}#
(#{syntax-object-wrap 309}# #{vars 2806}#)))
(cons #{vars 2806}# #{ls 2807}#))))))))
(begin (#{lvl 2805}# #{vars 2799}# '() '(())))))))
(begin
(lambda (#{src 767}# #{name 768}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 2)
#{src 767}#
#{name 768}#))
(lambda (#{x 1145}# #{update 1146}#)
(vector-set! #{x 1145}# 1 #{update 1146}#))
(lambda (#{x 1149}# #{update 1150}#)
(vector-set! #{x 1149}# 2 #{update 1150}#))
(lambda (#{x 1153}# #{update 1154}#)
(vector-set! #{x 1153}# 3 #{update 1154}#))
(lambda (#{x 1234}#)
(if (vector? #{x 1234}#)
(if (= (vector-length #{x 1234}#) 4)
(eq? (vector-ref #{x 1234}# 0) 'ribcage)
#f)
#f))
(begin
(#{global-extend 335}#
'local-syntax
'letrec-syntax
#t)
(#{global-extend 335}#
'local-syntax
'let-syntax
#f)
(#{global-extend 335}#
'core
'fluid-let-syntax
(lambda (#{e 2819}#
#{r 2820}#
#{w 2821}#
#{s 2822}#
#{mod 2823}#)
(let ((#{tmp 2829}# #{e 2819}#))
(let ((#{tmp 2830}#
($sc-dispatch
#{tmp 2829}#
'(_ #(each (any any)) any . each-any))))
(if (if #{tmp 2830}#
(@apply
(lambda (#{var 2835}#
#{val 2836}#
#{e1 2837}#
#{e2 2838}#)
(#{valid-bound-ids? 399}# #{var 2835}#))
#{tmp 2830}#)
#f)
(@apply
(lambda (#{var 2844}#
#{val 2845}#
#{e1 2846}#
#{e2 2847}#)
(begin
(let ((#{names 2849}#
(map (lambda (#{x 2850}#)
(#{id-var-name 393}#
#{x 2850}#
#{w 2821}#))
#{var 2844}#)))
(begin
(for-each
(lambda (#{id 2853}# #{n 2854}#)
(begin
(let ((#{atom-key 2859}#
(car (#{lookup 333}#
#{n 2854}#
#{r 2820}#
#{mod 2823}#))))
(if (eqv? #{atom-key 2859}#
'displaced-lexical)
(syntax-violation
'fluid-let-syntax
"identifier out of context"
#{e 2819}#
(#{source-wrap 407}#
#{id 2853}#
#{w 2821}#
#{s 2822}#
#{mod 2823}#))))))
#{var 2844}#
#{names 2849}#)
(#{chi-body 427}#
(cons #{e1 2846}# #{e2 2847}#)
(#{source-wrap 407}#
#{e 2819}#
#{w 2821}#
#{s 2822}#
#{mod 2823}#)
(#{extend-env 327}#
#{names 2849}#
(begin
(let ((#{trans-r 2865}#
(#{macros-only-env 331}# #{r 2820}#)))
(map (lambda (#{x 2866}#)
(cons 'macro
(#{eval-local-transformer 431}#
(#{chi 419}#
#{x 2866}#
#{trans-r 2865}#
#{w 2821}#
#{mod 2823}#)
#{mod 2823}#)))
#{val 2845}#)))
#{r 2820}#)
#{w 2821}#
#{mod 2823}#)))))
#{tmp 2830}#)
(let ((#{_ 2871}# #{tmp 2829}#))
(syntax-violation
'fluid-let-syntax
"bad syntax"
(#{source-wrap 407}#
#{e 2819}#
#{w 2821}#
#{s 2822}#
#{mod 2823}#))))))))
(#{global-extend 335}#
'core
'quote
(lambda (#{e 2872}#
#{r 2873}#
#{w 2874}#
#{s 2875}#
#{mod 2876}#)
(let ((#{tmp 2882}# #{e 2872}#))
(let ((#{tmp 2883}#
($sc-dispatch #{tmp 2882}# '(_ any))))
(if #{tmp 2883}#
(@apply
(lambda (#{e 2885}#)
(#{build-data 291}#
#{s 2875}#
(#{strip 445}# #{e 2885}# #{w 2874}#)))
#{tmp 2883}#)
(let ((#{_ 2887}# #{tmp 2882}#))
(syntax-violation
'quote
"bad syntax"
(#{source-wrap 407}#
#{e 2872}#
#{w 2874}#
#{s 2875}#
#{mod 2876}#))))))))
(#{global-extend 335}#
'core
'syntax
(letrec*
((#{gen-syntax 2889}#
(lambda (#{src 2904}#
#{e 2905}#
#{r 2906}#
#{maps 2907}#
#{ellipsis? 2908}#
#{mod 2909}#)
(if (#{id? 339}# #{e 2905}#)
(begin
(let ((#{label 2917}#
(#{id-var-name 393}# #{e 2905}# '(()))))
(begin
(let ((#{b 2920}#
(#{lookup 333}#
#{label 2917}#
#{r 2906}#
#{mod 2909}#)))
(if (eq? (car #{b 2920}#) 'syntax)
(call-with-values
(lambda ()
(begin
(let ((#{var.lev 2923}# (cdr #{b 2920}#)))
(#{gen-ref 2891}#
#{src 2904}#
(car #{var.lev 2923}#)
(cdr #{var.lev 2923}#)
#{maps 2907}#))))
(lambda (#{var 2925}# #{maps 2926}#)
(values
(list 'ref #{var 2925}#)
#{maps 2926}#)))
(if (#{ellipsis? 2908}# #{e 2905}#)
(syntax-violation
'syntax
"misplaced ellipsis"
#{src 2904}#)
(values
(list 'quote #{e 2905}#)
#{maps 2907}#)))))))
(let ((#{tmp 2931}# #{e 2905}#))
(let ((#{tmp 2932}#
($sc-dispatch #{tmp 2931}# '(any any))))
(if (if #{tmp 2932}#
(@apply
(lambda (#{dots 2935}# #{e 2936}#)
(#{ellipsis? 2908}# #{dots 2935}#))
#{tmp 2932}#)
#f)
(@apply
(lambda (#{dots 2939}# #{e 2940}#)
(#{gen-syntax 2889}#
#{src 2904}#
#{e 2940}#
#{r 2906}#
#{maps 2907}#
(lambda (#{x 2941}#) #f)
#{mod 2909}#))
#{tmp 2932}#)
(let ((#{tmp 2943}#
($sc-dispatch #{tmp 2931}# '(any any . any))))
(if (if #{tmp 2943}#
(@apply
(lambda (#{x 2947}# #{dots 2948}# #{y 2949}#)
(#{ellipsis? 2908}# #{dots 2948}#))
#{tmp 2943}#)
#f)
(@apply
(lambda (#{x 2953}# #{dots 2954}# #{y 2955}#)
(letrec*
((#{f 2959}#
(lambda (#{y 2960}# #{k 2961}#)
(let ((#{tmp 2968}# #{y 2960}#))
(let ((#{tmp 2969}#
($sc-dispatch
#{tmp 2968}#
'(any . any))))
(if (if #{tmp 2969}#
(@apply
(lambda (#{dots 2972}#
#{y 2973}#)
(#{ellipsis? 2908}#
#{dots 2972}#))
#{tmp 2969}#)
#f)
(@apply
(lambda (#{dots 2976}#
#{y 2977}#)
(#{f 2959}#
#{y 2977}#
(lambda (#{maps 2978}#)
(call-with-values
(lambda ()
(#{k 2961}#
(cons '()
#{maps 2978}#)))
(lambda (#{x 2980}#
#{maps 2981}#)
(if (null? (car #{maps 2981}#))
(syntax-violation
'syntax
"extra ellipsis"
#{src 2904}#)
(values
(#{gen-mappend 2893}#
#{x 2980}#
(car #{maps 2981}#))
(cdr #{maps 2981}#))))))))
#{tmp 2969}#)
(let ((#{_ 2985}# #{tmp 2968}#))
(call-with-values
(lambda ()
(#{gen-syntax 2889}#
#{src 2904}#
#{y 2960}#
#{r 2906}#
#{maps 2907}#
#{ellipsis? 2908}#
#{mod 2909}#))
(lambda (#{y 2986}#
#{maps 2987}#)
(call-with-values
(lambda ()
(#{k 2961}#
#{maps 2987}#))
(lambda (#{x 2990}#
#{maps 2991}#)
(values
(#{gen-append 2899}#
#{x 2990}#
#{y 2986}#)
#{maps 2991}#))))))))))))
(begin
(#{f 2959}#
#{y 2955}#
(lambda (#{maps 2962}#)
(call-with-values
(lambda ()
(#{gen-syntax 2889}#
#{src 2904}#
#{x 2953}#
#{r 2906}#
(cons '() #{maps 2962}#)
#{ellipsis? 2908}#
#{mod 2909}#))
(lambda (#{x 2964}# #{maps 2965}#)
(if (null? (car #{maps 2965}#))
(syntax-violation
'syntax
"extra ellipsis"
#{src 2904}#)
(values
(#{gen-map 2895}#
#{x 2964}#
(car #{maps 2965}#))
(cdr #{maps 2965}#))))))))))
#{tmp 2943}#)
(let ((#{tmp 2994}#
($sc-dispatch #{tmp 2931}# '(any . any))))
(if #{tmp 2994}#
(@apply
(lambda (#{x 2997}# #{y 2998}#)
(call-with-values
(lambda ()
(#{gen-syntax 2889}#
#{src 2904}#
#{x 2997}#
#{r 2906}#
#{maps 2907}#
#{ellipsis? 2908}#
#{mod 2909}#))
(lambda (#{x 2999}# #{maps 3000}#)
(call-with-values
(lambda ()
(#{gen-syntax 2889}#
#{src 2904}#
#{y 2998}#
#{r 2906}#
#{maps 3000}#
#{ellipsis? 2908}#
#{mod 2909}#))
(lambda (#{y 3003}# #{maps 3004}#)
(values
(#{gen-cons 2897}#
#{x 2999}#
#{y 3003}#)
#{maps 3004}#))))))
#{tmp 2994}#)
(let ((#{tmp 3007}#
($sc-dispatch
#{tmp 2931}#
'#(vector (any . each-any)))))
(if #{tmp 3007}#
(@apply
(lambda (#{e1 3010}# #{e2 3011}#)
(call-with-values
(lambda ()
(#{gen-syntax 2889}#
#{src 2904}#
(cons #{e1 3010}# #{e2 3011}#)
#{r 2906}#
#{maps 2907}#
#{ellipsis? 2908}#
#{mod 2909}#))
(lambda (#{e 3013}# #{maps 3014}#)
(values
(#{gen-vector 2901}# #{e 3013}#)
#{maps 3014}#))))
#{tmp 3007}#)
(let ((#{_ 3018}# #{tmp 2931}#))
(values
(list 'quote #{e 2905}#)
#{maps 2907}#))))))))))))))
(#{gen-ref 2891}#
(lambda (#{src 3020}#
#{var 3021}#
#{level 3022}#
#{maps 3023}#)
(if (= #{level 3022}# 0)
(values #{var 3021}# #{maps 3023}#)
(if (null? #{maps 3023}#)
(syntax-violation
'syntax
"missing ellipsis"
#{src 3020}#)
(call-with-values
(lambda ()
(#{gen-ref 2891}#
#{src 3020}#
#{var 3021}#
(#{1-}# #{level 3022}#)
(cdr #{maps 3023}#)))
(lambda (#{outer-var 3030}# #{outer-maps 3031}#)
(begin
(let ((#{b 3035}#
(assq #{outer-var 3030}#
(car #{maps 3023}#))))
(if #{b 3035}#
(values (cdr #{b 3035}#) #{maps 3023}#)
(begin
(let ((#{inner-var 3037}#
(#{gen-var 447}# 'tmp)))
(values
#{inner-var 3037}#
(cons (cons (cons #{outer-var 3030}#
#{inner-var 3037}#)
(car #{maps 3023}#))
#{outer-maps 3031}#)))))))))))))
(#{gen-mappend 2893}#
(lambda (#{e 3038}# #{map-env 3039}#)
(list 'apply
'(primitive append)
(#{gen-map 2895}# #{e 3038}# #{map-env 3039}#))))
(#{gen-map 2895}#
(lambda (#{e 3043}# #{map-env 3044}#)
(begin
(let ((#{formals 3049}# (map cdr #{map-env 3044}#))
(#{actuals 3050}#
(map (lambda (#{x 3051}#)
(list 'ref (car #{x 3051}#)))
#{map-env 3044}#)))
(if (eq? (car #{e 3043}#) 'ref)
(car #{actuals 3050}#)
(if (and-map
(lambda (#{x 3058}#)
(if (eq? (car #{x 3058}#) 'ref)
(memq (car (cdr #{x 3058}#)) #{formals 3049}#)
#f))
(cdr #{e 3043}#))
(cons 'map
(cons (list 'primitive (car #{e 3043}#))
(map (begin
(let ((#{r 3064}#
(map cons
#{formals 3049}#
#{actuals 3050}#)))
(lambda (#{x 3065}#)
(cdr (assq (car (cdr #{x 3065}#))
#{r 3064}#)))))
(cdr #{e 3043}#))))
(cons 'map
(cons (list 'lambda #{formals 3049}# #{e 3043}#)
#{actuals 3050}#))))))))
(#{gen-cons 2897}#
(lambda (#{x 3069}# #{y 3070}#)
(begin
(let ((#{atom-key 3075}# (car #{y 3070}#)))
(if (eqv? #{atom-key 3075}# 'quote)
(if (eq? (car #{x 3069}#) 'quote)
(list 'quote
(cons (car (cdr #{x 3069}#))
(car (cdr #{y 3070}#))))
(if (eq? (car (cdr #{y 3070}#)) '())
(list 'list #{x 3069}#)
(list 'cons #{x 3069}# #{y 3070}#)))
(if (eqv? #{atom-key 3075}# 'list)
(cons 'list (cons #{x 3069}# (cdr #{y 3070}#)))
(list 'cons #{x 3069}# #{y 3070}#)))))))
(#{gen-append 2899}#
(lambda (#{x 3084}# #{y 3085}#)
(if (equal? #{y 3085}# ''())
#{x 3084}#
(list 'append #{x 3084}# #{y 3085}#))))
(#{gen-vector 2901}#
(lambda (#{x 3089}#)
(if (eq? (car #{x 3089}#) 'list)
(cons 'vector (cdr #{x 3089}#))
(if (eq? (car #{x 3089}#) 'quote)
(list 'quote
(list->vector (car (cdr #{x 3089}#))))
(list 'list->vector #{x 3089}#)))))
(#{regen 2903}#
(lambda (#{x 3099}#)
(begin
(let ((#{atom-key 3103}# (car #{x 3099}#)))
(if (eqv? #{atom-key 3103}# 'ref)
(#{build-lexical-reference 271}#
'value
#f
(car (cdr #{x 3099}#))
(car (cdr #{x 3099}#)))
(if (eqv? #{atom-key 3103}# 'primitive)
(#{build-primref 289}# #f (car (cdr #{x 3099}#)))
(if (eqv? #{atom-key 3103}# 'quote)
(#{build-data 291}# #f (car (cdr #{x 3099}#)))
(if (eqv? #{atom-key 3103}# 'lambda)
(if (list? (car (cdr #{x 3099}#)))
(#{build-simple-lambda 283}#
#f
(car (cdr #{x 3099}#))
#f
(car (cdr #{x 3099}#))
'()
(#{regen 2903}# (car (cdr (cdr #{x 3099}#)))))
(error "how did we get here" #{x 3099}#))
(#{build-application 265}#
#f
(#{build-primref 289}# #f (car #{x 3099}#))
(map #{regen 2903}# (cdr #{x 3099}#))))))))))))
(begin
(lambda (#{e 3115}#
#{r 3116}#
#{w 3117}#
#{s 3118}#
#{mod 3119}#)
(begin
(let ((#{e 3126}#
(#{source-wrap 407}#
#{e 3115}#
#{w 3117}#
#{s 3118}#
#{mod 3119}#)))
(let ((#{tmp 3127}# #{e 3126}#))
(let ((#{tmp 3128}#
($sc-dispatch #{tmp 3127}# '(_ any))))
(if #{tmp 3128}#
(@apply
(lambda (#{x 3130}#)
(call-with-values
(lambda ()
(#{gen-syntax 2889}#
#{e 3126}#
#{x 3130}#
#{r 3116}#
'()
#{ellipsis? 435}#
#{mod 3119}#))
(lambda (#{e 3131}# #{maps 3132}#)
(#{regen 2903}# #{e 3131}#))))
#{tmp 3128}#)
(let ((#{_ 3136}# #{tmp 3127}#))
(syntax-violation
'syntax
"bad `syntax' form"
#{e 3126}#)))))))))))
(#{global-extend 335}#
'core
'lambda
(lambda (#{e 3137}#
#{r 3138}#
#{w 3139}#
#{s 3140}#
#{mod 3141}#)
(let ((#{tmp 3147}# #{e 3137}#))
(let ((#{tmp 3148}#
($sc-dispatch
#{tmp 3147}#
'(_ any any . each-any))))
(if #{tmp 3148}#
(@apply
(lambda (#{args 3152}# #{e1 3153}# #{e2 3154}#)
(call-with-values
(lambda ()
(#{lambda-formals 437}# #{args 3152}#))
(lambda (#{req 3155}#
#{opt 3156}#
#{rest 3157}#
#{kw 3158}#)
(letrec*
((#{lp 3166}#
(lambda (#{body 3167}# #{meta 3168}#)
(let ((#{tmp 3170}# #{body 3167}#))
(let ((#{tmp 3171}#
($sc-dispatch
#{tmp 3170}#
'(any any . each-any))))
(if (if #{tmp 3171}#
(@apply
(lambda (#{docstring 3175}#
#{e1 3176}#
#{e2 3177}#)
(string?
(syntax->datum
#{docstring 3175}#)))
#{tmp 3171}#)
#f)
(@apply
(lambda (#{docstring 3181}#
#{e1 3182}#
#{e2 3183}#)
(#{lp 3166}#
(cons #{e1 3182}# #{e2 3183}#)
(append
#{meta 3168}#
(list (cons 'documentation
(syntax->datum
#{docstring 3181}#))))))
#{tmp 3171}#)
(let ((#{tmp 3186}#
($sc-dispatch
#{tmp 3170}#
'(#(vector #(each (any . any)))
any
.
each-any))))
(if #{tmp 3186}#
(@apply
(lambda (#{k 3191}#
#{v 3192}#
#{e1 3193}#
#{e2 3194}#)
(#{lp 3166}#
(cons #{e1 3193}# #{e2 3194}#)
(append
#{meta 3168}#
(syntax->datum
(map cons
#{k 3191}#
#{v 3192}#)))))
#{tmp 3186}#)
(let ((#{_ 3199}# #{tmp 3170}#))
(#{chi-simple-lambda 439}#
#{e 3137}#
#{r 3138}#
#{w 3139}#
#{s 3140}#
#{mod 3141}#
#{req 3155}#
#{rest 3157}#
#{meta 3168}#
#{body 3167}#))))))))))
(begin
(#{lp 3166}#
(cons #{e1 3153}# #{e2 3154}#)
'()))))))
#{tmp 3148}#)
(let ((#{_ 3201}# #{tmp 3147}#))
(syntax-violation
'lambda
"bad lambda"
#{e 3137}#)))))))
(#{global-extend 335}#
'core
'lambda*
(lambda (#{e 3202}#
#{r 3203}#
#{w 3204}#
#{s 3205}#
#{mod 3206}#)
(let ((#{tmp 3212}# #{e 3202}#))
(let ((#{tmp 3213}#
($sc-dispatch
#{tmp 3212}#
'(_ any any . each-any))))
(if #{tmp 3213}#
(@apply
(lambda (#{args 3217}# #{e1 3218}# #{e2 3219}#)
(call-with-values
(lambda ()
(#{chi-lambda-case 443}#
#{e 3202}#
#{r 3203}#
#{w 3204}#
#{s 3205}#
#{mod 3206}#
#{lambda*-formals 441}#
(list (cons #{args 3217}#
(cons #{e1 3218}# #{e2 3219}#)))))
(lambda (#{meta 3221}# #{lcase 3222}#)
(#{build-case-lambda 285}#
#{s 3205}#
#{meta 3221}#
#{lcase 3222}#))))
#{tmp 3213}#)
(let ((#{_ 3226}# #{tmp 3212}#))
(syntax-violation
'lambda
"bad lambda*"
#{e 3202}#)))))))
(#{global-extend 335}#
'core
'case-lambda
(lambda (#{e 3227}#
#{r 3228}#
#{w 3229}#
#{s 3230}#
#{mod 3231}#)
(let ((#{tmp 3237}# #{e 3227}#))
(let ((#{tmp 3238}#
($sc-dispatch
#{tmp 3237}#
'(_ (any any . each-any)
.
#(each (any any . each-any))))))
(if #{tmp 3238}#
(@apply
(lambda (#{args 3245}#
#{e1 3246}#
#{e2 3247}#
#{args* 3248}#
#{e1* 3249}#
#{e2* 3250}#)
(call-with-values
(lambda ()
(#{chi-lambda-case 443}#
#{e 3227}#
#{r 3228}#
#{w 3229}#
#{s 3230}#
#{mod 3231}#
#{lambda-formals 437}#
(cons (cons #{args 3245}#
(cons #{e1 3246}# #{e2 3247}#))
(map (lambda (#{tmp 3254}#
#{tmp 3253}#
#{tmp 3252}#)
(cons #{tmp 3252}#
(cons #{tmp 3253}# #{tmp 3254}#)))
#{e2* 3250}#
#{e1* 3249}#
#{args* 3248}#))))
(lambda (#{meta 3256}# #{lcase 3257}#)
(#{build-case-lambda 285}#
#{s 3230}#
#{meta 3256}#
#{lcase 3257}#))))
#{tmp 3238}#)
(let ((#{_ 3261}# #{tmp 3237}#))
(syntax-violation
'case-lambda
"bad case-lambda"
#{e 3227}#)))))))
(#{global-extend 335}#
'core
'case-lambda*
(lambda (#{e 3262}#
#{r 3263}#
#{w 3264}#
#{s 3265}#
#{mod 3266}#)
(let ((#{tmp 3272}# #{e 3262}#))
(let ((#{tmp 3273}#
($sc-dispatch
#{tmp 3272}#
'(_ (any any . each-any)
.
#(each (any any . each-any))))))
(if #{tmp 3273}#
(@apply
(lambda (#{args 3280}#
#{e1 3281}#
#{e2 3282}#
#{args* 3283}#
#{e1* 3284}#
#{e2* 3285}#)
(call-with-values
(lambda ()
(#{chi-lambda-case 443}#
#{e 3262}#
#{r 3263}#
#{w 3264}#
#{s 3265}#
#{mod 3266}#
#{lambda*-formals 441}#
(cons (cons #{args 3280}#
(cons #{e1 3281}# #{e2 3282}#))
(map (lambda (#{tmp 3289}#
#{tmp 3288}#
#{tmp 3287}#)
(cons #{tmp 3287}#
(cons #{tmp 3288}# #{tmp 3289}#)))
#{e2* 3285}#
#{e1* 3284}#
#{args* 3283}#))))
(lambda (#{meta 3291}# #{lcase 3292}#)
(#{build-case-lambda 285}#
#{s 3265}#
#{meta 3291}#
#{lcase 3292}#))))
#{tmp 3273}#)
(let ((#{_ 3296}# #{tmp 3272}#))
(syntax-violation
'case-lambda
"bad case-lambda*"
#{e 3262}#)))))))
(#{global-extend 335}#
'core
'let
(letrec*
((#{chi-let 3298}#
(lambda (#{e 3299}#
#{r 3300}#
#{w 3301}#
#{s 3302}#
#{mod 3303}#
#{constructor 3304}#
#{ids 3305}#
#{vals 3306}#
#{exps 3307}#)
(if (not (#{valid-bound-ids? 399}# #{ids 3305}#))
(syntax-violation
'let
"duplicate bound variable"
#{e 3299}#)
(begin
(let ((#{labels 3319}#
(#{gen-labels 354}# #{ids 3305}#))
(#{new-vars 3320}#
(map #{gen-var 447}# #{ids 3305}#)))
(begin
(let ((#{nw 3323}#
(#{make-binding-wrap 383}#
#{ids 3305}#
#{labels 3319}#
#{w 3301}#))
(#{nr 3324}#
(#{extend-var-env 329}#
#{labels 3319}#
#{new-vars 3320}#
#{r 3300}#)))
(#{constructor 3304}#
#{s 3302}#
(map syntax->datum #{ids 3305}#)
#{new-vars 3320}#
(map (lambda (#{x 3325}#)
(#{chi 419}#
#{x 3325}#
#{r 3300}#
#{w 3301}#
#{mod 3303}#))
#{vals 3306}#)
(#{chi-body 427}#
#{exps 3307}#
(#{source-wrap 407}#
#{e 3299}#
#{nw 3323}#
#{s 3302}#
#{mod 3303}#)
#{nr 3324}#
#{nw 3323}#
#{mod 3303}#))))))))))
(begin
(lambda (#{e 3327}#
#{r 3328}#
#{w 3329}#
#{s 3330}#
#{mod 3331}#)
(let ((#{tmp 3337}# #{e 3327}#))
(let ((#{tmp 3338}#
($sc-dispatch
#{tmp 3337}#
'(_ #(each (any any)) any . each-any))))
(if (if #{tmp 3338}#
(@apply
(lambda (#{id 3343}#
#{val 3344}#
#{e1 3345}#
#{e2 3346}#)
(and-map #{id? 339}# #{id 3343}#))
#{tmp 3338}#)
#f)
(@apply
(lambda (#{id 3352}#
#{val 3353}#
#{e1 3354}#
#{e2 3355}#)
(#{chi-let 3298}#
#{e 3327}#
#{r 3328}#
#{w 3329}#
#{s 3330}#
#{mod 3331}#
#{build-let 295}#
#{id 3352}#
#{val 3353}#
(cons #{e1 3354}# #{e2 3355}#)))
#{tmp 3338}#)
(let ((#{tmp 3359}#
($sc-dispatch
#{tmp 3337}#
'(_ any #(each (any any)) any . each-any))))
(if (if #{tmp 3359}#
(@apply
(lambda (#{f 3365}#
#{id 3366}#
#{val 3367}#
#{e1 3368}#
#{e2 3369}#)
(if (#{id? 339}# #{f 3365}#)
(and-map #{id? 339}# #{id 3366}#)
#f))
#{tmp 3359}#)
#f)
(@apply
(lambda (#{f 3378}#
#{id 3379}#
#{val 3380}#
#{e1 3381}#
#{e2 3382}#)
(#{chi-let 3298}#
#{e 3327}#
#{r 3328}#
#{w 3329}#
#{s 3330}#
#{mod 3331}#
#{build-named-let 297}#
(cons #{f 3378}# #{id 3379}#)
#{val 3380}#
(cons #{e1 3381}# #{e2 3382}#)))
#{tmp 3359}#)
(let ((#{_ 3387}# #{tmp 3337}#))
(syntax-violation
'let
"bad let"
(#{source-wrap 407}#
#{e 3327}#
#{w 3329}#
#{s 3330}#
#{mod 3331}#))))))))))))
(#{global-extend 335}#
'core
'letrec
(lambda (#{e 3388}#
#{r 3389}#
#{w 3390}#
#{s 3391}#
#{mod 3392}#)
(let ((#{tmp 3398}# #{e 3388}#))
(let ((#{tmp 3399}#
($sc-dispatch
#{tmp 3398}#
'(_ #(each (any any)) any . each-any))))
(if (if #{tmp 3399}#
(@apply
(lambda (#{id 3404}#
#{val 3405}#
#{e1 3406}#
#{e2 3407}#)
(and-map #{id? 339}# #{id 3404}#))
#{tmp 3399}#)
#f)
(@apply
(lambda (#{id 3413}#
#{val 3414}#
#{e1 3415}#
#{e2 3416}#)
(begin
(let ((#{ids 3418}# #{id 3413}#))
(if (not (#{valid-bound-ids? 399}# #{ids 3418}#))
(syntax-violation
'letrec
"duplicate bound variable"
#{e 3388}#)
(begin
(let ((#{labels 3422}#
(#{gen-labels 354}# #{ids 3418}#))
(#{new-vars 3423}#
(map #{gen-var 447}# #{ids 3418}#)))
(begin
(let ((#{w 3426}#
(#{make-binding-wrap 383}#
#{ids 3418}#
#{labels 3422}#
#{w 3390}#))
(#{r 3427}#
(#{extend-var-env 329}#
#{labels 3422}#
#{new-vars 3423}#
#{r 3389}#)))
(#{build-letrec 299}#
#{s 3391}#
#f
(map syntax->datum #{ids 3418}#)
#{new-vars 3423}#
(map (lambda (#{x 3428}#)
(#{chi 419}#
#{x 3428}#
#{r 3427}#
#{w 3426}#
#{mod 3392}#))
#{val 3414}#)
(#{chi-body 427}#
(cons #{e1 3415}# #{e2 3416}#)
(#{source-wrap 407}#
#{e 3388}#
#{w 3426}#
#{s 3391}#
#{mod 3392}#)
#{r 3427}#
#{w 3426}#
#{mod 3392}#))))))))))
#{tmp 3399}#)
(let ((#{_ 3433}# #{tmp 3398}#))
(syntax-violation
'letrec
"bad letrec"
(#{source-wrap 407}#
#{e 3388}#
#{w 3390}#
#{s 3391}#
#{mod 3392}#))))))))
(#{global-extend 335}#
'core
'letrec*
(lambda (#{e 3434}#
#{r 3435}#
#{w 3436}#
#{s 3437}#
#{mod 3438}#)
(let ((#{tmp 3444}# #{e 3434}#))
(let ((#{tmp 3445}#
($sc-dispatch
#{tmp 3444}#
'(_ #(each (any any)) any . each-any))))
(if (if #{tmp 3445}#
(@apply
(lambda (#{id 3450}#
#{val 3451}#
#{e1 3452}#
#{e2 3453}#)
(and-map #{id? 339}# #{id 3450}#))
#{tmp 3445}#)
#f)
(@apply
(lambda (#{id 3459}#
#{val 3460}#
#{e1 3461}#
#{e2 3462}#)
(begin
(let ((#{ids 3464}# #{id 3459}#))
(if (not (#{valid-bound-ids? 399}# #{ids 3464}#))
(syntax-violation
'letrec*
"duplicate bound variable"
#{e 3434}#)
(begin
(let ((#{labels 3468}#
(#{gen-labels 354}# #{ids 3464}#))
(#{new-vars 3469}#
(map #{gen-var 447}# #{ids 3464}#)))
(begin
(let ((#{w 3472}#
(#{make-binding-wrap 383}#
#{ids 3464}#
#{labels 3468}#
#{w 3436}#))
(#{r 3473}#
(#{extend-var-env 329}#
#{labels 3468}#
#{new-vars 3469}#
#{r 3435}#)))
(#{build-letrec 299}#
#{s 3437}#
#t
(map syntax->datum #{ids 3464}#)
#{new-vars 3469}#
(map (lambda (#{x 3474}#)
(#{chi 419}#
#{x 3474}#
#{r 3473}#
#{w 3472}#
#{mod 3438}#))
#{val 3460}#)
(#{chi-body 427}#
(cons #{e1 3461}# #{e2 3462}#)
(#{source-wrap 407}#
#{e 3434}#
#{w 3472}#
#{s 3437}#
#{mod 3438}#)
#{r 3473}#
#{w 3472}#
#{mod 3438}#))))))))))
#{tmp 3445}#)
(let ((#{_ 3479}# #{tmp 3444}#))
(syntax-violation
'letrec*
"bad letrec*"
(#{source-wrap 407}#
#{e 3434}#
#{w 3436}#
#{s 3437}#
#{mod 3438}#))))))))
(#{global-extend 335}#
'core
'set!
(lambda (#{e 3480}#
#{r 3481}#
#{w 3482}#
#{s 3483}#
#{mod 3484}#)
(let ((#{tmp 3490}# #{e 3480}#))
(let ((#{tmp 3491}#
($sc-dispatch #{tmp 3490}# '(_ any any))))
(if (if #{tmp 3491}#
(@apply
(lambda (#{id 3494}# #{val 3495}#)
(#{id? 339}# #{id 3494}#))
#{tmp 3491}#)
#f)
(@apply
(lambda (#{id 3498}# #{val 3499}#)
(begin
(let ((#{n 3502}#
(#{id-var-name 393}# #{id 3498}# #{w 3482}#))
(#{id-mod 3503}#
(if (#{syntax-object? 305}# #{id 3498}#)
(#{syntax-object-module 311}# #{id 3498}#)
#{mod 3484}#)))
(begin
(let ((#{b 3505}#
(#{lookup 333}#
#{n 3502}#
#{r 3481}#
#{id-mod 3503}#)))
(begin
(let ((#{atom-key 3508}# (car #{b 3505}#)))
(if (eqv? #{atom-key 3508}# 'lexical)
(#{build-lexical-assignment 273}#
#{s 3483}#
(syntax->datum #{id 3498}#)
(cdr #{b 3505}#)
(#{chi 419}#
#{val 3499}#
#{r 3481}#
#{w 3482}#
#{mod 3484}#))
(if (eqv? #{atom-key 3508}# 'global)
(#{build-global-assignment 279}#
#{s 3483}#
#{n 3502}#
(#{chi 419}#
#{val 3499}#
#{r 3481}#
#{w 3482}#
#{mod 3484}#)
#{id-mod 3503}#)
(if (eqv? #{atom-key 3508}# 'macro)
(begin
(let ((#{p 3515}# (cdr #{b 3505}#)))
(if (procedure-property
#{p 3515}#
'variable-transformer)
(#{chi 419}#
(#{chi-macro 425}#
#{p 3515}#
#{e 3480}#
#{r 3481}#
#{w 3482}#
#{s 3483}#
#f
#{mod 3484}#)
#{r 3481}#
'(())
#{mod 3484}#)
(syntax-violation
'set!
"not a variable transformer"
(#{wrap 405}#
#{e 3480}#
#{w 3482}#
#{mod 3484}#)
(#{wrap 405}#
#{id 3498}#
#{w 3482}#
#{id-mod 3503}#)))))
(if (eqv? #{atom-key 3508}#
'displaced-lexical)
(syntax-violation
'set!
"identifier out of context"
(#{wrap 405}#
#{id 3498}#
#{w 3482}#
#{mod 3484}#))
(syntax-violation
'set!
"bad set!"
(#{source-wrap 407}#
#{e 3480}#
#{w 3482}#
#{s 3483}#
#{mod 3484}#)))))))))))))
#{tmp 3491}#)
(let ((#{tmp 3520}#
($sc-dispatch
#{tmp 3490}#
'(_ (any . each-any) any))))
(if #{tmp 3520}#
(@apply
(lambda (#{head 3524}# #{tail 3525}# #{val 3526}#)
(call-with-values
(lambda ()
(#{syntax-type 417}#
#{head 3524}#
#{r 3481}#
'(())
#f
#f
#{mod 3484}#
#t))
(lambda (#{type 3529}#
#{value 3530}#
#{ee 3531}#
#{ww 3532}#
#{ss 3533}#
#{modmod 3534}#)
(if (eqv? #{type 3529}# 'module-ref)
(begin
(let ((#{val 3543}#
(#{chi 419}#
#{val 3526}#
#{r 3481}#
#{w 3482}#
#{mod 3484}#)))
(call-with-values
(lambda ()
(#{value 3530}#
(cons #{head 3524}# #{tail 3525}#)
#{r 3481}#
#{w 3482}#))
(lambda (#{e 3545}#
#{r 3546}#
#{w 3547}#
#{s* 3548}#
#{mod 3549}#)
(let ((#{tmp 3555}# #{e 3545}#))
(let ((#{tmp 3556}#
(list #{tmp 3555}#)))
(if (if #{tmp 3556}#
(@apply
(lambda (#{e 3558}#)
(#{id? 339}# #{e 3558}#))
#{tmp 3556}#)
#f)
(@apply
(lambda (#{e 3560}#)
(#{build-global-assignment 279}#
#{s 3483}#
(syntax->datum #{e 3560}#)
#{val 3543}#
#{mod 3549}#))
#{tmp 3556}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 3555}#))))))))
(#{build-application 265}#
#{s 3483}#
(#{chi 419}#
(list '#(syntax-object
setter
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(type value ee ww ss modmod)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i3535"
"i3536"
"i3537"
"i3538"
"i3539"
"i3540"))
#(ribcage
#(head tail val)
#((top) (top) (top))
#("i3521" "i3522" "i3523"))
#(ribcage () () ())
#(ribcage
#(e r w s mod)
#((top) (top) (top) (top) (top))
#("i3485"
"i3486"
"i3487"
"i3488"
"i3489"))
#(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
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))
("i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i414"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i390"
"i388"
"i386"
"i384"
"i382"
"i380"
"i379"
"i378"
"i376"
"i375"
"i374"
"i373"
"i372"
"i370"
"i368"
"i366"
"i364"
"i362"
"i360"
"i358"
"i356"
"i353"
"i351"
"i350"
"i349"
"i348"
"i347"
"i346"
"i345"
"i344"
"i343"
"i341"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i325"
"i324"
"i323"
"i322"
"i321"
"i319"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i253"
"i251"
"i249"
"i248"
"i247"
"i246"
"i245"
"i243"
"i241"
"i239"
"i236"
"i234"
"i232"
"i230"
"i228"
"i226"
"i224"
"i222"
"i220"
"i218"
"i216"
"i214"
"i212"
"i210"
"i208"
"i206"
"i204"
"i202"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors)
((top) (top) (top))
("i40" "i39" "i38")))
(hygiene guile))
#{head 3524}#)
#{r 3481}#
#{w 3482}#
#{mod 3484}#)
(map (lambda (#{e 3562}#)
(#{chi 419}#
#{e 3562}#
#{r 3481}#
#{w 3482}#
#{mod 3484}#))
(append
#{tail 3525}#
(list #{val 3526}#))))))))
#{tmp 3520}#)
(let ((#{_ 3566}# #{tmp 3490}#))
(syntax-violation
'set!
"bad set!"
(#{source-wrap 407}#
#{e 3480}#
#{w 3482}#
#{s 3483}#
#{mod 3484}#))))))))))
(#{global-extend 335}#
'module-ref
'@
(lambda (#{e 3567}# #{r 3568}# #{w 3569}#)
(let ((#{tmp 3573}# #{e 3567}#))
(let ((#{tmp 3574}#
($sc-dispatch #{tmp 3573}# '(_ each-any any))))
(if (if #{tmp 3574}#
(@apply
(lambda (#{mod 3577}# #{id 3578}#)
(if (and-map #{id? 339}# #{mod 3577}#)
(#{id? 339}# #{id 3578}#)
#f))
#{tmp 3574}#)
#f)
(@apply
(lambda (#{mod 3584}# #{id 3585}#)
(values
(syntax->datum #{id 3585}#)
#{r 3568}#
#{w 3569}#
#f
(syntax->datum
(cons '#(syntax-object
public
((top)
#(ribcage
#(mod id)
#((top) (top))
#("i3582" "i3583"))
#(ribcage () () ())
#(ribcage
#(e r w)
#((top) (top) (top))
#("i3570" "i3571" "i3572"))
#(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
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))
("i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i414"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i390"
"i388"
"i386"
"i384"
"i382"
"i380"
"i379"
"i378"
"i376"
"i375"
"i374"
"i373"
"i372"
"i370"
"i368"
"i366"
"i364"
"i362"
"i360"
"i358"
"i356"
"i353"
"i351"
"i350"
"i349"
"i348"
"i347"
"i346"
"i345"
"i344"
"i343"
"i341"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i325"
"i324"
"i323"
"i322"
"i321"
"i319"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i253"
"i251"
"i249"
"i248"
"i247"
"i246"
"i245"
"i243"
"i241"
"i239"
"i236"
"i234"
"i232"
"i230"
"i228"
"i226"
"i224"
"i222"
"i220"
"i218"
"i216"
"i214"
"i212"
"i210"
"i208"
"i206"
"i204"
"i202"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors)
((top) (top) (top))
("i40" "i39" "i38")))
(hygiene guile))
#{mod 3584}#))))
#{tmp 3574}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 3573}#))))))
(#{global-extend 335}#
'module-ref
'@@
(lambda (#{e 3587}# #{r 3588}# #{w 3589}#)
(letrec*
((#{remodulate 3594}#
(lambda (#{x 3595}# #{mod 3596}#)
(if (pair? #{x 3595}#)
(cons (#{remodulate 3594}#
(car #{x 3595}#)
#{mod 3596}#)
(#{remodulate 3594}#
(cdr #{x 3595}#)
#{mod 3596}#))
(if (#{syntax-object? 305}# #{x 3595}#)
(#{make-syntax-object 303}#
(#{remodulate 3594}#
(#{syntax-object-expression 307}# #{x 3595}#)
#{mod 3596}#)
(#{syntax-object-wrap 309}# #{x 3595}#)
#{mod 3596}#)
(if (vector? #{x 3595}#)
(begin
(let ((#{n 3607}# (vector-length #{x 3595}#)))
(begin
(let ((#{v 3609}# (make-vector #{n 3607}#)))
(letrec*
((#{loop 3612}#
(lambda (#{i 3613}#)
(if (= #{i 3613}# #{n 3607}#)
(begin (if #f #f) #{v 3609}#)
(begin
(vector-set!
#{v 3609}#
#{i 3613}#
(#{remodulate 3594}#
(vector-ref
#{x 3595}#
#{i 3613}#)
#{mod 3596}#))
(#{loop 3612}#
(#{1+}# #{i 3613}#)))))))
(begin (#{loop 3612}# 0)))))))
#{x 3595}#))))))
(begin
(let ((#{tmp 3619}# #{e 3587}#))
(let ((#{tmp 3620}#
($sc-dispatch #{tmp 3619}# '(_ each-any any))))
(if (if #{tmp 3620}#
(@apply
(lambda (#{mod 3623}# #{exp 3624}#)
(and-map #{id? 339}# #{mod 3623}#))
#{tmp 3620}#)
#f)
(@apply
(lambda (#{mod 3628}# #{exp 3629}#)
(begin
(let ((#{mod 3631}#
(syntax->datum
(cons '#(syntax-object
private
((top)
#(ribcage
#(mod exp)
#((top) (top))
#("i3626" "i3627"))
#(ribcage
(remodulate)
((top))
("i3593"))
#(ribcage
#(e r w)
#((top) (top) (top))
#("i3590" "i3591" "i3592"))
#(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
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))
("i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i414"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i390"
"i388"
"i386"
"i384"
"i382"
"i380"
"i379"
"i378"
"i376"
"i375"
"i374"
"i373"
"i372"
"i370"
"i368"
"i366"
"i364"
"i362"
"i360"
"i358"
"i356"
"i353"
"i351"
"i350"
"i349"
"i348"
"i347"
"i346"
"i345"
"i344"
"i343"
"i341"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i325"
"i324"
"i323"
"i322"
"i321"
"i319"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i253"
"i251"
"i249"
"i248"
"i247"
"i246"
"i245"
"i243"
"i241"
"i239"
"i236"
"i234"
"i232"
"i230"
"i228"
"i226"
"i224"
"i222"
"i220"
"i218"
"i216"
"i214"
"i212"
"i210"
"i208"
"i206"
"i204"
"i202"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors)
((top) (top) (top))
("i40" "i39" "i38")))
(hygiene guile))
#{mod 3628}#))))
(values
(#{remodulate 3594}# #{exp 3629}# #{mod 3631}#)
#{r 3588}#
#{w 3589}#
(#{source-annotation 320}# #{exp 3629}#)
#{mod 3631}#))))
#{tmp 3620}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 3619}#))))))))
(#{global-extend 335}#
'core
'if
(lambda (#{e 3633}#
#{r 3634}#
#{w 3635}#
#{s 3636}#
#{mod 3637}#)
(let ((#{tmp 3643}# #{e 3633}#))
(let ((#{tmp 3644}#
($sc-dispatch #{tmp 3643}# '(_ any any))))
(if #{tmp 3644}#
(@apply
(lambda (#{test 3647}# #{then 3648}#)
(#{build-conditional 267}#
#{s 3636}#
(#{chi 419}#
#{test 3647}#
#{r 3634}#
#{w 3635}#
#{mod 3637}#)
(#{chi 419}#
#{then 3648}#
#{r 3634}#
#{w 3635}#
#{mod 3637}#)
(#{build-void 263}# #f)))
#{tmp 3644}#)
(let ((#{tmp 3650}#
($sc-dispatch #{tmp 3643}# '(_ any any any))))
(if #{tmp 3650}#
(@apply
(lambda (#{test 3654}# #{then 3655}# #{else 3656}#)
(#{build-conditional 267}#
#{s 3636}#
(#{chi 419}#
#{test 3654}#
#{r 3634}#
#{w 3635}#
#{mod 3637}#)
(#{chi 419}#
#{then 3655}#
#{r 3634}#
#{w 3635}#
#{mod 3637}#)
(#{chi 419}#
#{else 3656}#
#{r 3634}#
#{w 3635}#
#{mod 3637}#)))
#{tmp 3650}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 3643}#))))))))
(#{global-extend 335}#
'core
'with-fluids
(lambda (#{e 3657}#
#{r 3658}#
#{w 3659}#
#{s 3660}#
#{mod 3661}#)
(let ((#{tmp 3667}# #{e 3657}#))
(let ((#{tmp 3668}#
($sc-dispatch
#{tmp 3667}#
'(_ #(each (any any)) any . each-any))))
(if #{tmp 3668}#
(@apply
(lambda (#{fluid 3673}#
#{val 3674}#
#{b 3675}#
#{b* 3676}#)
(#{build-dynlet 269}#
#{s 3660}#
(map (lambda (#{x 3677}#)
(#{chi 419}#
#{x 3677}#
#{r 3658}#
#{w 3659}#
#{mod 3661}#))
#{fluid 3673}#)
(map (lambda (#{x 3680}#)
(#{chi 419}#
#{x 3680}#
#{r 3658}#
#{w 3659}#
#{mod 3661}#))
#{val 3674}#)
(#{chi-body 427}#
(cons #{b 3675}# #{b* 3676}#)
(#{source-wrap 407}#
#{e 3657}#
#{w 3659}#
#{s 3660}#
#{mod 3661}#)
#{r 3658}#
#{w 3659}#
#{mod 3661}#)))
#{tmp 3668}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 3667}#))))))
(#{global-extend 335}# 'begin 'begin '())
(#{global-extend 335}# 'define 'define '())
(#{global-extend 335}#
'define-syntax
'define-syntax
'())
(#{global-extend 335}# 'eval-when 'eval-when '())
(#{global-extend 335}#
'core
'syntax-case
(letrec*
((#{convert-pattern 3685}#
(lambda (#{pattern 3692}# #{keys 3693}#)
(letrec*
((#{cvt* 3697}#
(lambda (#{p* 3702}# #{n 3703}# #{ids 3704}#)
(if (not (pair? #{p* 3702}#))
(#{cvt 3701}#
#{p* 3702}#
#{n 3703}#
#{ids 3704}#)
(call-with-values
(lambda ()
(#{cvt* 3697}#
(cdr #{p* 3702}#)
#{n 3703}#
#{ids 3704}#))
(lambda (#{y 3708}# #{ids 3709}#)
(call-with-values
(lambda ()
(#{cvt 3701}#
(car #{p* 3702}#)
#{n 3703}#
#{ids 3709}#))
(lambda (#{x 3712}# #{ids 3713}#)
(values
(cons #{x 3712}# #{y 3708}#)
#{ids 3713}#))))))))
(#{v-reverse 3699}#
(lambda (#{x 3716}#)
(letrec*
((#{loop 3721}#
(lambda (#{r 3722}# #{x 3723}#)
(if (not (pair? #{x 3723}#))
(values #{r 3722}# #{x 3723}#)
(#{loop 3721}#
(cons (car #{x 3723}#) #{r 3722}#)
(cdr #{x 3723}#))))))
(begin (#{loop 3721}# '() #{x 3716}#)))))
(#{cvt 3701}#
(lambda (#{p 3724}# #{n 3725}# #{ids 3726}#)
(if (#{id? 339}# #{p 3724}#)
(if (#{bound-id-member? 403}#
#{p 3724}#
#{keys 3693}#)
(values
(vector 'free-id #{p 3724}#)
#{ids 3726}#)
(if (#{free-id=? 395}#
#{p 3724}#
'#(syntax-object
_
((top)
#(ribcage () () ())
#(ribcage
#(p n ids)
#((top) (top) (top))
#("i3727" "i3728" "i3729"))
#(ribcage
(cvt v-reverse cvt*)
((top) (top) (top))
("i3700" "i3698" "i3696"))
#(ribcage
#(pattern keys)
#((top) (top))
#("i3694" "i3695"))
#(ribcage
(gen-syntax-case
gen-clause
build-dispatch-call
convert-pattern)
((top) (top) (top) (top))
("i3690" "i3688" "i3686" "i3684"))
#(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
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))
("i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i414"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i390"
"i388"
"i386"
"i384"
"i382"
"i380"
"i379"
"i378"
"i376"
"i375"
"i374"
"i373"
"i372"
"i370"
"i368"
"i366"
"i364"
"i362"
"i360"
"i358"
"i356"
"i353"
"i351"
"i350"
"i349"
"i348"
"i347"
"i346"
"i345"
"i344"
"i343"
"i341"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i325"
"i324"
"i323"
"i322"
"i321"
"i319"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i253"
"i251"
"i249"
"i248"
"i247"
"i246"
"i245"
"i243"
"i241"
"i239"
"i236"
"i234"
"i232"
"i230"
"i228"
"i226"
"i224"
"i222"
"i220"
"i218"
"i216"
"i214"
"i212"
"i210"
"i208"
"i206"
"i204"
"i202"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors)
((top) (top) (top))
("i40" "i39" "i38")))
(hygiene guile)))
(values '_ #{ids 3726}#)
(values
'any
(cons (cons #{p 3724}# #{n 3725}#)
#{ids 3726}#))))
(let ((#{tmp 3735}# #{p 3724}#))
(let ((#{tmp 3736}#
($sc-dispatch #{tmp 3735}# '(any any))))
(if (if #{tmp 3736}#
(@apply
(lambda (#{x 3739}# #{dots 3740}#)
(#{ellipsis? 435}# #{dots 3740}#))
#{tmp 3736}#)
#f)
(@apply
(lambda (#{x 3743}# #{dots 3744}#)
(call-with-values
(lambda ()
(#{cvt 3701}#
#{x 3743}#
(#{1+}# #{n 3725}#)
#{ids 3726}#))
(lambda (#{p 3746}# #{ids 3747}#)
(values
(if (eq? #{p 3746}# 'any)
'each-any
(vector 'each #{p 3746}#))
#{ids 3747}#))))
#{tmp 3736}#)
(let ((#{tmp 3750}#
($sc-dispatch
#{tmp 3735}#
'(any any . any))))
(if (if #{tmp 3750}#
(@apply
(lambda (#{x 3754}#
#{dots 3755}#
#{ys 3756}#)
(#{ellipsis? 435}# #{dots 3755}#))
#{tmp 3750}#)
#f)
(@apply
(lambda (#{x 3760}#
#{dots 3761}#
#{ys 3762}#)
(call-with-values
(lambda ()
(#{cvt* 3697}#
#{ys 3762}#
#{n 3725}#
#{ids 3726}#))
(lambda (#{ys 3763}# #{ids 3764}#)
(call-with-values
(lambda ()
(#{cvt 3701}#
#{x 3760}#
(#{1+}# #{n 3725}#)
#{ids 3764}#))
(lambda (#{x 3767}# #{ids 3768}#)
(call-with-values
(lambda ()
(#{v-reverse 3699}#
#{ys 3763}#))
(lambda (#{ys 3771}#
#{e 3772}#)
(values
(vector
'each+
#{x 3767}#
#{ys 3771}#
#{e 3772}#)
#{ids 3768}#))))))))
#{tmp 3750}#)
(let ((#{tmp 3776}#
($sc-dispatch
#{tmp 3735}#
'(any . any))))
(if #{tmp 3776}#
(@apply
(lambda (#{x 3779}# #{y 3780}#)
(call-with-values
(lambda ()
(#{cvt 3701}#
#{y 3780}#
#{n 3725}#
#{ids 3726}#))
(lambda (#{y 3781}# #{ids 3782}#)
(call-with-values
(lambda ()
(#{cvt 3701}#
#{x 3779}#
#{n 3725}#
#{ids 3782}#))
(lambda (#{x 3785}#
#{ids 3786}#)
(values
(cons #{x 3785}#
#{y 3781}#)
#{ids 3786}#))))))
#{tmp 3776}#)
(let ((#{tmp 3789}#
($sc-dispatch #{tmp 3735}# '())))
(if #{tmp 3789}#
(@apply
(lambda ()
(values '() #{ids 3726}#))
#{tmp 3789}#)
(let ((#{tmp 3790}#
($sc-dispatch
#{tmp 3735}#
'#(vector each-any))))
(if #{tmp 3790}#
(@apply
(lambda (#{x 3792}#)
(call-with-values
(lambda ()
(#{cvt 3701}#
#{x 3792}#
#{n 3725}#
#{ids 3726}#))
(lambda (#{p 3794}#
#{ids 3795}#)
(values
(vector
'vector
#{p 3794}#)
#{ids 3795}#))))
#{tmp 3790}#)
(let ((#{x 3799}# #{tmp 3735}#))
(values
(vector
'atom
(#{strip 445}#
#{p 3724}#
'(())))
#{ids 3726}#)))))))))))))))))
(begin (#{cvt 3701}# #{pattern 3692}# 0 '())))))
(#{build-dispatch-call 3687}#
(lambda (#{pvars 3801}#
#{exp 3802}#
#{y 3803}#
#{r 3804}#
#{mod 3805}#)
(begin
(map cdr #{pvars 3801}#)
(let ((#{ids 3813}# (map car #{pvars 3801}#)))
(begin
(let ((#{labels 3817}#
(#{gen-labels 354}# #{ids 3813}#))
(#{new-vars 3818}#
(map #{gen-var 447}# #{ids 3813}#)))
(#{build-application 265}#
#f
(#{build-primref 289}# #f 'apply)
(list (#{build-simple-lambda 283}#
#f
(map syntax->datum #{ids 3813}#)
#f
#{new-vars 3818}#
'()
(#{chi 419}#
#{exp 3802}#
(#{extend-env 327}#
#{labels 3817}#
(map (lambda (#{var 3822}# #{level 3823}#)
(cons 'syntax
(cons #{var 3822}#
#{level 3823}#)))
#{new-vars 3818}#
(map cdr #{pvars 3801}#))
#{r 3804}#)
(#{make-binding-wrap 383}#
#{ids 3813}#
#{labels 3817}#
'(()))
#{mod 3805}#))
#{y 3803}#))))))))
(#{gen-clause 3689}#
(lambda (#{x 3829}#
#{keys 3830}#
#{clauses 3831}#
#{r 3832}#
#{pat 3833}#
#{fender 3834}#
#{exp 3835}#
#{mod 3836}#)
(call-with-values
(lambda ()
(#{convert-pattern 3685}#
#{pat 3833}#
#{keys 3830}#))
(lambda (#{p 3845}# #{pvars 3846}#)
(if (not (#{distinct-bound-ids? 401}#
(map car #{pvars 3846}#)))
(syntax-violation
'syntax-case
"duplicate pattern variable"
#{pat 3833}#)
(if (not (and-map
(lambda (#{x 3853}#)
(not (#{ellipsis? 435}# (car #{x 3853}#))))
#{pvars 3846}#))
(syntax-violation
'syntax-case
"misplaced ellipsis"
#{pat 3833}#)
(begin
(let ((#{y 3857}# (#{gen-var 447}# 'tmp)))
(#{build-application 265}#
#f
(#{build-simple-lambda 283}#
#f
(list 'tmp)
#f
(list #{y 3857}#)
'()
(begin
(let ((#{y 3861}#
(#{build-lexical-reference 271}#
'value
#f
'tmp
#{y 3857}#)))
(#{build-conditional 267}#
#f
(let ((#{tmp 3864}# #{fender 3834}#))
(let ((#{tmp 3865}#
($sc-dispatch
#{tmp 3864}#
'#(atom #t))))
(if #{tmp 3865}#
(@apply
(lambda () #{y 3861}#)
#{tmp 3865}#)
(let ((#{_ 3867}# #{tmp 3864}#))
(#{build-conditional 267}#
#f
#{y 3861}#
(#{build-dispatch-call 3687}#
#{pvars 3846}#
#{fender 3834}#
#{y 3861}#
#{r 3832}#
#{mod 3836}#)
(#{build-data 291}# #f #f))))))
(#{build-dispatch-call 3687}#
#{pvars 3846}#
#{exp 3835}#
#{y 3861}#
#{r 3832}#
#{mod 3836}#)
(#{gen-syntax-case 3691}#
#{x 3829}#
#{keys 3830}#
#{clauses 3831}#
#{r 3832}#
#{mod 3836}#)))))
(list (if (eq? #{p 3845}# 'any)
(#{build-application 265}#
#f
(#{build-primref 289}# #f 'list)
(list #{x 3829}#))
(#{build-application 265}#
#f
(#{build-primref 289}# #f '$sc-dispatch)
(list #{x 3829}#
(#{build-data 291}#
#f
#{p 3845}#))))))))))))))
(#{gen-syntax-case 3691}#
(lambda (#{x 3875}#
#{keys 3876}#
#{clauses 3877}#
#{r 3878}#
#{mod 3879}#)
(if (null? #{clauses 3877}#)
(#{build-application 265}#
#f
(#{build-primref 289}# #f 'syntax-violation)
(list (#{build-data 291}# #f #f)
(#{build-data 291}#
#f
"source expression failed to match any pattern")
#{x 3875}#))
(let ((#{tmp 3889}# (car #{clauses 3877}#)))
(let ((#{tmp 3890}#
($sc-dispatch #{tmp 3889}# '(any any))))
(if #{tmp 3890}#
(@apply
(lambda (#{pat 3893}# #{exp 3894}#)
(if (if (#{id? 339}# #{pat 3893}#)
(and-map
(lambda (#{x 3897}#)
(not (#{free-id=? 395}#
#{pat 3893}#
#{x 3897}#)))
(cons '#(syntax-object
...
((top)
#(ribcage
#(pat exp)
#((top) (top))
#("i3891" "i3892"))
#(ribcage () () ())
#(ribcage
#(x keys clauses r mod)
#((top) (top) (top) (top) (top))
#("i3880"
"i3881"
"i3882"
"i3883"
"i3884"))
#(ribcage
(gen-syntax-case
gen-clause
build-dispatch-call
convert-pattern)
((top) (top) (top) (top))
("i3690"
"i3688"
"i3686"
"i3684"))
#(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
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))
("i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i414"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i390"
"i388"
"i386"
"i384"
"i382"
"i380"
"i379"
"i378"
"i376"
"i375"
"i374"
"i373"
"i372"
"i370"
"i368"
"i366"
"i364"
"i362"
"i360"
"i358"
"i356"
"i353"
"i351"
"i350"
"i349"
"i348"
"i347"
"i346"
"i345"
"i344"
"i343"
"i341"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i325"
"i324"
"i323"
"i322"
"i321"
"i319"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i253"
"i251"
"i249"
"i248"
"i247"
"i246"
"i245"
"i243"
"i241"
"i239"
"i236"
"i234"
"i232"
"i230"
"i228"
"i226"
"i224"
"i222"
"i220"
"i218"
"i216"
"i214"
"i212"
"i210"
"i208"
"i206"
"i204"
"i202"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors)
((top) (top) (top))
("i40" "i39" "i38")))
(hygiene guile))
#{keys 3876}#))
#f)
(if (#{free-id=? 395}#
'#(syntax-object
pad
((top)
#(ribcage
#(pat exp)
#((top) (top))
#("i3891" "i3892"))
#(ribcage () () ())
#(ribcage
#(x keys clauses r mod)
#((top) (top) (top) (top) (top))
#("i3880"
"i3881"
"i3882"
"i3883"
"i3884"))
#(ribcage
(gen-syntax-case
gen-clause
build-dispatch-call
convert-pattern)
((top) (top) (top) (top))
("i3690" "i3688" "i3686" "i3684"))
#(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
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))
("i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i414"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i390"
"i388"
"i386"
"i384"
"i382"
"i380"
"i379"
"i378"
"i376"
"i375"
"i374"
"i373"
"i372"
"i370"
"i368"
"i366"
"i364"
"i362"
"i360"
"i358"
"i356"
"i353"
"i351"
"i350"
"i349"
"i348"
"i347"
"i346"
"i345"
"i344"
"i343"
"i341"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i325"
"i324"
"i323"
"i322"
"i321"
"i319"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i253"
"i251"
"i249"
"i248"
"i247"
"i246"
"i245"
"i243"
"i241"
"i239"
"i236"
"i234"
"i232"
"i230"
"i228"
"i226"
"i224"
"i222"
"i220"
"i218"
"i216"
"i214"
"i212"
"i210"
"i208"
"i206"
"i204"
"i202"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors)
((top) (top) (top))
("i40" "i39" "i38")))
(hygiene guile))
'#(syntax-object
_
((top)
#(ribcage
#(pat exp)
#((top) (top))
#("i3891" "i3892"))
#(ribcage () () ())
#(ribcage
#(x keys clauses r mod)
#((top) (top) (top) (top) (top))
#("i3880"
"i3881"
"i3882"
"i3883"
"i3884"))
#(ribcage
(gen-syntax-case
gen-clause
build-dispatch-call
convert-pattern)
((top) (top) (top) (top))
("i3690" "i3688" "i3686" "i3684"))
#(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
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))
("i448"
"i446"
"i444"
"i442"
"i440"
"i438"
"i436"
"i434"
"i432"
"i430"
"i428"
"i426"
"i424"
"i422"
"i420"
"i418"
"i416"
"i414"
"i412"
"i410"
"i408"
"i406"
"i404"
"i402"
"i400"
"i398"
"i396"
"i394"
"i392"
"i390"
"i388"
"i386"
"i384"
"i382"
"i380"
"i379"
"i378"
"i376"
"i375"
"i374"
"i373"
"i372"
"i370"
"i368"
"i366"
"i364"
"i362"
"i360"
"i358"
"i356"
"i353"
"i351"
"i350"
"i349"
"i348"
"i347"
"i346"
"i345"
"i344"
"i343"
"i341"
"i340"
"i338"
"i336"
"i334"
"i332"
"i330"
"i328"
"i326"
"i325"
"i324"
"i323"
"i322"
"i321"
"i319"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i300"
"i298"
"i296"
"i294"
"i292"
"i290"
"i288"
"i286"
"i284"
"i282"
"i280"
"i278"
"i276"
"i274"
"i272"
"i270"
"i268"
"i266"
"i264"
"i262"
"i260"
"i258"
"i256"
"i254"
"i253"
"i251"
"i249"
"i248"
"i247"
"i246"
"i245"
"i243"
"i241"
"i239"
"i236"
"i234"
"i232"
"i230"
"i228"
"i226"
"i224"
"i222"
"i220"
"i218"
"i216"
"i214"
"i212"
"i210"
"i208"
"i206"
"i204"
"i202"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors)
((top) (top) (top))
("i40" "i39" "i38")))
(hygiene guile)))
(#{chi 419}#
#{exp 3894}#
#{r 3878}#
'(())
#{mod 3879}#)
(begin
(let ((#{labels 3902}#
(list (#{gen-label 352}#)))
(#{var 3903}#
(#{gen-var 447}# #{pat 3893}#)))
(#{build-application 265}#
#f
(#{build-simple-lambda 283}#
#f
(list (syntax->datum #{pat 3893}#))
#f
(list #{var 3903}#)
'()
(#{chi 419}#
#{exp 3894}#
(#{extend-env 327}#
#{labels 3902}#
(list (cons 'syntax
(cons #{var 3903}# 0)))
#{r 3878}#)
(#{make-binding-wrap 383}#
(list #{pat 3893}#)
#{labels 3902}#
'(()))
#{mod 3879}#))
(list #{x 3875}#)))))
(#{gen-clause 3689}#
#{x 3875}#
#{keys 3876}#
(cdr #{clauses 3877}#)
#{r 3878}#
#{pat 3893}#
#t
#{exp 3894}#
#{mod 3879}#)))
#{tmp 3890}#)
(let ((#{tmp 3909}#
($sc-dispatch #{tmp 3889}# '(any any any))))
(if #{tmp 3909}#
(@apply
(lambda (#{pat 3913}#
#{fender 3914}#
#{exp 3915}#)
(#{gen-clause 3689}#
#{x 3875}#
#{keys 3876}#
(cdr #{clauses 3877}#)
#{r 3878}#
#{pat 3913}#
#{fender 3914}#
#{exp 3915}#
#{mod 3879}#))
#{tmp 3909}#)
(let ((#{_ 3917}# #{tmp 3889}#))
(syntax-violation
'syntax-case
"invalid clause"
(car #{clauses 3877}#))))))))))))
(begin
(lambda (#{e 3918}#
#{r 3919}#
#{w 3920}#
#{s 3921}#
#{mod 3922}#)
(begin
(let ((#{e 3929}#
(#{source-wrap 407}#
#{e 3918}#
#{w 3920}#
#{s 3921}#
#{mod 3922}#)))
(let ((#{tmp 3930}# #{e 3929}#))
(let ((#{tmp 3931}#
($sc-dispatch
#{tmp 3930}#
'(_ any each-any . each-any))))
(if #{tmp 3931}#
(@apply
(lambda (#{val 3935}# #{key 3936}# #{m 3937}#)
(if (and-map
(lambda (#{x 3938}#)
(if (#{id? 339}# #{x 3938}#)
(not (#{ellipsis? 435}# #{x 3938}#))
#f))
#{key 3936}#)
(begin
(let ((#{x 3944}# (#{gen-var 447}# 'tmp)))
(#{build-application 265}#
#{s 3921}#
(#{build-simple-lambda 283}#
#f
(list 'tmp)
#f
(list #{x 3944}#)
'()
(#{gen-syntax-case 3691}#
(#{build-lexical-reference 271}#
'value
#f
'tmp
#{x 3944}#)
#{key 3936}#
#{m 3937}#
#{r 3919}#
#{mod 3922}#))
(list (#{chi 419}#
#{val 3935}#
#{r 3919}#
'(())
#{mod 3922}#)))))
(syntax-violation
'syntax-case
"invalid literals list"
#{e 3929}#)))
#{tmp 3931}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 3930}#))))))))))
(set! macroexpand
(lambda*
(#{x 3950}#
#:optional
(#{m 3952}# 'e)
(#{esew 3954}# '(eval)))
(#{chi-top-sequence 411}#
(list #{x 3950}#)
'()
'((top))
#f
#{m 3952}#
#{esew 3954}#
(cons 'hygiene (module-name (current-module))))))
(set! identifier?
(lambda (#{x 3958}#)
(#{nonsymbol-id? 337}# #{x 3958}#)))
(set! datum->syntax
(lambda (#{id 3960}# #{datum 3961}#)
(#{make-syntax-object 303}#
#{datum 3961}#
(#{syntax-object-wrap 309}# #{id 3960}#)
(#{syntax-object-module 311}# #{id 3960}#))))
(set! syntax->datum
(lambda (#{x 3964}#)
(#{strip 445}# #{x 3964}# '(()))))
(set! syntax-source
(lambda (#{x 3967}#)
(#{source-annotation 320}# #{x 3967}#)))
(set! generate-temporaries
(lambda (#{ls 3969}#)
(begin
(begin
(let ((#{x 3973}# #{ls 3969}#))
(if (not (list? #{x 3973}#))
(syntax-violation
'generate-temporaries
"invalid argument"
#{x 3973}#))))
(begin
(let ((#{mod 3975}#
(cons 'hygiene (module-name (current-module)))))
(map (lambda (#{x 3976}#)
(#{wrap 405}# (gensym) '((top)) #{mod 3975}#))
#{ls 3969}#))))))
(set! free-identifier=?
(lambda (#{x 3980}# #{y 3981}#)
(begin
(begin
(let ((#{x 3986}# #{x 3980}#))
(if (not (#{nonsymbol-id? 337}# #{x 3986}#))
(syntax-violation
'free-identifier=?
"invalid argument"
#{x 3986}#))))
(begin
(let ((#{x 3989}# #{y 3981}#))
(if (not (#{nonsymbol-id? 337}# #{x 3989}#))
(syntax-violation
'free-identifier=?
"invalid argument"
#{x 3989}#))))
(#{free-id=? 395}# #{x 3980}# #{y 3981}#))))
(set! bound-identifier=?
(lambda (#{x 3990}# #{y 3991}#)
(begin
(begin
(let ((#{x 3996}# #{x 3990}#))
(if (not (#{nonsymbol-id? 337}# #{x 3996}#))
(syntax-violation
'bound-identifier=?
"invalid argument"
#{x 3996}#))))
(begin
(let ((#{x 3999}# #{y 3991}#))
(if (not (#{nonsymbol-id? 337}# #{x 3999}#))
(syntax-violation
'bound-identifier=?
"invalid argument"
#{x 3999}#))))
(#{bound-id=? 397}# #{x 3990}# #{y 3991}#))))
(set! syntax-violation
(lambda*
(#{who 4000}#
#{message 4001}#
#{form 4002}#
#:optional
(#{subform 4006}# #f))
(begin
(begin
(let ((#{x 4010}# #{who 4000}#))
(if (not (let ((#{x 4011}# #{x 4010}#))
(begin
(let ((#{t 4015}# (not #{x 4011}#)))
(if #{t 4015}#
#{t 4015}#
(begin
(let ((#{t 4018}# (string? #{x 4011}#)))
(if #{t 4018}#
#{t 4018}#
(symbol? #{x 4011}#)))))))))
(syntax-violation
'syntax-violation
"invalid argument"
#{x 4010}#))))
(begin
(let ((#{x 4022}# #{message 4001}#))
(if (not (string? #{x 4022}#))
(syntax-violation
'syntax-violation
"invalid argument"
#{x 4022}#))))
(throw 'syntax-error
#{who 4000}#
#{message 4001}#
(#{source-annotation 320}#
(begin
(let ((#{t 4025}# #{form 4002}#))
(if #{t 4025}# #{t 4025}# #{subform 4006}#))))
(#{strip 445}# #{form 4002}# '(()))
(if #{subform 4006}#
(#{strip 445}# #{subform 4006}# '(()))
#f)))))
(letrec*
((#{match-each 4032}#
(lambda (#{e 4045}# #{p 4046}# #{w 4047}# #{mod 4048}#)
(if (pair? #{e 4045}#)
(begin
(let ((#{first 4056}#
(#{match 4044}#
(car #{e 4045}#)
#{p 4046}#
#{w 4047}#
'()
#{mod 4048}#)))
(if #{first 4056}#
(begin
(let ((#{rest 4060}#
(#{match-each 4032}#
(cdr #{e 4045}#)
#{p 4046}#
#{w 4047}#
#{mod 4048}#)))
(if #{rest 4060}#
(cons #{first 4056}# #{rest 4060}#)
#f)))
#f)))
(if (null? #{e 4045}#)
'()
(if (#{syntax-object? 305}# #{e 4045}#)
(#{match-each 4032}#
(#{syntax-object-expression 307}# #{e 4045}#)
#{p 4046}#
(#{join-wraps 387}#
#{w 4047}#
(#{syntax-object-wrap 309}# #{e 4045}#))
(#{syntax-object-module 311}# #{e 4045}#))
#f)))))
(#{match-each+ 4034}#
(lambda (#{e 4068}#
#{x-pat 4069}#
#{y-pat 4070}#
#{z-pat 4071}#
#{w 4072}#
#{r 4073}#
#{mod 4074}#)
(letrec*
((#{f 4085}#
(lambda (#{e 4086}# #{w 4087}#)
(if (pair? #{e 4086}#)
(call-with-values
(lambda ()
(#{f 4085}# (cdr #{e 4086}#) #{w 4087}#))
(lambda (#{xr* 4090}# #{y-pat 4091}# #{r 4092}#)
(if #{r 4092}#
(if (null? #{y-pat 4091}#)
(begin
(let ((#{xr 4097}#
(#{match 4044}#
(car #{e 4086}#)
#{x-pat 4069}#
#{w 4087}#
'()
#{mod 4074}#)))
(if #{xr 4097}#
(values
(cons #{xr 4097}# #{xr* 4090}#)
#{y-pat 4091}#
#{r 4092}#)
(values #f #f #f))))
(values
'()
(cdr #{y-pat 4091}#)
(#{match 4044}#
(car #{e 4086}#)
(car #{y-pat 4091}#)
#{w 4087}#
#{r 4092}#
#{mod 4074}#)))
(values #f #f #f))))
(if (#{syntax-object? 305}# #{e 4086}#)
(#{f 4085}#
(#{syntax-object-expression 307}# #{e 4086}#)
(#{join-wraps 387}# #{w 4087}# #{e 4086}#))
(values
'()
#{y-pat 4070}#
(#{match 4044}#
#{e 4086}#
#{z-pat 4071}#
#{w 4087}#
#{r 4073}#
#{mod 4074}#)))))))
(begin (#{f 4085}# #{e 4068}# #{w 4072}#)))))
(#{match-each-any 4036}#
(lambda (#{e 4101}# #{w 4102}# #{mod 4103}#)
(if (pair? #{e 4101}#)
(begin
(let ((#{l 4110}#
(#{match-each-any 4036}#
(cdr #{e 4101}#)
#{w 4102}#
#{mod 4103}#)))
(if #{l 4110}#
(cons (#{wrap 405}#
(car #{e 4101}#)
#{w 4102}#
#{mod 4103}#)
#{l 4110}#)
#f)))
(if (null? #{e 4101}#)
'()
(if (#{syntax-object? 305}# #{e 4101}#)
(#{match-each-any 4036}#
(#{syntax-object-expression 307}# #{e 4101}#)
(#{join-wraps 387}#
#{w 4102}#
(#{syntax-object-wrap 309}# #{e 4101}#))
#{mod 4103}#)
#f)))))
(#{match-empty 4038}#
(lambda (#{p 4118}# #{r 4119}#)
(if (null? #{p 4118}#)
#{r 4119}#
(if (eq? #{p 4118}# '_)
#{r 4119}#
(if (eq? #{p 4118}# 'any)
(cons '() #{r 4119}#)
(if (pair? #{p 4118}#)
(#{match-empty 4038}#
(car #{p 4118}#)
(#{match-empty 4038}#
(cdr #{p 4118}#)
#{r 4119}#))
(if (eq? #{p 4118}# 'each-any)
(cons '() #{r 4119}#)
(begin
(let ((#{atom-key 4135}# (vector-ref #{p 4118}# 0)))
(if (eqv? #{atom-key 4135}# 'each)
(#{match-empty 4038}#
(vector-ref #{p 4118}# 1)
#{r 4119}#)
(if (eqv? #{atom-key 4135}# 'each+)
(#{match-empty 4038}#
(vector-ref #{p 4118}# 1)
(#{match-empty 4038}#
(reverse (vector-ref #{p 4118}# 2))
(#{match-empty 4038}#
(vector-ref #{p 4118}# 3)
#{r 4119}#)))
(if (if (eqv? #{atom-key 4135}# 'free-id)
#t
(eqv? #{atom-key 4135}# 'atom))
#{r 4119}#
(if (eqv? #{atom-key 4135}# 'vector)
(#{match-empty 4038}#
(vector-ref #{p 4118}# 1)
#{r 4119}#))))))))))))))
(#{combine 4040}#
(lambda (#{r* 4140}# #{r 4141}#)
(if (null? (car #{r* 4140}#))
#{r 4141}#
(cons (map car #{r* 4140}#)
(#{combine 4040}#
(map cdr #{r* 4140}#)
#{r 4141}#)))))
(#{match* 4042}#
(lambda (#{e 4144}#
#{p 4145}#
#{w 4146}#
#{r 4147}#
#{mod 4148}#)
(if (null? #{p 4145}#)
(if (null? #{e 4144}#) #{r 4147}# #f)
(if (pair? #{p 4145}#)
(if (pair? #{e 4144}#)
(#{match 4044}#
(car #{e 4144}#)
(car #{p 4145}#)
#{w 4146}#
(#{match 4044}#
(cdr #{e 4144}#)
(cdr #{p 4145}#)
#{w 4146}#
#{r 4147}#
#{mod 4148}#)
#{mod 4148}#)
#f)
(if (eq? #{p 4145}# 'each-any)
(begin
(let ((#{l 4165}#
(#{match-each-any 4036}#
#{e 4144}#
#{w 4146}#
#{mod 4148}#)))
(if #{l 4165}# (cons #{l 4165}# #{r 4147}#) #f)))
(begin
(let ((#{atom-key 4171}# (vector-ref #{p 4145}# 0)))
(if (eqv? #{atom-key 4171}# 'each)
(if (null? #{e 4144}#)
(#{match-empty 4038}#
(vector-ref #{p 4145}# 1)
#{r 4147}#)
(begin
(let ((#{l 4174}#
(#{match-each 4032}#
#{e 4144}#
(vector-ref #{p 4145}# 1)
#{w 4146}#
#{mod 4148}#)))
(if #{l 4174}#
(letrec*
((#{collect 4179}#
(lambda (#{l 4180}#)
(if (null? (car #{l 4180}#))
#{r 4147}#
(cons (map car #{l 4180}#)
(#{collect 4179}#
(map cdr #{l 4180}#)))))))
(begin (#{collect 4179}# #{l 4174}#)))
#f))))
(if (eqv? #{atom-key 4171}# 'each+)
(call-with-values
(lambda ()
(#{match-each+ 4034}#
#{e 4144}#
(vector-ref #{p 4145}# 1)
(vector-ref #{p 4145}# 2)
(vector-ref #{p 4145}# 3)
#{w 4146}#
#{r 4147}#
#{mod 4148}#))
(lambda (#{xr* 4182}# #{y-pat 4183}# #{r 4184}#)
(if #{r 4184}#
(if (null? #{y-pat 4183}#)
(if (null? #{xr* 4182}#)
(#{match-empty 4038}#
(vector-ref #{p 4145}# 1)
#{r 4184}#)
(#{combine 4040}#
#{xr* 4182}#
#{r 4184}#))
#f)
#f)))
(if (eqv? #{atom-key 4171}# 'free-id)
(if (#{id? 339}# #{e 4144}#)
(if (#{free-id=? 395}#
(#{wrap 405}#
#{e 4144}#
#{w 4146}#
#{mod 4148}#)
(vector-ref #{p 4145}# 1))
#{r 4147}#
#f)
#f)
(if (eqv? #{atom-key 4171}# 'atom)
(if (equal?
(vector-ref #{p 4145}# 1)
(#{strip 445}# #{e 4144}# #{w 4146}#))
#{r 4147}#
#f)
(if (eqv? #{atom-key 4171}# 'vector)
(if (vector? #{e 4144}#)
(#{match 4044}#
(vector->list #{e 4144}#)
(vector-ref #{p 4145}# 1)
#{w 4146}#
#{r 4147}#
#{mod 4148}#)
#f)))))))))))))
(#{match 4044}#
(lambda (#{e 4201}#
#{p 4202}#
#{w 4203}#
#{r 4204}#
#{mod 4205}#)
(if (not #{r 4204}#)
#f
(if (eq? #{p 4202}# '_)
#{r 4204}#
(if (eq? #{p 4202}# 'any)
(cons (#{wrap 405}# #{e 4201}# #{w 4203}# #{mod 4205}#)
#{r 4204}#)
(if (#{syntax-object? 305}# #{e 4201}#)
(#{match* 4042}#
(#{syntax-object-expression 307}# #{e 4201}#)
#{p 4202}#
(#{join-wraps 387}#
#{w 4203}#
(#{syntax-object-wrap 309}# #{e 4201}#))
#{r 4204}#
(#{syntax-object-module 311}# #{e 4201}#))
(#{match* 4042}#
#{e 4201}#
#{p 4202}#
#{w 4203}#
#{r 4204}#
#{mod 4205}#))))))))
(begin
(set! $sc-dispatch
(lambda (#{e 4220}# #{p 4221}#)
(if (eq? #{p 4221}# 'any)
(list #{e 4220}#)
(if (eq? #{p 4221}# '_)
'()
(if (#{syntax-object? 305}# #{e 4220}#)
(#{match* 4042}#
(#{syntax-object-expression 307}# #{e 4220}#)
#{p 4221}#
(#{syntax-object-wrap 309}# #{e 4220}#)
'()
(#{syntax-object-module 311}# #{e 4220}#))
(#{match* 4042}#
#{e 4220}#
#{p 4221}#
'(())
'()
#f)))))))))))
(define with-syntax
(make-syntax-transformer
'with-syntax
'macro
(lambda (#{x 4232}#)
(let ((#{tmp 4234}# #{x 4232}#))
(let ((#{tmp 4235}#
($sc-dispatch
#{tmp 4234}#
'(_ () any . each-any))))
(if #{tmp 4235}#
(@apply
(lambda (#{e1 4238}# #{e2 4239}#)
(cons '#(syntax-object
let
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4236" "i4237"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4233")))
(hygiene guile))
(cons '() (cons #{e1 4238}# #{e2 4239}#))))
#{tmp 4235}#)
(let ((#{tmp 4241}#
($sc-dispatch
#{tmp 4234}#
'(_ ((any any)) any . each-any))))
(if #{tmp 4241}#
(@apply
(lambda (#{out 4246}#
#{in 4247}#
#{e1 4248}#
#{e2 4249}#)
(list '#(syntax-object
syntax-case
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
#("i4242" "i4243" "i4244" "i4245"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4233")))
(hygiene guile))
#{in 4247}#
'()
(list #{out 4246}#
(cons '#(syntax-object
let
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
#("i4242" "i4243" "i4244" "i4245"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4233")))
(hygiene guile))
(cons '()
(cons #{e1 4248}# #{e2 4249}#))))))
#{tmp 4241}#)
(let ((#{tmp 4251}#
($sc-dispatch
#{tmp 4234}#
'(_ #(each (any any)) any . each-any))))
(if #{tmp 4251}#
(@apply
(lambda (#{out 4256}#
#{in 4257}#
#{e1 4258}#
#{e2 4259}#)
(list '#(syntax-object
syntax-case
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
#("i4252" "i4253" "i4254" "i4255"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4233")))
(hygiene guile))
(cons '#(syntax-object
list
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
#("i4252" "i4253" "i4254" "i4255"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4233")))
(hygiene guile))
#{in 4257}#)
'()
(list #{out 4256}#
(cons '#(syntax-object
let
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
#("i4252"
"i4253"
"i4254"
"i4255"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4233")))
(hygiene guile))
(cons '()
(cons #{e1 4258}#
#{e2 4259}#))))))
#{tmp 4251}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4234}#)))))))))))
(define syntax-rules
(make-syntax-transformer
'syntax-rules
'macro
(lambda (#{x 4263}#)
(let ((#{tmp 4265}# #{x 4263}#))
(let ((#{tmp 4266}#
($sc-dispatch
#{tmp 4265}#
'(_ each-any . #(each ((any . any) any))))))
(if #{tmp 4266}#
(@apply
(lambda (#{k 4271}#
#{keyword 4272}#
#{pattern 4273}#
#{template 4274}#)
(list '#(syntax-object
lambda
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4267" "i4268" "i4269" "i4270"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4264")))
(hygiene guile))
'(#(syntax-object
x
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4267" "i4268" "i4269" "i4270"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4264")))
(hygiene guile)))
(vector
'(#(syntax-object
macro-type
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4267" "i4268" "i4269" "i4270"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4264")))
(hygiene guile))
.
#(syntax-object
syntax-rules
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4267" "i4268" "i4269" "i4270"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4264")))
(hygiene guile)))
(cons '#(syntax-object
patterns
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4267" "i4268" "i4269" "i4270"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4264")))
(hygiene guile))
#{pattern 4273}#))
(cons '#(syntax-object
syntax-case
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4267" "i4268" "i4269" "i4270"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4264")))
(hygiene guile))
(cons '#(syntax-object
x
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4267" "i4268" "i4269" "i4270"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4264")))
(hygiene guile))
(cons #{k 4271}#
(map (lambda (#{tmp 4278}#
#{tmp 4277}#)
(list (cons '#(syntax-object
dummy
((top)
#(ribcage
#(k
keyword
pattern
template)
#((top)
(top)
(top)
(top))
#("i4267"
"i4268"
"i4269"
"i4270"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4264")))
(hygiene guile))
#{tmp 4277}#)
(list '#(syntax-object
syntax
((top)
#(ribcage
#(k
keyword
pattern
template)
#((top)
(top)
(top)
(top))
#("i4267"
"i4268"
"i4269"
"i4270"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4264")))
(hygiene guile))
#{tmp 4278}#)))
#{template 4274}#
#{pattern 4273}#))))))
#{tmp 4266}#)
(let ((#{tmp 4279}#
($sc-dispatch
#{tmp 4265}#
'(_ each-any any . #(each ((any . any) any))))))
(if (if #{tmp 4279}#
(@apply
(lambda (#{k 4285}#
#{docstring 4286}#
#{keyword 4287}#
#{pattern 4288}#
#{template 4289}#)
(string? (syntax->datum #{docstring 4286}#)))
#{tmp 4279}#)
#f)
(@apply
(lambda (#{k 4295}#
#{docstring 4296}#
#{keyword 4297}#
#{pattern 4298}#
#{template 4299}#)
(list '#(syntax-object
lambda
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4290" "i4291" "i4292" "i4293" "i4294"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4264")))
(hygiene guile))
'(#(syntax-object
x
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4290" "i4291" "i4292" "i4293" "i4294"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4264")))
(hygiene guile)))
#{docstring 4296}#
(vector
'(#(syntax-object
macro-type
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4290" "i4291" "i4292" "i4293" "i4294"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4264")))
(hygiene guile))
.
#(syntax-object
syntax-rules
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4290" "i4291" "i4292" "i4293" "i4294"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4264")))
(hygiene guile)))
(cons '#(syntax-object
patterns
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4290"
"i4291"
"i4292"
"i4293"
"i4294"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4264")))
(hygiene guile))
#{pattern 4298}#))
(cons '#(syntax-object
syntax-case
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4290"
"i4291"
"i4292"
"i4293"
"i4294"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4264")))
(hygiene guile))
(cons '#(syntax-object
x
((top)
#(ribcage
#(k
docstring
keyword
pattern
template)
#((top) (top) (top) (top) (top))
#("i4290"
"i4291"
"i4292"
"i4293"
"i4294"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4264")))
(hygiene guile))
(cons #{k 4295}#
(map (lambda (#{tmp 4303}#
#{tmp 4302}#)
(list (cons '#(syntax-object
dummy
((top)
#(ribcage
#(k
docstring
keyword
pattern
template)
#((top)
(top)
(top)
(top)
(top))
#("i4290"
"i4291"
"i4292"
"i4293"
"i4294"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4264")))
(hygiene
guile))
#{tmp 4302}#)
(list '#(syntax-object
syntax
((top)
#(ribcage
#(k
docstring
keyword
pattern
template)
#((top)
(top)
(top)
(top)
(top))
#("i4290"
"i4291"
"i4292"
"i4293"
"i4294"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4264")))
(hygiene
guile))
#{tmp 4303}#)))
#{template 4299}#
#{pattern 4298}#))))))
#{tmp 4279}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4265}#)))))))))
(define let*
(make-syntax-transformer
'let*
'macro
(lambda (#{x 4304}#)
(let ((#{tmp 4306}# #{x 4304}#))
(let ((#{tmp 4307}#
($sc-dispatch
#{tmp 4306}#
'(any #(each (any any)) any . each-any))))
(if (if #{tmp 4307}#
(@apply
(lambda (#{let* 4313}#
#{x 4314}#
#{v 4315}#
#{e1 4316}#
#{e2 4317}#)
(and-map identifier? #{x 4314}#))
#{tmp 4307}#)
#f)
(@apply
(lambda (#{let* 4324}#
#{x 4325}#
#{v 4326}#
#{e1 4327}#
#{e2 4328}#)
(letrec*
((#{f 4331}#
(lambda (#{bindings 4332}#)
(if (null? #{bindings 4332}#)
(cons '#(syntax-object
let
((top)
#(ribcage () () ())
#(ribcage
#(f bindings)
#((top) (top))
#("i4329" "i4330"))
#(ribcage
#(let* x v e1 e2)
#((top) (top) (top) (top) (top))
#("i4319"
"i4320"
"i4321"
"i4322"
"i4323"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4305")))
(hygiene guile))
(cons '() (cons #{e1 4327}# #{e2 4328}#)))
(let ((#{tmp 4337}#
(list (#{f 4331}# (cdr #{bindings 4332}#))
(car #{bindings 4332}#))))
(let ((#{tmp 4338}#
($sc-dispatch #{tmp 4337}# '(any any))))
(if #{tmp 4338}#
(@apply
(lambda (#{body 4341}# #{binding 4342}#)
(list '#(syntax-object
let
((top)
#(ribcage () () ())
#(ribcage
#(body binding)
#((top) (top))
#("i4339" "i4340"))
#(ribcage () () ())
#(ribcage
#(f bindings)
#((top) (top))
#("i4329" "i4330"))
#(ribcage
#(let* x v e1 e2)
#((top) (top) (top) (top) (top))
#("i4319"
"i4320"
"i4321"
"i4322"
"i4323"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4305")))
(hygiene guile))
(list #{binding 4342}#)
#{body 4341}#))
#{tmp 4338}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4337}#))))))))
(begin
(#{f 4331}# (map list #{x 4325}# #{v 4326}#)))))
#{tmp 4307}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4306}#)))))))
(define do
(make-syntax-transformer
'do
'macro
(lambda (#{orig-x 4343}#)
(let ((#{tmp 4345}# #{orig-x 4343}#))
(let ((#{tmp 4346}#
($sc-dispatch
#{tmp 4345}#
'(_ #(each (any any . any))
(any . each-any)
.
each-any))))
(if #{tmp 4346}#
(@apply
(lambda (#{var 4353}#
#{init 4354}#
#{step 4355}#
#{e0 4356}#
#{e1 4357}#
#{c 4358}#)
(let ((#{tmp 4360}#
(map (lambda (#{v 4381}# #{s 4382}#)
(let ((#{tmp 4385}# #{s 4382}#))
(let ((#{tmp 4386}#
($sc-dispatch #{tmp 4385}# '())))
(if #{tmp 4386}#
(@apply
(lambda () #{v 4381}#)
#{tmp 4386}#)
(let ((#{tmp 4387}#
($sc-dispatch
#{tmp 4385}#
'(any))))
(if #{tmp 4387}#
(@apply
(lambda (#{e 4389}#) #{e 4389}#)
#{tmp 4387}#)
(let ((#{_ 4391}# #{tmp 4385}#))
(syntax-violation
'do
"bad step expression"
#{orig-x 4343}#
#{s 4382}#))))))))
#{var 4353}#
#{step 4355}#)))
(let ((#{tmp 4361}#
($sc-dispatch #{tmp 4360}# 'each-any)))
(if #{tmp 4361}#
(@apply
(lambda (#{step 4363}#)
(let ((#{tmp 4364}# #{e1 4357}#))
(let ((#{tmp 4365}#
($sc-dispatch #{tmp 4364}# '())))
(if #{tmp 4365}#
(@apply
(lambda ()
(list '#(syntax-object
let
((top)
#(ribcage () () ())
#(ribcage
#(step)
#((top))
#("i4362"))
#(ribcage
#(var init step e0 e1 c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4347"
"i4348"
"i4349"
"i4350"
"i4351"
"i4352"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4344")))
(hygiene guile))
'#(syntax-object
doloop
((top)
#(ribcage () () ())
#(ribcage
#(step)
#((top))
#("i4362"))
#(ribcage
#(var init step e0 e1 c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4347"
"i4348"
"i4349"
"i4350"
"i4351"
"i4352"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4344")))
(hygiene guile))
(map list #{var 4353}# #{init 4354}#)
(list '#(syntax-object
if
((top)
#(ribcage () () ())
#(ribcage
#(step)
#((top))
#("i4362"))
#(ribcage
#(var init step e0 e1 c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4347"
"i4348"
"i4349"
"i4350"
"i4351"
"i4352"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4344")))
(hygiene guile))
(list '#(syntax-object
not
((top)
#(ribcage () () ())
#(ribcage
#(step)
#((top))
#("i4362"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4347"
"i4348"
"i4349"
"i4350"
"i4351"
"i4352"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4344")))
(hygiene guile))
#{e0 4356}#)
(cons '#(syntax-object
begin
((top)
#(ribcage () () ())
#(ribcage
#(step)
#((top))
#("i4362"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4347"
"i4348"
"i4349"
"i4350"
"i4351"
"i4352"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4344")))
(hygiene guile))
(append
#{c 4358}#
(list (cons '#(syntax-object
doloop
((top)
#(ribcage
()
()
())
#(ribcage
#(step)
#((top))
#("i4362"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4347"
"i4348"
"i4349"
"i4350"
"i4351"
"i4352"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4344")))
(hygiene
guile))
#{step 4363}#)))))))
#{tmp 4365}#)
(let ((#{tmp 4370}#
($sc-dispatch
#{tmp 4364}#
'(any . each-any))))
(if #{tmp 4370}#
(@apply
(lambda (#{e1 4373}# #{e2 4374}#)
(list '#(syntax-object
let
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4371" "i4372"))
#(ribcage () () ())
#(ribcage
#(step)
#((top))
#("i4362"))
#(ribcage
#(var init step e0 e1 c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4347"
"i4348"
"i4349"
"i4350"
"i4351"
"i4352"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4344")))
(hygiene guile))
'#(syntax-object
doloop
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4371" "i4372"))
#(ribcage () () ())
#(ribcage
#(step)
#((top))
#("i4362"))
#(ribcage
#(var init step e0 e1 c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4347"
"i4348"
"i4349"
"i4350"
"i4351"
"i4352"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4344")))
(hygiene guile))
(map list
#{var 4353}#
#{init 4354}#)
(list '#(syntax-object
if
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4371" "i4372"))
#(ribcage () () ())
#(ribcage
#(step)
#((top))
#("i4362"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4347"
"i4348"
"i4349"
"i4350"
"i4351"
"i4352"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4344")))
(hygiene guile))
#{e0 4356}#
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4371"
"i4372"))
#(ribcage
()
()
())
#(ribcage
#(step)
#((top))
#("i4362"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4347"
"i4348"
"i4349"
"i4350"
"i4351"
"i4352"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4344")))
(hygiene guile))
(cons #{e1 4373}#
#{e2 4374}#))
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4371"
"i4372"))
#(ribcage
()
()
())
#(ribcage
#(step)
#((top))
#("i4362"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4347"
"i4348"
"i4349"
"i4350"
"i4351"
"i4352"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4344")))
(hygiene guile))
(append
#{c 4358}#
(list (cons '#(syntax-object
doloop
((top)
#(ribcage
#(e1
e2)
#((top)
(top))
#("i4371"
"i4372"))
#(ribcage
()
()
())
#(ribcage
#(step)
#((top))
#("i4362"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4347"
"i4348"
"i4349"
"i4350"
"i4351"
"i4352"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4344")))
(hygiene
guile))
#{step 4363}#)))))))
#{tmp 4370}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4364}#)))))))
#{tmp 4361}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4360}#)))))
#{tmp 4346}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4345}#)))))))
(define quasiquote
(make-syntax-transformer
'quasiquote
'macro
(letrec*
((#{quasi 4395}#
(lambda (#{p 4408}# #{lev 4409}#)
(let ((#{tmp 4412}# #{p 4408}#))
(let ((#{tmp 4413}#
($sc-dispatch
#{tmp 4412}#
'(#(free-id
#(syntax-object
unquote
((top)
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4410" "i4411"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile)))
any))))
(if #{tmp 4413}#
(@apply
(lambda (#{p 4415}#)
(if (= #{lev 4409}# 0)
(list '#(syntax-object
"value"
((top)
#(ribcage #(p) #((top)) #("i4414"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4410" "i4411"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
#{p 4415}#)
(#{quasicons 4399}#
'(#(syntax-object
"quote"
((top)
#(ribcage #(p) #((top)) #("i4414"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4410" "i4411"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
#(syntax-object
unquote
((top)
#(ribcage #(p) #((top)) #("i4414"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4410" "i4411"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile)))
(#{quasi 4395}#
(list #{p 4415}#)
(#{1-}# #{lev 4409}#)))))
#{tmp 4413}#)
(let ((#{tmp 4416}#
($sc-dispatch
#{tmp 4412}#
'(#(free-id
#(syntax-object
quasiquote
((top)
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4410" "i4411"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile)))
any))))
(if #{tmp 4416}#
(@apply
(lambda (#{p 4418}#)
(#{quasicons 4399}#
'(#(syntax-object
"quote"
((top)
#(ribcage #(p) #((top)) #("i4417"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4410" "i4411"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
#(syntax-object
quasiquote
((top)
#(ribcage #(p) #((top)) #("i4417"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4410" "i4411"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile)))
(#{quasi 4395}#
(list #{p 4418}#)
(#{1+}# #{lev 4409}#))))
#{tmp 4416}#)
(let ((#{tmp 4419}#
($sc-dispatch #{tmp 4412}# '(any . any))))
(if #{tmp 4419}#
(@apply
(lambda (#{p 4422}# #{q 4423}#)
(let ((#{tmp 4424}# #{p 4422}#))
(let ((#{tmp 4425}#
($sc-dispatch
#{tmp 4424}#
'(#(free-id
#(syntax-object
unquote
((top)
#(ribcage
#(p q)
#((top) (top))
#("i4420" "i4421"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4410" "i4411"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile)))
.
each-any))))
(if #{tmp 4425}#
(@apply
(lambda (#{p 4427}#)
(if (= #{lev 4409}# 0)
(#{quasilist* 4403}#
(map (lambda (#{tmp 4428}#)
(list '#(syntax-object
"value"
((top)
#(ribcage
#(p)
#((top))
#("i4426"))
#(ribcage
#(p q)
#((top) (top))
#("i4420"
"i4421"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4410"
"i4411"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
#{tmp 4428}#))
#{p 4427}#)
(#{quasi 4395}#
#{q 4423}#
#{lev 4409}#))
(#{quasicons 4399}#
(#{quasicons 4399}#
'(#(syntax-object
"quote"
((top)
#(ribcage
#(p)
#((top))
#("i4426"))
#(ribcage
#(p q)
#((top) (top))
#("i4420" "i4421"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4410" "i4411"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
#(syntax-object
unquote
((top)
#(ribcage
#(p)
#((top))
#("i4426"))
#(ribcage
#(p q)
#((top) (top))
#("i4420" "i4421"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4410" "i4411"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile)))
(#{quasi 4395}#
#{p 4427}#
(#{1-}# #{lev 4409}#)))
(#{quasi 4395}#
#{q 4423}#
#{lev 4409}#))))
#{tmp 4425}#)
(let ((#{tmp 4430}#
($sc-dispatch
#{tmp 4424}#
'(#(free-id
#(syntax-object
unquote-splicing
((top)
#(ribcage
#(p q)
#((top) (top))
#("i4420" "i4421"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4410" "i4411"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile)))
.
each-any))))
(if #{tmp 4430}#
(@apply
(lambda (#{p 4432}#)
(if (= #{lev 4409}# 0)
(#{quasiappend 4401}#
(map (lambda (#{tmp 4433}#)
(list '#(syntax-object
"value"
((top)
#(ribcage
#(p)
#((top))
#("i4431"))
#(ribcage
#(p q)
#((top)
(top))
#("i4420"
"i4421"))
#(ribcage
()
()
())
#(ribcage
#(p lev)
#((top)
(top))
#("i4410"
"i4411"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
#{tmp 4433}#))
#{p 4432}#)
(#{quasi 4395}#
#{q 4423}#
#{lev 4409}#))
(#{quasicons 4399}#
(#{quasicons 4399}#
'(#(syntax-object
"quote"
((top)
#(ribcage
#(p)
#((top))
#("i4431"))
#(ribcage
#(p q)
#((top) (top))
#("i4420" "i4421"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4410" "i4411"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
#(syntax-object
unquote-splicing
((top)
#(ribcage
#(p)
#((top))
#("i4431"))
#(ribcage
#(p q)
#((top) (top))
#("i4420" "i4421"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4410" "i4411"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile)))
(#{quasi 4395}#
#{p 4432}#
(#{1-}# #{lev 4409}#)))
(#{quasi 4395}#
#{q 4423}#
#{lev 4409}#))))
#{tmp 4430}#)
(let ((#{_ 4436}# #{tmp 4424}#))
(#{quasicons 4399}#
(#{quasi 4395}#
#{p 4422}#
#{lev 4409}#)
(#{quasi 4395}#
#{q 4423}#
#{lev 4409}#)))))))))
#{tmp 4419}#)
(let ((#{tmp 4437}#
($sc-dispatch
#{tmp 4412}#
'#(vector each-any))))
(if #{tmp 4437}#
(@apply
(lambda (#{x 4439}#)
(#{quasivector 4405}#
(#{vquasi 4397}# #{x 4439}# #{lev 4409}#)))
#{tmp 4437}#)
(let ((#{p 4442}# #{tmp 4412}#))
(list '#(syntax-object
"quote"
((top)
#(ribcage #(p) #((top)) #("i4441"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4410" "i4411"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
#{p 4442}#)))))))))))))
(#{vquasi 4397}#
(lambda (#{p 4443}# #{lev 4444}#)
(let ((#{tmp 4447}# #{p 4443}#))
(let ((#{tmp 4448}#
($sc-dispatch #{tmp 4447}# '(any . any))))
(if #{tmp 4448}#
(@apply
(lambda (#{p 4451}# #{q 4452}#)
(let ((#{tmp 4453}# #{p 4451}#))
(let ((#{tmp 4454}#
($sc-dispatch
#{tmp 4453}#
'(#(free-id
#(syntax-object
unquote
((top)
#(ribcage
#(p q)
#((top) (top))
#("i4449" "i4450"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4445" "i4446"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile)))
.
each-any))))
(if #{tmp 4454}#
(@apply
(lambda (#{p 4456}#)
(if (= #{lev 4444}# 0)
(#{quasilist* 4403}#
(map (lambda (#{tmp 4457}#)
(list '#(syntax-object
"value"
((top)
#(ribcage
#(p)
#((top))
#("i4455"))
#(ribcage
#(p q)
#((top) (top))
#("i4449" "i4450"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4445" "i4446"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
#{tmp 4457}#))
#{p 4456}#)
(#{vquasi 4397}# #{q 4452}# #{lev 4444}#))
(#{quasicons 4399}#
(#{quasicons 4399}#
'(#(syntax-object
"quote"
((top)
#(ribcage #(p) #((top)) #("i4455"))
#(ribcage
#(p q)
#((top) (top))
#("i4449" "i4450"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4445" "i4446"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
#(syntax-object
unquote
((top)
#(ribcage #(p) #((top)) #("i4455"))
#(ribcage
#(p q)
#((top) (top))
#("i4449" "i4450"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4445" "i4446"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile)))
(#{quasi 4395}#
#{p 4456}#
(#{1-}# #{lev 4444}#)))
(#{vquasi 4397}# #{q 4452}# #{lev 4444}#))))
#{tmp 4454}#)
(let ((#{tmp 4459}#
($sc-dispatch
#{tmp 4453}#
'(#(free-id
#(syntax-object
unquote-splicing
((top)
#(ribcage
#(p q)
#((top) (top))
#("i4449" "i4450"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4445" "i4446"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile)))
.
each-any))))
(if #{tmp 4459}#
(@apply
(lambda (#{p 4461}#)
(if (= #{lev 4444}# 0)
(#{quasiappend 4401}#
(map (lambda (#{tmp 4462}#)
(list '#(syntax-object
"value"
((top)
#(ribcage
#(p)
#((top))
#("i4460"))
#(ribcage
#(p q)
#((top) (top))
#("i4449" "i4450"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4445" "i4446"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
#{tmp 4462}#))
#{p 4461}#)
(#{vquasi 4397}#
#{q 4452}#
#{lev 4444}#))
(#{quasicons 4399}#
(#{quasicons 4399}#
'(#(syntax-object
"quote"
((top)
#(ribcage
#(p)
#((top))
#("i4460"))
#(ribcage
#(p q)
#((top) (top))
#("i4449" "i4450"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4445" "i4446"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
#(syntax-object
unquote-splicing
((top)
#(ribcage
#(p)
#((top))
#("i4460"))
#(ribcage
#(p q)
#((top) (top))
#("i4449" "i4450"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4445" "i4446"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile)))
(#{quasi 4395}#
#{p 4461}#
(#{1-}# #{lev 4444}#)))
(#{vquasi 4397}#
#{q 4452}#
#{lev 4444}#))))
#{tmp 4459}#)
(let ((#{_ 4465}# #{tmp 4453}#))
(#{quasicons 4399}#
(#{quasi 4395}# #{p 4451}# #{lev 4444}#)
(#{vquasi 4397}#
#{q 4452}#
#{lev 4444}#)))))))))
#{tmp 4448}#)
(let ((#{tmp 4466}# ($sc-dispatch #{tmp 4447}# '())))
(if #{tmp 4466}#
(@apply
(lambda ()
'(#(syntax-object
"quote"
((top)
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4445" "i4446"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
()))
#{tmp 4466}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4447}#))))))))
(#{quasicons 4399}#
(lambda (#{x 4467}# #{y 4468}#)
(let ((#{tmp 4472}# (list #{x 4467}# #{y 4468}#)))
(let ((#{tmp 4473}#
($sc-dispatch #{tmp 4472}# '(any any))))
(if #{tmp 4473}#
(@apply
(lambda (#{x 4476}# #{y 4477}#)
(let ((#{tmp 4478}# #{y 4477}#))
(let ((#{tmp 4479}#
($sc-dispatch
#{tmp 4478}#
'(#(atom "quote") any))))
(if #{tmp 4479}#
(@apply
(lambda (#{dy 4481}#)
(let ((#{tmp 4482}# #{x 4476}#))
(let ((#{tmp 4483}#
($sc-dispatch
#{tmp 4482}#
'(#(atom "quote") any))))
(if #{tmp 4483}#
(@apply
(lambda (#{dx 4485}#)
(list '#(syntax-object
"quote"
((top)
#(ribcage
#(dx)
#((top))
#("i4484"))
#(ribcage
#(dy)
#((top))
#("i4480"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4474" "i4475"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4469" "i4470"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
(cons #{dx 4485}# #{dy 4481}#)))
#{tmp 4483}#)
(let ((#{_ 4487}# #{tmp 4482}#))
(if (null? #{dy 4481}#)
(list '#(syntax-object
"list"
((top)
#(ribcage
#(_)
#((top))
#("i4486"))
#(ribcage
#(dy)
#((top))
#("i4480"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4474" "i4475"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4469" "i4470"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
#{x 4476}#)
(list '#(syntax-object
"list*"
((top)
#(ribcage
#(_)
#((top))
#("i4486"))
#(ribcage
#(dy)
#((top))
#("i4480"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4474" "i4475"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4469" "i4470"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
#{x 4476}#
#{y 4477}#)))))))
#{tmp 4479}#)
(let ((#{tmp 4488}#
($sc-dispatch
#{tmp 4478}#
'(#(atom "list") . any))))
(if #{tmp 4488}#
(@apply
(lambda (#{stuff 4490}#)
(cons '#(syntax-object
"list"
((top)
#(ribcage
#(stuff)
#((top))
#("i4489"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4474" "i4475"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4469" "i4470"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
(cons #{x 4476}# #{stuff 4490}#)))
#{tmp 4488}#)
(let ((#{tmp 4491}#
($sc-dispatch
#{tmp 4478}#
'(#(atom "list*") . any))))
(if #{tmp 4491}#
(@apply
(lambda (#{stuff 4493}#)
(cons '#(syntax-object
"list*"
((top)
#(ribcage
#(stuff)
#((top))
#("i4492"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4474" "i4475"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4469" "i4470"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
(cons #{x 4476}# #{stuff 4493}#)))
#{tmp 4491}#)
(let ((#{_ 4495}# #{tmp 4478}#))
(list '#(syntax-object
"list*"
((top)
#(ribcage
#(_)
#((top))
#("i4494"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4474" "i4475"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4469" "i4470"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
#{x 4476}#
#{y 4477}#))))))))))
#{tmp 4473}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4472}#))))))
(#{quasiappend 4401}#
(lambda (#{x 4496}# #{y 4497}#)
(let ((#{tmp 4500}# #{y 4497}#))
(let ((#{tmp 4501}#
($sc-dispatch #{tmp 4500}# '(#(atom "quote") ()))))
(if #{tmp 4501}#
(@apply
(lambda ()
(if (null? #{x 4496}#)
'(#(syntax-object
"quote"
((top)
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4498" "i4499"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
())
(if (null? (cdr #{x 4496}#))
(car #{x 4496}#)
(let ((#{tmp 4508}# #{x 4496}#))
(let ((#{tmp 4509}#
($sc-dispatch #{tmp 4508}# 'each-any)))
(if #{tmp 4509}#
(@apply
(lambda (#{p 4511}#)
(cons '#(syntax-object
"append"
((top)
#(ribcage () () ())
#(ribcage
#(p)
#((top))
#("i4510"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4498" "i4499"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
#{p 4511}#))
#{tmp 4509}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4508}#)))))))
#{tmp 4501}#)
(let ((#{_ 4514}# #{tmp 4500}#))
(if (null? #{x 4496}#)
#{y 4497}#
(let ((#{tmp 4519}# (list #{x 4496}# #{y 4497}#)))
(let ((#{tmp 4520}#
($sc-dispatch #{tmp 4519}# '(each-any any))))
(if #{tmp 4520}#
(@apply
(lambda (#{p 4523}# #{y 4524}#)
(cons '#(syntax-object
"append"
((top)
#(ribcage () () ())
#(ribcage
#(p y)
#((top) (top))
#("i4521" "i4522"))
#(ribcage #(_) #((top)) #("i4513"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4498" "i4499"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
(append #{p 4523}# (list #{y 4524}#))))
#{tmp 4520}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4519}#)))))))))))
(#{quasilist* 4403}#
(lambda (#{x 4526}# #{y 4527}#)
(letrec*
((#{f 4532}#
(lambda (#{x 4533}#)
(if (null? #{x 4533}#)
#{y 4527}#
(#{quasicons 4399}#
(car #{x 4533}#)
(#{f 4532}# (cdr #{x 4533}#)))))))
(begin (#{f 4532}# #{x 4526}#)))))
(#{quasivector 4405}#
(lambda (#{x 4534}#)
(let ((#{tmp 4536}# #{x 4534}#))
(let ((#{tmp 4537}#
($sc-dispatch
#{tmp 4536}#
'(#(atom "quote") each-any))))
(if #{tmp 4537}#
(@apply
(lambda (#{x 4539}#)
(list '#(syntax-object
"quote"
((top)
#(ribcage #(x) #((top)) #("i4538"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4535"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
(list->vector #{x 4539}#)))
#{tmp 4537}#)
(let ((#{_ 4542}# #{tmp 4536}#))
(letrec*
((#{f 4546}#
(lambda (#{y 4547}# #{k 4548}#)
(let ((#{tmp 4559}# #{y 4547}#))
(let ((#{tmp 4560}#
($sc-dispatch
#{tmp 4559}#
'(#(atom "quote") each-any))))
(if #{tmp 4560}#
(@apply
(lambda (#{y 4562}#)
(#{k 4548}#
(map (lambda (#{tmp 4563}#)
(list '#(syntax-object
"quote"
((top)
#(ribcage
#(y)
#((top))
#("i4561"))
#(ribcage () () ())
#(ribcage
#(f y k)
#((top) (top) (top))
#("i4543"
"i4544"
"i4545"))
#(ribcage
#(_)
#((top))
#("i4541"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4535"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
#{tmp 4563}#))
#{y 4562}#)))
#{tmp 4560}#)
(let ((#{tmp 4564}#
($sc-dispatch
#{tmp 4559}#
'(#(atom "list") . each-any))))
(if #{tmp 4564}#
(@apply
(lambda (#{y 4566}#)
(#{k 4548}# #{y 4566}#))
#{tmp 4564}#)
(let ((#{tmp 4568}#
($sc-dispatch
#{tmp 4559}#
'(#(atom "list*")
.
#(each+ any (any) ())))))
(if #{tmp 4568}#
(@apply
(lambda (#{y 4571}# #{z 4572}#)
(#{f 4546}#
#{z 4572}#
(lambda (#{ls 4573}#)
(#{k 4548}#
(append
#{y 4571}#
#{ls 4573}#)))))
#{tmp 4568}#)
(let ((#{else 4577}# #{tmp 4559}#))
(let ((#{tmp 4581}# #{x 4534}#))
(let ((#{ g4578 4583}#
#{tmp 4581}#))
(list '#(syntax-object
"list->vector"
((top)
#(ribcage () () ())
#(ribcage
#(#{ g4578}#)
#((m4579 top))
#("i4582"))
#(ribcage
#(else)
#((top))
#("i4576"))
#(ribcage () () ())
#(ribcage
#(f y k)
#((top) (top) (top))
#("i4543"
"i4544"
"i4545"))
#(ribcage
#(_)
#((top))
#("i4541"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4535"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
#{ g4578 4583}#))))))))))))))
(begin
(#{f 4546}#
#{x 4534}#
(lambda (#{ls 4549}#)
(let ((#{tmp 4554}# #{ls 4549}#))
(let ((#{tmp 4555}#
($sc-dispatch #{tmp 4554}# 'each-any)))
(if #{tmp 4555}#
(@apply
(lambda (#{ g4551 4557}#)
(cons '#(syntax-object
"vector"
((top)
#(ribcage () () ())
#(ribcage
#(#{ g4551}#)
#((m4552 top))
#("i4556"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(ls)
#((top))
#("i4550"))
#(ribcage
#(_)
#((top))
#("i4541"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4535"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
#{ g4551 4557}#))
#{tmp 4555}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4554}#))))))))))))))
(#{emit 4407}#
(lambda (#{x 4584}#)
(let ((#{tmp 4586}# #{x 4584}#))
(let ((#{tmp 4587}#
($sc-dispatch
#{tmp 4586}#
'(#(atom "quote") any))))
(if #{tmp 4587}#
(@apply
(lambda (#{x 4589}#)
(list '#(syntax-object
quote
((top)
#(ribcage #(x) #((top)) #("i4588"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4585"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
#{x 4589}#))
#{tmp 4587}#)
(let ((#{tmp 4590}#
($sc-dispatch
#{tmp 4586}#
'(#(atom "list") . each-any))))
(if #{tmp 4590}#
(@apply
(lambda (#{x 4592}#)
(let ((#{tmp 4596}# (map #{emit 4407}# #{x 4592}#)))
(let ((#{tmp 4597}#
($sc-dispatch #{tmp 4596}# 'each-any)))
(if #{tmp 4597}#
(@apply
(lambda (#{ g4593 4599}#)
(cons '#(syntax-object
list
((top)
#(ribcage () () ())
#(ribcage
#(#{ g4593}#)
#((m4594 top))
#("i4598"))
#(ribcage
#(x)
#((top))
#("i4591"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4585"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
#{ g4593 4599}#))
#{tmp 4597}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4596}#)))))
#{tmp 4590}#)
(let ((#{tmp 4602}#
($sc-dispatch
#{tmp 4586}#
'(#(atom "list*") . #(each+ any (any) ())))))
(if #{tmp 4602}#
(@apply
(lambda (#{x 4605}# #{y 4606}#)
(letrec*
((#{f 4609}#
(lambda (#{x* 4610}#)
(if (null? #{x* 4610}#)
(#{emit 4407}# #{y 4606}#)
(let ((#{tmp 4616}#
(list (#{emit 4407}#
(car #{x* 4610}#))
(#{f 4609}#
(cdr #{x* 4610}#)))))
(let ((#{tmp 4617}#
($sc-dispatch
#{tmp 4616}#
'(any any))))
(if #{tmp 4617}#
(@apply
(lambda (#{ g4613 4620}#
#{ g4612 4621}#)
(list '#(syntax-object
cons
((top)
#(ribcage () () ())
#(ribcage
#(#{ g4613}#
#{ g4612}#)
#((m4614 top)
(m4614 top))
#("i4618" "i4619"))
#(ribcage () () ())
#(ribcage
#(f x*)
#((top) (top))
#("i4607" "i4608"))
#(ribcage
#(x y)
#((top) (top))
#("i4603" "i4604"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4585"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
#{ g4613 4620}#
#{ g4612 4621}#))
#{tmp 4617}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4616}#))))))))
(begin (#{f 4609}# #{x 4605}#))))
#{tmp 4602}#)
(let ((#{tmp 4622}#
($sc-dispatch
#{tmp 4586}#
'(#(atom "append") . each-any))))
(if #{tmp 4622}#
(@apply
(lambda (#{x 4624}#)
(let ((#{tmp 4628}#
(map #{emit 4407}# #{x 4624}#)))
(let ((#{tmp 4629}#
($sc-dispatch
#{tmp 4628}#
'each-any)))
(if #{tmp 4629}#
(@apply
(lambda (#{ g4625 4631}#)
(cons '#(syntax-object
append
((top)
#(ribcage () () ())
#(ribcage
#(#{ g4625}#)
#((m4626 top))
#("i4630"))
#(ribcage
#(x)
#((top))
#("i4623"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4585"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
#{ g4625 4631}#))
#{tmp 4629}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4628}#)))))
#{tmp 4622}#)
(let ((#{tmp 4634}#
($sc-dispatch
#{tmp 4586}#
'(#(atom "vector") . each-any))))
(if #{tmp 4634}#
(@apply
(lambda (#{x 4636}#)
(let ((#{tmp 4640}#
(map #{emit 4407}# #{x 4636}#)))
(let ((#{tmp 4641}#
($sc-dispatch
#{tmp 4640}#
'each-any)))
(if #{tmp 4641}#
(@apply
(lambda (#{ g4637 4643}#)
(cons '#(syntax-object
vector
((top)
#(ribcage () () ())
#(ribcage
#(#{ g4637}#)
#((m4638 top))
#("i4642"))
#(ribcage
#(x)
#((top))
#("i4635"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4585"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
#{ g4637 4643}#))
#{tmp 4641}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4640}#)))))
#{tmp 4634}#)
(let ((#{tmp 4646}#
($sc-dispatch
#{tmp 4586}#
'(#(atom "list->vector") any))))
(if #{tmp 4646}#
(@apply
(lambda (#{x 4648}#)
(let ((#{tmp 4652}#
(#{emit 4407}# #{x 4648}#)))
(let ((#{ g4649 4654}#
#{tmp 4652}#))
(list '#(syntax-object
list->vector
((top)
#(ribcage () () ())
#(ribcage
#(#{ g4649}#)
#((m4650 top))
#("i4653"))
#(ribcage
#(x)
#((top))
#("i4647"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4585"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4406"
"i4404"
"i4402"
"i4400"
"i4398"
"i4396"
"i4394")))
(hygiene guile))
#{ g4649 4654}#))))
#{tmp 4646}#)
(let ((#{tmp 4655}#
($sc-dispatch
#{tmp 4586}#
'(#(atom "value") any))))
(if #{tmp 4655}#
(@apply
(lambda (#{x 4657}#) #{x 4657}#)
#{tmp 4655}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4586}#)))))))))))))))))))
(begin
(lambda (#{x 4658}#)
(let ((#{tmp 4660}# #{x 4658}#))
(let ((#{tmp 4661}#
($sc-dispatch #{tmp 4660}# '(_ any))))
(if #{tmp 4661}#
(@apply
(lambda (#{e 4663}#)
(#{emit 4407}# (#{quasi 4395}# #{e 4663}# 0)))
#{tmp 4661}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4660}#)))))))))
(define include
(make-syntax-transformer
'include
'macro
(lambda (#{x 4664}#)
(letrec*
((#{read-file 4667}#
(lambda (#{fn 4668}# #{k 4669}#)
(begin
(let ((#{p 4673}# (open-input-file #{fn 4668}#)))
(letrec*
((#{f 4677}#
(lambda (#{x 4678}# #{result 4679}#)
(if (eof-object? #{x 4678}#)
(begin
(close-input-port #{p 4673}#)
(reverse #{result 4679}#))
(#{f 4677}#
(read #{p 4673}#)
(cons (datum->syntax #{k 4669}# #{x 4678}#)
#{result 4679}#))))))
(begin (#{f 4677}# (read #{p 4673}#) '()))))))))
(begin
(let ((#{tmp 4680}# #{x 4664}#))
(let ((#{tmp 4681}#
($sc-dispatch #{tmp 4680}# '(any any))))
(if #{tmp 4681}#
(@apply
(lambda (#{k 4684}# #{filename 4685}#)
(begin
(let ((#{fn 4687}# (syntax->datum #{filename 4685}#)))
(let ((#{tmp 4689}#
(#{read-file 4667}#
#{fn 4687}#
#{filename 4685}#)))
(let ((#{tmp 4690}#
($sc-dispatch #{tmp 4689}# 'each-any)))
(if #{tmp 4690}#
(@apply
(lambda (#{exp 4692}#)
(cons '#(syntax-object
begin
((top)
#(ribcage () () ())
#(ribcage
#(exp)
#((top))
#("i4691"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(fn)
#((top))
#("i4686"))
#(ribcage
#(k filename)
#((top) (top))
#("i4682" "i4683"))
#(ribcage
(read-file)
((top))
("i4666"))
#(ribcage
#(x)
#((top))
#("i4665")))
(hygiene guile))
#{exp 4692}#))
#{tmp 4690}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4689}#)))))))
#{tmp 4681}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4680}#)))))))))
(define include-from-path
(make-syntax-transformer
'include-from-path
'macro
(lambda (#{x 4694}#)
(let ((#{tmp 4696}# #{x 4694}#))
(let ((#{tmp 4697}#
($sc-dispatch #{tmp 4696}# '(any any))))
(if #{tmp 4697}#
(@apply
(lambda (#{k 4700}# #{filename 4701}#)
(begin
(let ((#{fn 4703}# (syntax->datum #{filename 4701}#)))
(let ((#{tmp 4705}#
(datum->syntax
#{filename 4701}#
(begin
(let ((#{t 4710}#
(%search-load-path #{fn 4703}#)))
(if #{t 4710}#
#{t 4710}#
(syntax-violation
'include-from-path
"file not found in path"
#{x 4694}#
#{filename 4701}#)))))))
(let ((#{fn 4707}# #{tmp 4705}#))
(list '#(syntax-object
include
((top)
#(ribcage () () ())
#(ribcage #(fn) #((top)) #("i4706"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(fn) #((top)) #("i4702"))
#(ribcage
#(k filename)
#((top) (top))
#("i4698" "i4699"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4695")))
(hygiene guile))
#{fn 4707}#))))))
#{tmp 4697}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4696}#)))))))
(define unquote
(make-syntax-transformer
'unquote
'macro
(lambda (#{x 4712}#)
(syntax-violation
'unquote
"expression not valid outside of quasiquote"
#{x 4712}#))))
(define unquote-splicing
(make-syntax-transformer
'unquote-splicing
'macro
(lambda (#{x 4714}#)
(syntax-violation
'unquote-splicing
"expression not valid outside of quasiquote"
#{x 4714}#))))
(define case
(make-syntax-transformer
'case
'macro
(lambda (#{x 4716}#)
(let ((#{tmp 4718}# #{x 4716}#))
(let ((#{tmp 4719}#
($sc-dispatch
#{tmp 4718}#
'(_ any any . each-any))))
(if #{tmp 4719}#
(@apply
(lambda (#{e 4723}# #{m1 4724}# #{m2 4725}#)
(let ((#{tmp 4727}#
(letrec*
((#{f 4733}#
(lambda (#{clause 4734}# #{clauses 4735}#)
(if (null? #{clauses 4735}#)
(let ((#{tmp 4737}# #{clause 4734}#))
(let ((#{tmp 4738}#
($sc-dispatch
#{tmp 4737}#
'(#(free-id
#(syntax-object
else
((top)
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
#("i4730"
"i4731"
"i4732"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
#("i4720"
"i4721"
"i4722"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4717")))
(hygiene guile)))
any
.
each-any))))
(if #{tmp 4738}#
(@apply
(lambda (#{e1 4741}# #{e2 4742}#)
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4739" "i4740"))
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
#("i4730"
"i4731"
"i4732"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
#("i4720"
"i4721"
"i4722"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4717")))
(hygiene guile))
(cons #{e1 4741}#
#{e2 4742}#)))
#{tmp 4738}#)
(let ((#{tmp 4744}#
($sc-dispatch
#{tmp 4737}#
'(each-any any . each-any))))
(if #{tmp 4744}#
(@apply
(lambda (#{k 4748}#
#{e1 4749}#
#{e2 4750}#)
(list '#(syntax-object
if
((top)
#(ribcage
#(k e1 e2)
#((top) (top) (top))
#("i4745"
"i4746"
"i4747"))
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
#("i4730"
"i4731"
"i4732"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
#("i4720"
"i4721"
"i4722"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4717")))
(hygiene guile))
(list '#(syntax-object
memv
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i4745"
"i4746"
"i4747"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4730"
"i4731"
"i4732"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
#("i4720"
"i4721"
"i4722"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4717")))
(hygiene guile))
'#(syntax-object
t
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i4745"
"i4746"
"i4747"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4730"
"i4731"
"i4732"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
#("i4720"
"i4721"
"i4722"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4717")))
(hygiene guile))
(list '#(syntax-object
quote
((top)
#(ribcage
#(k
e1
e2)
#((top)
(top)
(top))
#("i4745"
"i4746"
"i4747"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4730"
"i4731"
"i4732"))
#(ribcage
#(e
m1
m2)
#((top)
(top)
(top))
#("i4720"
"i4721"
"i4722"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4717")))
(hygiene
guile))
#{k 4748}#))
(cons '#(syntax-object
begin
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i4745"
"i4746"
"i4747"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4730"
"i4731"
"i4732"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
#("i4720"
"i4721"
"i4722"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4717")))
(hygiene guile))
(cons #{e1 4749}#
#{e2 4750}#))))
#{tmp 4744}#)
(let ((#{_ 4754}# #{tmp 4737}#))
(syntax-violation
'case
"bad clause"
#{x 4716}#
#{clause 4734}#)))))))
(let ((#{tmp 4756}#
(#{f 4733}#
(car #{clauses 4735}#)
(cdr #{clauses 4735}#))))
(let ((#{rest 4758}# #{tmp 4756}#))
(let ((#{tmp 4759}# #{clause 4734}#))
(let ((#{tmp 4760}#
($sc-dispatch
#{tmp 4759}#
'(each-any any . each-any))))
(if #{tmp 4760}#
(@apply
(lambda (#{k 4764}#
#{e1 4765}#
#{e2 4766}#)
(list '#(syntax-object
if
((top)
#(ribcage
#(k e1 e2)
#((top) (top) (top))
#("i4761"
"i4762"
"i4763"))
#(ribcage () () ())
#(ribcage
#(rest)
#((top))
#("i4757"))
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
#("i4730"
"i4731"
"i4732"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
#("i4720"
"i4721"
"i4722"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4717")))
(hygiene guile))
(list '#(syntax-object
memv
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i4761"
"i4762"
"i4763"))
#(ribcage
()
()
())
#(ribcage
#(rest)
#((top))
#("i4757"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4730"
"i4731"
"i4732"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
#("i4720"
"i4721"
"i4722"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4717")))
(hygiene guile))
'#(syntax-object
t
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i4761"
"i4762"
"i4763"))
#(ribcage
()
()
())
#(ribcage
#(rest)
#((top))
#("i4757"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4730"
"i4731"
"i4732"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
#("i4720"
"i4721"
"i4722"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4717")))
(hygiene guile))
(list '#(syntax-object
quote
((top)
#(ribcage
#(k
e1
e2)
#((top)
(top)
(top))
#("i4761"
"i4762"
"i4763"))
#(ribcage
()
()
())
#(ribcage
#(rest)
#((top))
#("i4757"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4730"
"i4731"
"i4732"))
#(ribcage
#(e
m1
m2)
#((top)
(top)
(top))
#("i4720"
"i4721"
"i4722"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4717")))
(hygiene
guile))
#{k 4764}#))
(cons '#(syntax-object
begin
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i4761"
"i4762"
"i4763"))
#(ribcage
()
()
())
#(ribcage
#(rest)
#((top))
#("i4757"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4730"
"i4731"
"i4732"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
#("i4720"
"i4721"
"i4722"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4717")))
(hygiene guile))
(cons #{e1 4765}#
#{e2 4766}#))
#{rest 4758}#))
#{tmp 4760}#)
(let ((#{_ 4770}# #{tmp 4759}#))
(syntax-violation
'case
"bad clause"
#{x 4716}#
#{clause 4734}#)))))))))))
(begin (#{f 4733}# #{m1 4724}# #{m2 4725}#)))))
(let ((#{body 4729}# #{tmp 4727}#))
(list '#(syntax-object
let
((top)
#(ribcage () () ())
#(ribcage #(body) #((top)) #("i4728"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
#("i4720" "i4721" "i4722"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4717")))
(hygiene guile))
(list (list '#(syntax-object
t
((top)
#(ribcage () () ())
#(ribcage
#(body)
#((top))
#("i4728"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
#("i4720" "i4721" "i4722"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4717")))
(hygiene guile))
#{e 4723}#))
#{body 4729}#))))
#{tmp 4719}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4718}#)))))))
(define make-variable-transformer
(lambda (#{proc 4771}#)
(if (procedure? #{proc 4771}#)
(begin
(letrec*
((#{trans 4774}#
(lambda (#{x 4775}#) (#{proc 4771}# #{x 4775}#))))
(begin
(set-procedure-property!
#{trans 4774}#
'variable-transformer
#t)
#{trans 4774}#)))
(error "variable transformer not a procedure"
#{proc 4771}#))))
(define identifier-syntax
(make-syntax-transformer
'identifier-syntax
'macro
(lambda (#{x 4777}#)
(let ((#{tmp 4779}# #{x 4777}#))
(let ((#{tmp 4780}#
($sc-dispatch #{tmp 4779}# '(_ any))))
(if #{tmp 4780}#
(@apply
(lambda (#{e 4782}#)
(list '#(syntax-object
lambda
((top)
#(ribcage #(e) #((top)) #("i4781"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile))
'(#(syntax-object
x
((top)
#(ribcage #(e) #((top)) #("i4781"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile)))
'#((#(syntax-object
macro-type
((top)
#(ribcage #(e) #((top)) #("i4781"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile))
.
#(syntax-object
identifier-syntax
((top)
#(ribcage #(e) #((top)) #("i4781"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile))))
(list '#(syntax-object
syntax-case
((top)
#(ribcage #(e) #((top)) #("i4781"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile))
'#(syntax-object
x
((top)
#(ribcage #(e) #((top)) #("i4781"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile))
'()
(list '#(syntax-object
id
((top)
#(ribcage #(e) #((top)) #("i4781"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile))
'(#(syntax-object
identifier?
((top)
#(ribcage #(e) #((top)) #("i4781"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile))
(#(syntax-object
syntax
((top)
#(ribcage #(e) #((top)) #("i4781"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile))
#(syntax-object
id
((top)
#(ribcage #(e) #((top)) #("i4781"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile))))
(list '#(syntax-object
syntax
((top)
#(ribcage #(e) #((top)) #("i4781"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4778")))
(hygiene guile))
#{e 4782}#))
(list '(#(syntax-object
_
((top)
#(ribcage #(e) #((top)) #("i4781"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile))
#(syntax-object
x
((top)
#(ribcage #(e) #((top)) #("i4781"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile))
#(syntax-object
...
((top)
#(ribcage #(e) #((top)) #("i4781"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile)))
(list '#(syntax-object
syntax
((top)
#(ribcage #(e) #((top)) #("i4781"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4778")))
(hygiene guile))
(cons #{e 4782}#
'(#(syntax-object
x
((top)
#(ribcage
#(e)
#((top))
#("i4781"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4778")))
(hygiene guile))
#(syntax-object
...
((top)
#(ribcage
#(e)
#((top))
#("i4781"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4778")))
(hygiene guile)))))))))
#{tmp 4780}#)
(let ((#{tmp 4783}#
($sc-dispatch
#{tmp 4779}#
'(_ (any any)
((#(free-id
#(syntax-object
set!
((top)
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile)))
any
any)
any)))))
(if (if #{tmp 4783}#
(@apply
(lambda (#{id 4789}#
#{exp1 4790}#
#{var 4791}#
#{val 4792}#
#{exp2 4793}#)
(if (identifier? #{id 4789}#)
(identifier? #{var 4791}#)
#f))
#{tmp 4783}#)
#f)
(@apply
(lambda (#{id 4801}#
#{exp1 4802}#
#{var 4803}#
#{val 4804}#
#{exp2 4805}#)
(list '#(syntax-object
make-variable-transformer
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4796" "i4797" "i4798" "i4799" "i4800"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile))
(list '#(syntax-object
lambda
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4796"
"i4797"
"i4798"
"i4799"
"i4800"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile))
'(#(syntax-object
x
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4796"
"i4797"
"i4798"
"i4799"
"i4800"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile)))
'#((#(syntax-object
macro-type
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4796"
"i4797"
"i4798"
"i4799"
"i4800"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile))
.
#(syntax-object
variable-transformer
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4796"
"i4797"
"i4798"
"i4799"
"i4800"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile))))
(list '#(syntax-object
syntax-case
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4796"
"i4797"
"i4798"
"i4799"
"i4800"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile))
'#(syntax-object
x
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4796"
"i4797"
"i4798"
"i4799"
"i4800"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile))
'(#(syntax-object
set!
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4796"
"i4797"
"i4798"
"i4799"
"i4800"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4778")))
(hygiene guile)))
(list (list '#(syntax-object
set!
((top)
#(ribcage
#(id exp1 var val exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4796"
"i4797"
"i4798"
"i4799"
"i4800"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4778")))
(hygiene guile))
#{var 4803}#
#{val 4804}#)
(list '#(syntax-object
syntax
((top)
#(ribcage
#(id exp1 var val exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4796"
"i4797"
"i4798"
"i4799"
"i4800"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4778")))
(hygiene guile))
#{exp2 4805}#))
(list (cons #{id 4801}#
'(#(syntax-object
x
((top)
#(ribcage
#(id
exp1
var
val
exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4796"
"i4797"
"i4798"
"i4799"
"i4800"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4778")))
(hygiene guile))
#(syntax-object
...
((top)
#(ribcage
#(id
exp1
var
val
exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4796"
"i4797"
"i4798"
"i4799"
"i4800"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4778")))
(hygiene guile))))
(list '#(syntax-object
syntax
((top)
#(ribcage
#(id exp1 var val exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4796"
"i4797"
"i4798"
"i4799"
"i4800"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4778")))
(hygiene guile))
(cons #{exp1 4802}#
'(#(syntax-object
x
((top)
#(ribcage
#(id
exp1
var
val
exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4796"
"i4797"
"i4798"
"i4799"
"i4800"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4778")))
(hygiene guile))
#(syntax-object
...
((top)
#(ribcage
#(id
exp1
var
val
exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4796"
"i4797"
"i4798"
"i4799"
"i4800"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4778")))
(hygiene
guile))))))
(list #{id 4801}#
(list '#(syntax-object
identifier?
((top)
#(ribcage
#(id exp1 var val exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4796"
"i4797"
"i4798"
"i4799"
"i4800"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4778")))
(hygiene guile))
(list '#(syntax-object
syntax
((top)
#(ribcage
#(id
exp1
var
val
exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4796"
"i4797"
"i4798"
"i4799"
"i4800"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4778")))
(hygiene guile))
#{id 4801}#))
(list '#(syntax-object
syntax
((top)
#(ribcage
#(id exp1 var val exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4796"
"i4797"
"i4798"
"i4799"
"i4800"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4778")))
(hygiene guile))
#{exp1 4802}#))))))
#{tmp 4783}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4779}#)))))))))
(define define*
(make-syntax-transformer
'define*
'macro
(lambda (#{x 4806}#)
(let ((#{tmp 4808}# #{x 4806}#))
(let ((#{tmp 4809}#
($sc-dispatch
#{tmp 4808}#
'(_ (any . any) any . each-any))))
(if #{tmp 4809}#
(@apply
(lambda (#{id 4814}#
#{args 4815}#
#{b0 4816}#
#{b1 4817}#)
(list '#(syntax-object
define
((top)
#(ribcage
#(id args b0 b1)
#((top) (top) (top) (top))
#("i4810" "i4811" "i4812" "i4813"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4807")))
(hygiene guile))
#{id 4814}#
(cons '#(syntax-object
lambda*
((top)
#(ribcage
#(id args b0 b1)
#((top) (top) (top) (top))
#("i4810" "i4811" "i4812" "i4813"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4807")))
(hygiene guile))
(cons #{args 4815}#
(cons #{b0 4816}# #{b1 4817}#)))))
#{tmp 4809}#)
(let ((#{tmp 4819}#
($sc-dispatch #{tmp 4808}# '(_ any any))))
(if (if #{tmp 4819}#
(@apply
(lambda (#{id 4822}# #{val 4823}#)
(identifier?
'#(syntax-object
x
((top)
#(ribcage
#(id val)
#((top) (top))
#("i4820" "i4821"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4807")))
(hygiene guile))))
#{tmp 4819}#)
#f)
(@apply
(lambda (#{id 4826}# #{val 4827}#)
(list '#(syntax-object
define
((top)
#(ribcage
#(id val)
#((top) (top))
#("i4824" "i4825"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4807")))
(hygiene guile))
#{id 4826}#
#{val 4827}#))
#{tmp 4819}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4808}#)))))))))