1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-12 23:00:22 +02:00
guile/module/ice-9/psyntax-pp.scm
Andy Wingo 1bbe0a631c psyntax uses define-syntax-rule
* module/ice-9/psyntax.scm: Use define-syntax-rule.

* module/ice-9/psyntax-pp.scm: Regenerate.
2011-09-02 11:34:00 +02:00

18793 lines
1,015 KiB
Scheme

(eval-when (compile) (set-current-module (resolve-module (quote (guile)))))
(if #f #f)
(letrec*
((#{make-void 203}#
(lambda (#{src 774}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 0)
#{src 774}#)))
(#{make-const 205}#
(lambda (#{src 776}# #{exp 777}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 1)
#{src 776}#
#{exp 777}#)))
(#{make-lexical-ref 209}#
(lambda (#{src 784}# #{name 785}# #{gensym 786}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 3)
#{src 784}#
#{name 785}#
#{gensym 786}#)))
(#{make-lexical-set 211}#
(lambda (#{src 790}#
#{name 791}#
#{gensym 792}#
#{exp 793}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 4)
#{src 790}#
#{name 791}#
#{gensym 792}#
#{exp 793}#)))
(#{make-module-ref 213}#
(lambda (#{src 798}#
#{mod 799}#
#{name 800}#
#{public? 801}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 5)
#{src 798}#
#{mod 799}#
#{name 800}#
#{public? 801}#)))
(#{make-module-set 215}#
(lambda (#{src 806}#
#{mod 807}#
#{name 808}#
#{public? 809}#
#{exp 810}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 6)
#{src 806}#
#{mod 807}#
#{name 808}#
#{public? 809}#
#{exp 810}#)))
(#{make-toplevel-ref 217}#
(lambda (#{src 816}# #{name 817}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 7)
#{src 816}#
#{name 817}#)))
(#{make-toplevel-set 219}#
(lambda (#{src 820}# #{name 821}# #{exp 822}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 8)
#{src 820}#
#{name 821}#
#{exp 822}#)))
(#{make-toplevel-define 221}#
(lambda (#{src 826}# #{name 827}# #{exp 828}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 9)
#{src 826}#
#{name 827}#
#{exp 828}#)))
(#{make-conditional 223}#
(lambda (#{src 832}#
#{test 833}#
#{consequent 834}#
#{alternate 835}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 10)
#{src 832}#
#{test 833}#
#{consequent 834}#
#{alternate 835}#)))
(#{make-application 225}#
(lambda (#{src 840}# #{proc 841}# #{args 842}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 11)
#{src 840}#
#{proc 841}#
#{args 842}#)))
(#{make-sequence 227}#
(lambda (#{src 846}# #{exps 847}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 12)
#{src 846}#
#{exps 847}#)))
(#{make-lambda 229}#
(lambda (#{src 850}# #{meta 851}# #{body 852}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 13)
#{src 850}#
#{meta 851}#
#{body 852}#)))
(#{make-lambda-case 231}#
(lambda (#{src 856}#
#{req 857}#
#{opt 858}#
#{rest 859}#
#{kw 860}#
#{inits 861}#
#{gensyms 862}#
#{body 863}#
#{alternate 864}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 14)
#{src 856}#
#{req 857}#
#{opt 858}#
#{rest 859}#
#{kw 860}#
#{inits 861}#
#{gensyms 862}#
#{body 863}#
#{alternate 864}#)))
(#{make-let 233}#
(lambda (#{src 874}#
#{names 875}#
#{gensyms 876}#
#{vals 877}#
#{body 878}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 15)
#{src 874}#
#{names 875}#
#{gensyms 876}#
#{vals 877}#
#{body 878}#)))
(#{make-letrec 235}#
(lambda (#{src 884}#
#{in-order? 885}#
#{names 886}#
#{gensyms 887}#
#{vals 888}#
#{body 889}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 16)
#{src 884}#
#{in-order? 885}#
#{names 886}#
#{gensyms 887}#
#{vals 888}#
#{body 889}#)))
(#{make-dynlet 237}#
(lambda (#{src 896}#
#{fluids 897}#
#{vals 898}#
#{body 899}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 17)
#{src 896}#
#{fluids 897}#
#{vals 898}#
#{body 899}#)))
(#{lambda? 240}#
(lambda (#{x 904}#)
(if (struct? #{x 904}#)
(eq? (struct-vtable #{x 904}#)
(vector-ref %expanded-vtables 13))
#f)))
(#{lambda-meta 242}#
(lambda (#{x 908}#) (struct-ref #{x 908}# 1)))
(#{set-lambda-meta! 244}#
(lambda (#{x 910}# #{v 911}#)
(struct-set! #{x 910}# 1 #{v 911}#)))
(#{top-level-eval-hook 250}#
(lambda (#{x 914}# #{mod 915}#)
(primitive-eval #{x 914}#)))
(#{local-eval-hook 252}#
(lambda (#{x 918}# #{mod 919}#)
(primitive-eval #{x 918}#)))
(#{put-global-definition-hook 256}#
(lambda (#{symbol 922}# #{type 923}# #{val 924}#)
(module-define!
(current-module)
#{symbol 922}#
(make-syntax-transformer
#{symbol 922}#
#{type 923}#
#{val 924}#))))
(#{get-global-definition-hook 258}#
(lambda (#{symbol 928}# #{module 929}#)
(begin
(if (if (not #{module 929}#) (current-module) #f)
(warn "module system is booted, we should have a module"
#{symbol 928}#))
(begin
(let ((#{v 935}# (module-variable
(if #{module 929}#
(resolve-module (cdr #{module 929}#))
(current-module))
#{symbol 928}#)))
(if #{v 935}#
(if (variable-bound? #{v 935}#)
(begin
(let ((#{val 940}# (variable-ref #{v 935}#)))
(if (macro? #{val 940}#)
(if (macro-type #{val 940}#)
(cons (macro-type #{val 940}#)
(macro-binding #{val 940}#))
#f)
#f)))
#f)
#f))))))
(#{decorate-source 260}#
(lambda (#{e 944}# #{s 945}#)
(begin
(if (if (pair? #{e 944}#) #{s 945}# #f)
(set-source-properties! #{e 944}# #{s 945}#))
#{e 944}#)))
(#{maybe-name-value! 262}#
(lambda (#{name 950}# #{val 951}#)
(if (#{lambda? 240}# #{val 951}#)
(begin
(let ((#{meta 955}# (#{lambda-meta 242}# #{val 951}#)))
(if (not (assq 'name #{meta 955}#))
(#{set-lambda-meta! 244}#
#{val 951}#
(cons (cons 'name #{name 950}#) #{meta 955}#))))))))
(#{build-void 264}#
(lambda (#{source 956}#)
(#{make-void 203}# #{source 956}#)))
(#{build-application 266}#
(lambda (#{source 958}# #{fun-exp 959}# #{arg-exps 960}#)
(#{make-application 225}#
#{source 958}#
#{fun-exp 959}#
#{arg-exps 960}#)))
(#{build-conditional 268}#
(lambda (#{source 964}#
#{test-exp 965}#
#{then-exp 966}#
#{else-exp 967}#)
(#{make-conditional 223}#
#{source 964}#
#{test-exp 965}#
#{then-exp 966}#
#{else-exp 967}#)))
(#{build-dynlet 270}#
(lambda (#{source 972}#
#{fluids 973}#
#{vals 974}#
#{body 975}#)
(#{make-dynlet 237}#
#{source 972}#
#{fluids 973}#
#{vals 974}#
#{body 975}#)))
(#{build-lexical-reference 272}#
(lambda (#{type 980}#
#{source 981}#
#{name 982}#
#{var 983}#)
(#{make-lexical-ref 209}#
#{source 981}#
#{name 982}#
#{var 983}#)))
(#{build-lexical-assignment 274}#
(lambda (#{source 988}#
#{name 989}#
#{var 990}#
#{exp 991}#)
(begin
(#{maybe-name-value! 262}#
#{name 989}#
#{exp 991}#)
(#{make-lexical-set 211}#
#{source 988}#
#{name 989}#
#{var 990}#
#{exp 991}#))))
(#{analyze-variable 276}#
(lambda (#{mod 996}#
#{var 997}#
#{modref-cont 998}#
#{bare-cont 999}#)
(if (not #{mod 996}#)
(#{bare-cont 999}# #{var 997}#)
(begin
(let ((#{kind 1006}# (car #{mod 996}#))
(#{mod 1007}# (cdr #{mod 996}#)))
(if (eqv? #{kind 1006}# 'public)
(#{modref-cont 998}# #{mod 1007}# #{var 997}# #t)
(if (eqv? #{kind 1006}# 'private)
(if (not (equal?
#{mod 1007}#
(module-name (current-module))))
(#{modref-cont 998}# #{mod 1007}# #{var 997}# #f)
(#{bare-cont 999}# #{var 997}#))
(if (eqv? #{kind 1006}# 'bare)
(#{bare-cont 999}# #{var 997}#)
(if (eqv? #{kind 1006}# 'hygiene)
(if (if (not (equal?
#{mod 1007}#
(module-name (current-module))))
(module-variable
(resolve-module #{mod 1007}#)
#{var 997}#)
#f)
(#{modref-cont 998}# #{mod 1007}# #{var 997}# #f)
(#{bare-cont 999}# #{var 997}#))
(syntax-violation
#f
"bad module kind"
#{var 997}#
#{mod 1007}#))))))))))
(#{build-global-reference 278}#
(lambda (#{source 1015}# #{var 1016}# #{mod 1017}#)
(#{analyze-variable 276}#
#{mod 1017}#
#{var 1016}#
(lambda (#{mod 1021}# #{var 1022}# #{public? 1023}#)
(#{make-module-ref 213}#
#{source 1015}#
#{mod 1021}#
#{var 1022}#
#{public? 1023}#))
(lambda (#{var 1027}#)
(#{make-toplevel-ref 217}#
#{source 1015}#
#{var 1027}#)))))
(#{build-global-assignment 280}#
(lambda (#{source 1029}#
#{var 1030}#
#{exp 1031}#
#{mod 1032}#)
(begin
(#{maybe-name-value! 262}#
#{var 1030}#
#{exp 1031}#)
(#{analyze-variable 276}#
#{mod 1032}#
#{var 1030}#
(lambda (#{mod 1037}# #{var 1038}# #{public? 1039}#)
(#{make-module-set 215}#
#{source 1029}#
#{mod 1037}#
#{var 1038}#
#{public? 1039}#
#{exp 1031}#))
(lambda (#{var 1043}#)
(#{make-toplevel-set 219}#
#{source 1029}#
#{var 1043}#
#{exp 1031}#))))))
(#{build-global-definition 282}#
(lambda (#{source 1045}# #{var 1046}# #{exp 1047}#)
(begin
(#{maybe-name-value! 262}#
#{var 1046}#
#{exp 1047}#)
(#{make-toplevel-define 221}#
#{source 1045}#
#{var 1046}#
#{exp 1047}#))))
(#{build-simple-lambda 284}#
(lambda (#{src 1051}#
#{req 1052}#
#{rest 1053}#
#{vars 1054}#
#{meta 1055}#
#{exp 1056}#)
(#{make-lambda 229}#
#{src 1051}#
#{meta 1055}#
(#{make-lambda-case 231}#
#{src 1051}#
#{req 1052}#
#f
#{rest 1053}#
#f
'()
#{vars 1054}#
#{exp 1056}#
#f))))
(#{build-case-lambda 286}#
(lambda (#{src 1063}# #{meta 1064}# #{body 1065}#)
(#{make-lambda 229}#
#{src 1063}#
#{meta 1064}#
#{body 1065}#)))
(#{build-lambda-case 288}#
(lambda (#{src 1069}#
#{req 1070}#
#{opt 1071}#
#{rest 1072}#
#{kw 1073}#
#{inits 1074}#
#{vars 1075}#
#{body 1076}#
#{else-case 1077}#)
(#{make-lambda-case 231}#
#{src 1069}#
#{req 1070}#
#{opt 1071}#
#{rest 1072}#
#{kw 1073}#
#{inits 1074}#
#{vars 1075}#
#{body 1076}#
#{else-case 1077}#)))
(#{build-primref 290}#
(lambda (#{src 1087}# #{name 1088}#)
(if (equal? (module-name (current-module)) '(guile))
(#{make-toplevel-ref 217}#
#{src 1087}#
#{name 1088}#)
(#{make-module-ref 213}#
#{src 1087}#
'(guile)
#{name 1088}#
#f))))
(#{build-data 292}#
(lambda (#{src 1091}# #{exp 1092}#)
(#{make-const 205}# #{src 1091}# #{exp 1092}#)))
(#{build-sequence 294}#
(lambda (#{src 1095}# #{exps 1096}#)
(if (null? (cdr #{exps 1096}#))
(car #{exps 1096}#)
(#{make-sequence 227}#
#{src 1095}#
#{exps 1096}#))))
(#{build-let 296}#
(lambda (#{src 1099}#
#{ids 1100}#
#{vars 1101}#
#{val-exps 1102}#
#{body-exp 1103}#)
(begin
(for-each
#{maybe-name-value! 262}#
#{ids 1100}#
#{val-exps 1102}#)
(if (null? #{vars 1101}#)
#{body-exp 1103}#
(#{make-let 233}#
#{src 1099}#
#{ids 1100}#
#{vars 1101}#
#{val-exps 1102}#
#{body-exp 1103}#)))))
(#{build-named-let 298}#
(lambda (#{src 1109}#
#{ids 1110}#
#{vars 1111}#
#{val-exps 1112}#
#{body-exp 1113}#)
(begin
(let ((#{f 1123}# (car #{vars 1111}#))
(#{f-name 1124}# (car #{ids 1110}#))
(#{vars 1125}# (cdr #{vars 1111}#))
(#{ids 1126}# (cdr #{ids 1110}#)))
(begin
(let ((#{proc 1128}#
(#{build-simple-lambda 284}#
#{src 1109}#
#{ids 1126}#
#f
#{vars 1125}#
'()
#{body-exp 1113}#)))
(begin
(#{maybe-name-value! 262}#
#{f-name 1124}#
#{proc 1128}#)
(for-each
#{maybe-name-value! 262}#
#{ids 1126}#
#{val-exps 1112}#)
(#{make-letrec 235}#
#{src 1109}#
#f
(list #{f-name 1124}#)
(list #{f 1123}#)
(list #{proc 1128}#)
(#{build-application 266}#
#{src 1109}#
(#{build-lexical-reference 272}#
'fun
#{src 1109}#
#{f-name 1124}#
#{f 1123}#)
#{val-exps 1112}#)))))))))
(#{build-letrec 300}#
(lambda (#{src 1129}#
#{in-order? 1130}#
#{ids 1131}#
#{vars 1132}#
#{val-exps 1133}#
#{body-exp 1134}#)
(if (null? #{vars 1132}#)
#{body-exp 1134}#
(begin
(for-each
#{maybe-name-value! 262}#
#{ids 1131}#
#{val-exps 1133}#)
(#{make-letrec 235}#
#{src 1129}#
#{in-order? 1130}#
#{ids 1131}#
#{vars 1132}#
#{val-exps 1133}#
#{body-exp 1134}#)))))
(#{make-syntax-object 305}#
(lambda (#{expression 1141}#
#{wrap 1142}#
#{module 1143}#)
(vector
'syntax-object
#{expression 1141}#
#{wrap 1142}#
#{module 1143}#)))
(#{syntax-object? 307}#
(lambda (#{x 1147}#)
(if (vector? #{x 1147}#)
(if (= (vector-length #{x 1147}#) 4)
(eq? (vector-ref #{x 1147}# 0) 'syntax-object)
#f)
#f)))
(#{syntax-object-expression 309}#
(lambda (#{x 1152}#) (vector-ref #{x 1152}# 1)))
(#{syntax-object-wrap 311}#
(lambda (#{x 1154}#) (vector-ref #{x 1154}# 2)))
(#{syntax-object-module 313}#
(lambda (#{x 1156}#) (vector-ref #{x 1156}# 3)))
(#{source-annotation 322}#
(lambda (#{x 1170}#)
(if (#{syntax-object? 307}# #{x 1170}#)
(#{source-annotation 322}#
(#{syntax-object-expression 309}# #{x 1170}#))
(if (pair? #{x 1170}#)
(begin
(let ((#{props 1177}# (source-properties #{x 1170}#)))
(if (pair? #{props 1177}#) #{props 1177}# #f)))
#f))))
(#{extend-env 332}#
(lambda (#{labels 1179}# #{bindings 1180}# #{r 1181}#)
(if (null? #{labels 1179}#)
#{r 1181}#
(#{extend-env 332}#
(cdr #{labels 1179}#)
(cdr #{bindings 1180}#)
(cons (cons (car #{labels 1179}#)
(car #{bindings 1180}#))
#{r 1181}#)))))
(#{extend-var-env 334}#
(lambda (#{labels 1185}# #{vars 1186}# #{r 1187}#)
(if (null? #{labels 1185}#)
#{r 1187}#
(#{extend-var-env 334}#
(cdr #{labels 1185}#)
(cdr #{vars 1186}#)
(cons (cons (car #{labels 1185}#)
(cons 'lexical (car #{vars 1186}#)))
#{r 1187}#)))))
(#{macros-only-env 336}#
(lambda (#{r 1192}#)
(if (null? #{r 1192}#)
'()
(begin
(let ((#{a 1195}# (car #{r 1192}#)))
(if (eq? (car (cdr #{a 1195}#)) 'macro)
(cons #{a 1195}#
(#{macros-only-env 336}# (cdr #{r 1192}#)))
(#{macros-only-env 336}# (cdr #{r 1192}#))))))))
(#{lookup 338}#
(lambda (#{x 1196}# #{r 1197}# #{mod 1198}#)
(begin
(let ((#{t 1204}# (assq #{x 1196}# #{r 1197}#)))
(if #{t 1204}#
(cdr #{t 1204}#)
(if (symbol? #{x 1196}#)
(begin
(let ((#{t 1210}#
(#{get-global-definition-hook 258}#
#{x 1196}#
#{mod 1198}#)))
(if #{t 1210}# #{t 1210}# '(global))))
'(displaced-lexical)))))))
(#{global-extend 340}#
(lambda (#{type 1215}# #{sym 1216}# #{val 1217}#)
(#{put-global-definition-hook 256}#
#{sym 1216}#
#{type 1215}#
#{val 1217}#)))
(#{nonsymbol-id? 342}#
(lambda (#{x 1221}#)
(if (#{syntax-object? 307}# #{x 1221}#)
(symbol?
(#{syntax-object-expression 309}# #{x 1221}#))
#f)))
(#{id? 344}#
(lambda (#{x 1225}#)
(if (symbol? #{x 1225}#)
#t
(if (#{syntax-object? 307}# #{x 1225}#)
(symbol?
(#{syntax-object-expression 309}# #{x 1225}#))
#f))))
(#{id-sym-name&marks 348}#
(lambda (#{x 1232}# #{w 1233}#)
(if (#{syntax-object? 307}# #{x 1232}#)
(values
(#{syntax-object-expression 309}# #{x 1232}#)
(#{join-marks 402}#
(car #{w 1233}#)
(car (#{syntax-object-wrap 311}# #{x 1232}#))))
(values #{x 1232}# (car #{w 1233}#)))))
(#{gen-label 362}#
(lambda () (symbol->string (gensym "i"))))
(#{gen-labels 364}#
(lambda (#{ls 1239}#)
(if (null? #{ls 1239}#)
'()
(cons (#{gen-label 362}#)
(#{gen-labels 364}# (cdr #{ls 1239}#))))))
(#{make-ribcage 367}#
(lambda (#{symnames 1241}#
#{marks 1242}#
#{labels 1243}#)
(vector
'ribcage
#{symnames 1241}#
#{marks 1242}#
#{labels 1243}#)))
(#{ribcage-symnames 371}#
(lambda (#{x 1252}#) (vector-ref #{x 1252}# 1)))
(#{ribcage-marks 373}#
(lambda (#{x 1254}#) (vector-ref #{x 1254}# 2)))
(#{ribcage-labels 375}#
(lambda (#{x 1256}#) (vector-ref #{x 1256}# 3)))
(#{set-ribcage-symnames! 377}#
(lambda (#{x 1258}# #{update 1259}#)
(vector-set! #{x 1258}# 1 #{update 1259}#)))
(#{set-ribcage-marks! 379}#
(lambda (#{x 1262}# #{update 1263}#)
(vector-set! #{x 1262}# 2 #{update 1263}#)))
(#{set-ribcage-labels! 381}#
(lambda (#{x 1266}# #{update 1267}#)
(vector-set! #{x 1266}# 3 #{update 1267}#)))
(#{anti-mark 388}#
(lambda (#{w 1270}#)
(cons (cons #f (car #{w 1270}#))
(cons 'shift (cdr #{w 1270}#)))))
(#{extend-ribcage! 394}#
(lambda (#{ribcage 1276}# #{id 1277}# #{label 1278}#)
(begin
(#{set-ribcage-symnames! 377}#
#{ribcage 1276}#
(cons (#{syntax-object-expression 309}# #{id 1277}#)
(#{ribcage-symnames 371}# #{ribcage 1276}#)))
(#{set-ribcage-marks! 379}#
#{ribcage 1276}#
(cons (car (#{syntax-object-wrap 311}# #{id 1277}#))
(#{ribcage-marks 373}# #{ribcage 1276}#)))
(#{set-ribcage-labels! 381}#
#{ribcage 1276}#
(cons #{label 1278}#
(#{ribcage-labels 375}# #{ribcage 1276}#))))))
(#{make-binding-wrap 396}#
(lambda (#{ids 1283}# #{labels 1284}# #{w 1285}#)
(if (null? #{ids 1283}#)
#{w 1285}#
(cons (car #{w 1285}#)
(cons (begin
(let ((#{labelvec 1292}#
(list->vector #{labels 1284}#)))
(begin
(let ((#{n 1294}#
(vector-length #{labelvec 1292}#)))
(begin
(let ((#{symnamevec 1297}#
(make-vector #{n 1294}#))
(#{marksvec 1298}#
(make-vector #{n 1294}#)))
(begin
(letrec*
((#{f 1302}#
(lambda (#{ids 1303}# #{i 1304}#)
(if (not (null? #{ids 1303}#))
(call-with-values
(lambda ()
(#{id-sym-name&marks 348}#
(car #{ids 1303}#)
#{w 1285}#))
(lambda (#{symname 1305}#
#{marks 1306}#)
(begin
(vector-set!
#{symnamevec 1297}#
#{i 1304}#
#{symname 1305}#)
(vector-set!
#{marksvec 1298}#
#{i 1304}#
#{marks 1306}#)
(#{f 1302}#
(cdr #{ids 1303}#)
(#{1+}# #{i 1304}#)))))))))
(begin (#{f 1302}# #{ids 1283}# 0)))
(#{make-ribcage 367}#
#{symnamevec 1297}#
#{marksvec 1298}#
#{labelvec 1292}#))))))))
(cdr #{w 1285}#))))))
(#{smart-append 398}#
(lambda (#{m1 1311}# #{m2 1312}#)
(if (null? #{m2 1312}#)
#{m1 1311}#
(append #{m1 1311}# #{m2 1312}#))))
(#{join-wraps 400}#
(lambda (#{w1 1315}# #{w2 1316}#)
(begin
(let ((#{m1 1321}# (car #{w1 1315}#))
(#{s1 1322}# (cdr #{w1 1315}#)))
(if (null? #{m1 1321}#)
(if (null? #{s1 1322}#)
#{w2 1316}#
(cons (car #{w2 1316}#)
(#{smart-append 398}#
#{s1 1322}#
(cdr #{w2 1316}#))))
(cons (#{smart-append 398}#
#{m1 1321}#
(car #{w2 1316}#))
(#{smart-append 398}#
#{s1 1322}#
(cdr #{w2 1316}#))))))))
(#{join-marks 402}#
(lambda (#{m1 1331}# #{m2 1332}#)
(#{smart-append 398}# #{m1 1331}# #{m2 1332}#)))
(#{same-marks? 404}#
(lambda (#{x 1335}# #{y 1336}#)
(begin
(let ((#{t 1341}# (eq? #{x 1335}# #{y 1336}#)))
(if #{t 1341}#
#{t 1341}#
(if (not (null? #{x 1335}#))
(if (not (null? #{y 1336}#))
(if (eq? (car #{x 1335}#) (car #{y 1336}#))
(#{same-marks? 404}#
(cdr #{x 1335}#)
(cdr #{y 1336}#))
#f)
#f)
#f))))))
(#{id-var-name 406}#
(lambda (#{id 1347}# #{w 1348}#)
(letrec*
((#{search 1354}#
(lambda (#{sym 1370}# #{subst 1371}# #{marks 1372}#)
(if (null? #{subst 1371}#)
(values #f #{marks 1372}#)
(begin
(let ((#{fst 1377}# (car #{subst 1371}#)))
(if (eq? #{fst 1377}# 'shift)
(#{search 1354}#
#{sym 1370}#
(cdr #{subst 1371}#)
(cdr #{marks 1372}#))
(begin
(let ((#{symnames 1379}#
(#{ribcage-symnames 371}# #{fst 1377}#)))
(if (vector? #{symnames 1379}#)
(#{search-vector-rib 1358}#
#{sym 1370}#
#{subst 1371}#
#{marks 1372}#
#{symnames 1379}#
#{fst 1377}#)
(#{search-list-rib 1356}#
#{sym 1370}#
#{subst 1371}#
#{marks 1372}#
#{symnames 1379}#
#{fst 1377}#))))))))))
(#{search-list-rib 1356}#
(lambda (#{sym 1380}#
#{subst 1381}#
#{marks 1382}#
#{symnames 1383}#
#{ribcage 1384}#)
(letrec*
((#{f 1393}#
(lambda (#{symnames 1394}# #{i 1395}#)
(if (null? #{symnames 1394}#)
(#{search 1354}#
#{sym 1380}#
(cdr #{subst 1381}#)
#{marks 1382}#)
(if (if (eq? (car #{symnames 1394}#) #{sym 1380}#)
(#{same-marks? 404}#
#{marks 1382}#
(list-ref
(#{ribcage-marks 373}# #{ribcage 1384}#)
#{i 1395}#))
#f)
(values
(list-ref
(#{ribcage-labels 375}# #{ribcage 1384}#)
#{i 1395}#)
#{marks 1382}#)
(#{f 1393}#
(cdr #{symnames 1394}#)
(#{1+}# #{i 1395}#)))))))
(begin (#{f 1393}# #{symnames 1383}# 0)))))
(#{search-vector-rib 1358}#
(lambda (#{sym 1404}#
#{subst 1405}#
#{marks 1406}#
#{symnames 1407}#
#{ribcage 1408}#)
(begin
(let ((#{n 1415}# (vector-length #{symnames 1407}#)))
(letrec*
((#{f 1418}#
(lambda (#{i 1419}#)
(if (= #{i 1419}# #{n 1415}#)
(#{search 1354}#
#{sym 1404}#
(cdr #{subst 1405}#)
#{marks 1406}#)
(if (if (eq? (vector-ref
#{symnames 1407}#
#{i 1419}#)
#{sym 1404}#)
(#{same-marks? 404}#
#{marks 1406}#
(vector-ref
(#{ribcage-marks 373}# #{ribcage 1408}#)
#{i 1419}#))
#f)
(values
(vector-ref
(#{ribcage-labels 375}# #{ribcage 1408}#)
#{i 1419}#)
#{marks 1406}#)
(#{f 1418}# (#{1+}# #{i 1419}#)))))))
(begin (#{f 1418}# 0))))))))
(begin
(if (symbol? #{id 1347}#)
(begin
(let ((#{t 1431}#
(#{search 1354}#
#{id 1347}#
(cdr #{w 1348}#)
(car #{w 1348}#))))
(if #{t 1431}# #{t 1431}# #{id 1347}#)))
(if (#{syntax-object? 307}# #{id 1347}#)
(begin
(let ((#{id 1440}#
(#{syntax-object-expression 309}# #{id 1347}#))
(#{w1 1441}#
(#{syntax-object-wrap 311}# #{id 1347}#)))
(begin
(let ((#{marks 1443}#
(#{join-marks 402}#
(car #{w 1348}#)
(car #{w1 1441}#))))
(call-with-values
(lambda ()
(#{search 1354}#
#{id 1440}#
(cdr #{w 1348}#)
#{marks 1443}#))
(lambda (#{new-id 1447}# #{marks 1448}#)
(begin
(let ((#{t 1453}# #{new-id 1447}#))
(if #{t 1453}#
#{t 1453}#
(begin
(let ((#{t 1456}#
(#{search 1354}#
#{id 1440}#
(cdr #{w1 1441}#)
#{marks 1448}#)))
(if #{t 1456}#
#{t 1456}#
#{id 1440}#))))))))))))
(syntax-violation
'id-var-name
"invalid id"
#{id 1347}#)))))))
(#{free-id=? 408}#
(lambda (#{i 1461}# #{j 1462}#)
(if (eq? (begin
(let ((#{x 1468}# #{i 1461}#))
(if (#{syntax-object? 307}# #{x 1468}#)
(#{syntax-object-expression 309}# #{x 1468}#)
#{x 1468}#)))
(begin
(let ((#{x 1471}# #{j 1462}#))
(if (#{syntax-object? 307}# #{x 1471}#)
(#{syntax-object-expression 309}# #{x 1471}#)
#{x 1471}#))))
(eq? (#{id-var-name 406}# #{i 1461}# '(()))
(#{id-var-name 406}# #{j 1462}# '(())))
#f)))
(#{bound-id=? 410}#
(lambda (#{i 1475}# #{j 1476}#)
(if (if (#{syntax-object? 307}# #{i 1475}#)
(#{syntax-object? 307}# #{j 1476}#)
#f)
(if (eq? (#{syntax-object-expression 309}# #{i 1475}#)
(#{syntax-object-expression 309}# #{j 1476}#))
(#{same-marks? 404}#
(car (#{syntax-object-wrap 311}# #{i 1475}#))
(car (#{syntax-object-wrap 311}# #{j 1476}#)))
#f)
(eq? #{i 1475}# #{j 1476}#))))
(#{valid-bound-ids? 412}#
(lambda (#{ids 1485}#)
(if (letrec*
((#{all-ids? 1490}#
(lambda (#{ids 1491}#)
(begin
(let ((#{t 1494}# (null? #{ids 1491}#)))
(if #{t 1494}#
#{t 1494}#
(if (#{id? 344}# (car #{ids 1491}#))
(#{all-ids? 1490}# (cdr #{ids 1491}#))
#f)))))))
(begin (#{all-ids? 1490}# #{ids 1485}#)))
(#{distinct-bound-ids? 414}# #{ids 1485}#)
#f)))
(#{distinct-bound-ids? 414}#
(lambda (#{ids 1499}#)
(letrec*
((#{distinct? 1503}#
(lambda (#{ids 1504}#)
(begin
(let ((#{t 1507}# (null? #{ids 1504}#)))
(if #{t 1507}#
#{t 1507}#
(if (not (#{bound-id-member? 416}#
(car #{ids 1504}#)
(cdr #{ids 1504}#)))
(#{distinct? 1503}# (cdr #{ids 1504}#))
#f)))))))
(begin (#{distinct? 1503}# #{ids 1499}#)))))
(#{bound-id-member? 416}#
(lambda (#{x 1511}# #{list 1512}#)
(if (not (null? #{list 1512}#))
(begin
(let ((#{t 1519}#
(#{bound-id=? 410}#
#{x 1511}#
(car #{list 1512}#))))
(if #{t 1519}#
#{t 1519}#
(#{bound-id-member? 416}#
#{x 1511}#
(cdr #{list 1512}#)))))
#f)))
(#{wrap 418}#
(lambda (#{x 1521}# #{w 1522}# #{defmod 1523}#)
(if (if (null? (car #{w 1522}#))
(null? (cdr #{w 1522}#))
#f)
#{x 1521}#
(if (#{syntax-object? 307}# #{x 1521}#)
(#{make-syntax-object 305}#
(#{syntax-object-expression 309}# #{x 1521}#)
(#{join-wraps 400}#
#{w 1522}#
(#{syntax-object-wrap 311}# #{x 1521}#))
(#{syntax-object-module 313}# #{x 1521}#))
(if (null? #{x 1521}#)
#{x 1521}#
(#{make-syntax-object 305}#
#{x 1521}#
#{w 1522}#
#{defmod 1523}#))))))
(#{source-wrap 420}#
(lambda (#{x 1538}#
#{w 1539}#
#{s 1540}#
#{defmod 1541}#)
(#{wrap 418}#
(#{decorate-source 260}# #{x 1538}# #{s 1540}#)
#{w 1539}#
#{defmod 1541}#)))
(#{chi-sequence 422}#
(lambda (#{body 1546}#
#{r 1547}#
#{w 1548}#
#{s 1549}#
#{mod 1550}#)
(#{build-sequence 294}#
#{s 1549}#
(letrec*
((#{dobody 1561}#
(lambda (#{body 1562}#
#{r 1563}#
#{w 1564}#
#{mod 1565}#)
(if (null? #{body 1562}#)
'()
(begin
(let ((#{first 1567}#
(#{chi 432}#
(car #{body 1562}#)
#{r 1563}#
#{w 1564}#
#{mod 1565}#)))
(cons #{first 1567}#
(#{dobody 1561}#
(cdr #{body 1562}#)
#{r 1563}#
#{w 1564}#
#{mod 1565}#))))))))
(begin
(#{dobody 1561}#
#{body 1546}#
#{r 1547}#
#{w 1548}#
#{mod 1550}#))))))
(#{chi-top-sequence 424}#
(lambda (#{body 1568}#
#{r 1569}#
#{w 1570}#
#{s 1571}#
#{m 1572}#
#{esew 1573}#
#{mod 1574}#)
(letrec*
((#{scan 1583}#
(lambda (#{body 1584}#
#{r 1585}#
#{w 1586}#
#{s 1587}#
#{m 1588}#
#{esew 1589}#
#{mod 1590}#
#{exps 1591}#)
(if (null? #{body 1584}#)
#{exps 1591}#
(call-with-values
(lambda ()
(call-with-values
(lambda ()
(begin
(let ((#{e 1604}# (car #{body 1584}#)))
(#{syntax-type 430}#
#{e 1604}#
#{r 1585}#
#{w 1586}#
(begin
(let ((#{t 1607}#
(#{source-annotation 322}#
#{e 1604}#)))
(if #{t 1607}# #{t 1607}# #{s 1587}#)))
#f
#{mod 1590}#
#f))))
(lambda (#{type 1609}#
#{value 1610}#
#{e 1611}#
#{w 1612}#
#{s 1613}#
#{mod 1614}#)
(if (eqv? #{type 1609}# 'begin-form)
(let ((#{tmp 1622}# #{e 1611}#))
(let ((#{tmp 1623}#
($sc-dispatch #{tmp 1622}# '(_))))
(if #{tmp 1623}#
(@apply (lambda () #{exps 1591}#) #{tmp 1623}#)
(let ((#{tmp 1624}#
($sc-dispatch
#{tmp 1622}#
'(_ any . each-any))))
(if #{tmp 1624}#
(@apply
(lambda (#{e1 1627}# #{e2 1628}#)
(#{scan 1583}#
(cons #{e1 1627}# #{e2 1628}#)
#{r 1585}#
#{w 1612}#
#{s 1613}#
#{m 1588}#
#{esew 1589}#
#{mod 1614}#
#{exps 1591}#))
#{tmp 1624}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 1622}#))))))
(if (eqv? #{type 1609}# 'local-syntax-form)
(#{chi-local-syntax 442}#
#{value 1610}#
#{e 1611}#
#{r 1585}#
#{w 1612}#
#{s 1613}#
#{mod 1614}#
(lambda (#{body 1631}#
#{r 1632}#
#{w 1633}#
#{s 1634}#
#{mod 1635}#)
(#{scan 1583}#
#{body 1631}#
#{r 1632}#
#{w 1633}#
#{s 1634}#
#{m 1588}#
#{esew 1589}#
#{mod 1635}#
#{exps 1591}#)))
(if (eqv? #{type 1609}# 'eval-when-form)
(let ((#{tmp 1642}# #{e 1611}#))
(let ((#{tmp 1643}#
($sc-dispatch
#{tmp 1642}#
'(_ each-any any . each-any))))
(if #{tmp 1643}#
(@apply
(lambda (#{x 1647}#
#{e1 1648}#
#{e2 1649}#)
(begin
(let ((#{when-list 1652}#
(#{chi-when-list 428}#
#{e 1611}#
#{x 1647}#
#{w 1612}#))
(#{body 1653}#
(cons #{e1 1648}#
#{e2 1649}#)))
(if (eq? #{m 1588}# 'e)
(if (memq 'eval
#{when-list 1652}#)
(#{scan 1583}#
#{body 1653}#
#{r 1585}#
#{w 1612}#
#{s 1613}#
(if (memq 'expand
#{when-list 1652}#)
'c&e
'e)
'(eval)
#{mod 1614}#
#{exps 1591}#)
(begin
(if (memq 'expand
#{when-list 1652}#)
(#{top-level-eval-hook 250}#
(#{chi-top-sequence 424}#
#{body 1653}#
#{r 1585}#
#{w 1612}#
#{s 1613}#
'e
'(eval)
#{mod 1614}#)
#{mod 1614}#))
(values #{exps 1591}#)))
(if (memq 'load
#{when-list 1652}#)
(if (begin
(let ((#{t 1662}#
(memq 'compile
#{when-list 1652}#)))
(if #{t 1662}#
#{t 1662}#
(begin
(let ((#{t 1665}#
(memq 'expand
#{when-list 1652}#)))
(if #{t 1665}#
#{t 1665}#
(if (eq? #{m 1588}#
'c&e)
(memq 'eval
#{when-list 1652}#)
#f)))))))
(#{scan 1583}#
#{body 1653}#
#{r 1585}#
#{w 1612}#
#{s 1613}#
'c&e
'(compile load)
#{mod 1614}#
#{exps 1591}#)
(if (if (eq? #{m 1588}# 'c)
#t
(eq? #{m 1588}# 'c&e))
(#{scan 1583}#
#{body 1653}#
#{r 1585}#
#{w 1612}#
#{s 1613}#
'c
'(load)
#{mod 1614}#
#{exps 1591}#)
(values #{exps 1591}#)))
(if (begin
(let ((#{t 1673}#
(memq 'compile
#{when-list 1652}#)))
(if #{t 1673}#
#{t 1673}#
(begin
(let ((#{t 1676}#
(memq 'expand
#{when-list 1652}#)))
(if #{t 1676}#
#{t 1676}#
(if (eq? #{m 1588}#
'c&e)
(memq 'eval
#{when-list 1652}#)
#f)))))))
(begin
(#{top-level-eval-hook 250}#
(#{chi-top-sequence 424}#
#{body 1653}#
#{r 1585}#
#{w 1612}#
#{s 1613}#
'e
'(eval)
#{mod 1614}#)
#{mod 1614}#)
(values #{exps 1591}#))
(values #{exps 1591}#)))))))
#{tmp 1643}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 1642}#))))
(if (eqv? #{type 1609}# 'define-syntax-form)
(begin
(let ((#{n 1684}#
(#{id-var-name 406}#
#{value 1610}#
#{w 1612}#))
(#{r 1685}#
(#{macros-only-env 336}#
#{r 1585}#)))
(if (eqv? #{m 1588}# 'c)
(if (memq 'compile #{esew 1589}#)
(begin
(let ((#{e 1688}#
(#{chi-install-global 426}#
#{n 1684}#
(#{chi 432}#
#{e 1611}#
#{r 1685}#
#{w 1612}#
#{mod 1614}#))))
(begin
(#{top-level-eval-hook 250}#
#{e 1688}#
#{mod 1614}#)
(if (memq 'load #{esew 1589}#)
(values
(cons #{e 1688}#
#{exps 1591}#))
(values #{exps 1591}#)))))
(if (memq 'load #{esew 1589}#)
(values
(cons (#{chi-install-global 426}#
#{n 1684}#
(#{chi 432}#
#{e 1611}#
#{r 1685}#
#{w 1612}#
#{mod 1614}#))
#{exps 1591}#))
(values #{exps 1591}#)))
(if (eqv? #{m 1588}# 'c&e)
(begin
(let ((#{e 1691}#
(#{chi-install-global 426}#
#{n 1684}#
(#{chi 432}#
#{e 1611}#
#{r 1685}#
#{w 1612}#
#{mod 1614}#))))
(begin
(#{top-level-eval-hook 250}#
#{e 1691}#
#{mod 1614}#)
(values
(cons #{e 1691}#
#{exps 1591}#)))))
(begin
(if (memq 'eval #{esew 1589}#)
(#{top-level-eval-hook 250}#
(#{chi-install-global 426}#
#{n 1684}#
(#{chi 432}#
#{e 1611}#
#{r 1685}#
#{w 1612}#
#{mod 1614}#))
#{mod 1614}#))
(values #{exps 1591}#))))))
(if (eqv? #{type 1609}# 'define-form)
(begin
(let ((#{n 1696}#
(#{id-var-name 406}#
#{value 1610}#
#{w 1612}#)))
(begin
(let ((#{type 1698}#
(car (#{lookup 338}#
#{n 1696}#
#{r 1585}#
#{mod 1614}#))))
(if (if (eqv? #{type 1698}# 'global)
#t
(if (eqv? #{type 1698}# 'core)
#t
(if (eqv? #{type 1698}#
'macro)
#t
(eqv? #{type 1698}#
'module-ref))))
(begin
(if (if (if (eq? #{m 1588}# 'c)
#t
(eq? #{m 1588}# 'c&e))
(if (not (module-local-variable
(current-module)
#{n 1696}#))
(current-module)
#f)
#f)
(begin
(let ((#{old 1705}#
(module-variable
(current-module)
#{n 1696}#)))
(if (if (variable?
#{old 1705}#)
(variable-bound?
#{old 1705}#)
#f)
(module-define!
(current-module)
#{n 1696}#
(variable-ref
#{old 1705}#))
(module-add!
(current-module)
#{n 1696}#
(make-undefined-variable))))))
(values
(cons (if (eq? #{m 1588}# 'c&e)
(begin
(let ((#{x 1709}#
(#{build-global-definition 282}#
#{s 1613}#
#{n 1696}#
(#{chi 432}#
#{e 1611}#
#{r 1585}#
#{w 1612}#
#{mod 1614}#))))
(begin
(#{top-level-eval-hook 250}#
#{x 1709}#
#{mod 1614}#)
#{x 1709}#)))
(lambda ()
(#{build-global-definition 282}#
#{s 1613}#
#{n 1696}#
(#{chi 432}#
#{e 1611}#
#{r 1585}#
#{w 1612}#
#{mod 1614}#))))
#{exps 1591}#)))
(if (eqv? #{type 1698}#
'displaced-lexical)
(syntax-violation
#f
"identifier out of context"
#{e 1611}#
(#{wrap 418}#
#{value 1610}#
#{w 1612}#
#{mod 1614}#))
(syntax-violation
#f
"cannot define keyword at top level"
#{e 1611}#
(#{wrap 418}#
#{value 1610}#
#{w 1612}#
#{mod 1614}#))))))))
(values
(cons (if (eq? #{m 1588}# 'c&e)
(begin
(let ((#{x 1714}#
(#{chi-expr 434}#
#{type 1609}#
#{value 1610}#
#{e 1611}#
#{r 1585}#
#{w 1612}#
#{s 1613}#
#{mod 1614}#)))
(begin
(#{top-level-eval-hook 250}#
#{x 1714}#
#{mod 1614}#)
#{x 1714}#)))
(lambda ()
(#{chi-expr 434}#
#{type 1609}#
#{value 1610}#
#{e 1611}#
#{r 1585}#
#{w 1612}#
#{s 1613}#
#{mod 1614}#)))
#{exps 1591}#))))))))))
(lambda (#{exps 1715}#)
(#{scan 1583}#
(cdr #{body 1584}#)
#{r 1585}#
#{w 1586}#
#{s 1587}#
#{m 1588}#
#{esew 1589}#
#{mod 1590}#
#{exps 1715}#)))))))
(begin
(call-with-values
(lambda ()
(#{scan 1583}#
#{body 1568}#
#{r 1569}#
#{w 1570}#
#{s 1571}#
#{m 1572}#
#{esew 1573}#
#{mod 1574}#
'()))
(lambda (#{exps 1717}#)
(if (null? #{exps 1717}#)
(#{build-void 264}# #{s 1571}#)
(#{build-sequence 294}#
#{s 1571}#
(letrec*
((#{lp 1722}#
(lambda (#{in 1723}# #{out 1724}#)
(if (null? #{in 1723}#)
#{out 1724}#
(begin
(let ((#{e 1726}# (car #{in 1723}#)))
(#{lp 1722}#
(cdr #{in 1723}#)
(cons (if (procedure? #{e 1726}#)
(#{e 1726}#)
#{e 1726}#)
#{out 1724}#))))))))
(begin (#{lp 1722}# #{exps 1717}# '())))))))))))
(#{chi-install-global 426}#
(lambda (#{name 1727}# #{e 1728}#)
(#{build-global-definition 282}#
#f
#{name 1727}#
(#{build-application 266}#
#f
(#{build-primref 290}#
#f
'make-syntax-transformer)
(list (#{build-data 292}# #f #{name 1727}#)
(#{build-data 292}# #f 'macro)
#{e 1728}#)))))
(#{chi-when-list 428}#
(lambda (#{e 1736}# #{when-list 1737}# #{w 1738}#)
(letrec*
((#{f 1745}#
(lambda (#{when-list 1746}# #{situations 1747}#)
(if (null? #{when-list 1746}#)
#{situations 1747}#
(#{f 1745}#
(cdr #{when-list 1746}#)
(cons (begin
(let ((#{x 1749}# (car #{when-list 1746}#)))
(if (#{free-id=? 408}#
#{x 1749}#
'#(syntax-object
compile
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i1748"))
#(ribcage () () ())
#(ribcage
#(f when-list situations)
#((top) (top) (top))
#("i1742" "i1743" "i1744"))
#(ribcage () () ())
#(ribcage
#(e when-list w)
#((top) (top) (top))
#("i1739" "i1740" "i1741"))
#(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))
("i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i417"
"i415"
"i413"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i393"
"i392"
"i390"
"i387"
"i386"
"i385"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i363"
"i361"
"i360"
"i358"
"i356"
"i354"
"i352"
"i351"
"i350"
"i349"
"i347"
"i346"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i330"
"i329"
"i327"
"i325"
"i324"
"i321"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i273"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i254"
"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=? 408}#
#{x 1749}#
'#(syntax-object
load
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i1748"))
#(ribcage () () ())
#(ribcage
#(f when-list situations)
#((top) (top) (top))
#("i1742" "i1743" "i1744"))
#(ribcage () () ())
#(ribcage
#(e when-list w)
#((top) (top) (top))
#("i1739" "i1740" "i1741"))
#(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))
("i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i417"
"i415"
"i413"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i393"
"i392"
"i390"
"i387"
"i386"
"i385"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i363"
"i361"
"i360"
"i358"
"i356"
"i354"
"i352"
"i351"
"i350"
"i349"
"i347"
"i346"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i330"
"i329"
"i327"
"i325"
"i324"
"i321"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i273"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i254"
"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=? 408}#
#{x 1749}#
'#(syntax-object
eval
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i1748"))
#(ribcage () () ())
#(ribcage
#(f when-list situations)
#((top) (top) (top))
#("i1742" "i1743" "i1744"))
#(ribcage () () ())
#(ribcage
#(e when-list w)
#((top) (top) (top))
#("i1739" "i1740" "i1741"))
#(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))
("i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i417"
"i415"
"i413"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i393"
"i392"
"i390"
"i387"
"i386"
"i385"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i363"
"i361"
"i360"
"i358"
"i356"
"i354"
"i352"
"i351"
"i350"
"i349"
"i347"
"i346"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i330"
"i329"
"i327"
"i325"
"i324"
"i321"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i273"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i254"
"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=? 408}#
#{x 1749}#
'#(syntax-object
expand
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i1748"))
#(ribcage () () ())
#(ribcage
#(f when-list situations)
#((top) (top) (top))
#("i1742" "i1743" "i1744"))
#(ribcage () () ())
#(ribcage
#(e when-list w)
#((top) (top) (top))
#("i1739" "i1740" "i1741"))
#(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))
("i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i417"
"i415"
"i413"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i393"
"i392"
"i390"
"i387"
"i386"
"i385"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i363"
"i361"
"i360"
"i358"
"i356"
"i354"
"i352"
"i351"
"i350"
"i349"
"i347"
"i346"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i330"
"i329"
"i327"
"i325"
"i324"
"i321"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i273"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i254"
"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 1736}#
(#{wrap 418}#
#{x 1749}#
#{w 1738}#
#f))))))))
#{situations 1747}#))))))
(begin (#{f 1745}# #{when-list 1737}# '())))))
(#{syntax-type 430}#
(lambda (#{e 1759}#
#{r 1760}#
#{w 1761}#
#{s 1762}#
#{rib 1763}#
#{mod 1764}#
#{for-car? 1765}#)
(if (symbol? #{e 1759}#)
(begin
(let ((#{n 1777}#
(#{id-var-name 406}# #{e 1759}# #{w 1761}#)))
(begin
(let ((#{b 1779}#
(#{lookup 338}#
#{n 1777}#
#{r 1760}#
#{mod 1764}#)))
(begin
(let ((#{type 1781}# (car #{b 1779}#)))
(if (eqv? #{type 1781}# 'lexical)
(values
#{type 1781}#
(cdr #{b 1779}#)
#{e 1759}#
#{w 1761}#
#{s 1762}#
#{mod 1764}#)
(if (eqv? #{type 1781}# 'global)
(values
#{type 1781}#
#{n 1777}#
#{e 1759}#
#{w 1761}#
#{s 1762}#
#{mod 1764}#)
(if (eqv? #{type 1781}# 'macro)
(if #{for-car? 1765}#
(values
#{type 1781}#
(cdr #{b 1779}#)
#{e 1759}#
#{w 1761}#
#{s 1762}#
#{mod 1764}#)
(#{syntax-type 430}#
(#{chi-macro 438}#
(cdr #{b 1779}#)
#{e 1759}#
#{r 1760}#
#{w 1761}#
#{s 1762}#
#{rib 1763}#
#{mod 1764}#)
#{r 1760}#
'(())
#{s 1762}#
#{rib 1763}#
#{mod 1764}#
#f))
(values
#{type 1781}#
(cdr #{b 1779}#)
#{e 1759}#
#{w 1761}#
#{s 1762}#
#{mod 1764}#))))))))))
(if (pair? #{e 1759}#)
(begin
(let ((#{first 1795}# (car #{e 1759}#)))
(call-with-values
(lambda ()
(#{syntax-type 430}#
#{first 1795}#
#{r 1760}#
#{w 1761}#
#{s 1762}#
#{rib 1763}#
#{mod 1764}#
#t))
(lambda (#{ftype 1796}#
#{fval 1797}#
#{fe 1798}#
#{fw 1799}#
#{fs 1800}#
#{fmod 1801}#)
(if (eqv? #{ftype 1796}# 'lexical)
(values
'lexical-call
#{fval 1797}#
#{e 1759}#
#{w 1761}#
#{s 1762}#
#{mod 1764}#)
(if (eqv? #{ftype 1796}# 'global)
(values
'global-call
(#{make-syntax-object 305}#
#{fval 1797}#
#{w 1761}#
#{fmod 1801}#)
#{e 1759}#
#{w 1761}#
#{s 1762}#
#{mod 1764}#)
(if (eqv? #{ftype 1796}# 'macro)
(#{syntax-type 430}#
(#{chi-macro 438}#
#{fval 1797}#
#{e 1759}#
#{r 1760}#
#{w 1761}#
#{s 1762}#
#{rib 1763}#
#{mod 1764}#)
#{r 1760}#
'(())
#{s 1762}#
#{rib 1763}#
#{mod 1764}#
#{for-car? 1765}#)
(if (eqv? #{ftype 1796}# 'module-ref)
(call-with-values
(lambda ()
(#{fval 1797}#
#{e 1759}#
#{r 1760}#
#{w 1761}#))
(lambda (#{e 1813}#
#{r 1814}#
#{w 1815}#
#{s 1816}#
#{mod 1817}#)
(#{syntax-type 430}#
#{e 1813}#
#{r 1814}#
#{w 1815}#
#{s 1816}#
#{rib 1763}#
#{mod 1817}#
#{for-car? 1765}#)))
(if (eqv? #{ftype 1796}# 'core)
(values
'core-form
#{fval 1797}#
#{e 1759}#
#{w 1761}#
#{s 1762}#
#{mod 1764}#)
(if (eqv? #{ftype 1796}# 'local-syntax)
(values
'local-syntax-form
#{fval 1797}#
#{e 1759}#
#{w 1761}#
#{s 1762}#
#{mod 1764}#)
(if (eqv? #{ftype 1796}# 'begin)
(values
'begin-form
#f
#{e 1759}#
#{w 1761}#
#{s 1762}#
#{mod 1764}#)
(if (eqv? #{ftype 1796}# 'eval-when)
(values
'eval-when-form
#f
#{e 1759}#
#{w 1761}#
#{s 1762}#
#{mod 1764}#)
(if (eqv? #{ftype 1796}# 'define)
(let ((#{tmp 1828}# #{e 1759}#))
(let ((#{tmp 1829}#
($sc-dispatch
#{tmp 1828}#
'(_ any any))))
(if (if #{tmp 1829}#
(@apply
(lambda (#{name 1832}#
#{val 1833}#)
(#{id? 344}# #{name 1832}#))
#{tmp 1829}#)
#f)
(@apply
(lambda (#{name 1836}#
#{val 1837}#)
(values
'define-form
#{name 1836}#
#{val 1837}#
#{w 1761}#
#{s 1762}#
#{mod 1764}#))
#{tmp 1829}#)
(let ((#{tmp 1838}#
($sc-dispatch
#{tmp 1828}#
'(_ (any . any)
any
.
each-any))))
(if (if #{tmp 1838}#
(@apply
(lambda (#{name 1843}#
#{args 1844}#
#{e1 1845}#
#{e2 1846}#)
(if (#{id? 344}#
#{name 1843}#)
(#{valid-bound-ids? 412}#
(#{lambda-var-list 462}#
#{args 1844}#))
#f))
#{tmp 1838}#)
#f)
(@apply
(lambda (#{name 1853}#
#{args 1854}#
#{e1 1855}#
#{e2 1856}#)
(values
'define-form
(#{wrap 418}#
#{name 1853}#
#{w 1761}#
#{mod 1764}#)
(#{decorate-source 260}#
(cons '#(syntax-object
lambda
((top)
#(ribcage
#(name
args
e1
e2)
#((top)
(top)
(top)
(top))
#("i1849"
"i1850"
"i1851"
"i1852"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(ftype
fval
fe
fw
fs
fmod)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i1802"
"i1803"
"i1804"
"i1805"
"i1806"
"i1807"))
#(ribcage
()
()
())
#(ribcage
#(first)
#((top))
#("i1794"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(e
r
w
s
rib
mod
for-car?)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i1766"
"i1767"
"i1768"
"i1769"
"i1770"
"i1771"
"i1772"))
#(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))
("i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i417"
"i415"
"i413"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i393"
"i392"
"i390"
"i387"
"i386"
"i385"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i363"
"i361"
"i360"
"i358"
"i356"
"i354"
"i352"
"i351"
"i350"
"i349"
"i347"
"i346"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i330"
"i329"
"i327"
"i325"
"i324"
"i321"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i273"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i254"
"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 418}#
(cons #{args 1854}#
(cons #{e1 1855}#
#{e2 1856}#))
#{w 1761}#
#{mod 1764}#))
#{s 1762}#)
'(())
#{s 1762}#
#{mod 1764}#))
#{tmp 1838}#)
(let ((#{tmp 1859}#
($sc-dispatch
#{tmp 1828}#
'(_ any))))
(if (if #{tmp 1859}#
(@apply
(lambda (#{name 1861}#)
(#{id? 344}#
#{name 1861}#))
#{tmp 1859}#)
#f)
(@apply
(lambda (#{name 1863}#)
(values
'define-form
(#{wrap 418}#
#{name 1863}#
#{w 1761}#
#{mod 1764}#)
'(#(syntax-object
if
((top)
#(ribcage
#(name)
#((top))
#("i1862"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(ftype
fval
fe
fw
fs
fmod)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i1802"
"i1803"
"i1804"
"i1805"
"i1806"
"i1807"))
#(ribcage
()
()
())
#(ribcage
#(first)
#((top))
#("i1794"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(e
r
w
s
rib
mod
for-car?)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i1766"
"i1767"
"i1768"
"i1769"
"i1770"
"i1771"
"i1772"))
#(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))
("i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i417"
"i415"
"i413"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i393"
"i392"
"i390"
"i387"
"i386"
"i385"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i363"
"i361"
"i360"
"i358"
"i356"
"i354"
"i352"
"i351"
"i350"
"i349"
"i347"
"i346"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i330"
"i329"
"i327"
"i325"
"i324"
"i321"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i273"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i254"
"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))
#("i1862"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(ftype
fval
fe
fw
fs
fmod)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i1802"
"i1803"
"i1804"
"i1805"
"i1806"
"i1807"))
#(ribcage
()
()
())
#(ribcage
#(first)
#((top))
#("i1794"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(e
r
w
s
rib
mod
for-car?)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i1766"
"i1767"
"i1768"
"i1769"
"i1770"
"i1771"
"i1772"))
#(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))
("i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i417"
"i415"
"i413"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i393"
"i392"
"i390"
"i387"
"i386"
"i385"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i363"
"i361"
"i360"
"i358"
"i356"
"i354"
"i352"
"i351"
"i350"
"i349"
"i347"
"i346"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i330"
"i329"
"i327"
"i325"
"i324"
"i321"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i273"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i254"
"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))
#("i1862"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(ftype
fval
fe
fw
fs
fmod)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i1802"
"i1803"
"i1804"
"i1805"
"i1806"
"i1807"))
#(ribcage
()
()
())
#(ribcage
#(first)
#((top))
#("i1794"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(e
r
w
s
rib
mod
for-car?)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i1766"
"i1767"
"i1768"
"i1769"
"i1770"
"i1771"
"i1772"))
#(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))
("i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i417"
"i415"
"i413"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i393"
"i392"
"i390"
"i387"
"i386"
"i385"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i363"
"i361"
"i360"
"i358"
"i356"
"i354"
"i352"
"i351"
"i350"
"i349"
"i347"
"i346"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i330"
"i329"
"i327"
"i325"
"i324"
"i321"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i273"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i254"
"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 1762}#
#{mod 1764}#))
#{tmp 1859}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 1828}#))))))))
(if (eqv? #{ftype 1796}# 'define-syntax)
(let ((#{tmp 1866}# #{e 1759}#))
(let ((#{tmp 1867}#
($sc-dispatch
#{tmp 1866}#
'(_ any any))))
(if (if #{tmp 1867}#
(@apply
(lambda (#{name 1870}#
#{val 1871}#)
(#{id? 344}#
#{name 1870}#))
#{tmp 1867}#)
#f)
(@apply
(lambda (#{name 1874}#
#{val 1875}#)
(values
'define-syntax-form
#{name 1874}#
#{val 1875}#
#{w 1761}#
#{s 1762}#
#{mod 1764}#))
#{tmp 1867}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 1866}#))))
(values
'call
#f
#{e 1759}#
#{w 1761}#
#{s 1762}#
#{mod 1764}#)))))))))))))))
(if (#{syntax-object? 307}# #{e 1759}#)
(#{syntax-type 430}#
(#{syntax-object-expression 309}# #{e 1759}#)
#{r 1760}#
(#{join-wraps 400}#
#{w 1761}#
(#{syntax-object-wrap 311}# #{e 1759}#))
(begin
(let ((#{t 1881}#
(#{source-annotation 322}# #{e 1759}#)))
(if #{t 1881}# #{t 1881}# #{s 1762}#)))
#{rib 1763}#
(begin
(let ((#{t 1885}#
(#{syntax-object-module 313}# #{e 1759}#)))
(if #{t 1885}# #{t 1885}# #{mod 1764}#)))
#{for-car? 1765}#)
(if (self-evaluating? #{e 1759}#)
(values
'constant
#f
#{e 1759}#
#{w 1761}#
#{s 1762}#
#{mod 1764}#)
(values
'other
#f
#{e 1759}#
#{w 1761}#
#{s 1762}#
#{mod 1764}#)))))))
(#{chi 432}#
(lambda (#{e 1890}# #{r 1891}# #{w 1892}# #{mod 1893}#)
(call-with-values
(lambda ()
(#{syntax-type 430}#
#{e 1890}#
#{r 1891}#
#{w 1892}#
(#{source-annotation 322}# #{e 1890}#)
#f
#{mod 1893}#
#f))
(lambda (#{type 1898}#
#{value 1899}#
#{e 1900}#
#{w 1901}#
#{s 1902}#
#{mod 1903}#)
(#{chi-expr 434}#
#{type 1898}#
#{value 1899}#
#{e 1900}#
#{r 1891}#
#{w 1901}#
#{s 1902}#
#{mod 1903}#)))))
(#{chi-expr 434}#
(lambda (#{type 1910}#
#{value 1911}#
#{e 1912}#
#{r 1913}#
#{w 1914}#
#{s 1915}#
#{mod 1916}#)
(if (eqv? #{type 1910}# 'lexical)
(#{build-lexical-reference 272}#
'value
#{s 1915}#
#{e 1912}#
#{value 1911}#)
(if (if (eqv? #{type 1910}# 'core)
#t
(eqv? #{type 1910}# 'core-form))
(#{value 1911}#
#{e 1912}#
#{r 1913}#
#{w 1914}#
#{s 1915}#
#{mod 1916}#)
(if (eqv? #{type 1910}# 'module-ref)
(call-with-values
(lambda ()
(#{value 1911}# #{e 1912}# #{r 1913}# #{w 1914}#))
(lambda (#{e 1927}#
#{r 1928}#
#{w 1929}#
#{s 1930}#
#{mod 1931}#)
(#{chi 432}#
#{e 1927}#
#{r 1928}#
#{w 1929}#
#{mod 1931}#)))
(if (eqv? #{type 1910}# 'lexical-call)
(#{chi-application 436}#
(begin
(let ((#{id 1939}# (car #{e 1912}#)))
(#{build-lexical-reference 272}#
'fun
(#{source-annotation 322}# #{id 1939}#)
(if (#{syntax-object? 307}# #{id 1939}#)
(syntax->datum #{id 1939}#)
#{id 1939}#)
#{value 1911}#)))
#{e 1912}#
#{r 1913}#
#{w 1914}#
#{s 1915}#
#{mod 1916}#)
(if (eqv? #{type 1910}# 'global-call)
(#{chi-application 436}#
(#{build-global-reference 278}#
(#{source-annotation 322}# (car #{e 1912}#))
(if (#{syntax-object? 307}# #{value 1911}#)
(#{syntax-object-expression 309}# #{value 1911}#)
#{value 1911}#)
(if (#{syntax-object? 307}# #{value 1911}#)
(#{syntax-object-module 313}# #{value 1911}#)
#{mod 1916}#))
#{e 1912}#
#{r 1913}#
#{w 1914}#
#{s 1915}#
#{mod 1916}#)
(if (eqv? #{type 1910}# 'constant)
(#{build-data 292}#
#{s 1915}#
(#{strip 458}#
(#{source-wrap 420}#
#{e 1912}#
#{w 1914}#
#{s 1915}#
#{mod 1916}#)
'(())))
(if (eqv? #{type 1910}# 'global)
(#{build-global-reference 278}#
#{s 1915}#
#{value 1911}#
#{mod 1916}#)
(if (eqv? #{type 1910}# 'call)
(#{chi-application 436}#
(#{chi 432}#
(car #{e 1912}#)
#{r 1913}#
#{w 1914}#
#{mod 1916}#)
#{e 1912}#
#{r 1913}#
#{w 1914}#
#{s 1915}#
#{mod 1916}#)
(if (eqv? #{type 1910}# 'begin-form)
(let ((#{tmp 1946}# #{e 1912}#))
(let ((#{tmp 1947}#
($sc-dispatch
#{tmp 1946}#
'(_ any . each-any))))
(if #{tmp 1947}#
(@apply
(lambda (#{e1 1950}# #{e2 1951}#)
(#{chi-sequence 422}#
(cons #{e1 1950}# #{e2 1951}#)
#{r 1913}#
#{w 1914}#
#{s 1915}#
#{mod 1916}#))
#{tmp 1947}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 1946}#))))
(if (eqv? #{type 1910}# 'local-syntax-form)
(#{chi-local-syntax 442}#
#{value 1911}#
#{e 1912}#
#{r 1913}#
#{w 1914}#
#{s 1915}#
#{mod 1916}#
#{chi-sequence 422}#)
(if (eqv? #{type 1910}# 'eval-when-form)
(let ((#{tmp 1955}# #{e 1912}#))
(let ((#{tmp 1956}#
($sc-dispatch
#{tmp 1955}#
'(_ each-any any . each-any))))
(if #{tmp 1956}#
(@apply
(lambda (#{x 1960}#
#{e1 1961}#
#{e2 1962}#)
(begin
(let ((#{when-list 1964}#
(#{chi-when-list 428}#
#{e 1912}#
#{x 1960}#
#{w 1914}#)))
(if (memq 'eval #{when-list 1964}#)
(#{chi-sequence 422}#
(cons #{e1 1961}# #{e2 1962}#)
#{r 1913}#
#{w 1914}#
#{s 1915}#
#{mod 1916}#)
(#{chi-void 446}#)))))
#{tmp 1956}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 1955}#))))
(if (if (eqv? #{type 1910}# 'define-form)
#t
(eqv? #{type 1910}# 'define-syntax-form))
(syntax-violation
#f
"definition in expression context"
#{e 1912}#
(#{wrap 418}#
#{value 1911}#
#{w 1914}#
#{mod 1916}#))
(if (eqv? #{type 1910}# 'syntax)
(syntax-violation
#f
"reference to pattern variable outside syntax form"
(#{source-wrap 420}#
#{e 1912}#
#{w 1914}#
#{s 1915}#
#{mod 1916}#))
(if (eqv? #{type 1910}# 'displaced-lexical)
(syntax-violation
#f
"reference to identifier outside its scope"
(#{source-wrap 420}#
#{e 1912}#
#{w 1914}#
#{s 1915}#
#{mod 1916}#))
(syntax-violation
#f
"unexpected syntax"
(#{source-wrap 420}#
#{e 1912}#
#{w 1914}#
#{s 1915}#
#{mod 1916}#))))))))))))))))))
(#{chi-application 436}#
(lambda (#{x 1971}#
#{e 1972}#
#{r 1973}#
#{w 1974}#
#{s 1975}#
#{mod 1976}#)
(let ((#{tmp 1983}# #{e 1972}#))
(let ((#{tmp 1984}#
($sc-dispatch #{tmp 1983}# '(any . each-any))))
(if #{tmp 1984}#
(@apply
(lambda (#{e0 1987}# #{e1 1988}#)
(#{build-application 266}#
#{s 1975}#
#{x 1971}#
(map (lambda (#{e 1989}#)
(#{chi 432}#
#{e 1989}#
#{r 1973}#
#{w 1974}#
#{mod 1976}#))
#{e1 1988}#)))
#{tmp 1984}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 1983}#))))))
(#{chi-macro 438}#
(lambda (#{p 1992}#
#{e 1993}#
#{r 1994}#
#{w 1995}#
#{s 1996}#
#{rib 1997}#
#{mod 1998}#)
(letrec*
((#{rebuild-macro-output 2007}#
(lambda (#{x 2008}# #{m 2009}#)
(if (pair? #{x 2008}#)
(#{decorate-source 260}#
(cons (#{rebuild-macro-output 2007}#
(car #{x 2008}#)
#{m 2009}#)
(#{rebuild-macro-output 2007}#
(cdr #{x 2008}#)
#{m 2009}#))
#{s 1996}#)
(if (#{syntax-object? 307}# #{x 2008}#)
(begin
(let ((#{w 2017}#
(#{syntax-object-wrap 311}# #{x 2008}#)))
(begin
(let ((#{ms 2020}# (car #{w 2017}#))
(#{s 2021}# (cdr #{w 2017}#)))
(if (if (pair? #{ms 2020}#)
(eq? (car #{ms 2020}#) #f)
#f)
(#{make-syntax-object 305}#
(#{syntax-object-expression 309}# #{x 2008}#)
(cons (cdr #{ms 2020}#)
(if #{rib 1997}#
(cons #{rib 1997}# (cdr #{s 2021}#))
(cdr #{s 2021}#)))
(#{syntax-object-module 313}# #{x 2008}#))
(#{make-syntax-object 305}#
(#{decorate-source 260}#
(#{syntax-object-expression 309}# #{x 2008}#)
#{s 2021}#)
(cons (cons #{m 2009}# #{ms 2020}#)
(if #{rib 1997}#
(cons #{rib 1997}#
(cons 'shift #{s 2021}#))
(cons 'shift #{s 2021}#)))
(#{syntax-object-module 313}# #{x 2008}#)))))))
(if (vector? #{x 2008}#)
(begin
(let ((#{n 2033}# (vector-length #{x 2008}#)))
(begin
(let ((#{v 2035}#
(#{decorate-source 260}#
(make-vector #{n 2033}#)
#{x 2008}#)))
(letrec*
((#{loop 2038}#
(lambda (#{i 2039}#)
(if (= #{i 2039}# #{n 2033}#)
(begin (if #f #f) #{v 2035}#)
(begin
(vector-set!
#{v 2035}#
#{i 2039}#
(#{rebuild-macro-output 2007}#
(vector-ref #{x 2008}# #{i 2039}#)
#{m 2009}#))
(#{loop 2038}# (#{1+}# #{i 2039}#)))))))
(begin (#{loop 2038}# 0)))))))
(if (symbol? #{x 2008}#)
(syntax-violation
#f
"encountered raw symbol in macro output"
(#{source-wrap 420}#
#{e 1993}#
#{w 1995}#
(cdr #{w 1995}#)
#{mod 1998}#)
#{x 2008}#)
(#{decorate-source 260}# #{x 2008}# #{s 1996}#))))))))
(begin
(#{rebuild-macro-output 2007}#
(#{p 1992}#
(#{source-wrap 420}#
#{e 1993}#
(#{anti-mark 388}# #{w 1995}#)
#{s 1996}#
#{mod 1998}#))
(gensym "m"))))))
(#{chi-body 440}#
(lambda (#{body 2049}#
#{outer-form 2050}#
#{r 2051}#
#{w 2052}#
#{mod 2053}#)
(begin
(let ((#{r 2061}#
(cons '("placeholder" placeholder) #{r 2051}#)))
(begin
(let ((#{ribcage 2063}#
(#{make-ribcage 367}# '() '() '())))
(begin
(let ((#{w 2066}#
(cons (car #{w 2052}#)
(cons #{ribcage 2063}# (cdr #{w 2052}#)))))
(letrec*
((#{parse 2078}#
(lambda (#{body 2079}#
#{ids 2080}#
#{labels 2081}#
#{var-ids 2082}#
#{vars 2083}#
#{vals 2084}#
#{bindings 2085}#)
(if (null? #{body 2079}#)
(syntax-violation
#f
"no expressions in body"
#{outer-form 2050}#)
(begin
(let ((#{e 2090}# (cdr (car #{body 2079}#)))
(#{er 2091}# (car (car #{body 2079}#))))
(call-with-values
(lambda ()
(#{syntax-type 430}#
#{e 2090}#
#{er 2091}#
'(())
(#{source-annotation 322}# #{er 2091}#)
#{ribcage 2063}#
#{mod 2053}#
#f))
(lambda (#{type 2093}#
#{value 2094}#
#{e 2095}#
#{w 2096}#
#{s 2097}#
#{mod 2098}#)
(if (eqv? #{type 2093}# 'define-form)
(begin
(let ((#{id 2108}#
(#{wrap 418}#
#{value 2094}#
#{w 2096}#
#{mod 2098}#))
(#{label 2109}#
(#{gen-label 362}#)))
(begin
(let ((#{var 2111}#
(#{gen-var 460}#
#{id 2108}#)))
(begin
(#{extend-ribcage! 394}#
#{ribcage 2063}#
#{id 2108}#
#{label 2109}#)
(#{parse 2078}#
(cdr #{body 2079}#)
(cons #{id 2108}#
#{ids 2080}#)
(cons #{label 2109}#
#{labels 2081}#)
(cons #{id 2108}#
#{var-ids 2082}#)
(cons #{var 2111}#
#{vars 2083}#)
(cons (cons #{er 2091}#
(#{wrap 418}#
#{e 2095}#
#{w 2096}#
#{mod 2098}#))
#{vals 2084}#)
(cons (cons 'lexical
#{var 2111}#)
#{bindings 2085}#)))))))
(if (eqv? #{type 2093}#
'define-syntax-form)
(begin
(let ((#{id 2116}#
(#{wrap 418}#
#{value 2094}#
#{w 2096}#
#{mod 2098}#))
(#{label 2117}#
(#{gen-label 362}#)))
(begin
(#{extend-ribcage! 394}#
#{ribcage 2063}#
#{id 2116}#
#{label 2117}#)
(#{parse 2078}#
(cdr #{body 2079}#)
(cons #{id 2116}# #{ids 2080}#)
(cons #{label 2117}#
#{labels 2081}#)
#{var-ids 2082}#
#{vars 2083}#
#{vals 2084}#
(cons (cons 'macro
(cons #{er 2091}#
(#{wrap 418}#
#{e 2095}#
#{w 2096}#
#{mod 2098}#)))
#{bindings 2085}#)))))
(if (eqv? #{type 2093}# 'begin-form)
(let ((#{tmp 2120}# #{e 2095}#))
(let ((#{tmp 2121}#
($sc-dispatch
#{tmp 2120}#
'(_ . each-any))))
(if #{tmp 2121}#
(@apply
(lambda (#{e1 2123}#)
(#{parse 2078}#
(letrec*
((#{f 2126}#
(lambda (#{forms 2127}#)
(if (null? #{forms 2127}#)
(cdr #{body 2079}#)
(cons (cons #{er 2091}#
(#{wrap 418}#
(car #{forms 2127}#)
#{w 2096}#
#{mod 2098}#))
(#{f 2126}#
(cdr #{forms 2127}#)))))))
(begin
(#{f 2126}#
#{e1 2123}#)))
#{ids 2080}#
#{labels 2081}#
#{var-ids 2082}#
#{vars 2083}#
#{vals 2084}#
#{bindings 2085}#))
#{tmp 2121}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 2120}#))))
(if (eqv? #{type 2093}#
'local-syntax-form)
(#{chi-local-syntax 442}#
#{value 2094}#
#{e 2095}#
#{er 2091}#
#{w 2096}#
#{s 2097}#
#{mod 2098}#
(lambda (#{forms 2130}#
#{er 2131}#
#{w 2132}#
#{s 2133}#
#{mod 2134}#)
(#{parse 2078}#
(letrec*
((#{f 2142}#
(lambda (#{forms 2143}#)
(if (null? #{forms 2143}#)
(cdr #{body 2079}#)
(cons (cons #{er 2131}#
(#{wrap 418}#
(car #{forms 2143}#)
#{w 2132}#
#{mod 2134}#))
(#{f 2142}#
(cdr #{forms 2143}#)))))))
(begin
(#{f 2142}#
#{forms 2130}#)))
#{ids 2080}#
#{labels 2081}#
#{var-ids 2082}#
#{vars 2083}#
#{vals 2084}#
#{bindings 2085}#)))
(if (null? #{ids 2080}#)
(#{build-sequence 294}#
#f
(map (lambda (#{x 2146}#)
(#{chi 432}#
(cdr #{x 2146}#)
(car #{x 2146}#)
'(())
#{mod 2098}#))
(cons (cons #{er 2091}#
(#{source-wrap 420}#
#{e 2095}#
#{w 2096}#
#{s 2097}#
#{mod 2098}#))
(cdr #{body 2079}#))))
(begin
(if (not (#{valid-bound-ids? 412}#
#{ids 2080}#))
(syntax-violation
#f
"invalid or duplicate identifier in definition"
#{outer-form 2050}#))
(letrec*
((#{loop 2153}#
(lambda (#{bs 2154}#
#{er-cache 2155}#
#{r-cache 2156}#)
(if (not (null? #{bs 2154}#))
(begin
(let ((#{b 2159}#
(car #{bs 2154}#)))
(if (eq? (car #{b 2159}#)
'macro)
(begin
(let ((#{er 2162}#
(car (cdr #{b 2159}#))))
(begin
(let ((#{r-cache 2164}#
(if (eq? #{er 2162}#
#{er-cache 2155}#)
#{r-cache 2156}#
(#{macros-only-env 336}#
#{er 2162}#))))
(begin
(set-cdr!
#{b 2159}#
(#{eval-local-transformer 444}#
(#{chi 432}#
(cdr (cdr #{b 2159}#))
#{r-cache 2164}#
'(())
#{mod 2098}#)
#{mod 2098}#))
(#{loop 2153}#
(cdr #{bs 2154}#)
#{er 2162}#
#{r-cache 2164}#))))))
(#{loop 2153}#
(cdr #{bs 2154}#)
#{er-cache 2155}#
#{r-cache 2156}#))))))))
(begin
(#{loop 2153}#
#{bindings 2085}#
#f
#f)))
(set-cdr!
#{r 2061}#
(#{extend-env 332}#
#{labels 2081}#
#{bindings 2085}#
(cdr #{r 2061}#)))
(#{build-letrec 300}#
#f
#t
(reverse
(map syntax->datum
#{var-ids 2082}#))
(reverse #{vars 2083}#)
(map (lambda (#{x 2167}#)
(#{chi 432}#
(cdr #{x 2167}#)
(car #{x 2167}#)
'(())
#{mod 2098}#))
(reverse #{vals 2084}#))
(#{build-sequence 294}#
#f
(map (lambda (#{x 2171}#)
(#{chi 432}#
(cdr #{x 2171}#)
(car #{x 2171}#)
'(())
#{mod 2098}#))
(cons (cons #{er 2091}#
(#{source-wrap 420}#
#{e 2095}#
#{w 2096}#
#{s 2097}#
#{mod 2098}#))
(cdr #{body 2079}#)))))))))))))))))))
(begin
(#{parse 2078}#
(map (lambda (#{x 2086}#)
(cons #{r 2061}#
(#{wrap 418}#
#{x 2086}#
#{w 2066}#
#{mod 2053}#)))
#{body 2049}#)
'()
'()
'()
'()
'()
'())))))))))))
(#{chi-local-syntax 442}#
(lambda (#{rec? 2174}#
#{e 2175}#
#{r 2176}#
#{w 2177}#
#{s 2178}#
#{mod 2179}#
#{k 2180}#)
(let ((#{tmp 2188}# #{e 2175}#))
(let ((#{tmp 2189}#
($sc-dispatch
#{tmp 2188}#
'(_ #(each (any any)) any . each-any))))
(if #{tmp 2189}#
(@apply
(lambda (#{id 2194}#
#{val 2195}#
#{e1 2196}#
#{e2 2197}#)
(begin
(let ((#{ids 2199}# #{id 2194}#))
(if (not (#{valid-bound-ids? 412}# #{ids 2199}#))
(syntax-violation
#f
"duplicate bound keyword"
#{e 2175}#)
(begin
(let ((#{labels 2202}#
(#{gen-labels 364}# #{ids 2199}#)))
(begin
(let ((#{new-w 2204}#
(#{make-binding-wrap 396}#
#{ids 2199}#
#{labels 2202}#
#{w 2177}#)))
(#{k 2180}#
(cons #{e1 2196}# #{e2 2197}#)
(#{extend-env 332}#
#{labels 2202}#
(begin
(let ((#{w 2208}#
(if #{rec? 2174}#
#{new-w 2204}#
#{w 2177}#))
(#{trans-r 2209}#
(#{macros-only-env 336}#
#{r 2176}#)))
(map (lambda (#{x 2210}#)
(cons 'macro
(#{eval-local-transformer 444}#
(#{chi 432}#
#{x 2210}#
#{trans-r 2209}#
#{w 2208}#
#{mod 2179}#)
#{mod 2179}#)))
#{val 2195}#)))
#{r 2176}#)
#{new-w 2204}#
#{s 2178}#
#{mod 2179}#)))))))))
#{tmp 2189}#)
(let ((#{_ 2215}# #{tmp 2188}#))
(syntax-violation
#f
"bad local syntax definition"
(#{source-wrap 420}#
#{e 2175}#
#{w 2177}#
#{s 2178}#
#{mod 2179}#))))))))
(#{eval-local-transformer 444}#
(lambda (#{expanded 2216}# #{mod 2217}#)
(begin
(let ((#{p 2221}#
(#{local-eval-hook 252}#
#{expanded 2216}#
#{mod 2217}#)))
(if (procedure? #{p 2221}#)
#{p 2221}#
(syntax-violation
#f
"nonprocedure transformer"
#{p 2221}#))))))
(#{chi-void 446}#
(lambda () (#{build-void 264}# #f)))
(#{ellipsis? 448}#
(lambda (#{x 2223}#)
(if (#{nonsymbol-id? 342}# #{x 2223}#)
(#{free-id=? 408}#
#{x 2223}#
'#(syntax-object
...
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i2224"))
#(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))
("i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i417"
"i415"
"i413"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i393"
"i392"
"i390"
"i387"
"i386"
"i385"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i363"
"i361"
"i360"
"i358"
"i356"
"i354"
"i352"
"i351"
"i350"
"i349"
"i347"
"i346"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i330"
"i329"
"i327"
"i325"
"i324"
"i321"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i273"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i254"
"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 450}#
(lambda (#{orig-args 2227}#)
(letrec*
((#{req 2230}#
(lambda (#{args 2233}# #{rreq 2234}#)
(let ((#{tmp 2237}# #{args 2233}#))
(let ((#{tmp 2238}# ($sc-dispatch #{tmp 2237}# '())))
(if #{tmp 2238}#
(@apply
(lambda ()
(#{check 2232}# (reverse #{rreq 2234}#) #f))
#{tmp 2238}#)
(let ((#{tmp 2239}#
($sc-dispatch #{tmp 2237}# '(any . any))))
(if (if #{tmp 2239}#
(@apply
(lambda (#{a 2242}# #{b 2243}#)
(#{id? 344}# #{a 2242}#))
#{tmp 2239}#)
#f)
(@apply
(lambda (#{a 2246}# #{b 2247}#)
(#{req 2230}#
#{b 2247}#
(cons #{a 2246}# #{rreq 2234}#)))
#{tmp 2239}#)
(let ((#{tmp 2248}# (list #{tmp 2237}#)))
(if (if #{tmp 2248}#
(@apply
(lambda (#{r 2250}#)
(#{id? 344}# #{r 2250}#))
#{tmp 2248}#)
#f)
(@apply
(lambda (#{r 2252}#)
(#{check 2232}#
(reverse #{rreq 2234}#)
#{r 2252}#))
#{tmp 2248}#)
(let ((#{else 2254}# #{tmp 2237}#))
(syntax-violation
'lambda
"invalid argument list"
#{orig-args 2227}#
#{args 2233}#)))))))))))
(#{check 2232}#
(lambda (#{req 2255}# #{rest 2256}#)
(if (#{distinct-bound-ids? 414}#
(if #{rest 2256}#
(cons #{rest 2256}# #{req 2255}#)
#{req 2255}#))
(values #{req 2255}# #f #{rest 2256}# #f)
(syntax-violation
'lambda
"duplicate identifier in argument list"
#{orig-args 2227}#)))))
(begin (#{req 2230}# #{orig-args 2227}# '())))))
(#{chi-simple-lambda 452}#
(lambda (#{e 2262}#
#{r 2263}#
#{w 2264}#
#{s 2265}#
#{mod 2266}#
#{req 2267}#
#{rest 2268}#
#{meta 2269}#
#{body 2270}#)
(begin
(let ((#{ids 2282}#
(if #{rest 2268}#
(append #{req 2267}# (list #{rest 2268}#))
#{req 2267}#)))
(begin
(let ((#{vars 2284}#
(map #{gen-var 460}# #{ids 2282}#)))
(begin
(let ((#{labels 2286}#
(#{gen-labels 364}# #{ids 2282}#)))
(#{build-simple-lambda 284}#
#{s 2265}#
(map syntax->datum #{req 2267}#)
(if #{rest 2268}#
(syntax->datum #{rest 2268}#)
#f)
#{vars 2284}#
#{meta 2269}#
(#{chi-body 440}#
#{body 2270}#
(#{source-wrap 420}#
#{e 2262}#
#{w 2264}#
#{s 2265}#
#{mod 2266}#)
(#{extend-var-env 334}#
#{labels 2286}#
#{vars 2284}#
#{r 2263}#)
(#{make-binding-wrap 396}#
#{ids 2282}#
#{labels 2286}#
#{w 2264}#)
#{mod 2266}#))))))))))
(#{lambda*-formals 454}#
(lambda (#{orig-args 2289}#)
(letrec*
((#{req 2292}#
(lambda (#{args 2301}# #{rreq 2302}#)
(let ((#{tmp 2305}# #{args 2301}#))
(let ((#{tmp 2306}# ($sc-dispatch #{tmp 2305}# '())))
(if #{tmp 2306}#
(@apply
(lambda ()
(#{check 2300}#
(reverse #{rreq 2302}#)
'()
#f
'()))
#{tmp 2306}#)
(let ((#{tmp 2307}#
($sc-dispatch #{tmp 2305}# '(any . any))))
(if (if #{tmp 2307}#
(@apply
(lambda (#{a 2310}# #{b 2311}#)
(#{id? 344}# #{a 2310}#))
#{tmp 2307}#)
#f)
(@apply
(lambda (#{a 2314}# #{b 2315}#)
(#{req 2292}#
#{b 2315}#
(cons #{a 2314}# #{rreq 2302}#)))
#{tmp 2307}#)
(let ((#{tmp 2316}#
($sc-dispatch #{tmp 2305}# '(any . any))))
(if (if #{tmp 2316}#
(@apply
(lambda (#{a 2319}# #{b 2320}#)
(eq? (syntax->datum #{a 2319}#)
#:optional))
#{tmp 2316}#)
#f)
(@apply
(lambda (#{a 2323}# #{b 2324}#)
(#{opt 2294}#
#{b 2324}#
(reverse #{rreq 2302}#)
'()))
#{tmp 2316}#)
(let ((#{tmp 2325}#
($sc-dispatch #{tmp 2305}# '(any . any))))
(if (if #{tmp 2325}#
(@apply
(lambda (#{a 2328}# #{b 2329}#)
(eq? (syntax->datum #{a 2328}#) #:key))
#{tmp 2325}#)
#f)
(@apply
(lambda (#{a 2332}# #{b 2333}#)
(#{key 2296}#
#{b 2333}#
(reverse #{rreq 2302}#)
'()
'()))
#{tmp 2325}#)
(let ((#{tmp 2334}#
($sc-dispatch
#{tmp 2305}#
'(any any))))
(if (if #{tmp 2334}#
(@apply
(lambda (#{a 2337}# #{b 2338}#)
(eq? (syntax->datum #{a 2337}#)
#:rest))
#{tmp 2334}#)
#f)
(@apply
(lambda (#{a 2341}# #{b 2342}#)
(#{rest 2298}#
#{b 2342}#
(reverse #{rreq 2302}#)
'()
'()))
#{tmp 2334}#)
(let ((#{tmp 2343}# (list #{tmp 2305}#)))
(if (if #{tmp 2343}#
(@apply
(lambda (#{r 2345}#)
(#{id? 344}# #{r 2345}#))
#{tmp 2343}#)
#f)
(@apply
(lambda (#{r 2347}#)
(#{rest 2298}#
#{r 2347}#
(reverse #{rreq 2302}#)
'()
'()))
#{tmp 2343}#)
(let ((#{else 2349}# #{tmp 2305}#))
(syntax-violation
'lambda*
"invalid argument list"
#{orig-args 2289}#
#{args 2301}#)))))))))))))))))
(#{opt 2294}#
(lambda (#{args 2350}# #{req 2351}# #{ropt 2352}#)
(let ((#{tmp 2356}# #{args 2350}#))
(let ((#{tmp 2357}# ($sc-dispatch #{tmp 2356}# '())))
(if #{tmp 2357}#
(@apply
(lambda ()
(#{check 2300}#
#{req 2351}#
(reverse #{ropt 2352}#)
#f
'()))
#{tmp 2357}#)
(let ((#{tmp 2358}#
($sc-dispatch #{tmp 2356}# '(any . any))))
(if (if #{tmp 2358}#
(@apply
(lambda (#{a 2361}# #{b 2362}#)
(#{id? 344}# #{a 2361}#))
#{tmp 2358}#)
#f)
(@apply
(lambda (#{a 2365}# #{b 2366}#)
(#{opt 2294}#
#{b 2366}#
#{req 2351}#
(cons (cons #{a 2365}#
'(#(syntax-object
#f
((top)
#(ribcage
#(a b)
#((top) (top))
#("i2363" "i2364"))
#(ribcage () () ())
#(ribcage
#(args req ropt)
#((top) (top) (top))
#("i2353" "i2354" "i2355"))
#(ribcage
(check rest key opt req)
((top)
(top)
(top)
(top)
(top))
("i2299"
"i2297"
"i2295"
"i2293"
"i2291"))
#(ribcage
#(orig-args)
#((top))
#("i2290"))
#(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))
("i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i417"
"i415"
"i413"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i393"
"i392"
"i390"
"i387"
"i386"
"i385"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i363"
"i361"
"i360"
"i358"
"i356"
"i354"
"i352"
"i351"
"i350"
"i349"
"i347"
"i346"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i330"
"i329"
"i327"
"i325"
"i324"
"i321"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i273"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i254"
"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 2352}#)))
#{tmp 2358}#)
(let ((#{tmp 2367}#
($sc-dispatch
#{tmp 2356}#
'((any any) . any))))
(if (if #{tmp 2367}#
(@apply
(lambda (#{a 2371}# #{init 2372}# #{b 2373}#)
(#{id? 344}# #{a 2371}#))
#{tmp 2367}#)
#f)
(@apply
(lambda (#{a 2377}# #{init 2378}# #{b 2379}#)
(#{opt 2294}#
#{b 2379}#
#{req 2351}#
(cons (list #{a 2377}# #{init 2378}#)
#{ropt 2352}#)))
#{tmp 2367}#)
(let ((#{tmp 2380}#
($sc-dispatch #{tmp 2356}# '(any . any))))
(if (if #{tmp 2380}#
(@apply
(lambda (#{a 2383}# #{b 2384}#)
(eq? (syntax->datum #{a 2383}#) #:key))
#{tmp 2380}#)
#f)
(@apply
(lambda (#{a 2387}# #{b 2388}#)
(#{key 2296}#
#{b 2388}#
#{req 2351}#
(reverse #{ropt 2352}#)
'()))
#{tmp 2380}#)
(let ((#{tmp 2389}#
($sc-dispatch
#{tmp 2356}#
'(any any))))
(if (if #{tmp 2389}#
(@apply
(lambda (#{a 2392}# #{b 2393}#)
(eq? (syntax->datum #{a 2392}#)
#:rest))
#{tmp 2389}#)
#f)
(@apply
(lambda (#{a 2396}# #{b 2397}#)
(#{rest 2298}#
#{b 2397}#
#{req 2351}#
(reverse #{ropt 2352}#)
'()))
#{tmp 2389}#)
(let ((#{tmp 2398}# (list #{tmp 2356}#)))
(if (if #{tmp 2398}#
(@apply
(lambda (#{r 2400}#)
(#{id? 344}# #{r 2400}#))
#{tmp 2398}#)
#f)
(@apply
(lambda (#{r 2402}#)
(#{rest 2298}#
#{r 2402}#
#{req 2351}#
(reverse #{ropt 2352}#)
'()))
#{tmp 2398}#)
(let ((#{else 2404}# #{tmp 2356}#))
(syntax-violation
'lambda*
"invalid optional argument list"
#{orig-args 2289}#
#{args 2350}#)))))))))))))))))
(#{key 2296}#
(lambda (#{args 2405}#
#{req 2406}#
#{opt 2407}#
#{rkey 2408}#)
(let ((#{tmp 2413}# #{args 2405}#))
(let ((#{tmp 2414}# ($sc-dispatch #{tmp 2413}# '())))
(if #{tmp 2414}#
(@apply
(lambda ()
(#{check 2300}#
#{req 2406}#
#{opt 2407}#
#f
(cons #f (reverse #{rkey 2408}#))))
#{tmp 2414}#)
(let ((#{tmp 2415}#
($sc-dispatch #{tmp 2413}# '(any . any))))
(if (if #{tmp 2415}#
(@apply
(lambda (#{a 2418}# #{b 2419}#)
(#{id? 344}# #{a 2418}#))
#{tmp 2415}#)
#f)
(@apply
(lambda (#{a 2422}# #{b 2423}#)
(let ((#{tmp 2425}#
(symbol->keyword
(syntax->datum #{a 2422}#))))
(let ((#{k 2427}# #{tmp 2425}#))
(#{key 2296}#
#{b 2423}#
#{req 2406}#
#{opt 2407}#
(cons (cons #{k 2427}#
(cons #{a 2422}#
'(#(syntax-object
#f
((top)
#(ribcage () () ())
#(ribcage
#(k)
#((top))
#("i2426"))
#(ribcage
#(a b)
#((top) (top))
#("i2420" "i2421"))
#(ribcage () () ())
#(ribcage
#(args req opt rkey)
#((top)
(top)
(top)
(top))
#("i2409"
"i2410"
"i2411"
"i2412"))
#(ribcage
(check rest
key
opt
req)
((top)
(top)
(top)
(top)
(top))
("i2299"
"i2297"
"i2295"
"i2293"
"i2291"))
#(ribcage
#(orig-args)
#((top))
#("i2290"))
#(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))
("i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i417"
"i415"
"i413"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i393"
"i392"
"i390"
"i387"
"i386"
"i385"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i363"
"i361"
"i360"
"i358"
"i356"
"i354"
"i352"
"i351"
"i350"
"i349"
"i347"
"i346"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i330"
"i329"
"i327"
"i325"
"i324"
"i321"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i273"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i254"
"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 2408}#)))))
#{tmp 2415}#)
(let ((#{tmp 2428}#
($sc-dispatch
#{tmp 2413}#
'((any any) . any))))
(if (if #{tmp 2428}#
(@apply
(lambda (#{a 2432}# #{init 2433}# #{b 2434}#)
(#{id? 344}# #{a 2432}#))
#{tmp 2428}#)
#f)
(@apply
(lambda (#{a 2438}# #{init 2439}# #{b 2440}#)
(let ((#{tmp 2442}#
(symbol->keyword
(syntax->datum #{a 2438}#))))
(let ((#{k 2444}# #{tmp 2442}#))
(#{key 2296}#
#{b 2440}#
#{req 2406}#
#{opt 2407}#
(cons (list #{k 2444}#
#{a 2438}#
#{init 2439}#)
#{rkey 2408}#)))))
#{tmp 2428}#)
(let ((#{tmp 2445}#
($sc-dispatch
#{tmp 2413}#
'((any any any) . any))))
(if (if #{tmp 2445}#
(@apply
(lambda (#{a 2450}#
#{init 2451}#
#{k 2452}#
#{b 2453}#)
(if (#{id? 344}# #{a 2450}#)
(keyword? (syntax->datum #{k 2452}#))
#f))
#{tmp 2445}#)
#f)
(@apply
(lambda (#{a 2460}#
#{init 2461}#
#{k 2462}#
#{b 2463}#)
(#{key 2296}#
#{b 2463}#
#{req 2406}#
#{opt 2407}#
(cons (list #{k 2462}#
#{a 2460}#
#{init 2461}#)
#{rkey 2408}#)))
#{tmp 2445}#)
(let ((#{tmp 2464}#
($sc-dispatch #{tmp 2413}# '(any))))
(if (if #{tmp 2464}#
(@apply
(lambda (#{aok 2466}#)
(eq? (syntax->datum #{aok 2466}#)
#:allow-other-keys))
#{tmp 2464}#)
#f)
(@apply
(lambda (#{aok 2468}#)
(#{check 2300}#
#{req 2406}#
#{opt 2407}#
#f
(cons #t (reverse #{rkey 2408}#))))
#{tmp 2464}#)
(let ((#{tmp 2469}#
($sc-dispatch
#{tmp 2413}#
'(any any any))))
(if (if #{tmp 2469}#
(@apply
(lambda (#{aok 2473}#
#{a 2474}#
#{b 2475}#)
(if (eq? (syntax->datum
#{aok 2473}#)
#:allow-other-keys)
(eq? (syntax->datum
#{a 2474}#)
#:rest)
#f))
#{tmp 2469}#)
#f)
(@apply
(lambda (#{aok 2481}#
#{a 2482}#
#{b 2483}#)
(#{rest 2298}#
#{b 2483}#
#{req 2406}#
#{opt 2407}#
(cons #t
(reverse #{rkey 2408}#))))
#{tmp 2469}#)
(let ((#{tmp 2484}#
($sc-dispatch
#{tmp 2413}#
'(any . any))))
(if (if #{tmp 2484}#
(@apply
(lambda (#{aok 2487}#
#{r 2488}#)
(if (eq? (syntax->datum
#{aok 2487}#)
#:allow-other-keys)
(#{id? 344}# #{r 2488}#)
#f))
#{tmp 2484}#)
#f)
(@apply
(lambda (#{aok 2493}# #{r 2494}#)
(#{rest 2298}#
#{r 2494}#
#{req 2406}#
#{opt 2407}#
(cons #t
(reverse
#{rkey 2408}#))))
#{tmp 2484}#)
(let ((#{tmp 2495}#
($sc-dispatch
#{tmp 2413}#
'(any any))))
(if (if #{tmp 2495}#
(@apply
(lambda (#{a 2498}#
#{b 2499}#)
(eq? (syntax->datum
#{a 2498}#)
#:rest))
#{tmp 2495}#)
#f)
(@apply
(lambda (#{a 2502}#
#{b 2503}#)
(#{rest 2298}#
#{b 2503}#
#{req 2406}#
#{opt 2407}#
(cons #f
(reverse
#{rkey 2408}#))))
#{tmp 2495}#)
(let ((#{tmp 2504}#
(list #{tmp 2413}#)))
(if (if #{tmp 2504}#
(@apply
(lambda (#{r 2506}#)
(#{id? 344}#
#{r 2506}#))
#{tmp 2504}#)
#f)
(@apply
(lambda (#{r 2508}#)
(#{rest 2298}#
#{r 2508}#
#{req 2406}#
#{opt 2407}#
(cons #f
(reverse
#{rkey 2408}#))))
#{tmp 2504}#)
(let ((#{else 2510}#
#{tmp 2413}#))
(syntax-violation
'lambda*
"invalid keyword argument list"
#{orig-args 2289}#
#{args 2405}#)))))))))))))))))))))))
(#{rest 2298}#
(lambda (#{args 2511}#
#{req 2512}#
#{opt 2513}#
#{kw 2514}#)
(let ((#{tmp 2519}# #{args 2511}#))
(let ((#{tmp 2520}# (list #{tmp 2519}#)))
(if (if #{tmp 2520}#
(@apply
(lambda (#{r 2522}#) (#{id? 344}# #{r 2522}#))
#{tmp 2520}#)
#f)
(@apply
(lambda (#{r 2524}#)
(#{check 2300}#
#{req 2512}#
#{opt 2513}#
#{r 2524}#
#{kw 2514}#))
#{tmp 2520}#)
(let ((#{else 2526}# #{tmp 2519}#))
(syntax-violation
'lambda*
"invalid rest argument"
#{orig-args 2289}#
#{args 2511}#)))))))
(#{check 2300}#
(lambda (#{req 2527}#
#{opt 2528}#
#{rest 2529}#
#{kw 2530}#)
(if (#{distinct-bound-ids? 414}#
(append
#{req 2527}#
(map car #{opt 2528}#)
(if #{rest 2529}# (list #{rest 2529}#) '())
(if (pair? #{kw 2530}#)
(map cadr (cdr #{kw 2530}#))
'())))
(values
#{req 2527}#
#{opt 2528}#
#{rest 2529}#
#{kw 2530}#)
(syntax-violation
'lambda*
"duplicate identifier in argument list"
#{orig-args 2289}#)))))
(begin (#{req 2292}# #{orig-args 2289}# '())))))
(#{chi-lambda-case 456}#
(lambda (#{e 2538}#
#{r 2539}#
#{w 2540}#
#{s 2541}#
#{mod 2542}#
#{get-formals 2543}#
#{clauses 2544}#)
(letrec*
((#{expand-req 2553}#
(lambda (#{req 2560}#
#{opt 2561}#
#{rest 2562}#
#{kw 2563}#
#{body 2564}#)
(begin
(let ((#{vars 2572}#
(map #{gen-var 460}# #{req 2560}#))
(#{labels 2573}#
(#{gen-labels 364}# #{req 2560}#)))
(begin
(let ((#{r* 2576}#
(#{extend-var-env 334}#
#{labels 2573}#
#{vars 2572}#
#{r 2539}#))
(#{w* 2577}#
(#{make-binding-wrap 396}#
#{req 2560}#
#{labels 2573}#
#{w 2540}#)))
(#{expand-opt 2555}#
(map syntax->datum #{req 2560}#)
#{opt 2561}#
#{rest 2562}#
#{kw 2563}#
#{body 2564}#
(reverse #{vars 2572}#)
#{r* 2576}#
#{w* 2577}#
'()
'())))))))
(#{expand-opt 2555}#
(lambda (#{req 2578}#
#{opt 2579}#
#{rest 2580}#
#{kw 2581}#
#{body 2582}#
#{vars 2583}#
#{r* 2584}#
#{w* 2585}#
#{out 2586}#
#{inits 2587}#)
(if (pair? #{opt 2579}#)
(let ((#{tmp 2600}# (car #{opt 2579}#)))
(let ((#{tmp 2601}#
($sc-dispatch #{tmp 2600}# '(any any))))
(if #{tmp 2601}#
(@apply
(lambda (#{id 2604}# #{i 2605}#)
(begin
(let ((#{v 2608}# (#{gen-var 460}# #{id 2604}#)))
(begin
(let ((#{l 2610}#
(#{gen-labels 364}#
(list #{v 2608}#))))
(begin
(let ((#{r** 2612}#
(#{extend-var-env 334}#
#{l 2610}#
(list #{v 2608}#)
#{r* 2584}#)))
(begin
(let ((#{w** 2614}#
(#{make-binding-wrap 396}#
(list #{id 2604}#)
#{l 2610}#
#{w* 2585}#)))
(#{expand-opt 2555}#
#{req 2578}#
(cdr #{opt 2579}#)
#{rest 2580}#
#{kw 2581}#
#{body 2582}#
(cons #{v 2608}# #{vars 2583}#)
#{r** 2612}#
#{w** 2614}#
(cons (syntax->datum #{id 2604}#)
#{out 2586}#)
(cons (#{chi 432}#
#{i 2605}#
#{r* 2584}#
#{w* 2585}#
#{mod 2542}#)
#{inits 2587}#)))))))))))
#{tmp 2601}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 2600}#))))
(if #{rest 2580}#
(begin
(let ((#{v 2619}# (#{gen-var 460}# #{rest 2580}#)))
(begin
(let ((#{l 2621}#
(#{gen-labels 364}# (list #{v 2619}#))))
(begin
(let ((#{r* 2623}#
(#{extend-var-env 334}#
#{l 2621}#
(list #{v 2619}#)
#{r* 2584}#)))
(begin
(let ((#{w* 2625}#
(#{make-binding-wrap 396}#
(list #{rest 2580}#)
#{l 2621}#
#{w* 2585}#)))
(#{expand-kw 2557}#
#{req 2578}#
(if (pair? #{out 2586}#)
(reverse #{out 2586}#)
#f)
(syntax->datum #{rest 2580}#)
(if (pair? #{kw 2581}#)
(cdr #{kw 2581}#)
#{kw 2581}#)
#{body 2582}#
(cons #{v 2619}# #{vars 2583}#)
#{r* 2623}#
#{w* 2625}#
(if (pair? #{kw 2581}#)
(car #{kw 2581}#)
#f)
'()
#{inits 2587}#)))))))))
(#{expand-kw 2557}#
#{req 2578}#
(if (pair? #{out 2586}#)
(reverse #{out 2586}#)
#f)
#f
(if (pair? #{kw 2581}#)
(cdr #{kw 2581}#)
#{kw 2581}#)
#{body 2582}#
#{vars 2583}#
#{r* 2584}#
#{w* 2585}#
(if (pair? #{kw 2581}#) (car #{kw 2581}#) #f)
'()
#{inits 2587}#)))))
(#{expand-kw 2557}#
(lambda (#{req 2627}#
#{opt 2628}#
#{rest 2629}#
#{kw 2630}#
#{body 2631}#
#{vars 2632}#
#{r* 2633}#
#{w* 2634}#
#{aok 2635}#
#{out 2636}#
#{inits 2637}#)
(if (pair? #{kw 2630}#)
(let ((#{tmp 2651}# (car #{kw 2630}#)))
(let ((#{tmp 2652}#
($sc-dispatch #{tmp 2651}# '(any any any))))
(if #{tmp 2652}#
(@apply
(lambda (#{k 2656}# #{id 2657}# #{i 2658}#)
(begin
(let ((#{v 2661}# (#{gen-var 460}# #{id 2657}#)))
(begin
(let ((#{l 2663}#
(#{gen-labels 364}#
(list #{v 2661}#))))
(begin
(let ((#{r** 2665}#
(#{extend-var-env 334}#
#{l 2663}#
(list #{v 2661}#)
#{r* 2633}#)))
(begin
(let ((#{w** 2667}#
(#{make-binding-wrap 396}#
(list #{id 2657}#)
#{l 2663}#
#{w* 2634}#)))
(#{expand-kw 2557}#
#{req 2627}#
#{opt 2628}#
#{rest 2629}#
(cdr #{kw 2630}#)
#{body 2631}#
(cons #{v 2661}# #{vars 2632}#)
#{r** 2665}#
#{w** 2667}#
#{aok 2635}#
(cons (list (syntax->datum
#{k 2656}#)
(syntax->datum
#{id 2657}#)
#{v 2661}#)
#{out 2636}#)
(cons (#{chi 432}#
#{i 2658}#
#{r* 2633}#
#{w* 2634}#
#{mod 2542}#)
#{inits 2637}#)))))))))))
#{tmp 2652}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 2651}#))))
(#{expand-body 2559}#
#{req 2627}#
#{opt 2628}#
#{rest 2629}#
(if (begin
(let ((#{t 2671}# #{aok 2635}#))
(if #{t 2671}# #{t 2671}# (pair? #{out 2636}#))))
(cons #{aok 2635}# (reverse #{out 2636}#))
#f)
#{body 2631}#
(reverse #{vars 2632}#)
#{r* 2633}#
#{w* 2634}#
(reverse #{inits 2637}#)
'()))))
(#{expand-body 2559}#
(lambda (#{req 2673}#
#{opt 2674}#
#{rest 2675}#
#{kw 2676}#
#{body 2677}#
#{vars 2678}#
#{r* 2679}#
#{w* 2680}#
#{inits 2681}#
#{meta 2682}#)
(let ((#{tmp 2693}# #{body 2677}#))
(let ((#{tmp 2694}#
($sc-dispatch #{tmp 2693}# '(any any . each-any))))
(if (if #{tmp 2694}#
(@apply
(lambda (#{docstring 2698}# #{e1 2699}# #{e2 2700}#)
(string? (syntax->datum #{docstring 2698}#)))
#{tmp 2694}#)
#f)
(@apply
(lambda (#{docstring 2704}# #{e1 2705}# #{e2 2706}#)
(#{expand-body 2559}#
#{req 2673}#
#{opt 2674}#
#{rest 2675}#
#{kw 2676}#
(cons #{e1 2705}# #{e2 2706}#)
#{vars 2678}#
#{r* 2679}#
#{w* 2680}#
#{inits 2681}#
(append
#{meta 2682}#
(list (cons 'documentation
(syntax->datum #{docstring 2704}#))))))
#{tmp 2694}#)
(let ((#{tmp 2709}#
($sc-dispatch
#{tmp 2693}#
'(#(vector #(each (any . any)))
any
.
each-any))))
(if #{tmp 2709}#
(@apply
(lambda (#{k 2714}#
#{v 2715}#
#{e1 2716}#
#{e2 2717}#)
(#{expand-body 2559}#
#{req 2673}#
#{opt 2674}#
#{rest 2675}#
#{kw 2676}#
(cons #{e1 2716}# #{e2 2717}#)
#{vars 2678}#
#{r* 2679}#
#{w* 2680}#
#{inits 2681}#
(append
#{meta 2682}#
(syntax->datum
(map cons #{k 2714}# #{v 2715}#)))))
#{tmp 2709}#)
(let ((#{tmp 2721}#
($sc-dispatch #{tmp 2693}# '(any . each-any))))
(if #{tmp 2721}#
(@apply
(lambda (#{e1 2724}# #{e2 2725}#)
(values
#{meta 2682}#
#{req 2673}#
#{opt 2674}#
#{rest 2675}#
#{kw 2676}#
#{inits 2681}#
#{vars 2678}#
(#{chi-body 440}#
(cons #{e1 2724}# #{e2 2725}#)
(#{source-wrap 420}#
#{e 2538}#
#{w 2540}#
#{s 2541}#
#{mod 2542}#)
#{r* 2679}#
#{w* 2680}#
#{mod 2542}#)))
#{tmp 2721}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 2693}#)))))))))))
(begin
(let ((#{tmp 2727}# #{clauses 2544}#))
(let ((#{tmp 2728}# ($sc-dispatch #{tmp 2727}# '())))
(if #{tmp 2728}#
(@apply (lambda () (values '() #f)) #{tmp 2728}#)
(let ((#{tmp 2729}#
($sc-dispatch
#{tmp 2727}#
'((any any . each-any)
.
#(each (any any . each-any))))))
(if #{tmp 2729}#
(@apply
(lambda (#{args 2736}#
#{e1 2737}#
#{e2 2738}#
#{args* 2739}#
#{e1* 2740}#
#{e2* 2741}#)
(call-with-values
(lambda () (#{get-formals 2543}# #{args 2736}#))
(lambda (#{req 2742}#
#{opt 2743}#
#{rest 2744}#
#{kw 2745}#)
(call-with-values
(lambda ()
(#{expand-req 2553}#
#{req 2742}#
#{opt 2743}#
#{rest 2744}#
#{kw 2745}#
(cons #{e1 2737}# #{e2 2738}#)))
(lambda (#{meta 2751}#
#{req 2752}#
#{opt 2753}#
#{rest 2754}#
#{kw 2755}#
#{inits 2756}#
#{vars 2757}#
#{body 2758}#)
(call-with-values
(lambda ()
(#{chi-lambda-case 456}#
#{e 2538}#
#{r 2539}#
#{w 2540}#
#{s 2541}#
#{mod 2542}#
#{get-formals 2543}#
(map (lambda (#{tmp 2769}#
#{tmp 2768}#
#{tmp 2767}#)
(cons #{tmp 2767}#
(cons #{tmp 2768}#
#{tmp 2769}#)))
#{e2* 2741}#
#{e1* 2740}#
#{args* 2739}#)))
(lambda (#{meta* 2771}# #{else* 2772}#)
(values
(append #{meta 2751}# #{meta* 2771}#)
(#{build-lambda-case 288}#
#{s 2541}#
#{req 2752}#
#{opt 2753}#
#{rest 2754}#
#{kw 2755}#
#{inits 2756}#
#{vars 2757}#
#{body 2758}#
#{else* 2772}#)))))))))
#{tmp 2729}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 2727}#))))))))))
(#{strip 458}#
(lambda (#{x 2775}# #{w 2776}#)
(if (memq 'top (car #{w 2776}#))
#{x 2775}#
(letrec*
((#{f 2783}#
(lambda (#{x 2784}#)
(if (#{syntax-object? 307}# #{x 2784}#)
(#{strip 458}#
(#{syntax-object-expression 309}# #{x 2784}#)
(#{syntax-object-wrap 311}# #{x 2784}#))
(if (pair? #{x 2784}#)
(begin
(let ((#{a 2791}# (#{f 2783}# (car #{x 2784}#)))
(#{d 2792}# (#{f 2783}# (cdr #{x 2784}#))))
(if (if (eq? #{a 2791}# (car #{x 2784}#))
(eq? #{d 2792}# (cdr #{x 2784}#))
#f)
#{x 2784}#
(cons #{a 2791}# #{d 2792}#))))
(if (vector? #{x 2784}#)
(begin
(let ((#{old 2798}# (vector->list #{x 2784}#)))
(begin
(let ((#{new 2800}# (map #{f 2783}# #{old 2798}#)))
(letrec*
((#{lp 2804}#
(lambda (#{l1 2805}# #{l2 2806}#)
(if (null? #{l1 2805}#)
#{x 2784}#
(if (eq? (car #{l1 2805}#)
(car #{l2 2806}#))
(#{lp 2804}#
(cdr #{l1 2805}#)
(cdr #{l2 2806}#))
(list->vector #{new 2800}#))))))
(begin
(#{lp 2804}# #{old 2798}# #{new 2800}#)))))))
#{x 2784}#))))))
(begin (#{f 2783}# #{x 2775}#))))))
(#{gen-var 460}#
(lambda (#{id 2808}#)
(begin
(let ((#{id 2811}#
(if (#{syntax-object? 307}# #{id 2808}#)
(#{syntax-object-expression 309}# #{id 2808}#)
#{id 2808}#)))
(gensym
(string-append (symbol->string #{id 2811}#) " "))))))
(#{lambda-var-list 462}#
(lambda (#{vars 2813}#)
(letrec*
((#{lvl 2819}#
(lambda (#{vars 2820}# #{ls 2821}# #{w 2822}#)
(if (pair? #{vars 2820}#)
(#{lvl 2819}#
(cdr #{vars 2820}#)
(cons (#{wrap 418}# (car #{vars 2820}#) #{w 2822}# #f)
#{ls 2821}#)
#{w 2822}#)
(if (#{id? 344}# #{vars 2820}#)
(cons (#{wrap 418}# #{vars 2820}# #{w 2822}# #f)
#{ls 2821}#)
(if (null? #{vars 2820}#)
#{ls 2821}#
(if (#{syntax-object? 307}# #{vars 2820}#)
(#{lvl 2819}#
(#{syntax-object-expression 309}# #{vars 2820}#)
#{ls 2821}#
(#{join-wraps 400}#
#{w 2822}#
(#{syntax-object-wrap 311}# #{vars 2820}#)))
(cons #{vars 2820}# #{ls 2821}#))))))))
(begin (#{lvl 2819}# #{vars 2813}# '() '(())))))))
(begin
(lambda (#{src 780}# #{name 781}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 2)
#{src 780}#
#{name 781}#))
(lambda (#{x 1158}# #{update 1159}#)
(vector-set! #{x 1158}# 1 #{update 1159}#))
(lambda (#{x 1162}# #{update 1163}#)
(vector-set! #{x 1162}# 2 #{update 1163}#))
(lambda (#{x 1166}# #{update 1167}#)
(vector-set! #{x 1166}# 3 #{update 1167}#))
(lambda (#{x 1247}#)
(if (vector? #{x 1247}#)
(if (= (vector-length #{x 1247}#) 4)
(eq? (vector-ref #{x 1247}# 0) 'ribcage)
#f)
#f))
(begin
(#{global-extend 340}#
'local-syntax
'letrec-syntax
#t)
(#{global-extend 340}#
'local-syntax
'let-syntax
#f)
(#{global-extend 340}#
'core
'fluid-let-syntax
(lambda (#{e 2833}#
#{r 2834}#
#{w 2835}#
#{s 2836}#
#{mod 2837}#)
(let ((#{tmp 2843}# #{e 2833}#))
(let ((#{tmp 2844}#
($sc-dispatch
#{tmp 2843}#
'(_ #(each (any any)) any . each-any))))
(if (if #{tmp 2844}#
(@apply
(lambda (#{var 2849}#
#{val 2850}#
#{e1 2851}#
#{e2 2852}#)
(#{valid-bound-ids? 412}# #{var 2849}#))
#{tmp 2844}#)
#f)
(@apply
(lambda (#{var 2858}#
#{val 2859}#
#{e1 2860}#
#{e2 2861}#)
(begin
(let ((#{names 2863}#
(map (lambda (#{x 2864}#)
(#{id-var-name 406}#
#{x 2864}#
#{w 2835}#))
#{var 2858}#)))
(begin
(for-each
(lambda (#{id 2867}# #{n 2868}#)
(begin
(let ((#{atom-key 2873}#
(car (#{lookup 338}#
#{n 2868}#
#{r 2834}#
#{mod 2837}#))))
(if (eqv? #{atom-key 2873}#
'displaced-lexical)
(syntax-violation
'fluid-let-syntax
"identifier out of context"
#{e 2833}#
(#{source-wrap 420}#
#{id 2867}#
#{w 2835}#
#{s 2836}#
#{mod 2837}#))))))
#{var 2858}#
#{names 2863}#)
(#{chi-body 440}#
(cons #{e1 2860}# #{e2 2861}#)
(#{source-wrap 420}#
#{e 2833}#
#{w 2835}#
#{s 2836}#
#{mod 2837}#)
(#{extend-env 332}#
#{names 2863}#
(begin
(let ((#{trans-r 2879}#
(#{macros-only-env 336}# #{r 2834}#)))
(map (lambda (#{x 2880}#)
(cons 'macro
(#{eval-local-transformer 444}#
(#{chi 432}#
#{x 2880}#
#{trans-r 2879}#
#{w 2835}#
#{mod 2837}#)
#{mod 2837}#)))
#{val 2859}#)))
#{r 2834}#)
#{w 2835}#
#{mod 2837}#)))))
#{tmp 2844}#)
(let ((#{_ 2885}# #{tmp 2843}#))
(syntax-violation
'fluid-let-syntax
"bad syntax"
(#{source-wrap 420}#
#{e 2833}#
#{w 2835}#
#{s 2836}#
#{mod 2837}#))))))))
(#{global-extend 340}#
'core
'quote
(lambda (#{e 2886}#
#{r 2887}#
#{w 2888}#
#{s 2889}#
#{mod 2890}#)
(let ((#{tmp 2896}# #{e 2886}#))
(let ((#{tmp 2897}#
($sc-dispatch #{tmp 2896}# '(_ any))))
(if #{tmp 2897}#
(@apply
(lambda (#{e 2899}#)
(#{build-data 292}#
#{s 2889}#
(#{strip 458}# #{e 2899}# #{w 2888}#)))
#{tmp 2897}#)
(let ((#{_ 2901}# #{tmp 2896}#))
(syntax-violation
'quote
"bad syntax"
(#{source-wrap 420}#
#{e 2886}#
#{w 2888}#
#{s 2889}#
#{mod 2890}#))))))))
(#{global-extend 340}#
'core
'syntax
(letrec*
((#{gen-syntax 2903}#
(lambda (#{src 2918}#
#{e 2919}#
#{r 2920}#
#{maps 2921}#
#{ellipsis? 2922}#
#{mod 2923}#)
(if (#{id? 344}# #{e 2919}#)
(begin
(let ((#{label 2931}#
(#{id-var-name 406}# #{e 2919}# '(()))))
(begin
(let ((#{b 2934}#
(#{lookup 338}#
#{label 2931}#
#{r 2920}#
#{mod 2923}#)))
(if (eq? (car #{b 2934}#) 'syntax)
(call-with-values
(lambda ()
(begin
(let ((#{var.lev 2937}# (cdr #{b 2934}#)))
(#{gen-ref 2905}#
#{src 2918}#
(car #{var.lev 2937}#)
(cdr #{var.lev 2937}#)
#{maps 2921}#))))
(lambda (#{var 2939}# #{maps 2940}#)
(values
(list 'ref #{var 2939}#)
#{maps 2940}#)))
(if (#{ellipsis? 2922}# #{e 2919}#)
(syntax-violation
'syntax
"misplaced ellipsis"
#{src 2918}#)
(values
(list 'quote #{e 2919}#)
#{maps 2921}#)))))))
(let ((#{tmp 2945}# #{e 2919}#))
(let ((#{tmp 2946}#
($sc-dispatch #{tmp 2945}# '(any any))))
(if (if #{tmp 2946}#
(@apply
(lambda (#{dots 2949}# #{e 2950}#)
(#{ellipsis? 2922}# #{dots 2949}#))
#{tmp 2946}#)
#f)
(@apply
(lambda (#{dots 2953}# #{e 2954}#)
(#{gen-syntax 2903}#
#{src 2918}#
#{e 2954}#
#{r 2920}#
#{maps 2921}#
(lambda (#{x 2955}#) #f)
#{mod 2923}#))
#{tmp 2946}#)
(let ((#{tmp 2957}#
($sc-dispatch #{tmp 2945}# '(any any . any))))
(if (if #{tmp 2957}#
(@apply
(lambda (#{x 2961}# #{dots 2962}# #{y 2963}#)
(#{ellipsis? 2922}# #{dots 2962}#))
#{tmp 2957}#)
#f)
(@apply
(lambda (#{x 2967}# #{dots 2968}# #{y 2969}#)
(letrec*
((#{f 2973}#
(lambda (#{y 2974}# #{k 2975}#)
(let ((#{tmp 2982}# #{y 2974}#))
(let ((#{tmp 2983}#
($sc-dispatch
#{tmp 2982}#
'(any . any))))
(if (if #{tmp 2983}#
(@apply
(lambda (#{dots 2986}#
#{y 2987}#)
(#{ellipsis? 2922}#
#{dots 2986}#))
#{tmp 2983}#)
#f)
(@apply
(lambda (#{dots 2990}#
#{y 2991}#)
(#{f 2973}#
#{y 2991}#
(lambda (#{maps 2992}#)
(call-with-values
(lambda ()
(#{k 2975}#
(cons '()
#{maps 2992}#)))
(lambda (#{x 2994}#
#{maps 2995}#)
(if (null? (car #{maps 2995}#))
(syntax-violation
'syntax
"extra ellipsis"
#{src 2918}#)
(values
(#{gen-mappend 2907}#
#{x 2994}#
(car #{maps 2995}#))
(cdr #{maps 2995}#))))))))
#{tmp 2983}#)
(let ((#{_ 2999}# #{tmp 2982}#))
(call-with-values
(lambda ()
(#{gen-syntax 2903}#
#{src 2918}#
#{y 2974}#
#{r 2920}#
#{maps 2921}#
#{ellipsis? 2922}#
#{mod 2923}#))
(lambda (#{y 3000}#
#{maps 3001}#)
(call-with-values
(lambda ()
(#{k 2975}#
#{maps 3001}#))
(lambda (#{x 3004}#
#{maps 3005}#)
(values
(#{gen-append 2913}#
#{x 3004}#
#{y 3000}#)
#{maps 3005}#))))))))))))
(begin
(#{f 2973}#
#{y 2969}#
(lambda (#{maps 2976}#)
(call-with-values
(lambda ()
(#{gen-syntax 2903}#
#{src 2918}#
#{x 2967}#
#{r 2920}#
(cons '() #{maps 2976}#)
#{ellipsis? 2922}#
#{mod 2923}#))
(lambda (#{x 2978}# #{maps 2979}#)
(if (null? (car #{maps 2979}#))
(syntax-violation
'syntax
"extra ellipsis"
#{src 2918}#)
(values
(#{gen-map 2909}#
#{x 2978}#
(car #{maps 2979}#))
(cdr #{maps 2979}#))))))))))
#{tmp 2957}#)
(let ((#{tmp 3008}#
($sc-dispatch #{tmp 2945}# '(any . any))))
(if #{tmp 3008}#
(@apply
(lambda (#{x 3011}# #{y 3012}#)
(call-with-values
(lambda ()
(#{gen-syntax 2903}#
#{src 2918}#
#{x 3011}#
#{r 2920}#
#{maps 2921}#
#{ellipsis? 2922}#
#{mod 2923}#))
(lambda (#{x 3013}# #{maps 3014}#)
(call-with-values
(lambda ()
(#{gen-syntax 2903}#
#{src 2918}#
#{y 3012}#
#{r 2920}#
#{maps 3014}#
#{ellipsis? 2922}#
#{mod 2923}#))
(lambda (#{y 3017}# #{maps 3018}#)
(values
(#{gen-cons 2911}#
#{x 3013}#
#{y 3017}#)
#{maps 3018}#))))))
#{tmp 3008}#)
(let ((#{tmp 3021}#
($sc-dispatch
#{tmp 2945}#
'#(vector (any . each-any)))))
(if #{tmp 3021}#
(@apply
(lambda (#{e1 3024}# #{e2 3025}#)
(call-with-values
(lambda ()
(#{gen-syntax 2903}#
#{src 2918}#
(cons #{e1 3024}# #{e2 3025}#)
#{r 2920}#
#{maps 2921}#
#{ellipsis? 2922}#
#{mod 2923}#))
(lambda (#{e 3027}# #{maps 3028}#)
(values
(#{gen-vector 2915}# #{e 3027}#)
#{maps 3028}#))))
#{tmp 3021}#)
(let ((#{_ 3032}# #{tmp 2945}#))
(values
(list 'quote #{e 2919}#)
#{maps 2921}#))))))))))))))
(#{gen-ref 2905}#
(lambda (#{src 3034}#
#{var 3035}#
#{level 3036}#
#{maps 3037}#)
(if (= #{level 3036}# 0)
(values #{var 3035}# #{maps 3037}#)
(if (null? #{maps 3037}#)
(syntax-violation
'syntax
"missing ellipsis"
#{src 3034}#)
(call-with-values
(lambda ()
(#{gen-ref 2905}#
#{src 3034}#
#{var 3035}#
(#{1-}# #{level 3036}#)
(cdr #{maps 3037}#)))
(lambda (#{outer-var 3044}# #{outer-maps 3045}#)
(begin
(let ((#{b 3049}#
(assq #{outer-var 3044}#
(car #{maps 3037}#))))
(if #{b 3049}#
(values (cdr #{b 3049}#) #{maps 3037}#)
(begin
(let ((#{inner-var 3051}#
(#{gen-var 460}# 'tmp)))
(values
#{inner-var 3051}#
(cons (cons (cons #{outer-var 3044}#
#{inner-var 3051}#)
(car #{maps 3037}#))
#{outer-maps 3045}#)))))))))))))
(#{gen-mappend 2907}#
(lambda (#{e 3052}# #{map-env 3053}#)
(list 'apply
'(primitive append)
(#{gen-map 2909}# #{e 3052}# #{map-env 3053}#))))
(#{gen-map 2909}#
(lambda (#{e 3057}# #{map-env 3058}#)
(begin
(let ((#{formals 3063}# (map cdr #{map-env 3058}#))
(#{actuals 3064}#
(map (lambda (#{x 3065}#)
(list 'ref (car #{x 3065}#)))
#{map-env 3058}#)))
(if (eq? (car #{e 3057}#) 'ref)
(car #{actuals 3064}#)
(if (and-map
(lambda (#{x 3072}#)
(if (eq? (car #{x 3072}#) 'ref)
(memq (car (cdr #{x 3072}#)) #{formals 3063}#)
#f))
(cdr #{e 3057}#))
(cons 'map
(cons (list 'primitive (car #{e 3057}#))
(map (begin
(let ((#{r 3078}#
(map cons
#{formals 3063}#
#{actuals 3064}#)))
(lambda (#{x 3079}#)
(cdr (assq (car (cdr #{x 3079}#))
#{r 3078}#)))))
(cdr #{e 3057}#))))
(cons 'map
(cons (list 'lambda #{formals 3063}# #{e 3057}#)
#{actuals 3064}#))))))))
(#{gen-cons 2911}#
(lambda (#{x 3083}# #{y 3084}#)
(begin
(let ((#{atom-key 3089}# (car #{y 3084}#)))
(if (eqv? #{atom-key 3089}# 'quote)
(if (eq? (car #{x 3083}#) 'quote)
(list 'quote
(cons (car (cdr #{x 3083}#))
(car (cdr #{y 3084}#))))
(if (eq? (car (cdr #{y 3084}#)) '())
(list 'list #{x 3083}#)
(list 'cons #{x 3083}# #{y 3084}#)))
(if (eqv? #{atom-key 3089}# 'list)
(cons 'list (cons #{x 3083}# (cdr #{y 3084}#)))
(list 'cons #{x 3083}# #{y 3084}#)))))))
(#{gen-append 2913}#
(lambda (#{x 3098}# #{y 3099}#)
(if (equal? #{y 3099}# ''())
#{x 3098}#
(list 'append #{x 3098}# #{y 3099}#))))
(#{gen-vector 2915}#
(lambda (#{x 3103}#)
(if (eq? (car #{x 3103}#) 'list)
(cons 'vector (cdr #{x 3103}#))
(if (eq? (car #{x 3103}#) 'quote)
(list 'quote
(list->vector (car (cdr #{x 3103}#))))
(list 'list->vector #{x 3103}#)))))
(#{regen 2917}#
(lambda (#{x 3113}#)
(begin
(let ((#{atom-key 3117}# (car #{x 3113}#)))
(if (eqv? #{atom-key 3117}# 'ref)
(#{build-lexical-reference 272}#
'value
#f
(car (cdr #{x 3113}#))
(car (cdr #{x 3113}#)))
(if (eqv? #{atom-key 3117}# 'primitive)
(#{build-primref 290}# #f (car (cdr #{x 3113}#)))
(if (eqv? #{atom-key 3117}# 'quote)
(#{build-data 292}# #f (car (cdr #{x 3113}#)))
(if (eqv? #{atom-key 3117}# 'lambda)
(if (list? (car (cdr #{x 3113}#)))
(#{build-simple-lambda 284}#
#f
(car (cdr #{x 3113}#))
#f
(car (cdr #{x 3113}#))
'()
(#{regen 2917}# (car (cdr (cdr #{x 3113}#)))))
(error "how did we get here" #{x 3113}#))
(#{build-application 266}#
#f
(#{build-primref 290}# #f (car #{x 3113}#))
(map #{regen 2917}# (cdr #{x 3113}#))))))))))))
(begin
(lambda (#{e 3129}#
#{r 3130}#
#{w 3131}#
#{s 3132}#
#{mod 3133}#)
(begin
(let ((#{e 3140}#
(#{source-wrap 420}#
#{e 3129}#
#{w 3131}#
#{s 3132}#
#{mod 3133}#)))
(let ((#{tmp 3141}# #{e 3140}#))
(let ((#{tmp 3142}#
($sc-dispatch #{tmp 3141}# '(_ any))))
(if #{tmp 3142}#
(@apply
(lambda (#{x 3144}#)
(call-with-values
(lambda ()
(#{gen-syntax 2903}#
#{e 3140}#
#{x 3144}#
#{r 3130}#
'()
#{ellipsis? 448}#
#{mod 3133}#))
(lambda (#{e 3145}# #{maps 3146}#)
(#{regen 2917}# #{e 3145}#))))
#{tmp 3142}#)
(let ((#{_ 3150}# #{tmp 3141}#))
(syntax-violation
'syntax
"bad `syntax' form"
#{e 3140}#)))))))))))
(#{global-extend 340}#
'core
'lambda
(lambda (#{e 3151}#
#{r 3152}#
#{w 3153}#
#{s 3154}#
#{mod 3155}#)
(let ((#{tmp 3161}# #{e 3151}#))
(let ((#{tmp 3162}#
($sc-dispatch
#{tmp 3161}#
'(_ any any . each-any))))
(if #{tmp 3162}#
(@apply
(lambda (#{args 3166}# #{e1 3167}# #{e2 3168}#)
(call-with-values
(lambda ()
(#{lambda-formals 450}# #{args 3166}#))
(lambda (#{req 3169}#
#{opt 3170}#
#{rest 3171}#
#{kw 3172}#)
(letrec*
((#{lp 3180}#
(lambda (#{body 3181}# #{meta 3182}#)
(let ((#{tmp 3184}# #{body 3181}#))
(let ((#{tmp 3185}#
($sc-dispatch
#{tmp 3184}#
'(any any . each-any))))
(if (if #{tmp 3185}#
(@apply
(lambda (#{docstring 3189}#
#{e1 3190}#
#{e2 3191}#)
(string?
(syntax->datum
#{docstring 3189}#)))
#{tmp 3185}#)
#f)
(@apply
(lambda (#{docstring 3195}#
#{e1 3196}#
#{e2 3197}#)
(#{lp 3180}#
(cons #{e1 3196}# #{e2 3197}#)
(append
#{meta 3182}#
(list (cons 'documentation
(syntax->datum
#{docstring 3195}#))))))
#{tmp 3185}#)
(let ((#{tmp 3200}#
($sc-dispatch
#{tmp 3184}#
'(#(vector #(each (any . any)))
any
.
each-any))))
(if #{tmp 3200}#
(@apply
(lambda (#{k 3205}#
#{v 3206}#
#{e1 3207}#
#{e2 3208}#)
(#{lp 3180}#
(cons #{e1 3207}# #{e2 3208}#)
(append
#{meta 3182}#
(syntax->datum
(map cons
#{k 3205}#
#{v 3206}#)))))
#{tmp 3200}#)
(let ((#{_ 3213}# #{tmp 3184}#))
(#{chi-simple-lambda 452}#
#{e 3151}#
#{r 3152}#
#{w 3153}#
#{s 3154}#
#{mod 3155}#
#{req 3169}#
#{rest 3171}#
#{meta 3182}#
#{body 3181}#))))))))))
(begin
(#{lp 3180}#
(cons #{e1 3167}# #{e2 3168}#)
'()))))))
#{tmp 3162}#)
(let ((#{_ 3215}# #{tmp 3161}#))
(syntax-violation
'lambda
"bad lambda"
#{e 3151}#)))))))
(#{global-extend 340}#
'core
'lambda*
(lambda (#{e 3216}#
#{r 3217}#
#{w 3218}#
#{s 3219}#
#{mod 3220}#)
(let ((#{tmp 3226}# #{e 3216}#))
(let ((#{tmp 3227}#
($sc-dispatch
#{tmp 3226}#
'(_ any any . each-any))))
(if #{tmp 3227}#
(@apply
(lambda (#{args 3231}# #{e1 3232}# #{e2 3233}#)
(call-with-values
(lambda ()
(#{chi-lambda-case 456}#
#{e 3216}#
#{r 3217}#
#{w 3218}#
#{s 3219}#
#{mod 3220}#
#{lambda*-formals 454}#
(list (cons #{args 3231}#
(cons #{e1 3232}# #{e2 3233}#)))))
(lambda (#{meta 3235}# #{lcase 3236}#)
(#{build-case-lambda 286}#
#{s 3219}#
#{meta 3235}#
#{lcase 3236}#))))
#{tmp 3227}#)
(let ((#{_ 3240}# #{tmp 3226}#))
(syntax-violation
'lambda
"bad lambda*"
#{e 3216}#)))))))
(#{global-extend 340}#
'core
'case-lambda
(lambda (#{e 3241}#
#{r 3242}#
#{w 3243}#
#{s 3244}#
#{mod 3245}#)
(let ((#{tmp 3251}# #{e 3241}#))
(let ((#{tmp 3252}#
($sc-dispatch
#{tmp 3251}#
'(_ (any any . each-any)
.
#(each (any any . each-any))))))
(if #{tmp 3252}#
(@apply
(lambda (#{args 3259}#
#{e1 3260}#
#{e2 3261}#
#{args* 3262}#
#{e1* 3263}#
#{e2* 3264}#)
(call-with-values
(lambda ()
(#{chi-lambda-case 456}#
#{e 3241}#
#{r 3242}#
#{w 3243}#
#{s 3244}#
#{mod 3245}#
#{lambda-formals 450}#
(cons (cons #{args 3259}#
(cons #{e1 3260}# #{e2 3261}#))
(map (lambda (#{tmp 3268}#
#{tmp 3267}#
#{tmp 3266}#)
(cons #{tmp 3266}#
(cons #{tmp 3267}# #{tmp 3268}#)))
#{e2* 3264}#
#{e1* 3263}#
#{args* 3262}#))))
(lambda (#{meta 3270}# #{lcase 3271}#)
(#{build-case-lambda 286}#
#{s 3244}#
#{meta 3270}#
#{lcase 3271}#))))
#{tmp 3252}#)
(let ((#{_ 3275}# #{tmp 3251}#))
(syntax-violation
'case-lambda
"bad case-lambda"
#{e 3241}#)))))))
(#{global-extend 340}#
'core
'case-lambda*
(lambda (#{e 3276}#
#{r 3277}#
#{w 3278}#
#{s 3279}#
#{mod 3280}#)
(let ((#{tmp 3286}# #{e 3276}#))
(let ((#{tmp 3287}#
($sc-dispatch
#{tmp 3286}#
'(_ (any any . each-any)
.
#(each (any any . each-any))))))
(if #{tmp 3287}#
(@apply
(lambda (#{args 3294}#
#{e1 3295}#
#{e2 3296}#
#{args* 3297}#
#{e1* 3298}#
#{e2* 3299}#)
(call-with-values
(lambda ()
(#{chi-lambda-case 456}#
#{e 3276}#
#{r 3277}#
#{w 3278}#
#{s 3279}#
#{mod 3280}#
#{lambda*-formals 454}#
(cons (cons #{args 3294}#
(cons #{e1 3295}# #{e2 3296}#))
(map (lambda (#{tmp 3303}#
#{tmp 3302}#
#{tmp 3301}#)
(cons #{tmp 3301}#
(cons #{tmp 3302}# #{tmp 3303}#)))
#{e2* 3299}#
#{e1* 3298}#
#{args* 3297}#))))
(lambda (#{meta 3305}# #{lcase 3306}#)
(#{build-case-lambda 286}#
#{s 3279}#
#{meta 3305}#
#{lcase 3306}#))))
#{tmp 3287}#)
(let ((#{_ 3310}# #{tmp 3286}#))
(syntax-violation
'case-lambda
"bad case-lambda*"
#{e 3276}#)))))))
(#{global-extend 340}#
'core
'let
(letrec*
((#{chi-let 3312}#
(lambda (#{e 3313}#
#{r 3314}#
#{w 3315}#
#{s 3316}#
#{mod 3317}#
#{constructor 3318}#
#{ids 3319}#
#{vals 3320}#
#{exps 3321}#)
(if (not (#{valid-bound-ids? 412}# #{ids 3319}#))
(syntax-violation
'let
"duplicate bound variable"
#{e 3313}#)
(begin
(let ((#{labels 3333}#
(#{gen-labels 364}# #{ids 3319}#))
(#{new-vars 3334}#
(map #{gen-var 460}# #{ids 3319}#)))
(begin
(let ((#{nw 3337}#
(#{make-binding-wrap 396}#
#{ids 3319}#
#{labels 3333}#
#{w 3315}#))
(#{nr 3338}#
(#{extend-var-env 334}#
#{labels 3333}#
#{new-vars 3334}#
#{r 3314}#)))
(#{constructor 3318}#
#{s 3316}#
(map syntax->datum #{ids 3319}#)
#{new-vars 3334}#
(map (lambda (#{x 3339}#)
(#{chi 432}#
#{x 3339}#
#{r 3314}#
#{w 3315}#
#{mod 3317}#))
#{vals 3320}#)
(#{chi-body 440}#
#{exps 3321}#
(#{source-wrap 420}#
#{e 3313}#
#{nw 3337}#
#{s 3316}#
#{mod 3317}#)
#{nr 3338}#
#{nw 3337}#
#{mod 3317}#))))))))))
(begin
(lambda (#{e 3341}#
#{r 3342}#
#{w 3343}#
#{s 3344}#
#{mod 3345}#)
(let ((#{tmp 3351}# #{e 3341}#))
(let ((#{tmp 3352}#
($sc-dispatch
#{tmp 3351}#
'(_ #(each (any any)) any . each-any))))
(if (if #{tmp 3352}#
(@apply
(lambda (#{id 3357}#
#{val 3358}#
#{e1 3359}#
#{e2 3360}#)
(and-map #{id? 344}# #{id 3357}#))
#{tmp 3352}#)
#f)
(@apply
(lambda (#{id 3366}#
#{val 3367}#
#{e1 3368}#
#{e2 3369}#)
(#{chi-let 3312}#
#{e 3341}#
#{r 3342}#
#{w 3343}#
#{s 3344}#
#{mod 3345}#
#{build-let 296}#
#{id 3366}#
#{val 3367}#
(cons #{e1 3368}# #{e2 3369}#)))
#{tmp 3352}#)
(let ((#{tmp 3373}#
($sc-dispatch
#{tmp 3351}#
'(_ any #(each (any any)) any . each-any))))
(if (if #{tmp 3373}#
(@apply
(lambda (#{f 3379}#
#{id 3380}#
#{val 3381}#
#{e1 3382}#
#{e2 3383}#)
(if (#{id? 344}# #{f 3379}#)
(and-map #{id? 344}# #{id 3380}#)
#f))
#{tmp 3373}#)
#f)
(@apply
(lambda (#{f 3392}#
#{id 3393}#
#{val 3394}#
#{e1 3395}#
#{e2 3396}#)
(#{chi-let 3312}#
#{e 3341}#
#{r 3342}#
#{w 3343}#
#{s 3344}#
#{mod 3345}#
#{build-named-let 298}#
(cons #{f 3392}# #{id 3393}#)
#{val 3394}#
(cons #{e1 3395}# #{e2 3396}#)))
#{tmp 3373}#)
(let ((#{_ 3401}# #{tmp 3351}#))
(syntax-violation
'let
"bad let"
(#{source-wrap 420}#
#{e 3341}#
#{w 3343}#
#{s 3344}#
#{mod 3345}#))))))))))))
(#{global-extend 340}#
'core
'letrec
(lambda (#{e 3402}#
#{r 3403}#
#{w 3404}#
#{s 3405}#
#{mod 3406}#)
(let ((#{tmp 3412}# #{e 3402}#))
(let ((#{tmp 3413}#
($sc-dispatch
#{tmp 3412}#
'(_ #(each (any any)) any . each-any))))
(if (if #{tmp 3413}#
(@apply
(lambda (#{id 3418}#
#{val 3419}#
#{e1 3420}#
#{e2 3421}#)
(and-map #{id? 344}# #{id 3418}#))
#{tmp 3413}#)
#f)
(@apply
(lambda (#{id 3427}#
#{val 3428}#
#{e1 3429}#
#{e2 3430}#)
(begin
(let ((#{ids 3432}# #{id 3427}#))
(if (not (#{valid-bound-ids? 412}# #{ids 3432}#))
(syntax-violation
'letrec
"duplicate bound variable"
#{e 3402}#)
(begin
(let ((#{labels 3436}#
(#{gen-labels 364}# #{ids 3432}#))
(#{new-vars 3437}#
(map #{gen-var 460}# #{ids 3432}#)))
(begin
(let ((#{w 3440}#
(#{make-binding-wrap 396}#
#{ids 3432}#
#{labels 3436}#
#{w 3404}#))
(#{r 3441}#
(#{extend-var-env 334}#
#{labels 3436}#
#{new-vars 3437}#
#{r 3403}#)))
(#{build-letrec 300}#
#{s 3405}#
#f
(map syntax->datum #{ids 3432}#)
#{new-vars 3437}#
(map (lambda (#{x 3442}#)
(#{chi 432}#
#{x 3442}#
#{r 3441}#
#{w 3440}#
#{mod 3406}#))
#{val 3428}#)
(#{chi-body 440}#
(cons #{e1 3429}# #{e2 3430}#)
(#{source-wrap 420}#
#{e 3402}#
#{w 3440}#
#{s 3405}#
#{mod 3406}#)
#{r 3441}#
#{w 3440}#
#{mod 3406}#))))))))))
#{tmp 3413}#)
(let ((#{_ 3447}# #{tmp 3412}#))
(syntax-violation
'letrec
"bad letrec"
(#{source-wrap 420}#
#{e 3402}#
#{w 3404}#
#{s 3405}#
#{mod 3406}#))))))))
(#{global-extend 340}#
'core
'letrec*
(lambda (#{e 3448}#
#{r 3449}#
#{w 3450}#
#{s 3451}#
#{mod 3452}#)
(let ((#{tmp 3458}# #{e 3448}#))
(let ((#{tmp 3459}#
($sc-dispatch
#{tmp 3458}#
'(_ #(each (any any)) any . each-any))))
(if (if #{tmp 3459}#
(@apply
(lambda (#{id 3464}#
#{val 3465}#
#{e1 3466}#
#{e2 3467}#)
(and-map #{id? 344}# #{id 3464}#))
#{tmp 3459}#)
#f)
(@apply
(lambda (#{id 3473}#
#{val 3474}#
#{e1 3475}#
#{e2 3476}#)
(begin
(let ((#{ids 3478}# #{id 3473}#))
(if (not (#{valid-bound-ids? 412}# #{ids 3478}#))
(syntax-violation
'letrec*
"duplicate bound variable"
#{e 3448}#)
(begin
(let ((#{labels 3482}#
(#{gen-labels 364}# #{ids 3478}#))
(#{new-vars 3483}#
(map #{gen-var 460}# #{ids 3478}#)))
(begin
(let ((#{w 3486}#
(#{make-binding-wrap 396}#
#{ids 3478}#
#{labels 3482}#
#{w 3450}#))
(#{r 3487}#
(#{extend-var-env 334}#
#{labels 3482}#
#{new-vars 3483}#
#{r 3449}#)))
(#{build-letrec 300}#
#{s 3451}#
#t
(map syntax->datum #{ids 3478}#)
#{new-vars 3483}#
(map (lambda (#{x 3488}#)
(#{chi 432}#
#{x 3488}#
#{r 3487}#
#{w 3486}#
#{mod 3452}#))
#{val 3474}#)
(#{chi-body 440}#
(cons #{e1 3475}# #{e2 3476}#)
(#{source-wrap 420}#
#{e 3448}#
#{w 3486}#
#{s 3451}#
#{mod 3452}#)
#{r 3487}#
#{w 3486}#
#{mod 3452}#))))))))))
#{tmp 3459}#)
(let ((#{_ 3493}# #{tmp 3458}#))
(syntax-violation
'letrec*
"bad letrec*"
(#{source-wrap 420}#
#{e 3448}#
#{w 3450}#
#{s 3451}#
#{mod 3452}#))))))))
(#{global-extend 340}#
'core
'set!
(lambda (#{e 3494}#
#{r 3495}#
#{w 3496}#
#{s 3497}#
#{mod 3498}#)
(let ((#{tmp 3504}# #{e 3494}#))
(let ((#{tmp 3505}#
($sc-dispatch #{tmp 3504}# '(_ any any))))
(if (if #{tmp 3505}#
(@apply
(lambda (#{id 3508}# #{val 3509}#)
(#{id? 344}# #{id 3508}#))
#{tmp 3505}#)
#f)
(@apply
(lambda (#{id 3512}# #{val 3513}#)
(begin
(let ((#{n 3516}#
(#{id-var-name 406}# #{id 3512}# #{w 3496}#))
(#{id-mod 3517}#
(if (#{syntax-object? 307}# #{id 3512}#)
(#{syntax-object-module 313}# #{id 3512}#)
#{mod 3498}#)))
(begin
(let ((#{b 3519}#
(#{lookup 338}#
#{n 3516}#
#{r 3495}#
#{id-mod 3517}#)))
(begin
(let ((#{atom-key 3522}# (car #{b 3519}#)))
(if (eqv? #{atom-key 3522}# 'lexical)
(#{build-lexical-assignment 274}#
#{s 3497}#
(syntax->datum #{id 3512}#)
(cdr #{b 3519}#)
(#{chi 432}#
#{val 3513}#
#{r 3495}#
#{w 3496}#
#{mod 3498}#))
(if (eqv? #{atom-key 3522}# 'global)
(#{build-global-assignment 280}#
#{s 3497}#
#{n 3516}#
(#{chi 432}#
#{val 3513}#
#{r 3495}#
#{w 3496}#
#{mod 3498}#)
#{id-mod 3517}#)
(if (eqv? #{atom-key 3522}# 'macro)
(begin
(let ((#{p 3529}# (cdr #{b 3519}#)))
(if (procedure-property
#{p 3529}#
'variable-transformer)
(#{chi 432}#
(#{chi-macro 438}#
#{p 3529}#
#{e 3494}#
#{r 3495}#
#{w 3496}#
#{s 3497}#
#f
#{mod 3498}#)
#{r 3495}#
'(())
#{mod 3498}#)
(syntax-violation
'set!
"not a variable transformer"
(#{wrap 418}#
#{e 3494}#
#{w 3496}#
#{mod 3498}#)
(#{wrap 418}#
#{id 3512}#
#{w 3496}#
#{id-mod 3517}#)))))
(if (eqv? #{atom-key 3522}#
'displaced-lexical)
(syntax-violation
'set!
"identifier out of context"
(#{wrap 418}#
#{id 3512}#
#{w 3496}#
#{mod 3498}#))
(syntax-violation
'set!
"bad set!"
(#{source-wrap 420}#
#{e 3494}#
#{w 3496}#
#{s 3497}#
#{mod 3498}#)))))))))))))
#{tmp 3505}#)
(let ((#{tmp 3534}#
($sc-dispatch
#{tmp 3504}#
'(_ (any . each-any) any))))
(if #{tmp 3534}#
(@apply
(lambda (#{head 3538}# #{tail 3539}# #{val 3540}#)
(call-with-values
(lambda ()
(#{syntax-type 430}#
#{head 3538}#
#{r 3495}#
'(())
#f
#f
#{mod 3498}#
#t))
(lambda (#{type 3543}#
#{value 3544}#
#{ee 3545}#
#{ww 3546}#
#{ss 3547}#
#{modmod 3548}#)
(if (eqv? #{type 3543}# 'module-ref)
(begin
(let ((#{val 3557}#
(#{chi 432}#
#{val 3540}#
#{r 3495}#
#{w 3496}#
#{mod 3498}#)))
(call-with-values
(lambda ()
(#{value 3544}#
(cons #{head 3538}# #{tail 3539}#)
#{r 3495}#
#{w 3496}#))
(lambda (#{e 3559}#
#{r 3560}#
#{w 3561}#
#{s* 3562}#
#{mod 3563}#)
(let ((#{tmp 3569}# #{e 3559}#))
(let ((#{tmp 3570}#
(list #{tmp 3569}#)))
(if (if #{tmp 3570}#
(@apply
(lambda (#{e 3572}#)
(#{id? 344}# #{e 3572}#))
#{tmp 3570}#)
#f)
(@apply
(lambda (#{e 3574}#)
(#{build-global-assignment 280}#
#{s 3497}#
(syntax->datum #{e 3574}#)
#{val 3557}#
#{mod 3563}#))
#{tmp 3570}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 3569}#))))))))
(#{build-application 266}#
#{s 3497}#
(#{chi 432}#
(list '#(syntax-object
setter
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(type value ee ww ss modmod)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i3549"
"i3550"
"i3551"
"i3552"
"i3553"
"i3554"))
#(ribcage
#(head tail val)
#((top) (top) (top))
#("i3535" "i3536" "i3537"))
#(ribcage () () ())
#(ribcage
#(e r w s mod)
#((top) (top) (top) (top) (top))
#("i3499"
"i3500"
"i3501"
"i3502"
"i3503"))
#(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))
("i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i417"
"i415"
"i413"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i393"
"i392"
"i390"
"i387"
"i386"
"i385"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i363"
"i361"
"i360"
"i358"
"i356"
"i354"
"i352"
"i351"
"i350"
"i349"
"i347"
"i346"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i330"
"i329"
"i327"
"i325"
"i324"
"i321"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i273"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i254"
"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 3538}#)
#{r 3495}#
#{w 3496}#
#{mod 3498}#)
(map (lambda (#{e 3576}#)
(#{chi 432}#
#{e 3576}#
#{r 3495}#
#{w 3496}#
#{mod 3498}#))
(append
#{tail 3539}#
(list #{val 3540}#))))))))
#{tmp 3534}#)
(let ((#{_ 3580}# #{tmp 3504}#))
(syntax-violation
'set!
"bad set!"
(#{source-wrap 420}#
#{e 3494}#
#{w 3496}#
#{s 3497}#
#{mod 3498}#))))))))))
(#{global-extend 340}#
'module-ref
'@
(lambda (#{e 3581}# #{r 3582}# #{w 3583}#)
(let ((#{tmp 3587}# #{e 3581}#))
(let ((#{tmp 3588}#
($sc-dispatch #{tmp 3587}# '(_ each-any any))))
(if (if #{tmp 3588}#
(@apply
(lambda (#{mod 3591}# #{id 3592}#)
(if (and-map #{id? 344}# #{mod 3591}#)
(#{id? 344}# #{id 3592}#)
#f))
#{tmp 3588}#)
#f)
(@apply
(lambda (#{mod 3598}# #{id 3599}#)
(values
(syntax->datum #{id 3599}#)
#{r 3582}#
#{w 3583}#
#f
(syntax->datum
(cons '#(syntax-object
public
((top)
#(ribcage
#(mod id)
#((top) (top))
#("i3596" "i3597"))
#(ribcage () () ())
#(ribcage
#(e r w)
#((top) (top) (top))
#("i3584" "i3585" "i3586"))
#(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))
("i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i417"
"i415"
"i413"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i393"
"i392"
"i390"
"i387"
"i386"
"i385"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i363"
"i361"
"i360"
"i358"
"i356"
"i354"
"i352"
"i351"
"i350"
"i349"
"i347"
"i346"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i330"
"i329"
"i327"
"i325"
"i324"
"i321"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i273"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i254"
"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 3598}#))))
#{tmp 3588}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 3587}#))))))
(#{global-extend 340}#
'module-ref
'@@
(lambda (#{e 3601}# #{r 3602}# #{w 3603}#)
(letrec*
((#{remodulate 3608}#
(lambda (#{x 3609}# #{mod 3610}#)
(if (pair? #{x 3609}#)
(cons (#{remodulate 3608}#
(car #{x 3609}#)
#{mod 3610}#)
(#{remodulate 3608}#
(cdr #{x 3609}#)
#{mod 3610}#))
(if (#{syntax-object? 307}# #{x 3609}#)
(#{make-syntax-object 305}#
(#{remodulate 3608}#
(#{syntax-object-expression 309}# #{x 3609}#)
#{mod 3610}#)
(#{syntax-object-wrap 311}# #{x 3609}#)
#{mod 3610}#)
(if (vector? #{x 3609}#)
(begin
(let ((#{n 3621}# (vector-length #{x 3609}#)))
(begin
(let ((#{v 3623}# (make-vector #{n 3621}#)))
(letrec*
((#{loop 3626}#
(lambda (#{i 3627}#)
(if (= #{i 3627}# #{n 3621}#)
(begin (if #f #f) #{v 3623}#)
(begin
(vector-set!
#{v 3623}#
#{i 3627}#
(#{remodulate 3608}#
(vector-ref
#{x 3609}#
#{i 3627}#)
#{mod 3610}#))
(#{loop 3626}#
(#{1+}# #{i 3627}#)))))))
(begin (#{loop 3626}# 0)))))))
#{x 3609}#))))))
(begin
(let ((#{tmp 3633}# #{e 3601}#))
(let ((#{tmp 3634}#
($sc-dispatch #{tmp 3633}# '(_ each-any any))))
(if (if #{tmp 3634}#
(@apply
(lambda (#{mod 3637}# #{exp 3638}#)
(and-map #{id? 344}# #{mod 3637}#))
#{tmp 3634}#)
#f)
(@apply
(lambda (#{mod 3642}# #{exp 3643}#)
(begin
(let ((#{mod 3645}#
(syntax->datum
(cons '#(syntax-object
private
((top)
#(ribcage
#(mod exp)
#((top) (top))
#("i3640" "i3641"))
#(ribcage
(remodulate)
((top))
("i3607"))
#(ribcage
#(e r w)
#((top) (top) (top))
#("i3604" "i3605" "i3606"))
#(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))
("i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i417"
"i415"
"i413"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i393"
"i392"
"i390"
"i387"
"i386"
"i385"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i363"
"i361"
"i360"
"i358"
"i356"
"i354"
"i352"
"i351"
"i350"
"i349"
"i347"
"i346"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i330"
"i329"
"i327"
"i325"
"i324"
"i321"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i273"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i254"
"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 3642}#))))
(values
(#{remodulate 3608}# #{exp 3643}# #{mod 3645}#)
#{r 3602}#
#{w 3603}#
(#{source-annotation 322}# #{exp 3643}#)
#{mod 3645}#))))
#{tmp 3634}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 3633}#))))))))
(#{global-extend 340}#
'core
'if
(lambda (#{e 3647}#
#{r 3648}#
#{w 3649}#
#{s 3650}#
#{mod 3651}#)
(let ((#{tmp 3657}# #{e 3647}#))
(let ((#{tmp 3658}#
($sc-dispatch #{tmp 3657}# '(_ any any))))
(if #{tmp 3658}#
(@apply
(lambda (#{test 3661}# #{then 3662}#)
(#{build-conditional 268}#
#{s 3650}#
(#{chi 432}#
#{test 3661}#
#{r 3648}#
#{w 3649}#
#{mod 3651}#)
(#{chi 432}#
#{then 3662}#
#{r 3648}#
#{w 3649}#
#{mod 3651}#)
(#{build-void 264}# #f)))
#{tmp 3658}#)
(let ((#{tmp 3664}#
($sc-dispatch #{tmp 3657}# '(_ any any any))))
(if #{tmp 3664}#
(@apply
(lambda (#{test 3668}# #{then 3669}# #{else 3670}#)
(#{build-conditional 268}#
#{s 3650}#
(#{chi 432}#
#{test 3668}#
#{r 3648}#
#{w 3649}#
#{mod 3651}#)
(#{chi 432}#
#{then 3669}#
#{r 3648}#
#{w 3649}#
#{mod 3651}#)
(#{chi 432}#
#{else 3670}#
#{r 3648}#
#{w 3649}#
#{mod 3651}#)))
#{tmp 3664}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 3657}#))))))))
(#{global-extend 340}#
'core
'with-fluids
(lambda (#{e 3671}#
#{r 3672}#
#{w 3673}#
#{s 3674}#
#{mod 3675}#)
(let ((#{tmp 3681}# #{e 3671}#))
(let ((#{tmp 3682}#
($sc-dispatch
#{tmp 3681}#
'(_ #(each (any any)) any . each-any))))
(if #{tmp 3682}#
(@apply
(lambda (#{fluid 3687}#
#{val 3688}#
#{b 3689}#
#{b* 3690}#)
(#{build-dynlet 270}#
#{s 3674}#
(map (lambda (#{x 3691}#)
(#{chi 432}#
#{x 3691}#
#{r 3672}#
#{w 3673}#
#{mod 3675}#))
#{fluid 3687}#)
(map (lambda (#{x 3694}#)
(#{chi 432}#
#{x 3694}#
#{r 3672}#
#{w 3673}#
#{mod 3675}#))
#{val 3688}#)
(#{chi-body 440}#
(cons #{b 3689}# #{b* 3690}#)
(#{source-wrap 420}#
#{e 3671}#
#{w 3673}#
#{s 3674}#
#{mod 3675}#)
#{r 3672}#
#{w 3673}#
#{mod 3675}#)))
#{tmp 3682}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 3681}#))))))
(#{global-extend 340}# 'begin 'begin '())
(#{global-extend 340}# 'define 'define '())
(#{global-extend 340}#
'define-syntax
'define-syntax
'())
(#{global-extend 340}# 'eval-when 'eval-when '())
(#{global-extend 340}#
'core
'syntax-case
(letrec*
((#{convert-pattern 3699}#
(lambda (#{pattern 3706}# #{keys 3707}#)
(letrec*
((#{cvt* 3711}#
(lambda (#{p* 3716}# #{n 3717}# #{ids 3718}#)
(if (not (pair? #{p* 3716}#))
(#{cvt 3715}#
#{p* 3716}#
#{n 3717}#
#{ids 3718}#)
(call-with-values
(lambda ()
(#{cvt* 3711}#
(cdr #{p* 3716}#)
#{n 3717}#
#{ids 3718}#))
(lambda (#{y 3722}# #{ids 3723}#)
(call-with-values
(lambda ()
(#{cvt 3715}#
(car #{p* 3716}#)
#{n 3717}#
#{ids 3723}#))
(lambda (#{x 3726}# #{ids 3727}#)
(values
(cons #{x 3726}# #{y 3722}#)
#{ids 3727}#))))))))
(#{v-reverse 3713}#
(lambda (#{x 3730}#)
(letrec*
((#{loop 3735}#
(lambda (#{r 3736}# #{x 3737}#)
(if (not (pair? #{x 3737}#))
(values #{r 3736}# #{x 3737}#)
(#{loop 3735}#
(cons (car #{x 3737}#) #{r 3736}#)
(cdr #{x 3737}#))))))
(begin (#{loop 3735}# '() #{x 3730}#)))))
(#{cvt 3715}#
(lambda (#{p 3738}# #{n 3739}# #{ids 3740}#)
(if (#{id? 344}# #{p 3738}#)
(if (#{bound-id-member? 416}#
#{p 3738}#
#{keys 3707}#)
(values
(vector 'free-id #{p 3738}#)
#{ids 3740}#)
(if (#{free-id=? 408}#
#{p 3738}#
'#(syntax-object
_
((top)
#(ribcage () () ())
#(ribcage
#(p n ids)
#((top) (top) (top))
#("i3741" "i3742" "i3743"))
#(ribcage
(cvt v-reverse cvt*)
((top) (top) (top))
("i3714" "i3712" "i3710"))
#(ribcage
#(pattern keys)
#((top) (top))
#("i3708" "i3709"))
#(ribcage
(gen-syntax-case
gen-clause
build-dispatch-call
convert-pattern)
((top) (top) (top) (top))
("i3704" "i3702" "i3700" "i3698"))
#(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))
("i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i417"
"i415"
"i413"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i393"
"i392"
"i390"
"i387"
"i386"
"i385"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i363"
"i361"
"i360"
"i358"
"i356"
"i354"
"i352"
"i351"
"i350"
"i349"
"i347"
"i346"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i330"
"i329"
"i327"
"i325"
"i324"
"i321"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i273"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i254"
"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 3740}#)
(values
'any
(cons (cons #{p 3738}# #{n 3739}#)
#{ids 3740}#))))
(let ((#{tmp 3749}# #{p 3738}#))
(let ((#{tmp 3750}#
($sc-dispatch #{tmp 3749}# '(any any))))
(if (if #{tmp 3750}#
(@apply
(lambda (#{x 3753}# #{dots 3754}#)
(#{ellipsis? 448}# #{dots 3754}#))
#{tmp 3750}#)
#f)
(@apply
(lambda (#{x 3757}# #{dots 3758}#)
(call-with-values
(lambda ()
(#{cvt 3715}#
#{x 3757}#
(#{1+}# #{n 3739}#)
#{ids 3740}#))
(lambda (#{p 3760}# #{ids 3761}#)
(values
(if (eq? #{p 3760}# 'any)
'each-any
(vector 'each #{p 3760}#))
#{ids 3761}#))))
#{tmp 3750}#)
(let ((#{tmp 3764}#
($sc-dispatch
#{tmp 3749}#
'(any any . any))))
(if (if #{tmp 3764}#
(@apply
(lambda (#{x 3768}#
#{dots 3769}#
#{ys 3770}#)
(#{ellipsis? 448}# #{dots 3769}#))
#{tmp 3764}#)
#f)
(@apply
(lambda (#{x 3774}#
#{dots 3775}#
#{ys 3776}#)
(call-with-values
(lambda ()
(#{cvt* 3711}#
#{ys 3776}#
#{n 3739}#
#{ids 3740}#))
(lambda (#{ys 3777}# #{ids 3778}#)
(call-with-values
(lambda ()
(#{cvt 3715}#
#{x 3774}#
(#{1+}# #{n 3739}#)
#{ids 3778}#))
(lambda (#{x 3781}# #{ids 3782}#)
(call-with-values
(lambda ()
(#{v-reverse 3713}#
#{ys 3777}#))
(lambda (#{ys 3785}#
#{e 3786}#)
(values
(vector
'each+
#{x 3781}#
#{ys 3785}#
#{e 3786}#)
#{ids 3782}#))))))))
#{tmp 3764}#)
(let ((#{tmp 3790}#
($sc-dispatch
#{tmp 3749}#
'(any . any))))
(if #{tmp 3790}#
(@apply
(lambda (#{x 3793}# #{y 3794}#)
(call-with-values
(lambda ()
(#{cvt 3715}#
#{y 3794}#
#{n 3739}#
#{ids 3740}#))
(lambda (#{y 3795}# #{ids 3796}#)
(call-with-values
(lambda ()
(#{cvt 3715}#
#{x 3793}#
#{n 3739}#
#{ids 3796}#))
(lambda (#{x 3799}#
#{ids 3800}#)
(values
(cons #{x 3799}#
#{y 3795}#)
#{ids 3800}#))))))
#{tmp 3790}#)
(let ((#{tmp 3803}#
($sc-dispatch #{tmp 3749}# '())))
(if #{tmp 3803}#
(@apply
(lambda ()
(values '() #{ids 3740}#))
#{tmp 3803}#)
(let ((#{tmp 3804}#
($sc-dispatch
#{tmp 3749}#
'#(vector each-any))))
(if #{tmp 3804}#
(@apply
(lambda (#{x 3806}#)
(call-with-values
(lambda ()
(#{cvt 3715}#
#{x 3806}#
#{n 3739}#
#{ids 3740}#))
(lambda (#{p 3808}#
#{ids 3809}#)
(values
(vector
'vector
#{p 3808}#)
#{ids 3809}#))))
#{tmp 3804}#)
(let ((#{x 3813}# #{tmp 3749}#))
(values
(vector
'atom
(#{strip 458}#
#{p 3738}#
'(())))
#{ids 3740}#)))))))))))))))))
(begin (#{cvt 3715}# #{pattern 3706}# 0 '())))))
(#{build-dispatch-call 3701}#
(lambda (#{pvars 3815}#
#{exp 3816}#
#{y 3817}#
#{r 3818}#
#{mod 3819}#)
(begin
(map cdr #{pvars 3815}#)
(let ((#{ids 3827}# (map car #{pvars 3815}#)))
(begin
(let ((#{labels 3831}#
(#{gen-labels 364}# #{ids 3827}#))
(#{new-vars 3832}#
(map #{gen-var 460}# #{ids 3827}#)))
(#{build-application 266}#
#f
(#{build-primref 290}# #f 'apply)
(list (#{build-simple-lambda 284}#
#f
(map syntax->datum #{ids 3827}#)
#f
#{new-vars 3832}#
'()
(#{chi 432}#
#{exp 3816}#
(#{extend-env 332}#
#{labels 3831}#
(map (lambda (#{var 3836}# #{level 3837}#)
(cons 'syntax
(cons #{var 3836}#
#{level 3837}#)))
#{new-vars 3832}#
(map cdr #{pvars 3815}#))
#{r 3818}#)
(#{make-binding-wrap 396}#
#{ids 3827}#
#{labels 3831}#
'(()))
#{mod 3819}#))
#{y 3817}#))))))))
(#{gen-clause 3703}#
(lambda (#{x 3843}#
#{keys 3844}#
#{clauses 3845}#
#{r 3846}#
#{pat 3847}#
#{fender 3848}#
#{exp 3849}#
#{mod 3850}#)
(call-with-values
(lambda ()
(#{convert-pattern 3699}#
#{pat 3847}#
#{keys 3844}#))
(lambda (#{p 3859}# #{pvars 3860}#)
(if (not (#{distinct-bound-ids? 414}#
(map car #{pvars 3860}#)))
(syntax-violation
'syntax-case
"duplicate pattern variable"
#{pat 3847}#)
(if (not (and-map
(lambda (#{x 3867}#)
(not (#{ellipsis? 448}# (car #{x 3867}#))))
#{pvars 3860}#))
(syntax-violation
'syntax-case
"misplaced ellipsis"
#{pat 3847}#)
(begin
(let ((#{y 3871}# (#{gen-var 460}# 'tmp)))
(#{build-application 266}#
#f
(#{build-simple-lambda 284}#
#f
(list 'tmp)
#f
(list #{y 3871}#)
'()
(begin
(let ((#{y 3875}#
(#{build-lexical-reference 272}#
'value
#f
'tmp
#{y 3871}#)))
(#{build-conditional 268}#
#f
(let ((#{tmp 3878}# #{fender 3848}#))
(let ((#{tmp 3879}#
($sc-dispatch
#{tmp 3878}#
'#(atom #t))))
(if #{tmp 3879}#
(@apply
(lambda () #{y 3875}#)
#{tmp 3879}#)
(let ((#{_ 3881}# #{tmp 3878}#))
(#{build-conditional 268}#
#f
#{y 3875}#
(#{build-dispatch-call 3701}#
#{pvars 3860}#
#{fender 3848}#
#{y 3875}#
#{r 3846}#
#{mod 3850}#)
(#{build-data 292}# #f #f))))))
(#{build-dispatch-call 3701}#
#{pvars 3860}#
#{exp 3849}#
#{y 3875}#
#{r 3846}#
#{mod 3850}#)
(#{gen-syntax-case 3705}#
#{x 3843}#
#{keys 3844}#
#{clauses 3845}#
#{r 3846}#
#{mod 3850}#)))))
(list (if (eq? #{p 3859}# 'any)
(#{build-application 266}#
#f
(#{build-primref 290}# #f 'list)
(list #{x 3843}#))
(#{build-application 266}#
#f
(#{build-primref 290}# #f '$sc-dispatch)
(list #{x 3843}#
(#{build-data 292}#
#f
#{p 3859}#))))))))))))))
(#{gen-syntax-case 3705}#
(lambda (#{x 3889}#
#{keys 3890}#
#{clauses 3891}#
#{r 3892}#
#{mod 3893}#)
(if (null? #{clauses 3891}#)
(#{build-application 266}#
#f
(#{build-primref 290}# #f 'syntax-violation)
(list (#{build-data 292}# #f #f)
(#{build-data 292}#
#f
"source expression failed to match any pattern")
#{x 3889}#))
(let ((#{tmp 3903}# (car #{clauses 3891}#)))
(let ((#{tmp 3904}#
($sc-dispatch #{tmp 3903}# '(any any))))
(if #{tmp 3904}#
(@apply
(lambda (#{pat 3907}# #{exp 3908}#)
(if (if (#{id? 344}# #{pat 3907}#)
(and-map
(lambda (#{x 3911}#)
(not (#{free-id=? 408}#
#{pat 3907}#
#{x 3911}#)))
(cons '#(syntax-object
...
((top)
#(ribcage
#(pat exp)
#((top) (top))
#("i3905" "i3906"))
#(ribcage () () ())
#(ribcage
#(x keys clauses r mod)
#((top) (top) (top) (top) (top))
#("i3894"
"i3895"
"i3896"
"i3897"
"i3898"))
#(ribcage
(gen-syntax-case
gen-clause
build-dispatch-call
convert-pattern)
((top) (top) (top) (top))
("i3704"
"i3702"
"i3700"
"i3698"))
#(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))
("i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i417"
"i415"
"i413"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i393"
"i392"
"i390"
"i387"
"i386"
"i385"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i363"
"i361"
"i360"
"i358"
"i356"
"i354"
"i352"
"i351"
"i350"
"i349"
"i347"
"i346"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i330"
"i329"
"i327"
"i325"
"i324"
"i321"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i273"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i254"
"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 3890}#))
#f)
(if (#{free-id=? 408}#
'#(syntax-object
pad
((top)
#(ribcage
#(pat exp)
#((top) (top))
#("i3905" "i3906"))
#(ribcage () () ())
#(ribcage
#(x keys clauses r mod)
#((top) (top) (top) (top) (top))
#("i3894"
"i3895"
"i3896"
"i3897"
"i3898"))
#(ribcage
(gen-syntax-case
gen-clause
build-dispatch-call
convert-pattern)
((top) (top) (top) (top))
("i3704" "i3702" "i3700" "i3698"))
#(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))
("i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i417"
"i415"
"i413"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i393"
"i392"
"i390"
"i387"
"i386"
"i385"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i363"
"i361"
"i360"
"i358"
"i356"
"i354"
"i352"
"i351"
"i350"
"i349"
"i347"
"i346"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i330"
"i329"
"i327"
"i325"
"i324"
"i321"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i273"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i254"
"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))
#("i3905" "i3906"))
#(ribcage () () ())
#(ribcage
#(x keys clauses r mod)
#((top) (top) (top) (top) (top))
#("i3894"
"i3895"
"i3896"
"i3897"
"i3898"))
#(ribcage
(gen-syntax-case
gen-clause
build-dispatch-call
convert-pattern)
((top) (top) (top) (top))
("i3704" "i3702" "i3700" "i3698"))
#(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))
("i461"
"i459"
"i457"
"i455"
"i453"
"i451"
"i449"
"i447"
"i445"
"i443"
"i441"
"i439"
"i437"
"i435"
"i433"
"i431"
"i429"
"i427"
"i425"
"i423"
"i421"
"i419"
"i417"
"i415"
"i413"
"i411"
"i409"
"i407"
"i405"
"i403"
"i401"
"i399"
"i397"
"i395"
"i393"
"i392"
"i390"
"i387"
"i386"
"i385"
"i383"
"i382"
"i380"
"i378"
"i376"
"i374"
"i372"
"i370"
"i368"
"i366"
"i363"
"i361"
"i360"
"i358"
"i356"
"i354"
"i352"
"i351"
"i350"
"i349"
"i347"
"i346"
"i343"
"i341"
"i339"
"i337"
"i335"
"i333"
"i331"
"i330"
"i329"
"i327"
"i325"
"i324"
"i321"
"i320"
"i318"
"i316"
"i314"
"i312"
"i310"
"i308"
"i306"
"i304"
"i302"
"i299"
"i297"
"i295"
"i293"
"i291"
"i289"
"i287"
"i285"
"i283"
"i281"
"i279"
"i277"
"i275"
"i273"
"i271"
"i269"
"i267"
"i265"
"i263"
"i261"
"i259"
"i257"
"i255"
"i254"
"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 432}#
#{exp 3908}#
#{r 3892}#
'(())
#{mod 3893}#)
(begin
(let ((#{labels 3916}#
(list (#{gen-label 362}#)))
(#{var 3917}#
(#{gen-var 460}# #{pat 3907}#)))
(#{build-application 266}#
#f
(#{build-simple-lambda 284}#
#f
(list (syntax->datum #{pat 3907}#))
#f
(list #{var 3917}#)
'()
(#{chi 432}#
#{exp 3908}#
(#{extend-env 332}#
#{labels 3916}#
(list (cons 'syntax
(cons #{var 3917}# 0)))
#{r 3892}#)
(#{make-binding-wrap 396}#
(list #{pat 3907}#)
#{labels 3916}#
'(()))
#{mod 3893}#))
(list #{x 3889}#)))))
(#{gen-clause 3703}#
#{x 3889}#
#{keys 3890}#
(cdr #{clauses 3891}#)
#{r 3892}#
#{pat 3907}#
#t
#{exp 3908}#
#{mod 3893}#)))
#{tmp 3904}#)
(let ((#{tmp 3923}#
($sc-dispatch #{tmp 3903}# '(any any any))))
(if #{tmp 3923}#
(@apply
(lambda (#{pat 3927}#
#{fender 3928}#
#{exp 3929}#)
(#{gen-clause 3703}#
#{x 3889}#
#{keys 3890}#
(cdr #{clauses 3891}#)
#{r 3892}#
#{pat 3927}#
#{fender 3928}#
#{exp 3929}#
#{mod 3893}#))
#{tmp 3923}#)
(let ((#{_ 3931}# #{tmp 3903}#))
(syntax-violation
'syntax-case
"invalid clause"
(car #{clauses 3891}#))))))))))))
(begin
(lambda (#{e 3932}#
#{r 3933}#
#{w 3934}#
#{s 3935}#
#{mod 3936}#)
(begin
(let ((#{e 3943}#
(#{source-wrap 420}#
#{e 3932}#
#{w 3934}#
#{s 3935}#
#{mod 3936}#)))
(let ((#{tmp 3944}# #{e 3943}#))
(let ((#{tmp 3945}#
($sc-dispatch
#{tmp 3944}#
'(_ any each-any . each-any))))
(if #{tmp 3945}#
(@apply
(lambda (#{val 3949}# #{key 3950}# #{m 3951}#)
(if (and-map
(lambda (#{x 3952}#)
(if (#{id? 344}# #{x 3952}#)
(not (#{ellipsis? 448}# #{x 3952}#))
#f))
#{key 3950}#)
(begin
(let ((#{x 3958}# (#{gen-var 460}# 'tmp)))
(#{build-application 266}#
#{s 3935}#
(#{build-simple-lambda 284}#
#f
(list 'tmp)
#f
(list #{x 3958}#)
'()
(#{gen-syntax-case 3705}#
(#{build-lexical-reference 272}#
'value
#f
'tmp
#{x 3958}#)
#{key 3950}#
#{m 3951}#
#{r 3933}#
#{mod 3936}#))
(list (#{chi 432}#
#{val 3949}#
#{r 3933}#
'(())
#{mod 3936}#)))))
(syntax-violation
'syntax-case
"invalid literals list"
#{e 3943}#)))
#{tmp 3945}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 3944}#))))))))))
(set! macroexpand
(lambda*
(#{x 3964}#
#:optional
(#{m 3966}# 'e)
(#{esew 3968}# '(eval)))
(#{chi-top-sequence 424}#
(list #{x 3964}#)
'()
'((top))
#f
#{m 3966}#
#{esew 3968}#
(cons 'hygiene (module-name (current-module))))))
(set! identifier?
(lambda (#{x 3972}#)
(#{nonsymbol-id? 342}# #{x 3972}#)))
(set! datum->syntax
(lambda (#{id 3974}# #{datum 3975}#)
(#{make-syntax-object 305}#
#{datum 3975}#
(#{syntax-object-wrap 311}# #{id 3974}#)
(#{syntax-object-module 313}# #{id 3974}#))))
(set! syntax->datum
(lambda (#{x 3978}#)
(#{strip 458}# #{x 3978}# '(()))))
(set! syntax-source
(lambda (#{x 3981}#)
(#{source-annotation 322}# #{x 3981}#)))
(set! generate-temporaries
(lambda (#{ls 3983}#)
(begin
(begin
(let ((#{x 3987}# #{ls 3983}#))
(if (not (list? #{x 3987}#))
(syntax-violation
'generate-temporaries
"invalid argument"
#{x 3987}#))))
(begin
(let ((#{mod 3989}#
(cons 'hygiene (module-name (current-module)))))
(map (lambda (#{x 3990}#)
(#{wrap 418}# (gensym) '((top)) #{mod 3989}#))
#{ls 3983}#))))))
(set! free-identifier=?
(lambda (#{x 3994}# #{y 3995}#)
(begin
(begin
(let ((#{x 4000}# #{x 3994}#))
(if (not (#{nonsymbol-id? 342}# #{x 4000}#))
(syntax-violation
'free-identifier=?
"invalid argument"
#{x 4000}#))))
(begin
(let ((#{x 4003}# #{y 3995}#))
(if (not (#{nonsymbol-id? 342}# #{x 4003}#))
(syntax-violation
'free-identifier=?
"invalid argument"
#{x 4003}#))))
(#{free-id=? 408}# #{x 3994}# #{y 3995}#))))
(set! bound-identifier=?
(lambda (#{x 4004}# #{y 4005}#)
(begin
(begin
(let ((#{x 4010}# #{x 4004}#))
(if (not (#{nonsymbol-id? 342}# #{x 4010}#))
(syntax-violation
'bound-identifier=?
"invalid argument"
#{x 4010}#))))
(begin
(let ((#{x 4013}# #{y 4005}#))
(if (not (#{nonsymbol-id? 342}# #{x 4013}#))
(syntax-violation
'bound-identifier=?
"invalid argument"
#{x 4013}#))))
(#{bound-id=? 410}# #{x 4004}# #{y 4005}#))))
(set! syntax-violation
(lambda*
(#{who 4014}#
#{message 4015}#
#{form 4016}#
#:optional
(#{subform 4020}# #f))
(begin
(begin
(let ((#{x 4024}# #{who 4014}#))
(if (not (let ((#{x 4025}# #{x 4024}#))
(begin
(let ((#{t 4029}# (not #{x 4025}#)))
(if #{t 4029}#
#{t 4029}#
(begin
(let ((#{t 4032}# (string? #{x 4025}#)))
(if #{t 4032}#
#{t 4032}#
(symbol? #{x 4025}#)))))))))
(syntax-violation
'syntax-violation
"invalid argument"
#{x 4024}#))))
(begin
(let ((#{x 4036}# #{message 4015}#))
(if (not (string? #{x 4036}#))
(syntax-violation
'syntax-violation
"invalid argument"
#{x 4036}#))))
(throw 'syntax-error
#{who 4014}#
#{message 4015}#
(#{source-annotation 322}#
(begin
(let ((#{t 4039}# #{form 4016}#))
(if #{t 4039}# #{t 4039}# #{subform 4020}#))))
(#{strip 458}# #{form 4016}# '(()))
(if #{subform 4020}#
(#{strip 458}# #{subform 4020}# '(()))
#f)))))
(letrec*
((#{match-each 4046}#
(lambda (#{e 4059}# #{p 4060}# #{w 4061}# #{mod 4062}#)
(if (pair? #{e 4059}#)
(begin
(let ((#{first 4070}#
(#{match 4058}#
(car #{e 4059}#)
#{p 4060}#
#{w 4061}#
'()
#{mod 4062}#)))
(if #{first 4070}#
(begin
(let ((#{rest 4074}#
(#{match-each 4046}#
(cdr #{e 4059}#)
#{p 4060}#
#{w 4061}#
#{mod 4062}#)))
(if #{rest 4074}#
(cons #{first 4070}# #{rest 4074}#)
#f)))
#f)))
(if (null? #{e 4059}#)
'()
(if (#{syntax-object? 307}# #{e 4059}#)
(#{match-each 4046}#
(#{syntax-object-expression 309}# #{e 4059}#)
#{p 4060}#
(#{join-wraps 400}#
#{w 4061}#
(#{syntax-object-wrap 311}# #{e 4059}#))
(#{syntax-object-module 313}# #{e 4059}#))
#f)))))
(#{match-each+ 4048}#
(lambda (#{e 4082}#
#{x-pat 4083}#
#{y-pat 4084}#
#{z-pat 4085}#
#{w 4086}#
#{r 4087}#
#{mod 4088}#)
(letrec*
((#{f 4099}#
(lambda (#{e 4100}# #{w 4101}#)
(if (pair? #{e 4100}#)
(call-with-values
(lambda ()
(#{f 4099}# (cdr #{e 4100}#) #{w 4101}#))
(lambda (#{xr* 4104}# #{y-pat 4105}# #{r 4106}#)
(if #{r 4106}#
(if (null? #{y-pat 4105}#)
(begin
(let ((#{xr 4111}#
(#{match 4058}#
(car #{e 4100}#)
#{x-pat 4083}#
#{w 4101}#
'()
#{mod 4088}#)))
(if #{xr 4111}#
(values
(cons #{xr 4111}# #{xr* 4104}#)
#{y-pat 4105}#
#{r 4106}#)
(values #f #f #f))))
(values
'()
(cdr #{y-pat 4105}#)
(#{match 4058}#
(car #{e 4100}#)
(car #{y-pat 4105}#)
#{w 4101}#
#{r 4106}#
#{mod 4088}#)))
(values #f #f #f))))
(if (#{syntax-object? 307}# #{e 4100}#)
(#{f 4099}#
(#{syntax-object-expression 309}# #{e 4100}#)
(#{join-wraps 400}# #{w 4101}# #{e 4100}#))
(values
'()
#{y-pat 4084}#
(#{match 4058}#
#{e 4100}#
#{z-pat 4085}#
#{w 4101}#
#{r 4087}#
#{mod 4088}#)))))))
(begin (#{f 4099}# #{e 4082}# #{w 4086}#)))))
(#{match-each-any 4050}#
(lambda (#{e 4115}# #{w 4116}# #{mod 4117}#)
(if (pair? #{e 4115}#)
(begin
(let ((#{l 4124}#
(#{match-each-any 4050}#
(cdr #{e 4115}#)
#{w 4116}#
#{mod 4117}#)))
(if #{l 4124}#
(cons (#{wrap 418}#
(car #{e 4115}#)
#{w 4116}#
#{mod 4117}#)
#{l 4124}#)
#f)))
(if (null? #{e 4115}#)
'()
(if (#{syntax-object? 307}# #{e 4115}#)
(#{match-each-any 4050}#
(#{syntax-object-expression 309}# #{e 4115}#)
(#{join-wraps 400}#
#{w 4116}#
(#{syntax-object-wrap 311}# #{e 4115}#))
#{mod 4117}#)
#f)))))
(#{match-empty 4052}#
(lambda (#{p 4132}# #{r 4133}#)
(if (null? #{p 4132}#)
#{r 4133}#
(if (eq? #{p 4132}# '_)
#{r 4133}#
(if (eq? #{p 4132}# 'any)
(cons '() #{r 4133}#)
(if (pair? #{p 4132}#)
(#{match-empty 4052}#
(car #{p 4132}#)
(#{match-empty 4052}#
(cdr #{p 4132}#)
#{r 4133}#))
(if (eq? #{p 4132}# 'each-any)
(cons '() #{r 4133}#)
(begin
(let ((#{atom-key 4149}# (vector-ref #{p 4132}# 0)))
(if (eqv? #{atom-key 4149}# 'each)
(#{match-empty 4052}#
(vector-ref #{p 4132}# 1)
#{r 4133}#)
(if (eqv? #{atom-key 4149}# 'each+)
(#{match-empty 4052}#
(vector-ref #{p 4132}# 1)
(#{match-empty 4052}#
(reverse (vector-ref #{p 4132}# 2))
(#{match-empty 4052}#
(vector-ref #{p 4132}# 3)
#{r 4133}#)))
(if (if (eqv? #{atom-key 4149}# 'free-id)
#t
(eqv? #{atom-key 4149}# 'atom))
#{r 4133}#
(if (eqv? #{atom-key 4149}# 'vector)
(#{match-empty 4052}#
(vector-ref #{p 4132}# 1)
#{r 4133}#))))))))))))))
(#{combine 4054}#
(lambda (#{r* 4154}# #{r 4155}#)
(if (null? (car #{r* 4154}#))
#{r 4155}#
(cons (map car #{r* 4154}#)
(#{combine 4054}#
(map cdr #{r* 4154}#)
#{r 4155}#)))))
(#{match* 4056}#
(lambda (#{e 4158}#
#{p 4159}#
#{w 4160}#
#{r 4161}#
#{mod 4162}#)
(if (null? #{p 4159}#)
(if (null? #{e 4158}#) #{r 4161}# #f)
(if (pair? #{p 4159}#)
(if (pair? #{e 4158}#)
(#{match 4058}#
(car #{e 4158}#)
(car #{p 4159}#)
#{w 4160}#
(#{match 4058}#
(cdr #{e 4158}#)
(cdr #{p 4159}#)
#{w 4160}#
#{r 4161}#
#{mod 4162}#)
#{mod 4162}#)
#f)
(if (eq? #{p 4159}# 'each-any)
(begin
(let ((#{l 4179}#
(#{match-each-any 4050}#
#{e 4158}#
#{w 4160}#
#{mod 4162}#)))
(if #{l 4179}# (cons #{l 4179}# #{r 4161}#) #f)))
(begin
(let ((#{atom-key 4185}# (vector-ref #{p 4159}# 0)))
(if (eqv? #{atom-key 4185}# 'each)
(if (null? #{e 4158}#)
(#{match-empty 4052}#
(vector-ref #{p 4159}# 1)
#{r 4161}#)
(begin
(let ((#{l 4188}#
(#{match-each 4046}#
#{e 4158}#
(vector-ref #{p 4159}# 1)
#{w 4160}#
#{mod 4162}#)))
(if #{l 4188}#
(letrec*
((#{collect 4193}#
(lambda (#{l 4194}#)
(if (null? (car #{l 4194}#))
#{r 4161}#
(cons (map car #{l 4194}#)
(#{collect 4193}#
(map cdr #{l 4194}#)))))))
(begin (#{collect 4193}# #{l 4188}#)))
#f))))
(if (eqv? #{atom-key 4185}# 'each+)
(call-with-values
(lambda ()
(#{match-each+ 4048}#
#{e 4158}#
(vector-ref #{p 4159}# 1)
(vector-ref #{p 4159}# 2)
(vector-ref #{p 4159}# 3)
#{w 4160}#
#{r 4161}#
#{mod 4162}#))
(lambda (#{xr* 4196}# #{y-pat 4197}# #{r 4198}#)
(if #{r 4198}#
(if (null? #{y-pat 4197}#)
(if (null? #{xr* 4196}#)
(#{match-empty 4052}#
(vector-ref #{p 4159}# 1)
#{r 4198}#)
(#{combine 4054}#
#{xr* 4196}#
#{r 4198}#))
#f)
#f)))
(if (eqv? #{atom-key 4185}# 'free-id)
(if (#{id? 344}# #{e 4158}#)
(if (#{free-id=? 408}#
(#{wrap 418}#
#{e 4158}#
#{w 4160}#
#{mod 4162}#)
(vector-ref #{p 4159}# 1))
#{r 4161}#
#f)
#f)
(if (eqv? #{atom-key 4185}# 'atom)
(if (equal?
(vector-ref #{p 4159}# 1)
(#{strip 458}# #{e 4158}# #{w 4160}#))
#{r 4161}#
#f)
(if (eqv? #{atom-key 4185}# 'vector)
(if (vector? #{e 4158}#)
(#{match 4058}#
(vector->list #{e 4158}#)
(vector-ref #{p 4159}# 1)
#{w 4160}#
#{r 4161}#
#{mod 4162}#)
#f)))))))))))))
(#{match 4058}#
(lambda (#{e 4215}#
#{p 4216}#
#{w 4217}#
#{r 4218}#
#{mod 4219}#)
(if (not #{r 4218}#)
#f
(if (eq? #{p 4216}# '_)
#{r 4218}#
(if (eq? #{p 4216}# 'any)
(cons (#{wrap 418}# #{e 4215}# #{w 4217}# #{mod 4219}#)
#{r 4218}#)
(if (#{syntax-object? 307}# #{e 4215}#)
(#{match* 4056}#
(#{syntax-object-expression 309}# #{e 4215}#)
#{p 4216}#
(#{join-wraps 400}#
#{w 4217}#
(#{syntax-object-wrap 311}# #{e 4215}#))
#{r 4218}#
(#{syntax-object-module 313}# #{e 4215}#))
(#{match* 4056}#
#{e 4215}#
#{p 4216}#
#{w 4217}#
#{r 4218}#
#{mod 4219}#))))))))
(begin
(set! $sc-dispatch
(lambda (#{e 4234}# #{p 4235}#)
(if (eq? #{p 4235}# 'any)
(list #{e 4234}#)
(if (eq? #{p 4235}# '_)
'()
(if (#{syntax-object? 307}# #{e 4234}#)
(#{match* 4056}#
(#{syntax-object-expression 309}# #{e 4234}#)
#{p 4235}#
(#{syntax-object-wrap 311}# #{e 4234}#)
'()
(#{syntax-object-module 313}# #{e 4234}#))
(#{match* 4056}#
#{e 4234}#
#{p 4235}#
'(())
'()
#f)))))))))))
(define with-syntax
(make-syntax-transformer
'with-syntax
'macro
(lambda (#{x 4246}#)
(let ((#{tmp 4248}# #{x 4246}#))
(let ((#{tmp 4249}#
($sc-dispatch
#{tmp 4248}#
'(_ () any . each-any))))
(if #{tmp 4249}#
(@apply
(lambda (#{e1 4252}# #{e2 4253}#)
(cons '#(syntax-object
let
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4250" "i4251"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4247")))
(hygiene guile))
(cons '() (cons #{e1 4252}# #{e2 4253}#))))
#{tmp 4249}#)
(let ((#{tmp 4255}#
($sc-dispatch
#{tmp 4248}#
'(_ ((any any)) any . each-any))))
(if #{tmp 4255}#
(@apply
(lambda (#{out 4260}#
#{in 4261}#
#{e1 4262}#
#{e2 4263}#)
(list '#(syntax-object
syntax-case
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
#("i4256" "i4257" "i4258" "i4259"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4247")))
(hygiene guile))
#{in 4261}#
'()
(list #{out 4260}#
(cons '#(syntax-object
let
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
#("i4256" "i4257" "i4258" "i4259"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4247")))
(hygiene guile))
(cons '()
(cons #{e1 4262}# #{e2 4263}#))))))
#{tmp 4255}#)
(let ((#{tmp 4265}#
($sc-dispatch
#{tmp 4248}#
'(_ #(each (any any)) any . each-any))))
(if #{tmp 4265}#
(@apply
(lambda (#{out 4270}#
#{in 4271}#
#{e1 4272}#
#{e2 4273}#)
(list '#(syntax-object
syntax-case
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
#("i4266" "i4267" "i4268" "i4269"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4247")))
(hygiene guile))
(cons '#(syntax-object
list
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
#("i4266" "i4267" "i4268" "i4269"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4247")))
(hygiene guile))
#{in 4271}#)
'()
(list #{out 4270}#
(cons '#(syntax-object
let
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
#("i4266"
"i4267"
"i4268"
"i4269"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4247")))
(hygiene guile))
(cons '()
(cons #{e1 4272}#
#{e2 4273}#))))))
#{tmp 4265}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4248}#)))))))))))
(define syntax-rules
(make-syntax-transformer
'syntax-rules
'macro
(lambda (#{x 4277}#)
(let ((#{tmp 4279}# #{x 4277}#))
(let ((#{tmp 4280}#
($sc-dispatch
#{tmp 4279}#
'(_ each-any . #(each ((any . any) any))))))
(if #{tmp 4280}#
(@apply
(lambda (#{k 4285}#
#{keyword 4286}#
#{pattern 4287}#
#{template 4288}#)
(list '#(syntax-object
lambda
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4281" "i4282" "i4283" "i4284"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4278")))
(hygiene guile))
'(#(syntax-object
x
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4281" "i4282" "i4283" "i4284"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4278")))
(hygiene guile)))
(vector
'(#(syntax-object
macro-type
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4281" "i4282" "i4283" "i4284"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4278")))
(hygiene guile))
.
#(syntax-object
syntax-rules
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4281" "i4282" "i4283" "i4284"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4278")))
(hygiene guile)))
(cons '#(syntax-object
patterns
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4281" "i4282" "i4283" "i4284"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4278")))
(hygiene guile))
#{pattern 4287}#))
(cons '#(syntax-object
syntax-case
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4281" "i4282" "i4283" "i4284"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4278")))
(hygiene guile))
(cons '#(syntax-object
x
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
#("i4281" "i4282" "i4283" "i4284"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4278")))
(hygiene guile))
(cons #{k 4285}#
(map (lambda (#{tmp 4292}#
#{tmp 4291}#)
(list (cons '#(syntax-object
dummy
((top)
#(ribcage
#(k
keyword
pattern
template)
#((top)
(top)
(top)
(top))
#("i4281"
"i4282"
"i4283"
"i4284"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4278")))
(hygiene guile))
#{tmp 4291}#)
(list '#(syntax-object
syntax
((top)
#(ribcage
#(k
keyword
pattern
template)
#((top)
(top)
(top)
(top))
#("i4281"
"i4282"
"i4283"
"i4284"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4278")))
(hygiene guile))
#{tmp 4292}#)))
#{template 4288}#
#{pattern 4287}#))))))
#{tmp 4280}#)
(let ((#{tmp 4293}#
($sc-dispatch
#{tmp 4279}#
'(_ each-any any . #(each ((any . any) any))))))
(if (if #{tmp 4293}#
(@apply
(lambda (#{k 4299}#
#{docstring 4300}#
#{keyword 4301}#
#{pattern 4302}#
#{template 4303}#)
(string? (syntax->datum #{docstring 4300}#)))
#{tmp 4293}#)
#f)
(@apply
(lambda (#{k 4309}#
#{docstring 4310}#
#{keyword 4311}#
#{pattern 4312}#
#{template 4313}#)
(list '#(syntax-object
lambda
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4304" "i4305" "i4306" "i4307" "i4308"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4278")))
(hygiene guile))
'(#(syntax-object
x
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4304" "i4305" "i4306" "i4307" "i4308"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4278")))
(hygiene guile)))
#{docstring 4310}#
(vector
'(#(syntax-object
macro-type
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4304" "i4305" "i4306" "i4307" "i4308"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4278")))
(hygiene guile))
.
#(syntax-object
syntax-rules
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4304" "i4305" "i4306" "i4307" "i4308"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4278")))
(hygiene guile)))
(cons '#(syntax-object
patterns
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4304"
"i4305"
"i4306"
"i4307"
"i4308"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4278")))
(hygiene guile))
#{pattern 4312}#))
(cons '#(syntax-object
syntax-case
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
#("i4304"
"i4305"
"i4306"
"i4307"
"i4308"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4278")))
(hygiene guile))
(cons '#(syntax-object
x
((top)
#(ribcage
#(k
docstring
keyword
pattern
template)
#((top) (top) (top) (top) (top))
#("i4304"
"i4305"
"i4306"
"i4307"
"i4308"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4278")))
(hygiene guile))
(cons #{k 4309}#
(map (lambda (#{tmp 4317}#
#{tmp 4316}#)
(list (cons '#(syntax-object
dummy
((top)
#(ribcage
#(k
docstring
keyword
pattern
template)
#((top)
(top)
(top)
(top)
(top))
#("i4304"
"i4305"
"i4306"
"i4307"
"i4308"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4278")))
(hygiene
guile))
#{tmp 4316}#)
(list '#(syntax-object
syntax
((top)
#(ribcage
#(k
docstring
keyword
pattern
template)
#((top)
(top)
(top)
(top)
(top))
#("i4304"
"i4305"
"i4306"
"i4307"
"i4308"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4278")))
(hygiene
guile))
#{tmp 4317}#)))
#{template 4313}#
#{pattern 4312}#))))))
#{tmp 4293}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4279}#)))))))))
(define define-syntax-rule
(make-syntax-transformer
'define-syntax-rule
'macro
(lambda (#{x 4318}#)
(let ((#{tmp 4320}# #{x 4318}#))
(let ((#{tmp 4321}#
($sc-dispatch #{tmp 4320}# '(_ (any . any) any))))
(if #{tmp 4321}#
(@apply
(lambda (#{name 4325}#
#{pattern 4326}#
#{template 4327}#)
(list '#(syntax-object
define-syntax
((top)
#(ribcage
#(name pattern template)
#((top) (top) (top))
#("i4322" "i4323" "i4324"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4319")))
(hygiene guile))
#{name 4325}#
(list '#(syntax-object
syntax-rules
((top)
#(ribcage
#(name pattern template)
#((top) (top) (top))
#("i4322" "i4323" "i4324"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4319")))
(hygiene guile))
'()
(list (cons '#(syntax-object
_
((top)
#(ribcage
#(name pattern template)
#((top) (top) (top))
#("i4322" "i4323" "i4324"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4319")))
(hygiene guile))
#{pattern 4326}#)
#{template 4327}#))))
#{tmp 4321}#)
(let ((#{tmp 4328}#
($sc-dispatch
#{tmp 4320}#
'(_ (any . any) any any))))
(if (if #{tmp 4328}#
(@apply
(lambda (#{name 4333}#
#{pattern 4334}#
#{docstring 4335}#
#{template 4336}#)
(string? (syntax->datum #{docstring 4335}#)))
#{tmp 4328}#)
#f)
(@apply
(lambda (#{name 4341}#
#{pattern 4342}#
#{docstring 4343}#
#{template 4344}#)
(list '#(syntax-object
define-syntax
((top)
#(ribcage
#(name pattern docstring template)
#((top) (top) (top) (top))
#("i4337" "i4338" "i4339" "i4340"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4319")))
(hygiene guile))
#{name 4341}#
(list '#(syntax-object
syntax-rules
((top)
#(ribcage
#(name pattern docstring template)
#((top) (top) (top) (top))
#("i4337" "i4338" "i4339" "i4340"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4319")))
(hygiene guile))
'()
#{docstring 4343}#
(list (cons '#(syntax-object
_
((top)
#(ribcage
#(name
pattern
docstring
template)
#((top) (top) (top) (top))
#("i4337"
"i4338"
"i4339"
"i4340"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4319")))
(hygiene guile))
#{pattern 4342}#)
#{template 4344}#))))
#{tmp 4328}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4320}#)))))))))
(define let*
(make-syntax-transformer
'let*
'macro
(lambda (#{x 4345}#)
(let ((#{tmp 4347}# #{x 4345}#))
(let ((#{tmp 4348}#
($sc-dispatch
#{tmp 4347}#
'(any #(each (any any)) any . each-any))))
(if (if #{tmp 4348}#
(@apply
(lambda (#{let* 4354}#
#{x 4355}#
#{v 4356}#
#{e1 4357}#
#{e2 4358}#)
(and-map identifier? #{x 4355}#))
#{tmp 4348}#)
#f)
(@apply
(lambda (#{let* 4365}#
#{x 4366}#
#{v 4367}#
#{e1 4368}#
#{e2 4369}#)
(letrec*
((#{f 4372}#
(lambda (#{bindings 4373}#)
(if (null? #{bindings 4373}#)
(cons '#(syntax-object
let
((top)
#(ribcage () () ())
#(ribcage
#(f bindings)
#((top) (top))
#("i4370" "i4371"))
#(ribcage
#(let* x v e1 e2)
#((top) (top) (top) (top) (top))
#("i4360"
"i4361"
"i4362"
"i4363"
"i4364"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4346")))
(hygiene guile))
(cons '() (cons #{e1 4368}# #{e2 4369}#)))
(let ((#{tmp 4378}#
(list (#{f 4372}# (cdr #{bindings 4373}#))
(car #{bindings 4373}#))))
(let ((#{tmp 4379}#
($sc-dispatch #{tmp 4378}# '(any any))))
(if #{tmp 4379}#
(@apply
(lambda (#{body 4382}# #{binding 4383}#)
(list '#(syntax-object
let
((top)
#(ribcage () () ())
#(ribcage
#(body binding)
#((top) (top))
#("i4380" "i4381"))
#(ribcage () () ())
#(ribcage
#(f bindings)
#((top) (top))
#("i4370" "i4371"))
#(ribcage
#(let* x v e1 e2)
#((top) (top) (top) (top) (top))
#("i4360"
"i4361"
"i4362"
"i4363"
"i4364"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4346")))
(hygiene guile))
(list #{binding 4383}#)
#{body 4382}#))
#{tmp 4379}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4378}#))))))))
(begin
(#{f 4372}# (map list #{x 4366}# #{v 4367}#)))))
#{tmp 4348}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4347}#)))))))
(define do
(make-syntax-transformer
'do
'macro
(lambda (#{orig-x 4384}#)
(let ((#{tmp 4386}# #{orig-x 4384}#))
(let ((#{tmp 4387}#
($sc-dispatch
#{tmp 4386}#
'(_ #(each (any any . any))
(any . each-any)
.
each-any))))
(if #{tmp 4387}#
(@apply
(lambda (#{var 4394}#
#{init 4395}#
#{step 4396}#
#{e0 4397}#
#{e1 4398}#
#{c 4399}#)
(let ((#{tmp 4401}#
(map (lambda (#{v 4422}# #{s 4423}#)
(let ((#{tmp 4426}# #{s 4423}#))
(let ((#{tmp 4427}#
($sc-dispatch #{tmp 4426}# '())))
(if #{tmp 4427}#
(@apply
(lambda () #{v 4422}#)
#{tmp 4427}#)
(let ((#{tmp 4428}#
($sc-dispatch
#{tmp 4426}#
'(any))))
(if #{tmp 4428}#
(@apply
(lambda (#{e 4430}#) #{e 4430}#)
#{tmp 4428}#)
(let ((#{_ 4432}# #{tmp 4426}#))
(syntax-violation
'do
"bad step expression"
#{orig-x 4384}#
#{s 4423}#))))))))
#{var 4394}#
#{step 4396}#)))
(let ((#{tmp 4402}#
($sc-dispatch #{tmp 4401}# 'each-any)))
(if #{tmp 4402}#
(@apply
(lambda (#{step 4404}#)
(let ((#{tmp 4405}# #{e1 4398}#))
(let ((#{tmp 4406}#
($sc-dispatch #{tmp 4405}# '())))
(if #{tmp 4406}#
(@apply
(lambda ()
(list '#(syntax-object
let
((top)
#(ribcage () () ())
#(ribcage
#(step)
#((top))
#("i4403"))
#(ribcage
#(var init step e0 e1 c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4388"
"i4389"
"i4390"
"i4391"
"i4392"
"i4393"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4385")))
(hygiene guile))
'#(syntax-object
doloop
((top)
#(ribcage () () ())
#(ribcage
#(step)
#((top))
#("i4403"))
#(ribcage
#(var init step e0 e1 c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4388"
"i4389"
"i4390"
"i4391"
"i4392"
"i4393"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4385")))
(hygiene guile))
(map list #{var 4394}# #{init 4395}#)
(list '#(syntax-object
if
((top)
#(ribcage () () ())
#(ribcage
#(step)
#((top))
#("i4403"))
#(ribcage
#(var init step e0 e1 c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4388"
"i4389"
"i4390"
"i4391"
"i4392"
"i4393"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4385")))
(hygiene guile))
(list '#(syntax-object
not
((top)
#(ribcage () () ())
#(ribcage
#(step)
#((top))
#("i4403"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4388"
"i4389"
"i4390"
"i4391"
"i4392"
"i4393"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4385")))
(hygiene guile))
#{e0 4397}#)
(cons '#(syntax-object
begin
((top)
#(ribcage () () ())
#(ribcage
#(step)
#((top))
#("i4403"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4388"
"i4389"
"i4390"
"i4391"
"i4392"
"i4393"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4385")))
(hygiene guile))
(append
#{c 4399}#
(list (cons '#(syntax-object
doloop
((top)
#(ribcage
()
()
())
#(ribcage
#(step)
#((top))
#("i4403"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4388"
"i4389"
"i4390"
"i4391"
"i4392"
"i4393"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4385")))
(hygiene
guile))
#{step 4404}#)))))))
#{tmp 4406}#)
(let ((#{tmp 4411}#
($sc-dispatch
#{tmp 4405}#
'(any . each-any))))
(if #{tmp 4411}#
(@apply
(lambda (#{e1 4414}# #{e2 4415}#)
(list '#(syntax-object
let
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4412" "i4413"))
#(ribcage () () ())
#(ribcage
#(step)
#((top))
#("i4403"))
#(ribcage
#(var init step e0 e1 c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4388"
"i4389"
"i4390"
"i4391"
"i4392"
"i4393"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4385")))
(hygiene guile))
'#(syntax-object
doloop
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4412" "i4413"))
#(ribcage () () ())
#(ribcage
#(step)
#((top))
#("i4403"))
#(ribcage
#(var init step e0 e1 c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4388"
"i4389"
"i4390"
"i4391"
"i4392"
"i4393"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4385")))
(hygiene guile))
(map list
#{var 4394}#
#{init 4395}#)
(list '#(syntax-object
if
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4412" "i4413"))
#(ribcage () () ())
#(ribcage
#(step)
#((top))
#("i4403"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4388"
"i4389"
"i4390"
"i4391"
"i4392"
"i4393"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
#("i4385")))
(hygiene guile))
#{e0 4397}#
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4412"
"i4413"))
#(ribcage
()
()
())
#(ribcage
#(step)
#((top))
#("i4403"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4388"
"i4389"
"i4390"
"i4391"
"i4392"
"i4393"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4385")))
(hygiene guile))
(cons #{e1 4414}#
#{e2 4415}#))
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4412"
"i4413"))
#(ribcage
()
()
())
#(ribcage
#(step)
#((top))
#("i4403"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4388"
"i4389"
"i4390"
"i4391"
"i4392"
"i4393"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4385")))
(hygiene guile))
(append
#{c 4399}#
(list (cons '#(syntax-object
doloop
((top)
#(ribcage
#(e1
e2)
#((top)
(top))
#("i4412"
"i4413"))
#(ribcage
()
()
())
#(ribcage
#(step)
#((top))
#("i4403"))
#(ribcage
#(var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top))
#("i4388"
"i4389"
"i4390"
"i4391"
"i4392"
"i4393"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i4385")))
(hygiene
guile))
#{step 4404}#)))))))
#{tmp 4411}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4405}#)))))))
#{tmp 4402}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4401}#)))))
#{tmp 4387}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4386}#)))))))
(define quasiquote
(make-syntax-transformer
'quasiquote
'macro
(letrec*
((#{quasi 4436}#
(lambda (#{p 4449}# #{lev 4450}#)
(let ((#{tmp 4453}# #{p 4449}#))
(let ((#{tmp 4454}#
($sc-dispatch
#{tmp 4453}#
'(#(free-id
#(syntax-object
unquote
((top)
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4451" "i4452"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile)))
any))))
(if #{tmp 4454}#
(@apply
(lambda (#{p 4456}#)
(if (= #{lev 4450}# 0)
(list '#(syntax-object
"value"
((top)
#(ribcage #(p) #((top)) #("i4455"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4451" "i4452"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
#{p 4456}#)
(#{quasicons 4440}#
'(#(syntax-object
"quote"
((top)
#(ribcage #(p) #((top)) #("i4455"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4451" "i4452"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
#(syntax-object
unquote
((top)
#(ribcage #(p) #((top)) #("i4455"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4451" "i4452"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile)))
(#{quasi 4436}#
(list #{p 4456}#)
(#{1-}# #{lev 4450}#)))))
#{tmp 4454}#)
(let ((#{tmp 4457}#
($sc-dispatch
#{tmp 4453}#
'(#(free-id
#(syntax-object
quasiquote
((top)
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4451" "i4452"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile)))
any))))
(if #{tmp 4457}#
(@apply
(lambda (#{p 4459}#)
(#{quasicons 4440}#
'(#(syntax-object
"quote"
((top)
#(ribcage #(p) #((top)) #("i4458"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4451" "i4452"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
#(syntax-object
quasiquote
((top)
#(ribcage #(p) #((top)) #("i4458"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4451" "i4452"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile)))
(#{quasi 4436}#
(list #{p 4459}#)
(#{1+}# #{lev 4450}#))))
#{tmp 4457}#)
(let ((#{tmp 4460}#
($sc-dispatch #{tmp 4453}# '(any . any))))
(if #{tmp 4460}#
(@apply
(lambda (#{p 4463}# #{q 4464}#)
(let ((#{tmp 4465}# #{p 4463}#))
(let ((#{tmp 4466}#
($sc-dispatch
#{tmp 4465}#
'(#(free-id
#(syntax-object
unquote
((top)
#(ribcage
#(p q)
#((top) (top))
#("i4461" "i4462"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4451" "i4452"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile)))
.
each-any))))
(if #{tmp 4466}#
(@apply
(lambda (#{p 4468}#)
(if (= #{lev 4450}# 0)
(#{quasilist* 4444}#
(map (lambda (#{tmp 4469}#)
(list '#(syntax-object
"value"
((top)
#(ribcage
#(p)
#((top))
#("i4467"))
#(ribcage
#(p q)
#((top) (top))
#("i4461"
"i4462"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4451"
"i4452"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
#{tmp 4469}#))
#{p 4468}#)
(#{quasi 4436}#
#{q 4464}#
#{lev 4450}#))
(#{quasicons 4440}#
(#{quasicons 4440}#
'(#(syntax-object
"quote"
((top)
#(ribcage
#(p)
#((top))
#("i4467"))
#(ribcage
#(p q)
#((top) (top))
#("i4461" "i4462"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4451" "i4452"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
#(syntax-object
unquote
((top)
#(ribcage
#(p)
#((top))
#("i4467"))
#(ribcage
#(p q)
#((top) (top))
#("i4461" "i4462"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4451" "i4452"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile)))
(#{quasi 4436}#
#{p 4468}#
(#{1-}# #{lev 4450}#)))
(#{quasi 4436}#
#{q 4464}#
#{lev 4450}#))))
#{tmp 4466}#)
(let ((#{tmp 4471}#
($sc-dispatch
#{tmp 4465}#
'(#(free-id
#(syntax-object
unquote-splicing
((top)
#(ribcage
#(p q)
#((top) (top))
#("i4461" "i4462"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4451" "i4452"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile)))
.
each-any))))
(if #{tmp 4471}#
(@apply
(lambda (#{p 4473}#)
(if (= #{lev 4450}# 0)
(#{quasiappend 4442}#
(map (lambda (#{tmp 4474}#)
(list '#(syntax-object
"value"
((top)
#(ribcage
#(p)
#((top))
#("i4472"))
#(ribcage
#(p q)
#((top)
(top))
#("i4461"
"i4462"))
#(ribcage
()
()
())
#(ribcage
#(p lev)
#((top)
(top))
#("i4451"
"i4452"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
#{tmp 4474}#))
#{p 4473}#)
(#{quasi 4436}#
#{q 4464}#
#{lev 4450}#))
(#{quasicons 4440}#
(#{quasicons 4440}#
'(#(syntax-object
"quote"
((top)
#(ribcage
#(p)
#((top))
#("i4472"))
#(ribcage
#(p q)
#((top) (top))
#("i4461" "i4462"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4451" "i4452"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
#(syntax-object
unquote-splicing
((top)
#(ribcage
#(p)
#((top))
#("i4472"))
#(ribcage
#(p q)
#((top) (top))
#("i4461" "i4462"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4451" "i4452"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile)))
(#{quasi 4436}#
#{p 4473}#
(#{1-}# #{lev 4450}#)))
(#{quasi 4436}#
#{q 4464}#
#{lev 4450}#))))
#{tmp 4471}#)
(let ((#{_ 4477}# #{tmp 4465}#))
(#{quasicons 4440}#
(#{quasi 4436}#
#{p 4463}#
#{lev 4450}#)
(#{quasi 4436}#
#{q 4464}#
#{lev 4450}#)))))))))
#{tmp 4460}#)
(let ((#{tmp 4478}#
($sc-dispatch
#{tmp 4453}#
'#(vector each-any))))
(if #{tmp 4478}#
(@apply
(lambda (#{x 4480}#)
(#{quasivector 4446}#
(#{vquasi 4438}# #{x 4480}# #{lev 4450}#)))
#{tmp 4478}#)
(let ((#{p 4483}# #{tmp 4453}#))
(list '#(syntax-object
"quote"
((top)
#(ribcage #(p) #((top)) #("i4482"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4451" "i4452"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
#{p 4483}#)))))))))))))
(#{vquasi 4438}#
(lambda (#{p 4484}# #{lev 4485}#)
(let ((#{tmp 4488}# #{p 4484}#))
(let ((#{tmp 4489}#
($sc-dispatch #{tmp 4488}# '(any . any))))
(if #{tmp 4489}#
(@apply
(lambda (#{p 4492}# #{q 4493}#)
(let ((#{tmp 4494}# #{p 4492}#))
(let ((#{tmp 4495}#
($sc-dispatch
#{tmp 4494}#
'(#(free-id
#(syntax-object
unquote
((top)
#(ribcage
#(p q)
#((top) (top))
#("i4490" "i4491"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4486" "i4487"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile)))
.
each-any))))
(if #{tmp 4495}#
(@apply
(lambda (#{p 4497}#)
(if (= #{lev 4485}# 0)
(#{quasilist* 4444}#
(map (lambda (#{tmp 4498}#)
(list '#(syntax-object
"value"
((top)
#(ribcage
#(p)
#((top))
#("i4496"))
#(ribcage
#(p q)
#((top) (top))
#("i4490" "i4491"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4486" "i4487"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
#{tmp 4498}#))
#{p 4497}#)
(#{vquasi 4438}# #{q 4493}# #{lev 4485}#))
(#{quasicons 4440}#
(#{quasicons 4440}#
'(#(syntax-object
"quote"
((top)
#(ribcage #(p) #((top)) #("i4496"))
#(ribcage
#(p q)
#((top) (top))
#("i4490" "i4491"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4486" "i4487"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
#(syntax-object
unquote
((top)
#(ribcage #(p) #((top)) #("i4496"))
#(ribcage
#(p q)
#((top) (top))
#("i4490" "i4491"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4486" "i4487"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile)))
(#{quasi 4436}#
#{p 4497}#
(#{1-}# #{lev 4485}#)))
(#{vquasi 4438}# #{q 4493}# #{lev 4485}#))))
#{tmp 4495}#)
(let ((#{tmp 4500}#
($sc-dispatch
#{tmp 4494}#
'(#(free-id
#(syntax-object
unquote-splicing
((top)
#(ribcage
#(p q)
#((top) (top))
#("i4490" "i4491"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4486" "i4487"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile)))
.
each-any))))
(if #{tmp 4500}#
(@apply
(lambda (#{p 4502}#)
(if (= #{lev 4485}# 0)
(#{quasiappend 4442}#
(map (lambda (#{tmp 4503}#)
(list '#(syntax-object
"value"
((top)
#(ribcage
#(p)
#((top))
#("i4501"))
#(ribcage
#(p q)
#((top) (top))
#("i4490" "i4491"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4486" "i4487"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
#{tmp 4503}#))
#{p 4502}#)
(#{vquasi 4438}#
#{q 4493}#
#{lev 4485}#))
(#{quasicons 4440}#
(#{quasicons 4440}#
'(#(syntax-object
"quote"
((top)
#(ribcage
#(p)
#((top))
#("i4501"))
#(ribcage
#(p q)
#((top) (top))
#("i4490" "i4491"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4486" "i4487"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
#(syntax-object
unquote-splicing
((top)
#(ribcage
#(p)
#((top))
#("i4501"))
#(ribcage
#(p q)
#((top) (top))
#("i4490" "i4491"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4486" "i4487"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile)))
(#{quasi 4436}#
#{p 4502}#
(#{1-}# #{lev 4485}#)))
(#{vquasi 4438}#
#{q 4493}#
#{lev 4485}#))))
#{tmp 4500}#)
(let ((#{_ 4506}# #{tmp 4494}#))
(#{quasicons 4440}#
(#{quasi 4436}# #{p 4492}# #{lev 4485}#)
(#{vquasi 4438}#
#{q 4493}#
#{lev 4485}#)))))))))
#{tmp 4489}#)
(let ((#{tmp 4507}# ($sc-dispatch #{tmp 4488}# '())))
(if #{tmp 4507}#
(@apply
(lambda ()
'(#(syntax-object
"quote"
((top)
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i4486" "i4487"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
()))
#{tmp 4507}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4488}#))))))))
(#{quasicons 4440}#
(lambda (#{x 4508}# #{y 4509}#)
(let ((#{tmp 4513}# (list #{x 4508}# #{y 4509}#)))
(let ((#{tmp 4514}#
($sc-dispatch #{tmp 4513}# '(any any))))
(if #{tmp 4514}#
(@apply
(lambda (#{x 4517}# #{y 4518}#)
(let ((#{tmp 4519}# #{y 4518}#))
(let ((#{tmp 4520}#
($sc-dispatch
#{tmp 4519}#
'(#(atom "quote") any))))
(if #{tmp 4520}#
(@apply
(lambda (#{dy 4522}#)
(let ((#{tmp 4523}# #{x 4517}#))
(let ((#{tmp 4524}#
($sc-dispatch
#{tmp 4523}#
'(#(atom "quote") any))))
(if #{tmp 4524}#
(@apply
(lambda (#{dx 4526}#)
(list '#(syntax-object
"quote"
((top)
#(ribcage
#(dx)
#((top))
#("i4525"))
#(ribcage
#(dy)
#((top))
#("i4521"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4515" "i4516"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4510" "i4511"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
(cons #{dx 4526}# #{dy 4522}#)))
#{tmp 4524}#)
(let ((#{_ 4528}# #{tmp 4523}#))
(if (null? #{dy 4522}#)
(list '#(syntax-object
"list"
((top)
#(ribcage
#(_)
#((top))
#("i4527"))
#(ribcage
#(dy)
#((top))
#("i4521"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4515" "i4516"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4510" "i4511"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
#{x 4517}#)
(list '#(syntax-object
"list*"
((top)
#(ribcage
#(_)
#((top))
#("i4527"))
#(ribcage
#(dy)
#((top))
#("i4521"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4515" "i4516"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4510" "i4511"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
#{x 4517}#
#{y 4518}#)))))))
#{tmp 4520}#)
(let ((#{tmp 4529}#
($sc-dispatch
#{tmp 4519}#
'(#(atom "list") . any))))
(if #{tmp 4529}#
(@apply
(lambda (#{stuff 4531}#)
(cons '#(syntax-object
"list"
((top)
#(ribcage
#(stuff)
#((top))
#("i4530"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4515" "i4516"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4510" "i4511"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
(cons #{x 4517}# #{stuff 4531}#)))
#{tmp 4529}#)
(let ((#{tmp 4532}#
($sc-dispatch
#{tmp 4519}#
'(#(atom "list*") . any))))
(if #{tmp 4532}#
(@apply
(lambda (#{stuff 4534}#)
(cons '#(syntax-object
"list*"
((top)
#(ribcage
#(stuff)
#((top))
#("i4533"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4515" "i4516"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4510" "i4511"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
(cons #{x 4517}# #{stuff 4534}#)))
#{tmp 4532}#)
(let ((#{_ 4536}# #{tmp 4519}#))
(list '#(syntax-object
"list*"
((top)
#(ribcage
#(_)
#((top))
#("i4535"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4515" "i4516"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4510" "i4511"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
#{x 4517}#
#{y 4518}#))))))))))
#{tmp 4514}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4513}#))))))
(#{quasiappend 4442}#
(lambda (#{x 4537}# #{y 4538}#)
(let ((#{tmp 4541}# #{y 4538}#))
(let ((#{tmp 4542}#
($sc-dispatch #{tmp 4541}# '(#(atom "quote") ()))))
(if #{tmp 4542}#
(@apply
(lambda ()
(if (null? #{x 4537}#)
'(#(syntax-object
"quote"
((top)
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4539" "i4540"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
())
(if (null? (cdr #{x 4537}#))
(car #{x 4537}#)
(let ((#{tmp 4549}# #{x 4537}#))
(let ((#{tmp 4550}#
($sc-dispatch #{tmp 4549}# 'each-any)))
(if #{tmp 4550}#
(@apply
(lambda (#{p 4552}#)
(cons '#(syntax-object
"append"
((top)
#(ribcage () () ())
#(ribcage
#(p)
#((top))
#("i4551"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4539" "i4540"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
#{p 4552}#))
#{tmp 4550}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4549}#)))))))
#{tmp 4542}#)
(let ((#{_ 4555}# #{tmp 4541}#))
(if (null? #{x 4537}#)
#{y 4538}#
(let ((#{tmp 4560}# (list #{x 4537}# #{y 4538}#)))
(let ((#{tmp 4561}#
($sc-dispatch #{tmp 4560}# '(each-any any))))
(if #{tmp 4561}#
(@apply
(lambda (#{p 4564}# #{y 4565}#)
(cons '#(syntax-object
"append"
((top)
#(ribcage () () ())
#(ribcage
#(p y)
#((top) (top))
#("i4562" "i4563"))
#(ribcage #(_) #((top)) #("i4554"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i4539" "i4540"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
(append #{p 4564}# (list #{y 4565}#))))
#{tmp 4561}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4560}#)))))))))))
(#{quasilist* 4444}#
(lambda (#{x 4567}# #{y 4568}#)
(letrec*
((#{f 4573}#
(lambda (#{x 4574}#)
(if (null? #{x 4574}#)
#{y 4568}#
(#{quasicons 4440}#
(car #{x 4574}#)
(#{f 4573}# (cdr #{x 4574}#)))))))
(begin (#{f 4573}# #{x 4567}#)))))
(#{quasivector 4446}#
(lambda (#{x 4575}#)
(let ((#{tmp 4577}# #{x 4575}#))
(let ((#{tmp 4578}#
($sc-dispatch
#{tmp 4577}#
'(#(atom "quote") each-any))))
(if #{tmp 4578}#
(@apply
(lambda (#{x 4580}#)
(list '#(syntax-object
"quote"
((top)
#(ribcage #(x) #((top)) #("i4579"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4576"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
(list->vector #{x 4580}#)))
#{tmp 4578}#)
(let ((#{_ 4583}# #{tmp 4577}#))
(letrec*
((#{f 4587}#
(lambda (#{y 4588}# #{k 4589}#)
(let ((#{tmp 4600}# #{y 4588}#))
(let ((#{tmp 4601}#
($sc-dispatch
#{tmp 4600}#
'(#(atom "quote") each-any))))
(if #{tmp 4601}#
(@apply
(lambda (#{y 4603}#)
(#{k 4589}#
(map (lambda (#{tmp 4604}#)
(list '#(syntax-object
"quote"
((top)
#(ribcage
#(y)
#((top))
#("i4602"))
#(ribcage () () ())
#(ribcage
#(f y k)
#((top) (top) (top))
#("i4584"
"i4585"
"i4586"))
#(ribcage
#(_)
#((top))
#("i4582"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4576"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
#{tmp 4604}#))
#{y 4603}#)))
#{tmp 4601}#)
(let ((#{tmp 4605}#
($sc-dispatch
#{tmp 4600}#
'(#(atom "list") . each-any))))
(if #{tmp 4605}#
(@apply
(lambda (#{y 4607}#)
(#{k 4589}# #{y 4607}#))
#{tmp 4605}#)
(let ((#{tmp 4609}#
($sc-dispatch
#{tmp 4600}#
'(#(atom "list*")
.
#(each+ any (any) ())))))
(if #{tmp 4609}#
(@apply
(lambda (#{y 4612}# #{z 4613}#)
(#{f 4587}#
#{z 4613}#
(lambda (#{ls 4614}#)
(#{k 4589}#
(append
#{y 4612}#
#{ls 4614}#)))))
#{tmp 4609}#)
(let ((#{else 4618}# #{tmp 4600}#))
(let ((#{tmp 4622}# #{x 4575}#))
(let ((#{ g4619 4624}#
#{tmp 4622}#))
(list '#(syntax-object
"list->vector"
((top)
#(ribcage () () ())
#(ribcage
#(#{ g4619}#)
#((m4620 top))
#("i4623"))
#(ribcage
#(else)
#((top))
#("i4617"))
#(ribcage () () ())
#(ribcage
#(f y k)
#((top) (top) (top))
#("i4584"
"i4585"
"i4586"))
#(ribcage
#(_)
#((top))
#("i4582"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4576"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
#{ g4619 4624}#))))))))))))))
(begin
(#{f 4587}#
#{x 4575}#
(lambda (#{ls 4590}#)
(let ((#{tmp 4595}# #{ls 4590}#))
(let ((#{tmp 4596}#
($sc-dispatch #{tmp 4595}# 'each-any)))
(if #{tmp 4596}#
(@apply
(lambda (#{ g4592 4598}#)
(cons '#(syntax-object
"vector"
((top)
#(ribcage () () ())
#(ribcage
#(#{ g4592}#)
#((m4593 top))
#("i4597"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(ls)
#((top))
#("i4591"))
#(ribcage
#(_)
#((top))
#("i4582"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4576"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
#{ g4592 4598}#))
#{tmp 4596}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4595}#))))))))))))))
(#{emit 4448}#
(lambda (#{x 4625}#)
(let ((#{tmp 4627}# #{x 4625}#))
(let ((#{tmp 4628}#
($sc-dispatch
#{tmp 4627}#
'(#(atom "quote") any))))
(if #{tmp 4628}#
(@apply
(lambda (#{x 4630}#)
(list '#(syntax-object
quote
((top)
#(ribcage #(x) #((top)) #("i4629"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4626"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
#{x 4630}#))
#{tmp 4628}#)
(let ((#{tmp 4631}#
($sc-dispatch
#{tmp 4627}#
'(#(atom "list") . each-any))))
(if #{tmp 4631}#
(@apply
(lambda (#{x 4633}#)
(let ((#{tmp 4637}# (map #{emit 4448}# #{x 4633}#)))
(let ((#{tmp 4638}#
($sc-dispatch #{tmp 4637}# 'each-any)))
(if #{tmp 4638}#
(@apply
(lambda (#{ g4634 4640}#)
(cons '#(syntax-object
list
((top)
#(ribcage () () ())
#(ribcage
#(#{ g4634}#)
#((m4635 top))
#("i4639"))
#(ribcage
#(x)
#((top))
#("i4632"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4626"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
#{ g4634 4640}#))
#{tmp 4638}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4637}#)))))
#{tmp 4631}#)
(let ((#{tmp 4643}#
($sc-dispatch
#{tmp 4627}#
'(#(atom "list*") . #(each+ any (any) ())))))
(if #{tmp 4643}#
(@apply
(lambda (#{x 4646}# #{y 4647}#)
(letrec*
((#{f 4650}#
(lambda (#{x* 4651}#)
(if (null? #{x* 4651}#)
(#{emit 4448}# #{y 4647}#)
(let ((#{tmp 4657}#
(list (#{emit 4448}#
(car #{x* 4651}#))
(#{f 4650}#
(cdr #{x* 4651}#)))))
(let ((#{tmp 4658}#
($sc-dispatch
#{tmp 4657}#
'(any any))))
(if #{tmp 4658}#
(@apply
(lambda (#{ g4654 4661}#
#{ g4653 4662}#)
(list '#(syntax-object
cons
((top)
#(ribcage () () ())
#(ribcage
#(#{ g4654}#
#{ g4653}#)
#((m4655 top)
(m4655 top))
#("i4659" "i4660"))
#(ribcage () () ())
#(ribcage
#(f x*)
#((top) (top))
#("i4648" "i4649"))
#(ribcage
#(x y)
#((top) (top))
#("i4644" "i4645"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4626"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
#{ g4654 4661}#
#{ g4653 4662}#))
#{tmp 4658}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4657}#))))))))
(begin (#{f 4650}# #{x 4646}#))))
#{tmp 4643}#)
(let ((#{tmp 4663}#
($sc-dispatch
#{tmp 4627}#
'(#(atom "append") . each-any))))
(if #{tmp 4663}#
(@apply
(lambda (#{x 4665}#)
(let ((#{tmp 4669}#
(map #{emit 4448}# #{x 4665}#)))
(let ((#{tmp 4670}#
($sc-dispatch
#{tmp 4669}#
'each-any)))
(if #{tmp 4670}#
(@apply
(lambda (#{ g4666 4672}#)
(cons '#(syntax-object
append
((top)
#(ribcage () () ())
#(ribcage
#(#{ g4666}#)
#((m4667 top))
#("i4671"))
#(ribcage
#(x)
#((top))
#("i4664"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4626"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
#{ g4666 4672}#))
#{tmp 4670}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4669}#)))))
#{tmp 4663}#)
(let ((#{tmp 4675}#
($sc-dispatch
#{tmp 4627}#
'(#(atom "vector") . each-any))))
(if #{tmp 4675}#
(@apply
(lambda (#{x 4677}#)
(let ((#{tmp 4681}#
(map #{emit 4448}# #{x 4677}#)))
(let ((#{tmp 4682}#
($sc-dispatch
#{tmp 4681}#
'each-any)))
(if #{tmp 4682}#
(@apply
(lambda (#{ g4678 4684}#)
(cons '#(syntax-object
vector
((top)
#(ribcage () () ())
#(ribcage
#(#{ g4678}#)
#((m4679 top))
#("i4683"))
#(ribcage
#(x)
#((top))
#("i4676"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4626"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
#{ g4678 4684}#))
#{tmp 4682}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4681}#)))))
#{tmp 4675}#)
(let ((#{tmp 4687}#
($sc-dispatch
#{tmp 4627}#
'(#(atom "list->vector") any))))
(if #{tmp 4687}#
(@apply
(lambda (#{x 4689}#)
(let ((#{tmp 4693}#
(#{emit 4448}# #{x 4689}#)))
(let ((#{ g4690 4695}#
#{tmp 4693}#))
(list '#(syntax-object
list->vector
((top)
#(ribcage () () ())
#(ribcage
#(#{ g4690}#)
#((m4691 top))
#("i4694"))
#(ribcage
#(x)
#((top))
#("i4688"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4626"))
#(ribcage
(emit quasivector
quasilist*
quasiappend
quasicons
vquasi
quasi)
((top)
(top)
(top)
(top)
(top)
(top)
(top))
("i4447"
"i4445"
"i4443"
"i4441"
"i4439"
"i4437"
"i4435")))
(hygiene guile))
#{ g4690 4695}#))))
#{tmp 4687}#)
(let ((#{tmp 4696}#
($sc-dispatch
#{tmp 4627}#
'(#(atom "value") any))))
(if #{tmp 4696}#
(@apply
(lambda (#{x 4698}#) #{x 4698}#)
#{tmp 4696}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4627}#)))))))))))))))))))
(begin
(lambda (#{x 4699}#)
(let ((#{tmp 4701}# #{x 4699}#))
(let ((#{tmp 4702}#
($sc-dispatch #{tmp 4701}# '(_ any))))
(if #{tmp 4702}#
(@apply
(lambda (#{e 4704}#)
(#{emit 4448}# (#{quasi 4436}# #{e 4704}# 0)))
#{tmp 4702}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4701}#)))))))))
(define include
(make-syntax-transformer
'include
'macro
(lambda (#{x 4705}#)
(letrec*
((#{read-file 4708}#
(lambda (#{fn 4709}# #{k 4710}#)
(begin
(let ((#{p 4714}# (open-input-file #{fn 4709}#)))
(letrec*
((#{f 4718}#
(lambda (#{x 4719}# #{result 4720}#)
(if (eof-object? #{x 4719}#)
(begin
(close-input-port #{p 4714}#)
(reverse #{result 4720}#))
(#{f 4718}#
(read #{p 4714}#)
(cons (datum->syntax #{k 4710}# #{x 4719}#)
#{result 4720}#))))))
(begin (#{f 4718}# (read #{p 4714}#) '()))))))))
(begin
(let ((#{tmp 4721}# #{x 4705}#))
(let ((#{tmp 4722}#
($sc-dispatch #{tmp 4721}# '(any any))))
(if #{tmp 4722}#
(@apply
(lambda (#{k 4725}# #{filename 4726}#)
(begin
(let ((#{fn 4728}# (syntax->datum #{filename 4726}#)))
(let ((#{tmp 4730}#
(#{read-file 4708}#
#{fn 4728}#
#{filename 4726}#)))
(let ((#{tmp 4731}#
($sc-dispatch #{tmp 4730}# 'each-any)))
(if #{tmp 4731}#
(@apply
(lambda (#{exp 4733}#)
(cons '#(syntax-object
begin
((top)
#(ribcage () () ())
#(ribcage
#(exp)
#((top))
#("i4732"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(fn)
#((top))
#("i4727"))
#(ribcage
#(k filename)
#((top) (top))
#("i4723" "i4724"))
#(ribcage
(read-file)
((top))
("i4707"))
#(ribcage
#(x)
#((top))
#("i4706")))
(hygiene guile))
#{exp 4733}#))
#{tmp 4731}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4730}#)))))))
#{tmp 4722}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4721}#)))))))))
(define include-from-path
(make-syntax-transformer
'include-from-path
'macro
(lambda (#{x 4735}#)
(let ((#{tmp 4737}# #{x 4735}#))
(let ((#{tmp 4738}#
($sc-dispatch #{tmp 4737}# '(any any))))
(if #{tmp 4738}#
(@apply
(lambda (#{k 4741}# #{filename 4742}#)
(begin
(let ((#{fn 4744}# (syntax->datum #{filename 4742}#)))
(let ((#{tmp 4746}#
(datum->syntax
#{filename 4742}#
(begin
(let ((#{t 4751}#
(%search-load-path #{fn 4744}#)))
(if #{t 4751}#
#{t 4751}#
(syntax-violation
'include-from-path
"file not found in path"
#{x 4735}#
#{filename 4742}#)))))))
(let ((#{fn 4748}# #{tmp 4746}#))
(list '#(syntax-object
include
((top)
#(ribcage () () ())
#(ribcage #(fn) #((top)) #("i4747"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(fn) #((top)) #("i4743"))
#(ribcage
#(k filename)
#((top) (top))
#("i4739" "i4740"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4736")))
(hygiene guile))
#{fn 4748}#))))))
#{tmp 4738}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4737}#)))))))
(define unquote
(make-syntax-transformer
'unquote
'macro
(lambda (#{x 4753}#)
(syntax-violation
'unquote
"expression not valid outside of quasiquote"
#{x 4753}#))))
(define unquote-splicing
(make-syntax-transformer
'unquote-splicing
'macro
(lambda (#{x 4755}#)
(syntax-violation
'unquote-splicing
"expression not valid outside of quasiquote"
#{x 4755}#))))
(define case
(make-syntax-transformer
'case
'macro
(lambda (#{x 4757}#)
(let ((#{tmp 4759}# #{x 4757}#))
(let ((#{tmp 4760}#
($sc-dispatch
#{tmp 4759}#
'(_ any any . each-any))))
(if #{tmp 4760}#
(@apply
(lambda (#{e 4764}# #{m1 4765}# #{m2 4766}#)
(let ((#{tmp 4768}#
(letrec*
((#{f 4774}#
(lambda (#{clause 4775}# #{clauses 4776}#)
(if (null? #{clauses 4776}#)
(let ((#{tmp 4778}# #{clause 4775}#))
(let ((#{tmp 4779}#
($sc-dispatch
#{tmp 4778}#
'(#(free-id
#(syntax-object
else
((top)
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
#("i4771"
"i4772"
"i4773"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
#("i4761"
"i4762"
"i4763"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4758")))
(hygiene guile)))
any
.
each-any))))
(if #{tmp 4779}#
(@apply
(lambda (#{e1 4782}# #{e2 4783}#)
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i4780" "i4781"))
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
#("i4771"
"i4772"
"i4773"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
#("i4761"
"i4762"
"i4763"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4758")))
(hygiene guile))
(cons #{e1 4782}#
#{e2 4783}#)))
#{tmp 4779}#)
(let ((#{tmp 4785}#
($sc-dispatch
#{tmp 4778}#
'(each-any any . each-any))))
(if #{tmp 4785}#
(@apply
(lambda (#{k 4789}#
#{e1 4790}#
#{e2 4791}#)
(list '#(syntax-object
if
((top)
#(ribcage
#(k e1 e2)
#((top) (top) (top))
#("i4786"
"i4787"
"i4788"))
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
#("i4771"
"i4772"
"i4773"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
#("i4761"
"i4762"
"i4763"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4758")))
(hygiene guile))
(list '#(syntax-object
memv
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i4786"
"i4787"
"i4788"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4771"
"i4772"
"i4773"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
#("i4761"
"i4762"
"i4763"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4758")))
(hygiene guile))
'#(syntax-object
t
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i4786"
"i4787"
"i4788"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4771"
"i4772"
"i4773"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
#("i4761"
"i4762"
"i4763"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4758")))
(hygiene guile))
(list '#(syntax-object
quote
((top)
#(ribcage
#(k
e1
e2)
#((top)
(top)
(top))
#("i4786"
"i4787"
"i4788"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4771"
"i4772"
"i4773"))
#(ribcage
#(e
m1
m2)
#((top)
(top)
(top))
#("i4761"
"i4762"
"i4763"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4758")))
(hygiene
guile))
#{k 4789}#))
(cons '#(syntax-object
begin
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i4786"
"i4787"
"i4788"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4771"
"i4772"
"i4773"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
#("i4761"
"i4762"
"i4763"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4758")))
(hygiene guile))
(cons #{e1 4790}#
#{e2 4791}#))))
#{tmp 4785}#)
(let ((#{_ 4795}# #{tmp 4778}#))
(syntax-violation
'case
"bad clause"
#{x 4757}#
#{clause 4775}#)))))))
(let ((#{tmp 4797}#
(#{f 4774}#
(car #{clauses 4776}#)
(cdr #{clauses 4776}#))))
(let ((#{rest 4799}# #{tmp 4797}#))
(let ((#{tmp 4800}# #{clause 4775}#))
(let ((#{tmp 4801}#
($sc-dispatch
#{tmp 4800}#
'(each-any any . each-any))))
(if #{tmp 4801}#
(@apply
(lambda (#{k 4805}#
#{e1 4806}#
#{e2 4807}#)
(list '#(syntax-object
if
((top)
#(ribcage
#(k e1 e2)
#((top) (top) (top))
#("i4802"
"i4803"
"i4804"))
#(ribcage () () ())
#(ribcage
#(rest)
#((top))
#("i4798"))
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
#("i4771"
"i4772"
"i4773"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
#("i4761"
"i4762"
"i4763"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4758")))
(hygiene guile))
(list '#(syntax-object
memv
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i4802"
"i4803"
"i4804"))
#(ribcage
()
()
())
#(ribcage
#(rest)
#((top))
#("i4798"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4771"
"i4772"
"i4773"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
#("i4761"
"i4762"
"i4763"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4758")))
(hygiene guile))
'#(syntax-object
t
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i4802"
"i4803"
"i4804"))
#(ribcage
()
()
())
#(ribcage
#(rest)
#((top))
#("i4798"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4771"
"i4772"
"i4773"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
#("i4761"
"i4762"
"i4763"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4758")))
(hygiene guile))
(list '#(syntax-object
quote
((top)
#(ribcage
#(k
e1
e2)
#((top)
(top)
(top))
#("i4802"
"i4803"
"i4804"))
#(ribcage
()
()
())
#(ribcage
#(rest)
#((top))
#("i4798"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4771"
"i4772"
"i4773"))
#(ribcage
#(e
m1
m2)
#((top)
(top)
(top))
#("i4761"
"i4762"
"i4763"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4758")))
(hygiene
guile))
#{k 4805}#))
(cons '#(syntax-object
begin
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i4802"
"i4803"
"i4804"))
#(ribcage
()
()
())
#(ribcage
#(rest)
#((top))
#("i4798"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i4771"
"i4772"
"i4773"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
#("i4761"
"i4762"
"i4763"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4758")))
(hygiene guile))
(cons #{e1 4806}#
#{e2 4807}#))
#{rest 4799}#))
#{tmp 4801}#)
(let ((#{_ 4811}# #{tmp 4800}#))
(syntax-violation
'case
"bad clause"
#{x 4757}#
#{clause 4775}#)))))))))))
(begin (#{f 4774}# #{m1 4765}# #{m2 4766}#)))))
(let ((#{body 4770}# #{tmp 4768}#))
(list '#(syntax-object
let
((top)
#(ribcage () () ())
#(ribcage #(body) #((top)) #("i4769"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
#("i4761" "i4762" "i4763"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4758")))
(hygiene guile))
(list (list '#(syntax-object
t
((top)
#(ribcage () () ())
#(ribcage
#(body)
#((top))
#("i4769"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
#("i4761" "i4762" "i4763"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4758")))
(hygiene guile))
#{e 4764}#))
#{body 4770}#))))
#{tmp 4760}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4759}#)))))))
(define make-variable-transformer
(lambda (#{proc 4812}#)
(if (procedure? #{proc 4812}#)
(begin
(letrec*
((#{trans 4815}#
(lambda (#{x 4816}#) (#{proc 4812}# #{x 4816}#))))
(begin
(set-procedure-property!
#{trans 4815}#
'variable-transformer
#t)
#{trans 4815}#)))
(error "variable transformer not a procedure"
#{proc 4812}#))))
(define identifier-syntax
(make-syntax-transformer
'identifier-syntax
'macro
(lambda (#{x 4818}#)
(let ((#{tmp 4820}# #{x 4818}#))
(let ((#{tmp 4821}#
($sc-dispatch #{tmp 4820}# '(_ any))))
(if #{tmp 4821}#
(@apply
(lambda (#{e 4823}#)
(list '#(syntax-object
lambda
((top)
#(ribcage #(e) #((top)) #("i4822"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4819")))
(hygiene guile))
'(#(syntax-object
x
((top)
#(ribcage #(e) #((top)) #("i4822"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4819")))
(hygiene guile)))
'#((#(syntax-object
macro-type
((top)
#(ribcage #(e) #((top)) #("i4822"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4819")))
(hygiene guile))
.
#(syntax-object
identifier-syntax
((top)
#(ribcage #(e) #((top)) #("i4822"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4819")))
(hygiene guile))))
(list '#(syntax-object
syntax-case
((top)
#(ribcage #(e) #((top)) #("i4822"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4819")))
(hygiene guile))
'#(syntax-object
x
((top)
#(ribcage #(e) #((top)) #("i4822"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4819")))
(hygiene guile))
'()
(list '#(syntax-object
id
((top)
#(ribcage #(e) #((top)) #("i4822"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4819")))
(hygiene guile))
'(#(syntax-object
identifier?
((top)
#(ribcage #(e) #((top)) #("i4822"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4819")))
(hygiene guile))
(#(syntax-object
syntax
((top)
#(ribcage #(e) #((top)) #("i4822"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4819")))
(hygiene guile))
#(syntax-object
id
((top)
#(ribcage #(e) #((top)) #("i4822"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4819")))
(hygiene guile))))
(list '#(syntax-object
syntax
((top)
#(ribcage #(e) #((top)) #("i4822"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4819")))
(hygiene guile))
#{e 4823}#))
(list '(#(syntax-object
_
((top)
#(ribcage #(e) #((top)) #("i4822"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4819")))
(hygiene guile))
#(syntax-object
x
((top)
#(ribcage #(e) #((top)) #("i4822"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4819")))
(hygiene guile))
#(syntax-object
...
((top)
#(ribcage #(e) #((top)) #("i4822"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4819")))
(hygiene guile)))
(list '#(syntax-object
syntax
((top)
#(ribcage #(e) #((top)) #("i4822"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4819")))
(hygiene guile))
(cons #{e 4823}#
'(#(syntax-object
x
((top)
#(ribcage
#(e)
#((top))
#("i4822"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4819")))
(hygiene guile))
#(syntax-object
...
((top)
#(ribcage
#(e)
#((top))
#("i4822"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4819")))
(hygiene guile)))))))))
#{tmp 4821}#)
(let ((#{tmp 4824}#
($sc-dispatch
#{tmp 4820}#
'(_ (any any)
((#(free-id
#(syntax-object
set!
((top)
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4819")))
(hygiene guile)))
any
any)
any)))))
(if (if #{tmp 4824}#
(@apply
(lambda (#{id 4830}#
#{exp1 4831}#
#{var 4832}#
#{val 4833}#
#{exp2 4834}#)
(if (identifier? #{id 4830}#)
(identifier? #{var 4832}#)
#f))
#{tmp 4824}#)
#f)
(@apply
(lambda (#{id 4842}#
#{exp1 4843}#
#{var 4844}#
#{val 4845}#
#{exp2 4846}#)
(list '#(syntax-object
make-variable-transformer
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4837" "i4838" "i4839" "i4840" "i4841"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4819")))
(hygiene guile))
(list '#(syntax-object
lambda
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4837"
"i4838"
"i4839"
"i4840"
"i4841"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4819")))
(hygiene guile))
'(#(syntax-object
x
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4837"
"i4838"
"i4839"
"i4840"
"i4841"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4819")))
(hygiene guile)))
'#((#(syntax-object
macro-type
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4837"
"i4838"
"i4839"
"i4840"
"i4841"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4819")))
(hygiene guile))
.
#(syntax-object
variable-transformer
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4837"
"i4838"
"i4839"
"i4840"
"i4841"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4819")))
(hygiene guile))))
(list '#(syntax-object
syntax-case
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4837"
"i4838"
"i4839"
"i4840"
"i4841"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4819")))
(hygiene guile))
'#(syntax-object
x
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4837"
"i4838"
"i4839"
"i4840"
"i4841"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4819")))
(hygiene guile))
'(#(syntax-object
set!
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
#("i4837"
"i4838"
"i4839"
"i4840"
"i4841"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4819")))
(hygiene guile)))
(list (list '#(syntax-object
set!
((top)
#(ribcage
#(id exp1 var val exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4837"
"i4838"
"i4839"
"i4840"
"i4841"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4819")))
(hygiene guile))
#{var 4844}#
#{val 4845}#)
(list '#(syntax-object
syntax
((top)
#(ribcage
#(id exp1 var val exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4837"
"i4838"
"i4839"
"i4840"
"i4841"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4819")))
(hygiene guile))
#{exp2 4846}#))
(list (cons #{id 4842}#
'(#(syntax-object
x
((top)
#(ribcage
#(id
exp1
var
val
exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4837"
"i4838"
"i4839"
"i4840"
"i4841"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4819")))
(hygiene guile))
#(syntax-object
...
((top)
#(ribcage
#(id
exp1
var
val
exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4837"
"i4838"
"i4839"
"i4840"
"i4841"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4819")))
(hygiene guile))))
(list '#(syntax-object
syntax
((top)
#(ribcage
#(id exp1 var val exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4837"
"i4838"
"i4839"
"i4840"
"i4841"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4819")))
(hygiene guile))
(cons #{exp1 4843}#
'(#(syntax-object
x
((top)
#(ribcage
#(id
exp1
var
val
exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4837"
"i4838"
"i4839"
"i4840"
"i4841"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4819")))
(hygiene guile))
#(syntax-object
...
((top)
#(ribcage
#(id
exp1
var
val
exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4837"
"i4838"
"i4839"
"i4840"
"i4841"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i4819")))
(hygiene
guile))))))
(list #{id 4842}#
(list '#(syntax-object
identifier?
((top)
#(ribcage
#(id exp1 var val exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4837"
"i4838"
"i4839"
"i4840"
"i4841"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4819")))
(hygiene guile))
(list '#(syntax-object
syntax
((top)
#(ribcage
#(id
exp1
var
val
exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4837"
"i4838"
"i4839"
"i4840"
"i4841"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4819")))
(hygiene guile))
#{id 4842}#))
(list '#(syntax-object
syntax
((top)
#(ribcage
#(id exp1 var val exp2)
#((top)
(top)
(top)
(top)
(top))
#("i4837"
"i4838"
"i4839"
"i4840"
"i4841"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i4819")))
(hygiene guile))
#{exp1 4843}#))))))
#{tmp 4824}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4820}#)))))))))
(define define*
(make-syntax-transformer
'define*
'macro
(lambda (#{x 4847}#)
(let ((#{tmp 4849}# #{x 4847}#))
(let ((#{tmp 4850}#
($sc-dispatch
#{tmp 4849}#
'(_ (any . any) any . each-any))))
(if #{tmp 4850}#
(@apply
(lambda (#{id 4855}#
#{args 4856}#
#{b0 4857}#
#{b1 4858}#)
(list '#(syntax-object
define
((top)
#(ribcage
#(id args b0 b1)
#((top) (top) (top) (top))
#("i4851" "i4852" "i4853" "i4854"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4848")))
(hygiene guile))
#{id 4855}#
(cons '#(syntax-object
lambda*
((top)
#(ribcage
#(id args b0 b1)
#((top) (top) (top) (top))
#("i4851" "i4852" "i4853" "i4854"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4848")))
(hygiene guile))
(cons #{args 4856}#
(cons #{b0 4857}# #{b1 4858}#)))))
#{tmp 4850}#)
(let ((#{tmp 4860}#
($sc-dispatch #{tmp 4849}# '(_ any any))))
(if (if #{tmp 4860}#
(@apply
(lambda (#{id 4863}# #{val 4864}#)
(identifier?
'#(syntax-object
x
((top)
#(ribcage
#(id val)
#((top) (top))
#("i4861" "i4862"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4848")))
(hygiene guile))))
#{tmp 4860}#)
#f)
(@apply
(lambda (#{id 4867}# #{val 4868}#)
(list '#(syntax-object
define
((top)
#(ribcage
#(id val)
#((top) (top))
#("i4865" "i4866"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i4848")))
(hygiene guile))
#{id 4867}#
#{val 4868}#))
#{tmp 4860}#)
(syntax-violation
#f
"source expression failed to match any pattern"
#{tmp 4849}#)))))))))