mes/mes/module/mes/psyntax.pp

9653 lines
590 KiB
Scheme

;;; -*-scheme-*-
;;; GNU Mes --- Maxwell Equations of Software
;;; Copyright (C) 2016, 2017, 2018 Free Software Foundation, Inc.
;;;
;;; This file is part of GNU Mes.
;;;
;;; GNU Mes is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Mes is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Mes. If not, see <http://www.gnu.org/licenses/>.
;;; Commentary:
;;; This file is generated from psyntax.ss.
;;; Code:
(letrec ((syntmp-lambda-var-list-167
(lambda (syntmp-vars-552)
(let syntmp-lvl-553 ((syntmp-vars-554 syntmp-vars-552)
(syntmp-ls-555 (quote ()))
(syntmp-w-556 (quote (()))))
(cond ((pair? syntmp-vars-554)
(syntmp-lvl-553
(cdr syntmp-vars-554)
(cons (syntmp-wrap-146
(car syntmp-vars-554)
syntmp-w-556)
syntmp-ls-555)
syntmp-w-556))
((syntmp-id?-118 syntmp-vars-554)
(cons (syntmp-wrap-146 syntmp-vars-554 syntmp-w-556)
syntmp-ls-555))
((null? syntmp-vars-554) syntmp-ls-555)
((syntmp-syntax-object?-104 syntmp-vars-554)
(syntmp-lvl-553
(syntmp-syntax-object-expression-105
syntmp-vars-554)
syntmp-ls-555
(syntmp-join-wraps-137
syntmp-w-556
(syntmp-syntax-object-wrap-106 syntmp-vars-554))))
((syntmp-annotation?-92 syntmp-vars-554)
(syntmp-lvl-553
(annotation-expression syntmp-vars-554)
syntmp-ls-555
syntmp-w-556))
(else (cons syntmp-vars-554 syntmp-ls-555))))))
(syntmp-gen-var-166
(lambda (syntmp-id-557)
(let ((syntmp-id-558
(if (syntmp-syntax-object?-104 syntmp-id-557)
(syntmp-syntax-object-expression-105
syntmp-id-557)
syntmp-id-557)))
(if (syntmp-annotation?-92 syntmp-id-558)
(gensym
(symbol->string
(annotation-expression syntmp-id-558)))
(gensym (symbol->string syntmp-id-558))))))
(syntmp-strip-165
(lambda (syntmp-x-559 syntmp-w-560)
(if (memq 'top
(syntmp-wrap-marks-121 syntmp-w-560))
(if (or (syntmp-annotation?-92 syntmp-x-559)
(and (pair? syntmp-x-559)
(syntmp-annotation?-92 (car syntmp-x-559))))
(syntmp-strip-annotation-164 syntmp-x-559 #f)
syntmp-x-559)
(let syntmp-f-561 ((syntmp-x-562 syntmp-x-559))
(cond ((syntmp-syntax-object?-104 syntmp-x-562)
(syntmp-strip-165
(syntmp-syntax-object-expression-105
syntmp-x-562)
(syntmp-syntax-object-wrap-106 syntmp-x-562)))
((pair? syntmp-x-562)
(let ((syntmp-a-563 (syntmp-f-561 (car syntmp-x-562)))
(syntmp-d-564 (syntmp-f-561 (cdr syntmp-x-562))))
(if (and (eq? syntmp-a-563 (car syntmp-x-562))
(eq? syntmp-d-564 (cdr syntmp-x-562)))
syntmp-x-562
(cons syntmp-a-563 syntmp-d-564))))
((vector? syntmp-x-562)
(let ((syntmp-old-565 (vector->list syntmp-x-562)))
(let ((syntmp-new-566
(map syntmp-f-561 syntmp-old-565)))
(if (andmap eq? syntmp-old-565 syntmp-new-566)
syntmp-x-562
(list->vector syntmp-new-566)))))
(else syntmp-x-562))))))
(syntmp-strip-annotation-164
(lambda (syntmp-x-567 syntmp-parent-568)
(cond ((pair? syntmp-x-567)
(let ((syntmp-new-569 (cons #f #f)))
(begin
(when syntmp-parent-568
(set-annotation-stripped!
syntmp-parent-568
syntmp-new-569))
(set-car!
syntmp-new-569
(syntmp-strip-annotation-164
(car syntmp-x-567)
#f))
(set-cdr!
syntmp-new-569
(syntmp-strip-annotation-164
(cdr syntmp-x-567)
#f))
syntmp-new-569)))
((syntmp-annotation?-92 syntmp-x-567)
(or (annotation-stripped syntmp-x-567)
(syntmp-strip-annotation-164
(annotation-expression syntmp-x-567)
syntmp-x-567)))
((vector? syntmp-x-567)
(let ((syntmp-new-570
(make-vector (vector-length syntmp-x-567))))
(begin
(when syntmp-parent-568
(set-annotation-stripped!
syntmp-parent-568
syntmp-new-570))
(let syntmp-loop-571 ((syntmp-i-572
(- (vector-length syntmp-x-567)
1)))
(unless
(syntmp-fx<-91 syntmp-i-572 0)
(vector-set!
syntmp-new-570
syntmp-i-572
(syntmp-strip-annotation-164
(vector-ref syntmp-x-567 syntmp-i-572)
#f))
(syntmp-loop-571 (syntmp-fx--89 syntmp-i-572 1))))
syntmp-new-570)))
(else syntmp-x-567))))
(syntmp-ellipsis?-163
(lambda (syntmp-e-573 syntmp-r-574)
(and (syntmp-nonsymbol-id?-117 syntmp-e-573)
(let ((syntmp-id-575
(syntmp-make-syntax-object-103
'$sc-ellipsis
(syntmp-syntax-object-wrap-106 syntmp-e-573))))
(let ((syntmp-n-576
(syntmp-id-var-name-140
syntmp-id-575
'(()))))
(let ((syntmp-b-577
(syntmp-lookup-115 syntmp-n-576 syntmp-r-574)))
(if (eq? (syntmp-binding-type-110 syntmp-b-577)
'ellipsis)
(syntmp-bound-id=?-142
syntmp-e-573
(syntmp-binding-value-111 syntmp-b-577))
(syntmp-free-id=?-141
syntmp-e-573
'#(syntax-object
...
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(b) #((top)) #("i"))
#(ribcage () () ())
#(ribcage #(n) #((top)) #("i"))
#(ribcage () () ())
#(ribcage #(id) #((top)) #("i"))
#(ribcage () () ())
#(ribcage #(e r) #((top) (top)) #("i" "i"))
#(ribcage
(lambda-var-list
gen-var
strip
strip-annotation
ellipsis?
chi-void
eval-local-transformer
chi-local-syntax
chi-lambda-clause
chi-body
chi-macro
chi-application
chi-expr
chi
chi-top
syntax-type
chi-when-list
chi-install-global
chi-top-sequence
chi-sequence
source-wrap
wrap
bound-id-member?
distinct-bound-ids?
valid-bound-ids?
bound-id=?
free-id=?
id-var-name
same-marks?
join-marks
join-wraps
smart-append
make-binding-wrap
extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
set-ribcage-symnames!
ribcage-labels
ribcage-marks
ribcage-symnames
ribcage?
make-ribcage
gen-labels
gen-label
make-rename
rename-marks
rename-new
rename-old
subst-rename?
wrap-subst
wrap-marks
make-wrap
id-sym-name&marks
id-sym-name
id?
nonsymbol-id?
global-extend
lookup
macros-only-env
extend-var-env
extend-env
null-env
binding-value
binding-type
make-binding
arg-check
source-annotation
no-source
unannotate
set-syntax-object-wrap!
set-syntax-object-expression!
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
build-global-definition
build-global-assignment
build-global-reference
build-lexical-assignment
build-lexical-reference
build-conditional
build-application
get-global-definition-hook
put-global-definition-hook
gensym-hook
error-hook
local-eval-hook
top-level-eval-hook
annotation?
fx<
fx=
fx-
fx+
noexpand)
((top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top))
("i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"))
#(ribcage
(define-structure)
((top))
("i"))))))))))))
(syntmp-chi-void-162
(lambda () (list (quote void))))
(syntmp-eval-local-transformer-161
(lambda (syntmp-expanded-578)
(let ((syntmp-p-579
(syntmp-local-eval-hook-94 syntmp-expanded-578)))
(if (procedure? syntmp-p-579)
syntmp-p-579
(syntax-error
syntmp-p-579
"nonprocedure transformer")))))
(syntmp-chi-local-syntax-160
(lambda (syntmp-rec?-580
syntmp-e-581
syntmp-r-582
syntmp-w-583
syntmp-s-584
syntmp-k-585)
((lambda (syntmp-tmp-586)
((lambda (syntmp-tmp-587)
(if syntmp-tmp-587
(apply (lambda (syntmp-_-588
syntmp-id-589
syntmp-val-590
syntmp-e1-591
syntmp-e2-592)
(let ((syntmp-ids-593 syntmp-id-589))
(if (not (syntmp-valid-bound-ids?-143
syntmp-ids-593))
(syntax-error
syntmp-e-581
"duplicate bound keyword in")
(let ((syntmp-labels-595
(syntmp-gen-labels-124
syntmp-ids-593)))
(let ((syntmp-new-w-596
(syntmp-make-binding-wrap-135
syntmp-ids-593
syntmp-labels-595
syntmp-w-583)))
(syntmp-k-585
(cons syntmp-e1-591 syntmp-e2-592)
(syntmp-extend-env-112
syntmp-labels-595
(let ((syntmp-w-598
(if syntmp-rec?-580
syntmp-new-w-596
syntmp-w-583))
(syntmp-trans-r-599
(syntmp-macros-only-env-114
syntmp-r-582)))
(map (lambda (syntmp-x-600)
(cons 'macro
(syntmp-eval-local-transformer-161
(syntmp-chi-154
syntmp-x-600
syntmp-trans-r-599
syntmp-w-598))))
syntmp-val-590))
syntmp-r-582)
syntmp-new-w-596
syntmp-s-584))))))
syntmp-tmp-587)
((lambda (syntmp-_-602)
(syntax-error
(syntmp-source-wrap-147
syntmp-e-581
syntmp-w-583
syntmp-s-584)))
syntmp-tmp-586)))
(syntax-dispatch
syntmp-tmp-586
'(any #(each (any any)) any . each-any))))
syntmp-e-581)))
(syntmp-chi-lambda-clause-159
(lambda (syntmp-e-603
syntmp-c-604
syntmp-r-605
syntmp-w-606
syntmp-k-607)
((lambda (syntmp-tmp-608)
((lambda (syntmp-tmp-609)
(if syntmp-tmp-609
(apply (lambda (syntmp-id-610 syntmp-e1-611 syntmp-e2-612)
(let ((syntmp-ids-613 syntmp-id-610))
(if (not (syntmp-valid-bound-ids?-143
syntmp-ids-613))
(syntax-error
syntmp-e-603
"invalid parameter list in")
(let ((syntmp-labels-615
(syntmp-gen-labels-124
syntmp-ids-613))
(syntmp-new-vars-616
(map syntmp-gen-var-166
syntmp-ids-613)))
(syntmp-k-607
syntmp-new-vars-616
(syntmp-chi-body-158
(cons syntmp-e1-611 syntmp-e2-612)
syntmp-e-603
(syntmp-extend-var-env-113
syntmp-labels-615
syntmp-new-vars-616
syntmp-r-605)
(syntmp-make-binding-wrap-135
syntmp-ids-613
syntmp-labels-615
syntmp-w-606)))))))
syntmp-tmp-609)
((lambda (syntmp-tmp-618)
(if syntmp-tmp-618
(apply (lambda (syntmp-ids-619
syntmp-e1-620
syntmp-e2-621)
(let ((syntmp-old-ids-622
(syntmp-lambda-var-list-167
syntmp-ids-619)))
(if (not (syntmp-valid-bound-ids?-143
syntmp-old-ids-622))
(syntax-error
syntmp-e-603
"invalid parameter list in")
(let ((syntmp-labels-623
(syntmp-gen-labels-124
syntmp-old-ids-622))
(syntmp-new-vars-624
(map syntmp-gen-var-166
syntmp-old-ids-622)))
(syntmp-k-607
(let syntmp-f-625 ((syntmp-ls1-626
(cdr syntmp-new-vars-624))
(syntmp-ls2-627
(car syntmp-new-vars-624)))
(if (null? syntmp-ls1-626)
syntmp-ls2-627
(syntmp-f-625
(cdr syntmp-ls1-626)
(cons (car syntmp-ls1-626)
syntmp-ls2-627))))
(syntmp-chi-body-158
(cons syntmp-e1-620 syntmp-e2-621)
syntmp-e-603
(syntmp-extend-var-env-113
syntmp-labels-623
syntmp-new-vars-624
syntmp-r-605)
(syntmp-make-binding-wrap-135
syntmp-old-ids-622
syntmp-labels-623
syntmp-w-606)))))))
syntmp-tmp-618)
((lambda (syntmp-_-629)
(syntax-error syntmp-e-603))
syntmp-tmp-608)))
(syntax-dispatch
syntmp-tmp-608
'(any any . each-any)))))
(syntax-dispatch
syntmp-tmp-608
'(each-any any . each-any))))
syntmp-c-604)))
(syntmp-chi-body-158
(lambda (syntmp-body-630
syntmp-outer-form-631
syntmp-r-632
syntmp-w-633)
(let ((syntmp-r-634
(cons '("placeholder" placeholder)
syntmp-r-632)))
(let ((syntmp-ribcage-635
(syntmp-make-ribcage-125
'()
'()
'())))
(let ((syntmp-w-636
(syntmp-make-wrap-120
(syntmp-wrap-marks-121 syntmp-w-633)
(cons syntmp-ribcage-635
(syntmp-wrap-subst-122 syntmp-w-633)))))
(let syntmp-parse-637 ((syntmp-body-638
(map (lambda (syntmp-x-644)
(cons syntmp-r-634
(syntmp-wrap-146
syntmp-x-644
syntmp-w-636)))
syntmp-body-630))
(syntmp-ids-639 (quote ()))
(syntmp-labels-640 (quote ()))
(syntmp-vars-641 (quote ()))
(syntmp-vals-642 (quote ()))
(syntmp-bindings-643 (quote ())))
(if (null? syntmp-body-638)
(syntax-error
syntmp-outer-form-631
"no expressions in body")
(let ((syntmp-e-645 (cdar syntmp-body-638))
(syntmp-er-646 (caar syntmp-body-638)))
(call-with-values
(lambda ()
(syntmp-syntax-type-152
syntmp-e-645
syntmp-er-646
'(())
#f
syntmp-ribcage-635))
(lambda (syntmp-type-647
syntmp-value-648
syntmp-e-649
syntmp-w-650
syntmp-s-651)
(let ((syntmp-t-652 syntmp-type-647))
(if (memv syntmp-t-652 (quote (define-form)))
(let ((syntmp-id-653
(syntmp-wrap-146
syntmp-value-648
syntmp-w-650))
(syntmp-label-654
(syntmp-gen-label-123)))
(let ((syntmp-var-655
(syntmp-gen-var-166 syntmp-id-653)))
(begin
(syntmp-extend-ribcage!-134
syntmp-ribcage-635
syntmp-id-653
syntmp-label-654)
(syntmp-parse-637
(cdr syntmp-body-638)
(cons syntmp-id-653 syntmp-ids-639)
(cons syntmp-label-654
syntmp-labels-640)
(cons syntmp-var-655 syntmp-vars-641)
(cons (cons syntmp-er-646
(syntmp-wrap-146
syntmp-e-649
syntmp-w-650))
syntmp-vals-642)
(cons (cons 'lexical
syntmp-var-655)
syntmp-bindings-643)))))
(if (memv syntmp-t-652
'(define-syntax-form))
(let ((syntmp-id-656
(syntmp-wrap-146
syntmp-value-648
syntmp-w-650))
(syntmp-label-657
(syntmp-gen-label-123)))
(begin
(syntmp-extend-ribcage!-134
syntmp-ribcage-635
syntmp-id-656
syntmp-label-657)
(syntmp-parse-637
(cdr syntmp-body-638)
(cons syntmp-id-656 syntmp-ids-639)
(cons syntmp-label-657
syntmp-labels-640)
syntmp-vars-641
syntmp-vals-642
(cons (cons 'macro
(cons syntmp-er-646
(syntmp-wrap-146
syntmp-e-649
syntmp-w-650)))
syntmp-bindings-643))))
(if (memv syntmp-t-652 (quote (begin-form)))
((lambda (syntmp-tmp-658)
((lambda (syntmp-tmp-659)
(if syntmp-tmp-659
(apply (lambda (syntmp-_-660
syntmp-e1-661)
(syntmp-parse-637
(let syntmp-f-662 ((syntmp-forms-663
syntmp-e1-661))
(if (null? syntmp-forms-663)
(cdr syntmp-body-638)
(cons (cons syntmp-er-646
(syntmp-wrap-146
(car syntmp-forms-663)
syntmp-w-650))
(syntmp-f-662
(cdr syntmp-forms-663)))))
syntmp-ids-639
syntmp-labels-640
syntmp-vars-641
syntmp-vals-642
syntmp-bindings-643))
syntmp-tmp-659)
(syntax-error syntmp-tmp-658)))
(syntax-dispatch
syntmp-tmp-658
'(any . each-any))))
syntmp-e-649)
(if (memv syntmp-t-652
'(local-syntax-form))
(syntmp-chi-local-syntax-160
syntmp-value-648
syntmp-e-649
syntmp-er-646
syntmp-w-650
syntmp-s-651
(lambda (syntmp-forms-665
syntmp-er-666
syntmp-w-667
syntmp-s-668)
(syntmp-parse-637
(let syntmp-f-669 ((syntmp-forms-670
syntmp-forms-665))
(if (null? syntmp-forms-670)
(cdr syntmp-body-638)
(cons (cons syntmp-er-666
(syntmp-wrap-146
(car syntmp-forms-670)
syntmp-w-667))
(syntmp-f-669
(cdr syntmp-forms-670)))))
syntmp-ids-639
syntmp-labels-640
syntmp-vars-641
syntmp-vals-642
syntmp-bindings-643)))
(if (null? syntmp-ids-639)
(syntmp-build-sequence-99
#f
(map (lambda (syntmp-x-671)
(syntmp-chi-154
(cdr syntmp-x-671)
(car syntmp-x-671)
'(())))
(cons (cons syntmp-er-646
(syntmp-source-wrap-147
syntmp-e-649
syntmp-w-650
syntmp-s-651))
(cdr syntmp-body-638))))
(begin
(if (not (syntmp-valid-bound-ids?-143
syntmp-ids-639))
(syntax-error
syntmp-outer-form-631
"invalid or duplicate identifier in definition"))
(let syntmp-loop-672 ((syntmp-bs-673
syntmp-bindings-643)
(syntmp-er-cache-674
#f)
(syntmp-r-cache-675
#f))
(if (not (null? syntmp-bs-673))
(let ((syntmp-b-676
(car syntmp-bs-673)))
(if (eq? (car syntmp-b-676)
'macro)
(let ((syntmp-er-677
(cadr syntmp-b-676)))
(let ((syntmp-r-cache-678
(if (eq? syntmp-er-677
syntmp-er-cache-674)
syntmp-r-cache-675
(syntmp-macros-only-env-114
syntmp-er-677))))
(begin
(set-cdr!
syntmp-b-676
(syntmp-eval-local-transformer-161
(syntmp-chi-154
(cddr syntmp-b-676)
syntmp-r-cache-678
'(()))))
(syntmp-loop-672
(cdr syntmp-bs-673)
syntmp-er-677
syntmp-r-cache-678))))
(syntmp-loop-672
(cdr syntmp-bs-673)
syntmp-er-cache-674
syntmp-r-cache-675)))))
(set-cdr!
syntmp-r-634
(syntmp-extend-env-112
syntmp-labels-640
syntmp-bindings-643
(cdr syntmp-r-634)))
(syntmp-build-letrec-102
#f
syntmp-vars-641
(map (lambda (syntmp-x-679)
(syntmp-chi-154
(cdr syntmp-x-679)
(car syntmp-x-679)
'(())))
syntmp-vals-642)
(syntmp-build-sequence-99
#f
(map (lambda (syntmp-x-680)
(syntmp-chi-154
(cdr syntmp-x-680)
(car syntmp-x-680)
'(())))
(cons (cons syntmp-er-646
(syntmp-source-wrap-147
syntmp-e-649
syntmp-w-650
syntmp-s-651))
(cdr syntmp-body-638))))))))))))))))))))))
(syntmp-chi-macro-157
(lambda (syntmp-p-681
syntmp-e-682
syntmp-r-683
syntmp-w-684
syntmp-rib-685)
(letrec ((syntmp-rebuild-macro-output-686
(lambda (syntmp-x-687 syntmp-m-688)
(cond ((pair? syntmp-x-687)
(cons (syntmp-rebuild-macro-output-686
(car syntmp-x-687)
syntmp-m-688)
(syntmp-rebuild-macro-output-686
(cdr syntmp-x-687)
syntmp-m-688)))
((syntmp-syntax-object?-104 syntmp-x-687)
(let ((syntmp-w-689
(syntmp-syntax-object-wrap-106
syntmp-x-687)))
(let ((syntmp-ms-690
(syntmp-wrap-marks-121
syntmp-w-689))
(syntmp-s-691
(syntmp-wrap-subst-122
syntmp-w-689)))
(syntmp-make-syntax-object-103
(syntmp-syntax-object-expression-105
syntmp-x-687)
(if (and (pair? syntmp-ms-690)
(eq? (car syntmp-ms-690) #f))
(syntmp-make-wrap-120
(cdr syntmp-ms-690)
(if syntmp-rib-685
(cons syntmp-rib-685
(cdr syntmp-s-691))
(cdr syntmp-s-691)))
(syntmp-make-wrap-120
(cons syntmp-m-688 syntmp-ms-690)
(if syntmp-rib-685
(cons syntmp-rib-685
(cons 'shift
syntmp-s-691))
(cons 'shift
syntmp-s-691))))))))
((vector? syntmp-x-687)
(let ((syntmp-n-692
(vector-length syntmp-x-687)))
(let ((syntmp-v-693
(make-vector syntmp-n-692)))
(let syntmp-doloop-694 ((syntmp-i-695 0))
(if (syntmp-fx=-90
syntmp-i-695
syntmp-n-692)
syntmp-v-693
(begin
(vector-set!
syntmp-v-693
syntmp-i-695
(syntmp-rebuild-macro-output-686
(vector-ref
syntmp-x-687
syntmp-i-695)
syntmp-m-688))
(syntmp-doloop-694
(syntmp-fx+-88
syntmp-i-695
1))))))))
((symbol? syntmp-x-687)
(syntax-error
syntmp-x-687
"encountered raw symbol in macro output"))
(else syntmp-x-687)))))
(syntmp-rebuild-macro-output-686
(syntmp-p-681
(syntmp-wrap-146
syntmp-e-682
(syntmp-anti-mark-133 syntmp-w-684)))
(string #\m)))))
(syntmp-chi-application-156
(lambda (syntmp-x-696
syntmp-e-697
syntmp-r-698
syntmp-w-699
syntmp-s-700)
((lambda (syntmp-tmp-701)
((lambda (syntmp-tmp-702)
(if syntmp-tmp-702
(apply (lambda (syntmp-e0-703 syntmp-e1-704)
(cons syntmp-x-696
(map (lambda (syntmp-e-705)
(syntmp-chi-154
syntmp-e-705
syntmp-r-698
syntmp-w-699))
syntmp-e1-704)))
syntmp-tmp-702)
(syntax-error syntmp-tmp-701)))
(syntax-dispatch
syntmp-tmp-701
'(any . each-any))))
syntmp-e-697)))
(syntmp-chi-expr-155
(lambda (syntmp-type-707
syntmp-value-708
syntmp-e-709
syntmp-r-710
syntmp-w-711
syntmp-s-712)
(let ((syntmp-t-713 syntmp-type-707))
(if (memv syntmp-t-713 (quote (lexical)))
syntmp-value-708
(if (memv syntmp-t-713 (quote (core external-macro)))
(syntmp-value-708
syntmp-e-709
syntmp-r-710
syntmp-w-711
syntmp-s-712)
(if (memv syntmp-t-713 (quote (lexical-call)))
(syntmp-chi-application-156
syntmp-value-708
syntmp-e-709
syntmp-r-710
syntmp-w-711
syntmp-s-712)
(if (memv syntmp-t-713 (quote (global-call)))
(syntmp-chi-application-156
syntmp-value-708
syntmp-e-709
syntmp-r-710
syntmp-w-711
syntmp-s-712)
(if (memv syntmp-t-713 (quote (constant)))
(syntmp-build-data-98
syntmp-s-712
(syntmp-strip-165
(syntmp-source-wrap-147
syntmp-e-709
syntmp-w-711
syntmp-s-712)
'(())))
(if (memv syntmp-t-713 (quote (global)))
syntmp-value-708
(if (memv syntmp-t-713 (quote (call)))
(syntmp-chi-application-156
(syntmp-chi-154
(car syntmp-e-709)
syntmp-r-710
syntmp-w-711)
syntmp-e-709
syntmp-r-710
syntmp-w-711
syntmp-s-712)
(if (memv syntmp-t-713 (quote (begin-form)))
((lambda (syntmp-tmp-714)
((lambda (syntmp-tmp-715)
(if syntmp-tmp-715
(apply (lambda (syntmp-_-716
syntmp-e1-717
syntmp-e2-718)
(syntmp-chi-sequence-148
(cons syntmp-e1-717
syntmp-e2-718)
syntmp-r-710
syntmp-w-711
syntmp-s-712))
syntmp-tmp-715)
(syntax-error syntmp-tmp-714)))
(syntax-dispatch
syntmp-tmp-714
'(any any . each-any))))
syntmp-e-709)
(if (memv syntmp-t-713
'(local-syntax-form))
(syntmp-chi-local-syntax-160
syntmp-value-708
syntmp-e-709
syntmp-r-710
syntmp-w-711
syntmp-s-712
syntmp-chi-sequence-148)
(if (memv syntmp-t-713
'(eval-when-form))
((lambda (syntmp-tmp-720)
((lambda (syntmp-tmp-721)
(if syntmp-tmp-721
(apply (lambda (syntmp-_-722
syntmp-x-723
syntmp-e1-724
syntmp-e2-725)
(let ((syntmp-when-list-726
(syntmp-chi-when-list-151
syntmp-e-709
syntmp-x-723
syntmp-w-711)))
(if (memq 'eval
syntmp-when-list-726)
(syntmp-chi-sequence-148
(cons syntmp-e1-724
syntmp-e2-725)
syntmp-r-710
syntmp-w-711
syntmp-s-712)
(syntmp-chi-void-162))))
syntmp-tmp-721)
(syntax-error syntmp-tmp-720)))
(syntax-dispatch
syntmp-tmp-720
'(any each-any any . each-any))))
syntmp-e-709)
(if (memv syntmp-t-713
'(define-form define-syntax-form))
(syntax-error
(syntmp-wrap-146
syntmp-value-708
syntmp-w-711)
"invalid context for definition of")
(if (memv syntmp-t-713 (quote (syntax)))
(syntax-error
(syntmp-source-wrap-147
syntmp-e-709
syntmp-w-711
syntmp-s-712)
"reference to pattern variable outside syntax form")
(if (memv syntmp-t-713
'(displaced-lexical))
(syntax-error
(syntmp-source-wrap-147
syntmp-e-709
syntmp-w-711
syntmp-s-712)
"reference to identifier outside its scope")
(syntax-error
(syntmp-source-wrap-147
syntmp-e-709
syntmp-w-711
syntmp-s-712))))))))))))))))))
(syntmp-chi-154
(lambda (syntmp-e-729 syntmp-r-730 syntmp-w-731)
(call-with-values
(lambda ()
(syntmp-syntax-type-152
syntmp-e-729
syntmp-r-730
syntmp-w-731
#f
#f))
(lambda (syntmp-type-732
syntmp-value-733
syntmp-e-734
syntmp-w-735
syntmp-s-736)
(syntmp-chi-expr-155
syntmp-type-732
syntmp-value-733
syntmp-e-734
syntmp-r-730
syntmp-w-735
syntmp-s-736)))))
(syntmp-chi-top-153
(lambda (syntmp-e-737
syntmp-r-738
syntmp-w-739
syntmp-m-740
syntmp-esew-741)
(call-with-values
(lambda ()
(syntmp-syntax-type-152
syntmp-e-737
syntmp-r-738
syntmp-w-739
#f
#f))
(lambda (syntmp-type-754
syntmp-value-755
syntmp-e-756
syntmp-w-757
syntmp-s-758)
(let ((syntmp-t-759 syntmp-type-754))
(if (memv syntmp-t-759 (quote (begin-form)))
((lambda (syntmp-tmp-760)
((lambda (syntmp-tmp-761)
(if syntmp-tmp-761
(apply (lambda (syntmp-_-762)
(syntmp-chi-void-162))
syntmp-tmp-761)
((lambda (syntmp-tmp-763)
(if syntmp-tmp-763
(apply (lambda (syntmp-_-764
syntmp-e1-765
syntmp-e2-766)
(syntmp-chi-top-sequence-149
(cons syntmp-e1-765 syntmp-e2-766)
syntmp-r-738
syntmp-w-757
syntmp-s-758
syntmp-m-740
syntmp-esew-741))
syntmp-tmp-763)
(syntax-error syntmp-tmp-760)))
(syntax-dispatch
syntmp-tmp-760
'(any any . each-any)))))
(syntax-dispatch syntmp-tmp-760 (quote (any)))))
syntmp-e-756)
(if (memv syntmp-t-759 (quote (local-syntax-form)))
(syntmp-chi-local-syntax-160
syntmp-value-755
syntmp-e-756
syntmp-r-738
syntmp-w-757
syntmp-s-758
(lambda (syntmp-body-768
syntmp-r-769
syntmp-w-770
syntmp-s-771)
(syntmp-chi-top-sequence-149
syntmp-body-768
syntmp-r-769
syntmp-w-770
syntmp-s-771
syntmp-m-740
syntmp-esew-741)))
(if (memv syntmp-t-759 (quote (eval-when-form)))
((lambda (syntmp-tmp-772)
((lambda (syntmp-tmp-773)
(if syntmp-tmp-773
(apply (lambda (syntmp-_-774
syntmp-x-775
syntmp-e1-776
syntmp-e2-777)
(let ((syntmp-when-list-778
(syntmp-chi-when-list-151
syntmp-e-756
syntmp-x-775
syntmp-w-757))
(syntmp-body-779
(cons syntmp-e1-776
syntmp-e2-777)))
(cond ((eq? syntmp-m-740 (quote e))
(if (memq 'eval
syntmp-when-list-778)
(syntmp-chi-top-sequence-149
syntmp-body-779
syntmp-r-738
syntmp-w-757
syntmp-s-758
'e
'(eval))
(syntmp-chi-void-162)))
((memq 'load
syntmp-when-list-778)
(if (or (memq 'compile
syntmp-when-list-778)
(and (eq? syntmp-m-740
'c&e)
(memq 'eval
syntmp-when-list-778)))
(syntmp-chi-top-sequence-149
syntmp-body-779
syntmp-r-738
syntmp-w-757
syntmp-s-758
'c&e
'(compile load))
(if (memq syntmp-m-740
'(c c&e))
(syntmp-chi-top-sequence-149
syntmp-body-779
syntmp-r-738
syntmp-w-757
syntmp-s-758
'c
'(load))
(syntmp-chi-void-162))))
((or (memq 'compile
syntmp-when-list-778)
(and (eq? syntmp-m-740
'c&e)
(memq 'eval
syntmp-when-list-778)))
(syntmp-top-level-eval-hook-93
(syntmp-chi-top-sequence-149
syntmp-body-779
syntmp-r-738
syntmp-w-757
syntmp-s-758
'e
'(eval)))
(syntmp-chi-void-162))
(else
(syntmp-chi-void-162)))))
syntmp-tmp-773)
(syntax-error syntmp-tmp-772)))
(syntax-dispatch
syntmp-tmp-772
'(any each-any any . each-any))))
syntmp-e-756)
(if (memv syntmp-t-759 (quote (define-syntax-form)))
(let ((syntmp-n-782
(syntmp-id-var-name-140
syntmp-value-755
syntmp-w-757))
(syntmp-r-783
(syntmp-macros-only-env-114 syntmp-r-738)))
(let ((syntmp-t-784 syntmp-m-740))
(if (memv syntmp-t-784 (quote (c)))
(if (memq (quote compile) syntmp-esew-741)
(let ((syntmp-e-785
(syntmp-chi-install-global-150
syntmp-n-782
(syntmp-chi-154
syntmp-e-756
syntmp-r-783
syntmp-w-757))))
(begin
(syntmp-top-level-eval-hook-93
syntmp-e-785)
(if (memq (quote load) syntmp-esew-741)
syntmp-e-785
(syntmp-chi-void-162))))
(if (memq (quote load) syntmp-esew-741)
(syntmp-chi-install-global-150
syntmp-n-782
(syntmp-chi-154
syntmp-e-756
syntmp-r-783
syntmp-w-757))
(syntmp-chi-void-162)))
(if (memv syntmp-t-784 (quote (c&e)))
(let ((syntmp-e-786
(syntmp-chi-install-global-150
syntmp-n-782
(syntmp-chi-154
syntmp-e-756
syntmp-r-783
syntmp-w-757))))
(begin
(syntmp-top-level-eval-hook-93
syntmp-e-786)
syntmp-e-786))
(begin
(if (memq (quote eval) syntmp-esew-741)
(syntmp-top-level-eval-hook-93
(syntmp-chi-install-global-150
syntmp-n-782
(syntmp-chi-154
syntmp-e-756
syntmp-r-783
syntmp-w-757))))
(syntmp-chi-void-162))))))
(if (memv syntmp-t-759 (quote (define-form)))
(let ((syntmp-n-787
(syntmp-id-var-name-140
syntmp-value-755
syntmp-w-757)))
(let ((syntmp-type-788
(syntmp-binding-type-110
(syntmp-lookup-115
syntmp-n-787
syntmp-r-738))))
(let ((syntmp-t-789 syntmp-type-788))
(if (memv syntmp-t-789 (quote (global)))
(let ((syntmp-x-790
(list 'define
syntmp-n-787
(syntmp-chi-154
syntmp-e-756
syntmp-r-738
syntmp-w-757))))
(begin
(if (eq? syntmp-m-740 (quote c&e))
(syntmp-top-level-eval-hook-93
syntmp-x-790))
syntmp-x-790))
(if (memv syntmp-t-789
'(displaced-lexical))
(syntax-error
(syntmp-wrap-146
syntmp-value-755
syntmp-w-757)
"identifier out of context")
(if (eq? syntmp-type-788
'external-macro)
(let ((syntmp-x-791
(list 'define
syntmp-n-787
(syntmp-chi-154
syntmp-e-756
syntmp-r-738
syntmp-w-757))))
(begin
(if (eq? syntmp-m-740 (quote c&e))
(syntmp-top-level-eval-hook-93
syntmp-x-791))
syntmp-x-791))
(syntax-error
(syntmp-wrap-146
syntmp-value-755
syntmp-w-757)
"cannot define keyword at top level")))))))
(let ((syntmp-x-792
(syntmp-chi-expr-155
syntmp-type-754
syntmp-value-755
syntmp-e-756
syntmp-r-738
syntmp-w-757
syntmp-s-758)))
(begin
(if (eq? syntmp-m-740 (quote c&e))
(syntmp-top-level-eval-hook-93
syntmp-x-792))
syntmp-x-792))))))))))))
(syntmp-syntax-type-152
(lambda (syntmp-e-793
syntmp-r-794
syntmp-w-795
syntmp-s-796
syntmp-rib-797)
(cond ((symbol? syntmp-e-793)
(let ((syntmp-n-798
(syntmp-id-var-name-140
syntmp-e-793
syntmp-w-795)))
(let ((syntmp-b-799
(syntmp-lookup-115 syntmp-n-798 syntmp-r-794)))
(let ((syntmp-type-800
(syntmp-binding-type-110 syntmp-b-799)))
(let ((syntmp-t-801 syntmp-type-800))
(if (memv syntmp-t-801 (quote (lexical)))
(values
syntmp-type-800
(syntmp-binding-value-111 syntmp-b-799)
syntmp-e-793
syntmp-w-795
syntmp-s-796)
(if (memv syntmp-t-801 (quote (global)))
(values
syntmp-type-800
syntmp-n-798
syntmp-e-793
syntmp-w-795
syntmp-s-796)
(if (memv syntmp-t-801 (quote (macro)))
(syntmp-syntax-type-152
(syntmp-chi-macro-157
(syntmp-binding-value-111 syntmp-b-799)
syntmp-e-793
syntmp-r-794
syntmp-w-795
syntmp-rib-797)
syntmp-r-794
'(())
syntmp-s-796
syntmp-rib-797)
(values
syntmp-type-800
(syntmp-binding-value-111 syntmp-b-799)
syntmp-e-793
syntmp-w-795
syntmp-s-796)))))))))
((pair? syntmp-e-793)
(let ((syntmp-first-802 (car syntmp-e-793)))
(if (syntmp-id?-118 syntmp-first-802)
(let ((syntmp-n-803
(syntmp-id-var-name-140
syntmp-first-802
syntmp-w-795)))
(let ((syntmp-b-804
(syntmp-lookup-115
syntmp-n-803
syntmp-r-794)))
(let ((syntmp-type-805
(syntmp-binding-type-110 syntmp-b-804)))
(let ((syntmp-t-806 syntmp-type-805))
(if (memv syntmp-t-806 (quote (lexical)))
(values
'lexical-call
(syntmp-binding-value-111 syntmp-b-804)
syntmp-e-793
syntmp-w-795
syntmp-s-796)
(if (memv syntmp-t-806 (quote (global)))
(values
'global-call
syntmp-n-803
syntmp-e-793
syntmp-w-795
syntmp-s-796)
(if (memv syntmp-t-806 (quote (macro)))
(syntmp-syntax-type-152
(syntmp-chi-macro-157
(syntmp-binding-value-111
syntmp-b-804)
syntmp-e-793
syntmp-r-794
syntmp-w-795
syntmp-rib-797)
syntmp-r-794
'(())
syntmp-s-796
syntmp-rib-797)
(if (memv syntmp-t-806
'(core external-macro))
(values
syntmp-type-805
(syntmp-binding-value-111
syntmp-b-804)
syntmp-e-793
syntmp-w-795
syntmp-s-796)
(if (memv syntmp-t-806
'(local-syntax))
(values
'local-syntax-form
(syntmp-binding-value-111
syntmp-b-804)
syntmp-e-793
syntmp-w-795
syntmp-s-796)
(if (memv syntmp-t-806
'(begin))
(values
'begin-form
#f
syntmp-e-793
syntmp-w-795
syntmp-s-796)
(if (memv syntmp-t-806
'(eval-when))
(values
'eval-when-form
#f
syntmp-e-793
syntmp-w-795
syntmp-s-796)
(if (memv syntmp-t-806
'(define))
((lambda (syntmp-tmp-807)
((lambda (syntmp-tmp-808)
(if (if syntmp-tmp-808
(apply (lambda (syntmp-_-809
syntmp-name-810
syntmp-val-811)
(syntmp-id?-118
syntmp-name-810))
syntmp-tmp-808)
#f)
(apply (lambda (syntmp-_-812
syntmp-name-813
syntmp-val-814)
(values
'define-form
syntmp-name-813
syntmp-val-814
syntmp-w-795
syntmp-s-796))
syntmp-tmp-808)
((lambda (syntmp-tmp-815)
(if (if syntmp-tmp-815
(apply (lambda (syntmp-_-816
syntmp-name-817
syntmp-args-818
syntmp-e1-819
syntmp-e2-820)
(and (syntmp-id?-118
syntmp-name-817)
(syntmp-valid-bound-ids?-143
(syntmp-lambda-var-list-167
syntmp-args-818))))
syntmp-tmp-815)
#f)
(apply (lambda (syntmp-_-821
syntmp-name-822
syntmp-args-823
syntmp-e1-824
syntmp-e2-825)
(values
'define-form
(syntmp-wrap-146
syntmp-name-822
syntmp-w-795)
(cons '#(syntax-object
lambda
((top)
#(ribcage
#(_
name
args
e1
e2)
#((top)
(top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(t)
#(("m"
top))
#("i"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(type)
#((top))
#("i"))
#(ribcage
()
()
())
#(ribcage
#(b)
#((top))
#("i"))
#(ribcage
()
()
())
#(ribcage
#(n)
#((top))
#("i"))
#(ribcage
()
()
())
#(ribcage
#(first)
#((top))
#("i"))
#(ribcage
()
()
())
#(ribcage
#(e
r
w
s
rib)
#((top)
(top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"
"i"))
#(ribcage
(lambda-var-list
gen-var
strip
strip-annotation
ellipsis?
chi-void
eval-local-transformer
chi-local-syntax
chi-lambda-clause
chi-body
chi-macro
chi-application
chi-expr
chi
chi-top
syntax-type
chi-when-list
chi-install-global
chi-top-sequence
chi-sequence
source-wrap
wrap
bound-id-member?
distinct-bound-ids?
valid-bound-ids?
bound-id=?
free-id=?
id-var-name
same-marks?
join-marks
join-wraps
smart-append
make-binding-wrap
extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
set-ribcage-symnames!
ribcage-labels
ribcage-marks
ribcage-symnames
ribcage?
make-ribcage
gen-labels
gen-label
make-rename
rename-marks
rename-new
rename-old
subst-rename?
wrap-subst
wrap-marks
make-wrap
id-sym-name&marks
id-sym-name
id?
nonsymbol-id?
global-extend
lookup
macros-only-env
extend-var-env
extend-env
null-env
binding-value
binding-type
make-binding
arg-check
source-annotation
no-source
unannotate
set-syntax-object-wrap!
set-syntax-object-expression!
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
build-global-definition
build-global-assignment
build-global-reference
build-lexical-assignment
build-lexical-reference
build-conditional
build-application
get-global-definition-hook
put-global-definition-hook
gensym-hook
error-hook
local-eval-hook
top-level-eval-hook
annotation?
fx<
fx=
fx-
fx+
noexpand)
((top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top))
("i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"))
#(ribcage
(define-structure)
((top))
("i"))))
(syntmp-wrap-146
(cons syntmp-args-823
(cons syntmp-e1-824
syntmp-e2-825))
syntmp-w-795))
'(())
syntmp-s-796))
syntmp-tmp-815)
((lambda (syntmp-tmp-827)
(if (if syntmp-tmp-827
(apply (lambda (syntmp-_-828
syntmp-name-829)
(syntmp-id?-118
syntmp-name-829))
syntmp-tmp-827)
#f)
(apply (lambda (syntmp-_-830
syntmp-name-831)
(values
'define-form
(syntmp-wrap-146
syntmp-name-831
syntmp-w-795)
'(#(syntax-object
void
((top)
#(ribcage
#(_
name)
#((top)
(top))
#("i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(t)
#(("m"
top))
#("i"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(type)
#((top))
#("i"))
#(ribcage
()
()
())
#(ribcage
#(b)
#((top))
#("i"))
#(ribcage
()
()
())
#(ribcage
#(n)
#((top))
#("i"))
#(ribcage
()
()
())
#(ribcage
#(first)
#((top))
#("i"))
#(ribcage
()
()
())
#(ribcage
#(e
r
w
s
rib)
#((top)
(top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"
"i"))
#(ribcage
(lambda-var-list
gen-var
strip
strip-annotation
ellipsis?
chi-void
eval-local-transformer
chi-local-syntax
chi-lambda-clause
chi-body
chi-macro
chi-application
chi-expr
chi
chi-top
syntax-type
chi-when-list
chi-install-global
chi-top-sequence
chi-sequence
source-wrap
wrap
bound-id-member?
distinct-bound-ids?
valid-bound-ids?
bound-id=?
free-id=?
id-var-name
same-marks?
join-marks
join-wraps
smart-append
make-binding-wrap
extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
set-ribcage-symnames!
ribcage-labels
ribcage-marks
ribcage-symnames
ribcage?
make-ribcage
gen-labels
gen-label
make-rename
rename-marks
rename-new
rename-old
subst-rename?
wrap-subst
wrap-marks
make-wrap
id-sym-name&marks
id-sym-name
id?
nonsymbol-id?
global-extend
lookup
macros-only-env
extend-var-env
extend-env
null-env
binding-value
binding-type
make-binding
arg-check
source-annotation
no-source
unannotate
set-syntax-object-wrap!
set-syntax-object-expression!
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
build-global-definition
build-global-assignment
build-global-reference
build-lexical-assignment
build-lexical-reference
build-conditional
build-application
get-global-definition-hook
put-global-definition-hook
gensym-hook
error-hook
local-eval-hook
top-level-eval-hook
annotation?
fx<
fx=
fx-
fx+
noexpand)
((top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top))
("i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"))
#(ribcage
(define-structure)
((top))
("i")))))
'(())
syntmp-s-796))
syntmp-tmp-827)
(syntax-error
syntmp-tmp-807)))
(syntax-dispatch
syntmp-tmp-807
'(any any)))))
(syntax-dispatch
syntmp-tmp-807
'(any (any . any)
any
.
each-any)))))
(syntax-dispatch
syntmp-tmp-807
'(any any any))))
syntmp-e-793)
(if (memv syntmp-t-806
'(define-syntax))
((lambda (syntmp-tmp-832)
((lambda (syntmp-tmp-833)
(if (if syntmp-tmp-833
(apply (lambda (syntmp-_-834
syntmp-name-835
syntmp-val-836)
(syntmp-id?-118
syntmp-name-835))
syntmp-tmp-833)
#f)
(apply (lambda (syntmp-_-837
syntmp-name-838
syntmp-val-839)
(values
'define-syntax-form
syntmp-name-838
syntmp-val-839
syntmp-w-795
syntmp-s-796))
syntmp-tmp-833)
(syntax-error
syntmp-tmp-832)))
(syntax-dispatch
syntmp-tmp-832
'(any any any))))
syntmp-e-793)
(if (memv syntmp-t-806
'(ellipsis))
(values
'ellipsis
(syntmp-make-syntax-object-103
(syntmp-syntax-object-expression-105
value)
(syntmp-anti-mark-133
(syntmp-syntax-object-wrap-106
value))))
(values
'call
#f
syntmp-e-793
syntmp-w-795
syntmp-s-796)))))))))))))))
(values
'call
#f
syntmp-e-793
syntmp-w-795
syntmp-s-796))))
((syntmp-syntax-object?-104 syntmp-e-793)
(syntmp-syntax-type-152
(syntmp-syntax-object-expression-105
syntmp-e-793)
syntmp-r-794
(syntmp-join-wraps-137
syntmp-w-795
(syntmp-syntax-object-wrap-106 syntmp-e-793))
#f
syntmp-rib-797))
((syntmp-annotation?-92 syntmp-e-793)
(syntmp-syntax-type-152
(annotation-expression syntmp-e-793)
syntmp-r-794
syntmp-w-795
(annotation-source syntmp-e-793)
syntmp-rib-797))
((self-evaluating? syntmp-e-793)
(values
'constant
#f
syntmp-e-793
syntmp-w-795
syntmp-s-796))
(else
(values
'other
#f
syntmp-e-793
syntmp-w-795
syntmp-s-796)))))
(syntmp-chi-when-list-151
(lambda (syntmp-e-840 syntmp-when-list-841 syntmp-w-842)
(let syntmp-f-843 ((syntmp-when-list-844 syntmp-when-list-841)
(syntmp-situations-845 (quote ())))
(if (null? syntmp-when-list-844)
syntmp-situations-845
(syntmp-f-843
(cdr syntmp-when-list-844)
(cons (let ((syntmp-x-846 (car syntmp-when-list-844)))
(cond ((syntmp-free-id=?-141
syntmp-x-846
'#(syntax-object
compile
((top)
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))
#(ribcage () () ())
#(ribcage
#(f when-list situations)
#((top) (top) (top))
#("i" "i" "i"))
#(ribcage () () ())
#(ribcage
#(e when-list w)
#((top) (top) (top))
#("i" "i" "i"))
#(ribcage
(lambda-var-list
gen-var
strip
strip-annotation
ellipsis?
chi-void
eval-local-transformer
chi-local-syntax
chi-lambda-clause
chi-body
chi-macro
chi-application
chi-expr
chi
chi-top
syntax-type
chi-when-list
chi-install-global
chi-top-sequence
chi-sequence
source-wrap
wrap
bound-id-member?
distinct-bound-ids?
valid-bound-ids?
bound-id=?
free-id=?
id-var-name
same-marks?
join-marks
join-wraps
smart-append
make-binding-wrap
extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
set-ribcage-symnames!
ribcage-labels
ribcage-marks
ribcage-symnames
ribcage?
make-ribcage
gen-labels
gen-label
make-rename
rename-marks
rename-new
rename-old
subst-rename?
wrap-subst
wrap-marks
make-wrap
id-sym-name&marks
id-sym-name
id?
nonsymbol-id?
global-extend
lookup
macros-only-env
extend-var-env
extend-env
null-env
binding-value
binding-type
make-binding
arg-check
source-annotation
no-source
unannotate
set-syntax-object-wrap!
set-syntax-object-expression!
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
build-global-definition
build-global-assignment
build-global-reference
build-lexical-assignment
build-lexical-reference
build-conditional
build-application
get-global-definition-hook
put-global-definition-hook
gensym-hook
error-hook
local-eval-hook
top-level-eval-hook
annotation?
fx<
fx=
fx-
fx+
noexpand)
((top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top))
("i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"))
#(ribcage
(define-structure)
((top))
("i")))))
'compile)
((syntmp-free-id=?-141
syntmp-x-846
'#(syntax-object
load
((top)
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))
#(ribcage () () ())
#(ribcage
#(f when-list situations)
#((top) (top) (top))
#("i" "i" "i"))
#(ribcage () () ())
#(ribcage
#(e when-list w)
#((top) (top) (top))
#("i" "i" "i"))
#(ribcage
(lambda-var-list
gen-var
strip
strip-annotation
ellipsis?
chi-void
eval-local-transformer
chi-local-syntax
chi-lambda-clause
chi-body
chi-macro
chi-application
chi-expr
chi
chi-top
syntax-type
chi-when-list
chi-install-global
chi-top-sequence
chi-sequence
source-wrap
wrap
bound-id-member?
distinct-bound-ids?
valid-bound-ids?
bound-id=?
free-id=?
id-var-name
same-marks?
join-marks
join-wraps
smart-append
make-binding-wrap
extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
set-ribcage-symnames!
ribcage-labels
ribcage-marks
ribcage-symnames
ribcage?
make-ribcage
gen-labels
gen-label
make-rename
rename-marks
rename-new
rename-old
subst-rename?
wrap-subst
wrap-marks
make-wrap
id-sym-name&marks
id-sym-name
id?
nonsymbol-id?
global-extend
lookup
macros-only-env
extend-var-env
extend-env
null-env
binding-value
binding-type
make-binding
arg-check
source-annotation
no-source
unannotate
set-syntax-object-wrap!
set-syntax-object-expression!
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
build-global-definition
build-global-assignment
build-global-reference
build-lexical-assignment
build-lexical-reference
build-conditional
build-application
get-global-definition-hook
put-global-definition-hook
gensym-hook
error-hook
local-eval-hook
top-level-eval-hook
annotation?
fx<
fx=
fx-
fx+
noexpand)
((top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top))
("i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"))
#(ribcage
(define-structure)
((top))
("i")))))
'load)
((syntmp-free-id=?-141
syntmp-x-846
'#(syntax-object
eval
((top)
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))
#(ribcage () () ())
#(ribcage
#(f when-list situations)
#((top) (top) (top))
#("i" "i" "i"))
#(ribcage () () ())
#(ribcage
#(e when-list w)
#((top) (top) (top))
#("i" "i" "i"))
#(ribcage
(lambda-var-list
gen-var
strip
strip-annotation
ellipsis?
chi-void
eval-local-transformer
chi-local-syntax
chi-lambda-clause
chi-body
chi-macro
chi-application
chi-expr
chi
chi-top
syntax-type
chi-when-list
chi-install-global
chi-top-sequence
chi-sequence
source-wrap
wrap
bound-id-member?
distinct-bound-ids?
valid-bound-ids?
bound-id=?
free-id=?
id-var-name
same-marks?
join-marks
join-wraps
smart-append
make-binding-wrap
extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
set-ribcage-symnames!
ribcage-labels
ribcage-marks
ribcage-symnames
ribcage?
make-ribcage
gen-labels
gen-label
make-rename
rename-marks
rename-new
rename-old
subst-rename?
wrap-subst
wrap-marks
make-wrap
id-sym-name&marks
id-sym-name
id?
nonsymbol-id?
global-extend
lookup
macros-only-env
extend-var-env
extend-env
null-env
binding-value
binding-type
make-binding
arg-check
source-annotation
no-source
unannotate
set-syntax-object-wrap!
set-syntax-object-expression!
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
build-global-definition
build-global-assignment
build-global-reference
build-lexical-assignment
build-lexical-reference
build-conditional
build-application
get-global-definition-hook
put-global-definition-hook
gensym-hook
error-hook
local-eval-hook
top-level-eval-hook
annotation?
fx<
fx=
fx-
fx+
noexpand)
((top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top))
("i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"))
#(ribcage
(define-structure)
((top))
("i")))))
'eval)
(else
(syntax-error
(syntmp-wrap-146 syntmp-x-846 syntmp-w-842)
"invalid eval-when situation"))))
syntmp-situations-845))))))
(syntmp-chi-install-global-150
(lambda (syntmp-name-847 syntmp-e-848)
(list 'install-global-transformer
(syntmp-build-data-98 #f syntmp-name-847)
syntmp-e-848)))
(syntmp-chi-top-sequence-149
(lambda (syntmp-body-849
syntmp-r-850
syntmp-w-851
syntmp-s-852
syntmp-m-853
syntmp-esew-854)
(syntmp-build-sequence-99
syntmp-s-852
(let syntmp-dobody-855 ((syntmp-body-856 syntmp-body-849)
(syntmp-r-857 syntmp-r-850)
(syntmp-w-858 syntmp-w-851)
(syntmp-m-859 syntmp-m-853)
(syntmp-esew-860 syntmp-esew-854))
(if (null? syntmp-body-856)
'()
(let ((syntmp-first-861
(syntmp-chi-top-153
(car syntmp-body-856)
syntmp-r-857
syntmp-w-858
syntmp-m-859
syntmp-esew-860)))
(cons syntmp-first-861
(syntmp-dobody-855
(cdr syntmp-body-856)
syntmp-r-857
syntmp-w-858
syntmp-m-859
syntmp-esew-860))))))))
(syntmp-chi-sequence-148
(lambda (syntmp-body-862
syntmp-r-863
syntmp-w-864
syntmp-s-865)
(syntmp-build-sequence-99
syntmp-s-865
(let syntmp-dobody-866 ((syntmp-body-867 syntmp-body-862)
(syntmp-r-868 syntmp-r-863)
(syntmp-w-869 syntmp-w-864))
(if (null? syntmp-body-867)
'()
(let ((syntmp-first-870
(syntmp-chi-154
(car syntmp-body-867)
syntmp-r-868
syntmp-w-869)))
(cons syntmp-first-870
(syntmp-dobody-866
(cdr syntmp-body-867)
syntmp-r-868
syntmp-w-869))))))))
(syntmp-source-wrap-147
(lambda (syntmp-x-871 syntmp-w-872 syntmp-s-873)
(syntmp-wrap-146
(if syntmp-s-873
(make-annotation syntmp-x-871 syntmp-s-873 #f)
syntmp-x-871)
syntmp-w-872)))
(syntmp-wrap-146
(lambda (syntmp-x-874 syntmp-w-875)
(cond ((and (null? (syntmp-wrap-marks-121 syntmp-w-875))
(null? (syntmp-wrap-subst-122 syntmp-w-875)))
syntmp-x-874)
((syntmp-syntax-object?-104 syntmp-x-874)
(syntmp-make-syntax-object-103
(syntmp-syntax-object-expression-105
syntmp-x-874)
(syntmp-join-wraps-137
syntmp-w-875
(syntmp-syntax-object-wrap-106 syntmp-x-874))))
((null? syntmp-x-874) syntmp-x-874)
(else
(syntmp-make-syntax-object-103
syntmp-x-874
syntmp-w-875)))))
(syntmp-bound-id-member?-145
(lambda (syntmp-x-876 syntmp-list-877)
(and (not (null? syntmp-list-877))
(or (syntmp-bound-id=?-142
syntmp-x-876
(car syntmp-list-877))
(syntmp-bound-id-member?-145
syntmp-x-876
(cdr syntmp-list-877))))))
(syntmp-distinct-bound-ids?-144
(lambda (syntmp-ids-878)
(let syntmp-distinct?-879 ((syntmp-ids-880 syntmp-ids-878))
(or (null? syntmp-ids-880)
(and (not (syntmp-bound-id-member?-145
(car syntmp-ids-880)
(cdr syntmp-ids-880)))
(syntmp-distinct?-879 (cdr syntmp-ids-880)))))))
(syntmp-valid-bound-ids?-143
(lambda (syntmp-ids-881)
(and (let syntmp-all-ids?-882 ((syntmp-ids-883 syntmp-ids-881))
(or (null? syntmp-ids-883)
(and (syntmp-id?-118 (car syntmp-ids-883))
(syntmp-all-ids?-882 (cdr syntmp-ids-883)))))
(syntmp-distinct-bound-ids?-144 syntmp-ids-881))))
(syntmp-bound-id=?-142
(lambda (syntmp-i-884 syntmp-j-885)
(if (and (syntmp-syntax-object?-104 syntmp-i-884)
(syntmp-syntax-object?-104 syntmp-j-885))
(and (eq? (let ((syntmp-e-886
(syntmp-syntax-object-expression-105
syntmp-i-884)))
(if (syntmp-annotation?-92 syntmp-e-886)
(annotation-expression syntmp-e-886)
syntmp-e-886))
(let ((syntmp-e-887
(syntmp-syntax-object-expression-105
syntmp-j-885)))
(if (syntmp-annotation?-92 syntmp-e-887)
(annotation-expression syntmp-e-887)
syntmp-e-887)))
(syntmp-same-marks?-139
(syntmp-wrap-marks-121
(syntmp-syntax-object-wrap-106 syntmp-i-884))
(syntmp-wrap-marks-121
(syntmp-syntax-object-wrap-106 syntmp-j-885))))
(eq? (let ((syntmp-e-888 syntmp-i-884))
(if (syntmp-annotation?-92 syntmp-e-888)
(annotation-expression syntmp-e-888)
syntmp-e-888))
(let ((syntmp-e-889 syntmp-j-885))
(if (syntmp-annotation?-92 syntmp-e-889)
(annotation-expression syntmp-e-889)
syntmp-e-889))))))
(syntmp-free-id=?-141
(lambda (syntmp-i-890 syntmp-j-891)
(and (eq? (let ((syntmp-x-892 syntmp-i-890))
(let ((syntmp-e-893
(if (syntmp-syntax-object?-104 syntmp-x-892)
(syntmp-syntax-object-expression-105
syntmp-x-892)
syntmp-x-892)))
(if (syntmp-annotation?-92 syntmp-e-893)
(annotation-expression syntmp-e-893)
syntmp-e-893)))
(let ((syntmp-x-894 syntmp-j-891))
(let ((syntmp-e-895
(if (syntmp-syntax-object?-104 syntmp-x-894)
(syntmp-syntax-object-expression-105
syntmp-x-894)
syntmp-x-894)))
(if (syntmp-annotation?-92 syntmp-e-895)
(annotation-expression syntmp-e-895)
syntmp-e-895))))
(eq? (syntmp-id-var-name-140
syntmp-i-890
'(()))
(syntmp-id-var-name-140
syntmp-j-891
'(()))))))
(syntmp-id-var-name-140
(lambda (syntmp-id-896 syntmp-w-897)
(letrec ((syntmp-search-vector-rib-900
(lambda (syntmp-sym-911
syntmp-subst-912
syntmp-marks-913
syntmp-symnames-914
syntmp-ribcage-915)
(let ((syntmp-n-916
(vector-length syntmp-symnames-914)))
(let syntmp-f-917 ((syntmp-i-918 0))
(cond ((syntmp-fx=-90 syntmp-i-918 syntmp-n-916)
(syntmp-search-898
syntmp-sym-911
(cdr syntmp-subst-912)
syntmp-marks-913))
((and (eq? (vector-ref
syntmp-symnames-914
syntmp-i-918)
syntmp-sym-911)
(syntmp-same-marks?-139
syntmp-marks-913
(vector-ref
(syntmp-ribcage-marks-128
syntmp-ribcage-915)
syntmp-i-918)))
(values
(vector-ref
(syntmp-ribcage-labels-129
syntmp-ribcage-915)
syntmp-i-918)
syntmp-marks-913))
(else
(syntmp-f-917
(syntmp-fx+-88 syntmp-i-918 1))))))))
(syntmp-search-list-rib-899
(lambda (syntmp-sym-919
syntmp-subst-920
syntmp-marks-921
syntmp-symnames-922
syntmp-ribcage-923)
(let syntmp-f-924 ((syntmp-symnames-925
syntmp-symnames-922)
(syntmp-i-926 0))
(cond ((null? syntmp-symnames-925)
(syntmp-search-898
syntmp-sym-919
(cdr syntmp-subst-920)
syntmp-marks-921))
((and (eq? (car syntmp-symnames-925)
syntmp-sym-919)
(syntmp-same-marks?-139
syntmp-marks-921
(list-ref
(syntmp-ribcage-marks-128
syntmp-ribcage-923)
syntmp-i-926)))
(values
(list-ref
(syntmp-ribcage-labels-129
syntmp-ribcage-923)
syntmp-i-926)
syntmp-marks-921))
(else
(syntmp-f-924
(cdr syntmp-symnames-925)
(syntmp-fx+-88 syntmp-i-926 1)))))))
(syntmp-search-898
(lambda (syntmp-sym-927
syntmp-subst-928
syntmp-marks-929)
(if (null? syntmp-subst-928)
(values #f syntmp-marks-929)
(let ((syntmp-fst-930 (car syntmp-subst-928)))
(if (eq? syntmp-fst-930 (quote shift))
(syntmp-search-898
syntmp-sym-927
(cdr syntmp-subst-928)
(cdr syntmp-marks-929))
(let ((syntmp-symnames-931
(syntmp-ribcage-symnames-127
syntmp-fst-930)))
(if (vector? syntmp-symnames-931)
(syntmp-search-vector-rib-900
syntmp-sym-927
syntmp-subst-928
syntmp-marks-929
syntmp-symnames-931
syntmp-fst-930)
(syntmp-search-list-rib-899
syntmp-sym-927
syntmp-subst-928
syntmp-marks-929
syntmp-symnames-931
syntmp-fst-930)))))))))
(cond ((symbol? syntmp-id-896)
(or (call-with-values
(lambda ()
(syntmp-search-898
syntmp-id-896
(syntmp-wrap-subst-122 syntmp-w-897)
(syntmp-wrap-marks-121 syntmp-w-897)))
(lambda (syntmp-x-933 . syntmp-ignore-932)
syntmp-x-933))
syntmp-id-896))
((syntmp-syntax-object?-104 syntmp-id-896)
(let ((syntmp-id-934
(let ((syntmp-e-936
(syntmp-syntax-object-expression-105
syntmp-id-896)))
(if (syntmp-annotation?-92 syntmp-e-936)
(annotation-expression syntmp-e-936)
syntmp-e-936)))
(syntmp-w1-935
(syntmp-syntax-object-wrap-106 syntmp-id-896)))
(let ((syntmp-marks-937
(syntmp-join-marks-138
(syntmp-wrap-marks-121 syntmp-w-897)
(syntmp-wrap-marks-121 syntmp-w1-935))))
(call-with-values
(lambda ()
(syntmp-search-898
syntmp-id-934
(syntmp-wrap-subst-122 syntmp-w-897)
syntmp-marks-937))
(lambda (syntmp-new-id-938 syntmp-marks-939)
(or syntmp-new-id-938
(call-with-values
(lambda ()
(syntmp-search-898
syntmp-id-934
(syntmp-wrap-subst-122 syntmp-w1-935)
syntmp-marks-939))
(lambda (syntmp-x-941 . syntmp-ignore-940)
syntmp-x-941))
syntmp-id-934))))))
((syntmp-annotation?-92 syntmp-id-896)
(let ((syntmp-id-942
(let ((syntmp-e-943 syntmp-id-896))
(if (syntmp-annotation?-92 syntmp-e-943)
(annotation-expression syntmp-e-943)
syntmp-e-943))))
(or (call-with-values
(lambda ()
(syntmp-search-898
syntmp-id-942
(syntmp-wrap-subst-122 syntmp-w-897)
(syntmp-wrap-marks-121 syntmp-w-897)))
(lambda (syntmp-x-945 . syntmp-ignore-944)
syntmp-x-945))
syntmp-id-942)))
(else
(syntmp-error-hook-95
'id-var-name
"invalid id"
syntmp-id-896))))))
(syntmp-same-marks?-139
(lambda (syntmp-x-946 syntmp-y-947)
(or (eq? syntmp-x-946 syntmp-y-947)
(and (not (null? syntmp-x-946))
(not (null? syntmp-y-947))
(eq? (car syntmp-x-946) (car syntmp-y-947))
(syntmp-same-marks?-139
(cdr syntmp-x-946)
(cdr syntmp-y-947))))))
(syntmp-join-marks-138
(lambda (syntmp-m1-948 syntmp-m2-949)
(syntmp-smart-append-136
syntmp-m1-948
syntmp-m2-949)))
(syntmp-join-wraps-137
(lambda (syntmp-w1-950 syntmp-w2-951)
(let ((syntmp-m1-952
(syntmp-wrap-marks-121 syntmp-w1-950))
(syntmp-s1-953
(syntmp-wrap-subst-122 syntmp-w1-950)))
(if (null? syntmp-m1-952)
(if (null? syntmp-s1-953)
syntmp-w2-951
(syntmp-make-wrap-120
(syntmp-wrap-marks-121 syntmp-w2-951)
(syntmp-smart-append-136
syntmp-s1-953
(syntmp-wrap-subst-122 syntmp-w2-951))))
(syntmp-make-wrap-120
(syntmp-smart-append-136
syntmp-m1-952
(syntmp-wrap-marks-121 syntmp-w2-951))
(syntmp-smart-append-136
syntmp-s1-953
(syntmp-wrap-subst-122 syntmp-w2-951)))))))
(syntmp-smart-append-136
(lambda (syntmp-m1-954 syntmp-m2-955)
(if (null? syntmp-m2-955)
syntmp-m1-954
(append syntmp-m1-954 syntmp-m2-955))))
(syntmp-make-binding-wrap-135
(lambda (syntmp-ids-956 syntmp-labels-957 syntmp-w-958)
(if (null? syntmp-ids-956)
syntmp-w-958
(syntmp-make-wrap-120
(syntmp-wrap-marks-121 syntmp-w-958)
(cons (let ((syntmp-labelvec-959
(list->vector syntmp-labels-957)))
(let ((syntmp-n-960
(vector-length syntmp-labelvec-959)))
(let ((syntmp-symnamevec-961
(make-vector syntmp-n-960))
(syntmp-marksvec-962
(make-vector syntmp-n-960)))
(begin
(let syntmp-f-963 ((syntmp-ids-964
syntmp-ids-956)
(syntmp-i-965 0))
(if (not (null? syntmp-ids-964))
(call-with-values
(lambda ()
(syntmp-id-sym-name&marks-119
(car syntmp-ids-964)
syntmp-w-958))
(lambda (syntmp-symname-966
syntmp-marks-967)
(begin
(vector-set!
syntmp-symnamevec-961
syntmp-i-965
syntmp-symname-966)
(vector-set!
syntmp-marksvec-962
syntmp-i-965
syntmp-marks-967)
(syntmp-f-963
(cdr syntmp-ids-964)
(syntmp-fx+-88 syntmp-i-965 1)))))))
(syntmp-make-ribcage-125
syntmp-symnamevec-961
syntmp-marksvec-962
syntmp-labelvec-959)))))
(syntmp-wrap-subst-122 syntmp-w-958))))))
(syntmp-extend-ribcage!-134
(lambda (syntmp-ribcage-968
syntmp-id-969
syntmp-label-970)
(begin
(syntmp-set-ribcage-symnames!-130
syntmp-ribcage-968
(cons (let ((syntmp-e-971
(syntmp-syntax-object-expression-105
syntmp-id-969)))
(if (syntmp-annotation?-92 syntmp-e-971)
(annotation-expression syntmp-e-971)
syntmp-e-971))
(syntmp-ribcage-symnames-127 syntmp-ribcage-968)))
(syntmp-set-ribcage-marks!-131
syntmp-ribcage-968
(cons (syntmp-wrap-marks-121
(syntmp-syntax-object-wrap-106 syntmp-id-969))
(syntmp-ribcage-marks-128 syntmp-ribcage-968)))
(syntmp-set-ribcage-labels!-132
syntmp-ribcage-968
(cons syntmp-label-970
(syntmp-ribcage-labels-129 syntmp-ribcage-968))))))
(syntmp-anti-mark-133
(lambda (syntmp-w-972)
(syntmp-make-wrap-120
(cons #f (syntmp-wrap-marks-121 syntmp-w-972))
(cons 'shift
(syntmp-wrap-subst-122 syntmp-w-972)))))
(syntmp-set-ribcage-labels!-132
(lambda (syntmp-x-973 syntmp-update-974)
(vector-set! syntmp-x-973 3 syntmp-update-974)))
(syntmp-set-ribcage-marks!-131
(lambda (syntmp-x-975 syntmp-update-976)
(vector-set! syntmp-x-975 2 syntmp-update-976)))
(syntmp-set-ribcage-symnames!-130
(lambda (syntmp-x-977 syntmp-update-978)
(vector-set! syntmp-x-977 1 syntmp-update-978)))
(syntmp-ribcage-labels-129
(lambda (syntmp-x-979)
(vector-ref syntmp-x-979 3)))
(syntmp-ribcage-marks-128
(lambda (syntmp-x-980)
(vector-ref syntmp-x-980 2)))
(syntmp-ribcage-symnames-127
(lambda (syntmp-x-981)
(vector-ref syntmp-x-981 1)))
(syntmp-ribcage?-126
(lambda (syntmp-x-982)
(and (vector? syntmp-x-982)
(= (vector-length syntmp-x-982) 4)
(eq? (vector-ref syntmp-x-982 0) (quote ribcage)))))
(syntmp-make-ribcage-125
(lambda (syntmp-symnames-983
syntmp-marks-984
syntmp-labels-985)
(vector
'ribcage
syntmp-symnames-983
syntmp-marks-984
syntmp-labels-985)))
(syntmp-gen-labels-124
(lambda (syntmp-ls-986)
(if (null? syntmp-ls-986)
'()
(cons (syntmp-gen-label-123)
(syntmp-gen-labels-124 (cdr syntmp-ls-986))))))
(syntmp-gen-label-123 (lambda () (string #\i)))
(syntmp-wrap-subst-122 cdr)
(syntmp-wrap-marks-121 car)
(syntmp-make-wrap-120 cons)
(syntmp-id-sym-name&marks-119
(lambda (syntmp-x-987 syntmp-w-988)
(if (syntmp-syntax-object?-104 syntmp-x-987)
(values
(let ((syntmp-e-989
(syntmp-syntax-object-expression-105
syntmp-x-987)))
(if (syntmp-annotation?-92 syntmp-e-989)
(annotation-expression syntmp-e-989)
syntmp-e-989))
(syntmp-join-marks-138
(syntmp-wrap-marks-121 syntmp-w-988)
(syntmp-wrap-marks-121
(syntmp-syntax-object-wrap-106 syntmp-x-987))))
(values
(let ((syntmp-e-990 syntmp-x-987))
(if (syntmp-annotation?-92 syntmp-e-990)
(annotation-expression syntmp-e-990)
syntmp-e-990))
(syntmp-wrap-marks-121 syntmp-w-988)))))
(syntmp-id?-118
(lambda (syntmp-x-991)
(cond ((symbol? syntmp-x-991) #t)
((syntmp-syntax-object?-104 syntmp-x-991)
(symbol?
(let ((syntmp-e-992
(syntmp-syntax-object-expression-105
syntmp-x-991)))
(if (syntmp-annotation?-92 syntmp-e-992)
(annotation-expression syntmp-e-992)
syntmp-e-992))))
((syntmp-annotation?-92 syntmp-x-991)
(symbol? (annotation-expression syntmp-x-991)))
(else #f))))
(syntmp-nonsymbol-id?-117
(lambda (syntmp-x-993)
(and (syntmp-syntax-object?-104 syntmp-x-993)
(symbol?
(let ((syntmp-e-994
(syntmp-syntax-object-expression-105
syntmp-x-993)))
(if (syntmp-annotation?-92 syntmp-e-994)
(annotation-expression syntmp-e-994)
syntmp-e-994))))))
(syntmp-global-extend-116
(lambda (syntmp-type-995 syntmp-sym-996 syntmp-val-997)
(syntmp-put-global-definition-hook-96
syntmp-sym-996
(cons syntmp-type-995 syntmp-val-997))))
(syntmp-lookup-115
(lambda (syntmp-x-998 syntmp-r-999)
(cond ((assq syntmp-x-998 syntmp-r-999) => cdr)
((symbol? syntmp-x-998)
(or (syntmp-get-global-definition-hook-97
syntmp-x-998)
'(global)))
(else (quote (displaced-lexical))))))
(syntmp-macros-only-env-114
(lambda (syntmp-r-1000)
(if (null? syntmp-r-1000)
'()
(let ((syntmp-a-1001 (car syntmp-r-1000)))
(if (memq (cadr syntmp-a-1001)
'(macro ellipsis))
(cons syntmp-a-1001
(syntmp-macros-only-env-114 (cdr syntmp-r-1000)))
(syntmp-macros-only-env-114 (cdr syntmp-r-1000)))))))
(syntmp-extend-var-env-113
(lambda (syntmp-labels-1002
syntmp-vars-1003
syntmp-r-1004)
(if (null? syntmp-labels-1002)
syntmp-r-1004
(syntmp-extend-var-env-113
(cdr syntmp-labels-1002)
(cdr syntmp-vars-1003)
(cons (cons (car syntmp-labels-1002)
(cons (quote lexical) (car syntmp-vars-1003)))
syntmp-r-1004)))))
(syntmp-extend-env-112
(lambda (syntmp-labels-1005
syntmp-bindings-1006
syntmp-r-1007)
(if (null? syntmp-labels-1005)
syntmp-r-1007
(syntmp-extend-env-112
(cdr syntmp-labels-1005)
(cdr syntmp-bindings-1006)
(cons (cons (car syntmp-labels-1005)
(car syntmp-bindings-1006))
syntmp-r-1007)))))
(syntmp-binding-value-111 cdr)
(syntmp-binding-type-110 car)
(syntmp-source-annotation-109
(lambda (syntmp-x-1008)
(cond ((syntmp-annotation?-92 syntmp-x-1008)
(annotation-source syntmp-x-1008))
((syntmp-syntax-object?-104 syntmp-x-1008)
(syntmp-source-annotation-109
(syntmp-syntax-object-expression-105
syntmp-x-1008)))
(else #f))))
(syntmp-set-syntax-object-wrap!-108
(lambda (syntmp-x-1009 syntmp-update-1010)
(vector-set! syntmp-x-1009 2 syntmp-update-1010)))
(syntmp-set-syntax-object-expression!-107
(lambda (syntmp-x-1011 syntmp-update-1012)
(vector-set! syntmp-x-1011 1 syntmp-update-1012)))
(syntmp-syntax-object-wrap-106
(lambda (syntmp-x-1013)
(vector-ref syntmp-x-1013 2)))
(syntmp-syntax-object-expression-105
(lambda (syntmp-x-1014)
(vector-ref syntmp-x-1014 1)))
(syntmp-syntax-object?-104
(lambda (syntmp-x-1015)
(and (vector? syntmp-x-1015)
(= (vector-length syntmp-x-1015) 3)
(eq? (vector-ref syntmp-x-1015 0)
'syntax-object))))
(syntmp-make-syntax-object-103
(lambda (syntmp-expression-1016 syntmp-wrap-1017)
(vector
'syntax-object
syntmp-expression-1016
syntmp-wrap-1017)))
(syntmp-build-letrec-102
(lambda (syntmp-src-1018
syntmp-vars-1019
syntmp-val-exps-1020
syntmp-body-exp-1021)
(if (null? syntmp-vars-1019)
syntmp-body-exp-1021
(list 'letrec
(map list syntmp-vars-1019 syntmp-val-exps-1020)
syntmp-body-exp-1021))))
(syntmp-build-named-let-101
(lambda (syntmp-src-1022
syntmp-vars-1023
syntmp-val-exps-1024
syntmp-body-exp-1025)
(if (null? syntmp-vars-1023)
syntmp-body-exp-1025
(list 'let
(car syntmp-vars-1023)
(map list
(cdr syntmp-vars-1023)
syntmp-val-exps-1024)
syntmp-body-exp-1025))))
(syntmp-build-let-100
(lambda (syntmp-src-1026
syntmp-vars-1027
syntmp-val-exps-1028
syntmp-body-exp-1029)
(if (null? syntmp-vars-1027)
syntmp-body-exp-1029
(list 'let
(map list syntmp-vars-1027 syntmp-val-exps-1028)
syntmp-body-exp-1029))))
(syntmp-build-sequence-99
(lambda (syntmp-src-1030 syntmp-exps-1031)
(if (null? (cdr syntmp-exps-1031))
(car syntmp-exps-1031)
(cons (quote begin) syntmp-exps-1031))))
(syntmp-build-data-98
(lambda (syntmp-src-1032 syntmp-exp-1033)
(if (and (self-evaluating? syntmp-exp-1033)
(not (vector? syntmp-exp-1033)))
syntmp-exp-1033
(list (quote quote) syntmp-exp-1033))))
(syntmp-get-global-definition-hook-97
(lambda (syntmp-symbol-1034)
(getprop
syntmp-symbol-1034
'*sc-expander*)))
(syntmp-put-global-definition-hook-96
(lambda (syntmp-symbol-1035 syntmp-binding-1036)
(putprop
syntmp-symbol-1035
'*sc-expander*
syntmp-binding-1036)))
(syntmp-error-hook-95
(lambda (syntmp-who-1037
syntmp-why-1038
syntmp-what-1039)
(error syntmp-who-1037
"~a ~s"
syntmp-why-1038
syntmp-what-1039)))
(syntmp-local-eval-hook-94
(lambda (syntmp-x-1040)
(eval (list syntmp-noexpand-87 syntmp-x-1040)
(interaction-environment))))
(syntmp-top-level-eval-hook-93
(lambda (syntmp-x-1041)
(eval (list syntmp-noexpand-87 syntmp-x-1041)
(interaction-environment))))
(syntmp-annotation?-92
(lambda (syntmp-x-1042) #f))
(syntmp-fx<-91 <)
(syntmp-fx=-90 =)
(syntmp-fx--89 -)
(syntmp-fx+-88 +)
(syntmp-noexpand-87 "noexpand"))
(begin
(syntmp-global-extend-116
'local-syntax
'letrec-syntax
#t)
(syntmp-global-extend-116
'local-syntax
'let-syntax
#f)
(syntmp-global-extend-116
'core
'fluid-let-syntax
(lambda (syntmp-e-1043
syntmp-r-1044
syntmp-w-1045
syntmp-s-1046)
((lambda (syntmp-tmp-1047)
((lambda (syntmp-tmp-1048)
(if (if syntmp-tmp-1048
(apply (lambda (syntmp-_-1049
syntmp-var-1050
syntmp-val-1051
syntmp-e1-1052
syntmp-e2-1053)
(syntmp-valid-bound-ids?-143 syntmp-var-1050))
syntmp-tmp-1048)
#f)
(apply (lambda (syntmp-_-1055
syntmp-var-1056
syntmp-val-1057
syntmp-e1-1058
syntmp-e2-1059)
(let ((syntmp-names-1060
(map (lambda (syntmp-x-1061)
(syntmp-id-var-name-140
syntmp-x-1061
syntmp-w-1045))
syntmp-var-1056)))
(begin
(for-each
(lambda (syntmp-id-1063 syntmp-n-1064)
(let ((syntmp-t-1065
(syntmp-binding-type-110
(syntmp-lookup-115
syntmp-n-1064
syntmp-r-1044))))
(if (memv syntmp-t-1065
'(displaced-lexical))
(syntax-error
(syntmp-source-wrap-147
syntmp-id-1063
syntmp-w-1045
syntmp-s-1046)
"identifier out of context"))))
syntmp-var-1056
syntmp-names-1060)
(syntmp-chi-body-158
(cons syntmp-e1-1058 syntmp-e2-1059)
(syntmp-source-wrap-147
syntmp-e-1043
syntmp-w-1045
syntmp-s-1046)
(syntmp-extend-env-112
syntmp-names-1060
(let ((syntmp-trans-r-1068
(syntmp-macros-only-env-114
syntmp-r-1044)))
(map (lambda (syntmp-x-1069)
(cons 'macro
(syntmp-eval-local-transformer-161
(syntmp-chi-154
syntmp-x-1069
syntmp-trans-r-1068
syntmp-w-1045))))
syntmp-val-1057))
syntmp-r-1044)
syntmp-w-1045))))
syntmp-tmp-1048)
((lambda (syntmp-_-1071)
(syntax-error
(syntmp-source-wrap-147
syntmp-e-1043
syntmp-w-1045
syntmp-s-1046)))
syntmp-tmp-1047)))
(syntax-dispatch
syntmp-tmp-1047
'(any #(each (any any)) any . each-any))))
syntmp-e-1043)))
(syntmp-global-extend-116
'core
'quote
(lambda (syntmp-e-1072
syntmp-r-1073
syntmp-w-1074
syntmp-s-1075)
((lambda (syntmp-tmp-1076)
((lambda (syntmp-tmp-1077)
(if syntmp-tmp-1077
(apply (lambda (syntmp-_-1078 syntmp-e-1079)
(syntmp-build-data-98
syntmp-s-1075
(syntmp-strip-165 syntmp-e-1079 syntmp-w-1074)))
syntmp-tmp-1077)
((lambda (syntmp-_-1080)
(syntax-error
(syntmp-source-wrap-147
syntmp-e-1072
syntmp-w-1074
syntmp-s-1075)))
syntmp-tmp-1076)))
(syntax-dispatch
syntmp-tmp-1076
'(any any))))
syntmp-e-1072)))
(syntmp-global-extend-116
'core
'syntax
(letrec ((syntmp-regen-1088
(lambda (syntmp-x-1089)
(let ((syntmp-t-1090 (car syntmp-x-1089)))
(if (memv syntmp-t-1090 (quote (ref)))
(cadr syntmp-x-1089)
(if (memv syntmp-t-1090 (quote (primitive)))
(cadr syntmp-x-1089)
(if (memv syntmp-t-1090 (quote (quote)))
(syntmp-build-data-98 #f (cadr syntmp-x-1089))
(if (memv syntmp-t-1090 (quote (lambda)))
(list 'lambda
(cadr syntmp-x-1089)
(syntmp-regen-1088 (caddr syntmp-x-1089)))
(if (memv syntmp-t-1090 (quote (map)))
(let ((syntmp-ls-1091
(map syntmp-regen-1088
(cdr syntmp-x-1089))))
(cons (if (syntmp-fx=-90
(length syntmp-ls-1091)
2)
'map
'map)
syntmp-ls-1091))
(cons (car syntmp-x-1089)
(map syntmp-regen-1088
(cdr syntmp-x-1089)))))))))))
(syntmp-gen-vector-1087
(lambda (syntmp-x-1092)
(cond ((eq? (car syntmp-x-1092) (quote list))
(cons (quote vector) (cdr syntmp-x-1092)))
((eq? (car syntmp-x-1092) (quote quote))
(list 'quote
(list->vector (cadr syntmp-x-1092))))
(else (list (quote list->vector) syntmp-x-1092)))))
(syntmp-gen-append-1086
(lambda (syntmp-x-1093 syntmp-y-1094)
(if (equal? syntmp-y-1094 (quote (quote ())))
syntmp-x-1093
(list (quote append) syntmp-x-1093 syntmp-y-1094))))
(syntmp-gen-cons-1085
(lambda (syntmp-x-1095 syntmp-y-1096)
(let ((syntmp-t-1097 (car syntmp-y-1096)))
(if (memv syntmp-t-1097 (quote (quote)))
(if (eq? (car syntmp-x-1095) (quote quote))
(list 'quote
(cons (cadr syntmp-x-1095)
(cadr syntmp-y-1096)))
(if (eq? (cadr syntmp-y-1096) (quote ()))
(list (quote list) syntmp-x-1095)
(list (quote cons) syntmp-x-1095 syntmp-y-1096)))
(if (memv syntmp-t-1097 (quote (list)))
(cons 'list
(cons syntmp-x-1095 (cdr syntmp-y-1096)))
(list (quote cons) syntmp-x-1095 syntmp-y-1096))))))
(syntmp-gen-map-1084
(lambda (syntmp-e-1098 syntmp-map-env-1099)
(let ((syntmp-formals-1100
(map cdr syntmp-map-env-1099))
(syntmp-actuals-1101
(map (lambda (syntmp-x-1102)
(list (quote ref) (car syntmp-x-1102)))
syntmp-map-env-1099)))
(cond ((eq? (car syntmp-e-1098) (quote ref))
(car syntmp-actuals-1101))
((andmap
(lambda (syntmp-x-1103)
(and (eq? (car syntmp-x-1103) (quote ref))
(memq (cadr syntmp-x-1103)
syntmp-formals-1100)))
(cdr syntmp-e-1098))
(cons 'map
(cons (list 'primitive
(car syntmp-e-1098))
(map (let ((syntmp-r-1104
(map cons
syntmp-formals-1100
syntmp-actuals-1101)))
(lambda (syntmp-x-1105)
(cdr (assq (cadr syntmp-x-1105)
syntmp-r-1104))))
(cdr syntmp-e-1098)))))
(else
(cons 'map
(cons (list 'lambda
syntmp-formals-1100
syntmp-e-1098)
syntmp-actuals-1101)))))))
(syntmp-gen-mappend-1083
(lambda (syntmp-e-1106 syntmp-map-env-1107)
(list 'apply
'(primitive append)
(syntmp-gen-map-1084
syntmp-e-1106
syntmp-map-env-1107))))
(syntmp-gen-ref-1082
(lambda (syntmp-src-1108
syntmp-var-1109
syntmp-level-1110
syntmp-maps-1111)
(if (syntmp-fx=-90 syntmp-level-1110 0)
(values syntmp-var-1109 syntmp-maps-1111)
(if (null? syntmp-maps-1111)
(syntax-error
syntmp-src-1108
"missing ellipsis in syntax form")
(call-with-values
(lambda ()
(syntmp-gen-ref-1082
syntmp-src-1108
syntmp-var-1109
(syntmp-fx--89 syntmp-level-1110 1)
(cdr syntmp-maps-1111)))
(lambda (syntmp-outer-var-1112 syntmp-outer-maps-1113)
(let ((syntmp-b-1114
(assq syntmp-outer-var-1112
(car syntmp-maps-1111))))
(if syntmp-b-1114
(values (cdr syntmp-b-1114) syntmp-maps-1111)
(let ((syntmp-inner-var-1115
(syntmp-gen-var-166 (quote tmp))))
(values
syntmp-inner-var-1115
(cons (cons (cons syntmp-outer-var-1112
syntmp-inner-var-1115)
(car syntmp-maps-1111))
syntmp-outer-maps-1113)))))))))))
(syntmp-gen-syntax-1081
(lambda (syntmp-src-1116
syntmp-e-1117
syntmp-r-1118
syntmp-maps-1119
syntmp-ellipsis?-1120)
(if (syntmp-id?-118 syntmp-e-1117)
(let ((syntmp-label-1121
(syntmp-id-var-name-140
syntmp-e-1117
'(()))))
(let ((syntmp-b-1122
(syntmp-lookup-115
syntmp-label-1121
syntmp-r-1118)))
(if (eq? (syntmp-binding-type-110 syntmp-b-1122)
'syntax)
(call-with-values
(lambda ()
(let ((syntmp-var.lev-1123
(syntmp-binding-value-111
syntmp-b-1122)))
(syntmp-gen-ref-1082
syntmp-src-1116
(car syntmp-var.lev-1123)
(cdr syntmp-var.lev-1123)
syntmp-maps-1119)))
(lambda (syntmp-var-1124 syntmp-maps-1125)
(values
(list (quote ref) syntmp-var-1124)
syntmp-maps-1125)))
(if (syntmp-ellipsis?-1120
syntmp-e-1117
syntmp-r-1118)
(syntax-error
syntmp-src-1116
"misplaced ellipsis in syntax form")
(values
(list (quote quote) syntmp-e-1117)
syntmp-maps-1119)))))
((lambda (syntmp-tmp-1126)
((lambda (syntmp-tmp-1127)
(if (if syntmp-tmp-1127
(apply (lambda (syntmp-dots-1128
syntmp-e-1129)
(syntmp-ellipsis?-1120
syntmp-dots-1128
syntmp-r-1118))
syntmp-tmp-1127)
#f)
(apply (lambda (syntmp-dots-1130 syntmp-e-1131)
(syntmp-gen-syntax-1081
syntmp-src-1116
syntmp-e-1131
syntmp-r-1118
syntmp-maps-1119
(lambda (syntmp-e-1132 syntmp-r-1133)
#f)))
syntmp-tmp-1127)
((lambda (syntmp-tmp-1134)
(if (if syntmp-tmp-1134
(apply (lambda (syntmp-x-1135
syntmp-dots-1136
syntmp-y-1137)
(syntmp-ellipsis?-1120
syntmp-dots-1136
syntmp-r-1118))
syntmp-tmp-1134)
#f)
(apply (lambda (syntmp-x-1138
syntmp-dots-1139
syntmp-y-1140)
(let syntmp-f-1141 ((syntmp-y-1142
syntmp-y-1140)
(syntmp-k-1143
(lambda (syntmp-maps-1144)
(call-with-values
(lambda ()
(syntmp-gen-syntax-1081
syntmp-src-1116
syntmp-x-1138
syntmp-r-1118
(cons '()
syntmp-maps-1144)
syntmp-ellipsis?-1120))
(lambda (syntmp-x-1145
syntmp-maps-1146)
(if (null? (car syntmp-maps-1146))
(syntax-error
syntmp-src-1116
"extra ellipsis in syntax form")
(values
(syntmp-gen-map-1084
syntmp-x-1145
(car syntmp-maps-1146))
(cdr syntmp-maps-1146))))))))
((lambda (syntmp-tmp-1147)
((lambda (syntmp-tmp-1148)
(if (if syntmp-tmp-1148
(apply (lambda (syntmp-dots-1149
syntmp-y-1150)
(syntmp-ellipsis?-1120
syntmp-dots-1149
syntmp-r-1118))
syntmp-tmp-1148)
#f)
(apply (lambda (syntmp-dots-1151
syntmp-y-1152)
(syntmp-f-1141
syntmp-y-1152
(lambda (syntmp-maps-1153)
(call-with-values
(lambda ()
(syntmp-k-1143
(cons '()
syntmp-maps-1153)))
(lambda (syntmp-x-1154
syntmp-maps-1155)
(if (null? (car syntmp-maps-1155))
(syntax-error
syntmp-src-1116
"extra ellipsis in syntax form")
(values
(syntmp-gen-mappend-1083
syntmp-x-1154
(car syntmp-maps-1155))
(cdr syntmp-maps-1155))))))))
syntmp-tmp-1148)
((lambda (syntmp-_-1156)
(call-with-values
(lambda ()
(syntmp-gen-syntax-1081
syntmp-src-1116
syntmp-y-1142
syntmp-r-1118
syntmp-maps-1119
syntmp-ellipsis?-1120))
(lambda (syntmp-y-1157
syntmp-maps-1158)
(call-with-values
(lambda ()
(syntmp-k-1143
syntmp-maps-1158))
(lambda (syntmp-x-1159
syntmp-maps-1160)
(values
(syntmp-gen-append-1086
syntmp-x-1159
syntmp-y-1157)
syntmp-maps-1160))))))
syntmp-tmp-1147)))
(syntax-dispatch
syntmp-tmp-1147
'(any . any))))
syntmp-y-1142)))
syntmp-tmp-1134)
((lambda (syntmp-tmp-1161)
(if syntmp-tmp-1161
(apply (lambda (syntmp-x-1162
syntmp-y-1163)
(call-with-values
(lambda ()
(syntmp-gen-syntax-1081
syntmp-src-1116
syntmp-x-1162
syntmp-r-1118
syntmp-maps-1119
syntmp-ellipsis?-1120))
(lambda (syntmp-x-1164
syntmp-maps-1165)
(call-with-values
(lambda ()
(syntmp-gen-syntax-1081
syntmp-src-1116
syntmp-y-1163
syntmp-r-1118
syntmp-maps-1165
syntmp-ellipsis?-1120))
(lambda (syntmp-y-1166
syntmp-maps-1167)
(values
(syntmp-gen-cons-1085
syntmp-x-1164
syntmp-y-1166)
syntmp-maps-1167))))))
syntmp-tmp-1161)
((lambda (syntmp-tmp-1168)
(if syntmp-tmp-1168
(apply (lambda (syntmp-e1-1169
syntmp-e2-1170)
(call-with-values
(lambda ()
(syntmp-gen-syntax-1081
syntmp-src-1116
(cons syntmp-e1-1169
syntmp-e2-1170)
syntmp-r-1118
syntmp-maps-1119
syntmp-ellipsis?-1120))
(lambda (syntmp-e-1172
syntmp-maps-1173)
(values
(syntmp-gen-vector-1087
syntmp-e-1172)
syntmp-maps-1173))))
syntmp-tmp-1168)
((lambda (syntmp-_-1174)
(values
(list 'quote
syntmp-e-1117)
syntmp-maps-1119))
syntmp-tmp-1126)))
(syntax-dispatch
syntmp-tmp-1126
'#(vector (any . each-any))))))
(syntax-dispatch
syntmp-tmp-1126
'(any . any)))))
(syntax-dispatch
syntmp-tmp-1126
'(any any . any)))))
(syntax-dispatch
syntmp-tmp-1126
'(any any))))
syntmp-e-1117)))))
(lambda (syntmp-e-1175
syntmp-r-1176
syntmp-w-1177
syntmp-s-1178)
(let ((syntmp-e-1179
(syntmp-source-wrap-147
syntmp-e-1175
syntmp-w-1177
syntmp-s-1178)))
((lambda (syntmp-tmp-1180)
((lambda (syntmp-tmp-1181)
(if syntmp-tmp-1181
(apply (lambda (syntmp-_-1182 syntmp-x-1183)
(call-with-values
(lambda ()
(syntmp-gen-syntax-1081
syntmp-e-1179
syntmp-x-1183
syntmp-r-1176
'()
syntmp-ellipsis?-163))
(lambda (syntmp-e-1184 syntmp-maps-1185)
(syntmp-regen-1088 syntmp-e-1184))))
syntmp-tmp-1181)
((lambda (syntmp-_-1186)
(syntax-error syntmp-e-1179))
syntmp-tmp-1180)))
(syntax-dispatch
syntmp-tmp-1180
'(any any))))
syntmp-e-1179)))))
(syntmp-global-extend-116
'core
'lambda
(lambda (syntmp-e-1187
syntmp-r-1188
syntmp-w-1189
syntmp-s-1190)
((lambda (syntmp-tmp-1191)
((lambda (syntmp-tmp-1192)
(if syntmp-tmp-1192
(apply (lambda (syntmp-_-1193 syntmp-c-1194)
(syntmp-chi-lambda-clause-159
(syntmp-source-wrap-147
syntmp-e-1187
syntmp-w-1189
syntmp-s-1190)
syntmp-c-1194
syntmp-r-1188
syntmp-w-1189
(lambda (syntmp-vars-1195 syntmp-body-1196)
(list 'lambda
syntmp-vars-1195
syntmp-body-1196))))
syntmp-tmp-1192)
(syntax-error syntmp-tmp-1191)))
(syntax-dispatch
syntmp-tmp-1191
'(any . any))))
syntmp-e-1187)))
(syntmp-global-extend-116
'core
'with-ellipsis
(lambda (syntmp-e-1197
syntmp-r-1198
syntmp-w-1199
syntmp-s-1200)
(let ((syntmp-tmp-1201 syntmp-e-1197))
(let ((syntmp-tmp-1202
(syntax-dispatch
syntmp-tmp-1201
'(_ any any . each-any))))
(if (and syntmp-tmp-1202
(apply (lambda (syntmp-dots-1203
syntmp-e1-1204
syntmp-e2-1205)
(syntmp-id?-118 syntmp-dots-1203))
syntmp-tmp-1202))
(apply (lambda (syntmp-dots-1206 syntmp-e1-1207 syntmp-e2-1208)
(let ((syntmp-id-1209
(if (symbol? syntmp-dots-1206)
'$sc-ellipsis
(syntmp-make-syntax-object-103
'$sc-ellipsis
(syntmp-syntax-object-wrap-106
syntmp-dots-1206)))))
(let ((syntmp-ids-1210 (list syntmp-id-1209))
(syntmp-labels-1211
(list (syntmp-gen-label-123)))
(syntmp-bindings-1212
(list (cons 'ellipsis
(syntmp-source-wrap-147
syntmp-dots-1206
syntmp-w-1199
syntmp-s-1200)))))
(let ((syntmp-nw-1213
(syntmp-make-binding-wrap-135
syntmp-ids-1210
syntmp-labels-1211
syntmp-w-1199))
(syntmp-nr-1214
(syntmp-extend-env-112
syntmp-labels-1211
syntmp-bindings-1212
syntmp-r-1198)))
(syntmp-chi-body-158
(cons syntmp-e1-1207 syntmp-e2-1208)
(syntmp-source-wrap-147
syntmp-e-1197
syntmp-nw-1213
syntmp-s-1200)
syntmp-nr-1214
syntmp-nw-1213)))))
syntmp-tmp-1202)
(syntax-error (quote with-ellipsis) "bad syntax"))))))
(syntmp-global-extend-116
'core
'let
(letrec ((syntmp-chi-let-1215
(lambda (syntmp-e-1216
syntmp-r-1217
syntmp-w-1218
syntmp-s-1219
syntmp-constructor-1220
syntmp-ids-1221
syntmp-vals-1222
syntmp-exps-1223)
(if (not (syntmp-valid-bound-ids?-143 syntmp-ids-1221))
(syntax-error
syntmp-e-1216
"duplicate bound variable in")
(let ((syntmp-labels-1224
(syntmp-gen-labels-124 syntmp-ids-1221))
(syntmp-new-vars-1225
(map syntmp-gen-var-166 syntmp-ids-1221)))
(let ((syntmp-nw-1226
(syntmp-make-binding-wrap-135
syntmp-ids-1221
syntmp-labels-1224
syntmp-w-1218))
(syntmp-nr-1227
(syntmp-extend-var-env-113
syntmp-labels-1224
syntmp-new-vars-1225
syntmp-r-1217)))
(syntmp-constructor-1220
syntmp-s-1219
syntmp-new-vars-1225
(map (lambda (syntmp-x-1228)
(syntmp-chi-154
syntmp-x-1228
syntmp-r-1217
syntmp-w-1218))
syntmp-vals-1222)
(syntmp-chi-body-158
syntmp-exps-1223
(syntmp-source-wrap-147
syntmp-e-1216
syntmp-nw-1226
syntmp-s-1219)
syntmp-nr-1227
syntmp-nw-1226))))))))
(lambda (syntmp-e-1229
syntmp-r-1230
syntmp-w-1231
syntmp-s-1232)
((lambda (syntmp-tmp-1233)
((lambda (syntmp-tmp-1234)
(if syntmp-tmp-1234
(apply (lambda (syntmp-_-1235
syntmp-id-1236
syntmp-val-1237
syntmp-e1-1238
syntmp-e2-1239)
(syntmp-chi-let-1215
syntmp-e-1229
syntmp-r-1230
syntmp-w-1231
syntmp-s-1232
syntmp-build-let-100
syntmp-id-1236
syntmp-val-1237
(cons syntmp-e1-1238 syntmp-e2-1239)))
syntmp-tmp-1234)
((lambda (syntmp-tmp-1243)
(if (if syntmp-tmp-1243
(apply (lambda (syntmp-_-1244
syntmp-f-1245
syntmp-id-1246
syntmp-val-1247
syntmp-e1-1248
syntmp-e2-1249)
(syntmp-id?-118 syntmp-f-1245))
syntmp-tmp-1243)
#f)
(apply (lambda (syntmp-_-1250
syntmp-f-1251
syntmp-id-1252
syntmp-val-1253
syntmp-e1-1254
syntmp-e2-1255)
(syntmp-chi-let-1215
syntmp-e-1229
syntmp-r-1230
syntmp-w-1231
syntmp-s-1232
syntmp-build-named-let-101
(cons syntmp-f-1251 syntmp-id-1252)
syntmp-val-1253
(cons syntmp-e1-1254 syntmp-e2-1255)))
syntmp-tmp-1243)
((lambda (syntmp-_-1259)
(syntax-error
(syntmp-source-wrap-147
syntmp-e-1229
syntmp-w-1231
syntmp-s-1232)))
syntmp-tmp-1233)))
(syntax-dispatch
syntmp-tmp-1233
'(any any #(each (any any)) any . each-any)))))
(syntax-dispatch
syntmp-tmp-1233
'(any #(each (any any)) any . each-any))))
syntmp-e-1229))))
(syntmp-global-extend-116
'core
'letrec
(lambda (syntmp-e-1260
syntmp-r-1261
syntmp-w-1262
syntmp-s-1263)
((lambda (syntmp-tmp-1264)
((lambda (syntmp-tmp-1265)
(if syntmp-tmp-1265
(apply (lambda (syntmp-_-1266
syntmp-id-1267
syntmp-val-1268
syntmp-e1-1269
syntmp-e2-1270)
(let ((syntmp-ids-1271 syntmp-id-1267))
(if (not (syntmp-valid-bound-ids?-143
syntmp-ids-1271))
(syntax-error
syntmp-e-1260
"duplicate bound variable in")
(let ((syntmp-labels-1273
(syntmp-gen-labels-124 syntmp-ids-1271))
(syntmp-new-vars-1274
(map syntmp-gen-var-166 syntmp-ids-1271)))
(let ((syntmp-w-1275
(syntmp-make-binding-wrap-135
syntmp-ids-1271
syntmp-labels-1273
syntmp-w-1262))
(syntmp-r-1276
(syntmp-extend-var-env-113
syntmp-labels-1273
syntmp-new-vars-1274
syntmp-r-1261)))
(syntmp-build-letrec-102
syntmp-s-1263
syntmp-new-vars-1274
(map (lambda (syntmp-x-1277)
(syntmp-chi-154
syntmp-x-1277
syntmp-r-1276
syntmp-w-1275))
syntmp-val-1268)
(syntmp-chi-body-158
(cons syntmp-e1-1269 syntmp-e2-1270)
(syntmp-source-wrap-147
syntmp-e-1260
syntmp-w-1275
syntmp-s-1263)
syntmp-r-1276
syntmp-w-1275)))))))
syntmp-tmp-1265)
((lambda (syntmp-_-1280)
(syntax-error
(syntmp-source-wrap-147
syntmp-e-1260
syntmp-w-1262
syntmp-s-1263)))
syntmp-tmp-1264)))
(syntax-dispatch
syntmp-tmp-1264
'(any #(each (any any)) any . each-any))))
syntmp-e-1260)))
(syntmp-global-extend-116
'core
'set!
(lambda (syntmp-e-1281
syntmp-r-1282
syntmp-w-1283
syntmp-s-1284)
((lambda (syntmp-tmp-1285)
((lambda (syntmp-tmp-1286)
(if (if syntmp-tmp-1286
(apply (lambda (syntmp-_-1287
syntmp-id-1288
syntmp-val-1289)
(syntmp-id?-118 syntmp-id-1288))
syntmp-tmp-1286)
#f)
(apply (lambda (syntmp-_-1290 syntmp-id-1291 syntmp-val-1292)
(let ((syntmp-val-1293
(syntmp-chi-154
syntmp-val-1292
syntmp-r-1282
syntmp-w-1283))
(syntmp-n-1294
(syntmp-id-var-name-140
syntmp-id-1291
syntmp-w-1283)))
(let ((syntmp-b-1295
(syntmp-lookup-115
syntmp-n-1294
syntmp-r-1282)))
(let ((syntmp-t-1296
(syntmp-binding-type-110 syntmp-b-1295)))
(if (memv syntmp-t-1296 (quote (lexical)))
(list 'set!
(syntmp-binding-value-111 syntmp-b-1295)
syntmp-val-1293)
(if (memv syntmp-t-1296 (quote (global)))
(list 'set!
syntmp-n-1294
syntmp-val-1293)
(if (memv syntmp-t-1296
'(displaced-lexical))
(syntax-error
(syntmp-wrap-146
syntmp-id-1291
syntmp-w-1283)
"identifier out of context")
(syntax-error
(syntmp-source-wrap-147
syntmp-e-1281
syntmp-w-1283
syntmp-s-1284)))))))))
syntmp-tmp-1286)
((lambda (syntmp-tmp-1297)
(if syntmp-tmp-1297
(apply (lambda (syntmp-_-1298
syntmp-getter-1299
syntmp-arg-1300
syntmp-val-1301)
(cons (syntmp-chi-154
(list '#(syntax-object
setter
((top)
#(ribcage
#(_ getter arg val)
#((top) (top) (top) (top))
#("i" "i" "i" "i"))
#(ribcage () () ())
#(ribcage
#(e r w s)
#((top) (top) (top) (top))
#("i" "i" "i" "i"))
#(ribcage
(lambda-var-list
gen-var
strip
strip-annotation
ellipsis?
chi-void
eval-local-transformer
chi-local-syntax
chi-lambda-clause
chi-body
chi-macro
chi-application
chi-expr
chi
chi-top
syntax-type
chi-when-list
chi-install-global
chi-top-sequence
chi-sequence
source-wrap
wrap
bound-id-member?
distinct-bound-ids?
valid-bound-ids?
bound-id=?
free-id=?
id-var-name
same-marks?
join-marks
join-wraps
smart-append
make-binding-wrap
extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
set-ribcage-symnames!
ribcage-labels
ribcage-marks
ribcage-symnames
ribcage?
make-ribcage
gen-labels
gen-label
make-rename
rename-marks
rename-new
rename-old
subst-rename?
wrap-subst
wrap-marks
make-wrap
id-sym-name&marks
id-sym-name
id?
nonsymbol-id?
global-extend
lookup
macros-only-env
extend-var-env
extend-env
null-env
binding-value
binding-type
make-binding
arg-check
source-annotation
no-source
unannotate
set-syntax-object-wrap!
set-syntax-object-expression!
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
build-global-definition
build-global-assignment
build-global-reference
build-lexical-assignment
build-lexical-reference
build-conditional
build-application
get-global-definition-hook
put-global-definition-hook
gensym-hook
error-hook
local-eval-hook
top-level-eval-hook
annotation?
fx<
fx=
fx-
fx+
noexpand)
((top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top))
("i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"))
#(ribcage
(define-structure)
((top))
("i"))))
syntmp-getter-1299)
syntmp-r-1282
syntmp-w-1283)
(map (lambda (syntmp-e-1302)
(syntmp-chi-154
syntmp-e-1302
syntmp-r-1282
syntmp-w-1283))
(append
syntmp-arg-1300
(list syntmp-val-1301)))))
syntmp-tmp-1297)
((lambda (syntmp-_-1304)
(syntax-error
(syntmp-source-wrap-147
syntmp-e-1281
syntmp-w-1283
syntmp-s-1284)))
syntmp-tmp-1285)))
(syntax-dispatch
syntmp-tmp-1285
'(any (any . each-any) any)))))
(syntax-dispatch
syntmp-tmp-1285
'(any any any))))
syntmp-e-1281)))
(syntmp-global-extend-116
'begin
'begin
'())
(syntmp-global-extend-116
'define
'define
'())
(syntmp-global-extend-116
'define-syntax
'define-syntax
'())
(syntmp-global-extend-116
'eval-when
'eval-when
'())
(syntmp-global-extend-116
'core
'syntax-case
(letrec ((syntmp-gen-syntax-case-1308
(lambda (syntmp-x-1309
syntmp-keys-1310
syntmp-clauses-1311
syntmp-r-1312)
(if (null? syntmp-clauses-1311)
(list (quote syntax-error) syntmp-x-1309)
((lambda (syntmp-tmp-1313)
((lambda (syntmp-tmp-1314)
(if syntmp-tmp-1314
(apply (lambda (syntmp-pat-1315 syntmp-exp-1316)
(if (and (syntmp-id?-118 syntmp-pat-1315)
(andmap
(lambda (syntmp-x-1317)
(not (syntmp-free-id=?-141
syntmp-pat-1315
syntmp-x-1317)))
(cons '#(syntax-object
...
((top)
#(ribcage
#(pat exp)
#((top) (top))
#("i" "i"))
#(ribcage () () ())
#(ribcage
#(x
keys
clauses
r)
#((top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"))
#(ribcage
(gen-syntax-case
gen-clause
build-dispatch-call
convert-pattern)
((top)
(top)
(top)
(top))
("i" "i" "i" "i"))
#(ribcage
(lambda-var-list
gen-var
strip
strip-annotation
ellipsis?
chi-void
eval-local-transformer
chi-local-syntax
chi-lambda-clause
chi-body
chi-macro
chi-application
chi-expr
chi
chi-top
syntax-type
chi-when-list
chi-install-global
chi-top-sequence
chi-sequence
source-wrap
wrap
bound-id-member?
distinct-bound-ids?
valid-bound-ids?
bound-id=?
free-id=?
id-var-name
same-marks?
join-marks
join-wraps
smart-append
make-binding-wrap
extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
set-ribcage-symnames!
ribcage-labels
ribcage-marks
ribcage-symnames
ribcage?
make-ribcage
gen-labels
gen-label
make-rename
rename-marks
rename-new
rename-old
subst-rename?
wrap-subst
wrap-marks
make-wrap
id-sym-name&marks
id-sym-name
id?
nonsymbol-id?
global-extend
lookup
macros-only-env
extend-var-env
extend-env
null-env
binding-value
binding-type
make-binding
arg-check
source-annotation
no-source
unannotate
set-syntax-object-wrap!
set-syntax-object-expression!
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
build-global-definition
build-global-assignment
build-global-reference
build-lexical-assignment
build-lexical-reference
build-conditional
build-application
get-global-definition-hook
put-global-definition-hook
gensym-hook
error-hook
local-eval-hook
top-level-eval-hook
annotation?
fx<
fx=
fx-
fx+
noexpand)
((top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top)
(top))
("i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"
"i"))
#(ribcage
(define-structure)
((top))
("i"))))
syntmp-keys-1310)))
(let ((syntmp-labels-1318
(list (syntmp-gen-label-123)))
(syntmp-var-1319
(syntmp-gen-var-166
syntmp-pat-1315)))
(list (list 'lambda
(list syntmp-var-1319)
(syntmp-chi-154
syntmp-exp-1316
(syntmp-extend-env-112
syntmp-labels-1318
(list (cons 'syntax
(cons syntmp-var-1319
0)))
syntmp-r-1312)
(syntmp-make-binding-wrap-135
(list syntmp-pat-1315)
syntmp-labels-1318
'(()))))
syntmp-x-1309))
(syntmp-gen-clause-1307
syntmp-x-1309
syntmp-keys-1310
(cdr syntmp-clauses-1311)
syntmp-r-1312
syntmp-pat-1315
#t
syntmp-exp-1316)))
syntmp-tmp-1314)
((lambda (syntmp-tmp-1320)
(if syntmp-tmp-1320
(apply (lambda (syntmp-pat-1321
syntmp-fender-1322
syntmp-exp-1323)
(syntmp-gen-clause-1307
syntmp-x-1309
syntmp-keys-1310
(cdr syntmp-clauses-1311)
syntmp-r-1312
syntmp-pat-1321
syntmp-fender-1322
syntmp-exp-1323))
syntmp-tmp-1320)
((lambda (syntmp-_-1324)
(syntax-error
(car syntmp-clauses-1311)
"invalid syntax-case clause"))
syntmp-tmp-1313)))
(syntax-dispatch
syntmp-tmp-1313
'(any any any)))))
(syntax-dispatch
syntmp-tmp-1313
'(any any))))
(car syntmp-clauses-1311)))))
(syntmp-gen-clause-1307
(lambda (syntmp-x-1325
syntmp-keys-1326
syntmp-clauses-1327
syntmp-r-1328
syntmp-pat-1329
syntmp-fender-1330
syntmp-exp-1331)
(call-with-values
(lambda ()
(syntmp-convert-pattern-1305
syntmp-pat-1329
syntmp-keys-1326
(lambda (syntmp-e-1332)
(syntmp-ellipsis?-163
syntmp-e-1332
syntmp-r-1328))))
(lambda (syntmp-p-1333 syntmp-pvars-1334)
(cond ((not (syntmp-distinct-bound-ids?-144
(map car syntmp-pvars-1334)))
(syntax-error
syntmp-pat-1329
"duplicate pattern variable in syntax-case pattern"))
((not (andmap
(lambda (syntmp-x-1335)
(not (syntmp-ellipsis?-163
(car syntmp-x-1335)
syntmp-r-1328)))
syntmp-pvars-1334))
(syntax-error
syntmp-pat-1329
"misplaced ellipsis in syntax-case pattern"))
(else
(let ((syntmp-y-1336
(syntmp-gen-var-166 (quote tmp))))
(list (list 'lambda
(list syntmp-y-1336)
(let ((syntmp-y-1337
syntmp-y-1336))
(list 'if
((lambda (syntmp-tmp-1338)
((lambda (syntmp-tmp-1339)
(if syntmp-tmp-1339
(apply (lambda ()
syntmp-y-1337)
syntmp-tmp-1339)
((lambda (syntmp-_-1340)
(list 'if
syntmp-y-1337
(syntmp-build-dispatch-call-1306
syntmp-pvars-1334
syntmp-fender-1330
syntmp-y-1337
syntmp-r-1328)
(syntmp-build-data-98
#f
#f)))
syntmp-tmp-1338)))
(syntax-dispatch
syntmp-tmp-1338
'#(atom #t))))
syntmp-fender-1330)
(syntmp-build-dispatch-call-1306
syntmp-pvars-1334
syntmp-exp-1331
syntmp-y-1337
syntmp-r-1328)
(syntmp-gen-syntax-case-1308
syntmp-x-1325
syntmp-keys-1326
syntmp-clauses-1327
syntmp-r-1328))))
(if (eq? syntmp-p-1333 (quote any))
(list (quote list) syntmp-x-1325)
(list 'syntax-dispatch
syntmp-x-1325
(syntmp-build-data-98
#f
syntmp-p-1333)))))))))))
(syntmp-build-dispatch-call-1306
(lambda (syntmp-pvars-1341
syntmp-exp-1342
syntmp-y-1343
syntmp-r-1344)
(let ((syntmp-ids-1345 (map car syntmp-pvars-1341))
(syntmp-levels-1346 (map cdr syntmp-pvars-1341)))
(let ((syntmp-labels-1347
(syntmp-gen-labels-124 syntmp-ids-1345))
(syntmp-new-vars-1348
(map syntmp-gen-var-166 syntmp-ids-1345)))
(list 'apply
(list 'lambda
syntmp-new-vars-1348
(syntmp-chi-154
syntmp-exp-1342
(syntmp-extend-env-112
syntmp-labels-1347
(map (lambda (syntmp-var-1349
syntmp-level-1350)
(cons 'syntax
(cons syntmp-var-1349
syntmp-level-1350)))
syntmp-new-vars-1348
(map cdr syntmp-pvars-1341))
syntmp-r-1344)
(syntmp-make-binding-wrap-135
syntmp-ids-1345
syntmp-labels-1347
'(()))))
syntmp-y-1343)))))
(syntmp-convert-pattern-1305
(lambda (syntmp-pattern-1351
syntmp-keys-1352
syntmp-ellipsis?-1353)
(let syntmp-cvt-1354 ((syntmp-p-1355 syntmp-pattern-1351)
(syntmp-n-1356 0)
(syntmp-ids-1357 (quote ())))
(if (syntmp-id?-118 syntmp-p-1355)
(if (syntmp-bound-id-member?-145
syntmp-p-1355
syntmp-keys-1352)
(values
(vector (quote free-id) syntmp-p-1355)
syntmp-ids-1357)
(values
'any
(cons (cons syntmp-p-1355 syntmp-n-1356)
syntmp-ids-1357)))
((lambda (syntmp-tmp-1358)
((lambda (syntmp-tmp-1359)
(if (if syntmp-tmp-1359
(apply (lambda (syntmp-x-1360
syntmp-dots-1361)
(syntmp-ellipsis?-1353
syntmp-dots-1361))
syntmp-tmp-1359)
#f)
(apply (lambda (syntmp-x-1362 syntmp-dots-1363)
(call-with-values
(lambda ()
(syntmp-cvt-1354
syntmp-x-1362
(syntmp-fx+-88 syntmp-n-1356 1)
syntmp-ids-1357))
(lambda (syntmp-p-1364
syntmp-ids-1365)
(values
(if (eq? syntmp-p-1364
'any)
'each-any
(vector
'each
syntmp-p-1364))
syntmp-ids-1365))))
syntmp-tmp-1359)
((lambda (syntmp-tmp-1366)
(if syntmp-tmp-1366
(apply (lambda (syntmp-x-1367
syntmp-y-1368)
(call-with-values
(lambda ()
(syntmp-cvt-1354
syntmp-y-1368
syntmp-n-1356
syntmp-ids-1357))
(lambda (syntmp-y-1369
syntmp-ids-1370)
(call-with-values
(lambda ()
(syntmp-cvt-1354
syntmp-x-1367
syntmp-n-1356
syntmp-ids-1370))
(lambda (syntmp-x-1371
syntmp-ids-1372)
(values
(cons syntmp-x-1371
syntmp-y-1369)
syntmp-ids-1372))))))
syntmp-tmp-1366)
((lambda (syntmp-tmp-1373)
(if syntmp-tmp-1373
(apply (lambda ()
(values
'()
syntmp-ids-1357))
syntmp-tmp-1373)
((lambda (syntmp-tmp-1374)
(if syntmp-tmp-1374
(apply (lambda (syntmp-x-1375)
(call-with-values
(lambda ()
(syntmp-cvt-1354
syntmp-x-1375
syntmp-n-1356
syntmp-ids-1357))
(lambda (syntmp-p-1377
syntmp-ids-1378)
(values
(vector
'vector
syntmp-p-1377)
syntmp-ids-1378))))
syntmp-tmp-1374)
((lambda (syntmp-x-1379)
(values
(vector
'atom
(syntmp-strip-165
syntmp-p-1355
'(())))
syntmp-ids-1357))
syntmp-tmp-1358)))
(syntax-dispatch
syntmp-tmp-1358
'#(vector each-any)))))
(syntax-dispatch
syntmp-tmp-1358
'()))))
(syntax-dispatch
syntmp-tmp-1358
'(any . any)))))
(syntax-dispatch
syntmp-tmp-1358
'(any any))))
syntmp-p-1355))))))
(lambda (syntmp-e-1380
syntmp-r-1381
syntmp-w-1382
syntmp-s-1383)
(let ((syntmp-e-1384
(syntmp-source-wrap-147
syntmp-e-1380
syntmp-w-1382
syntmp-s-1383)))
((lambda (syntmp-tmp-1385)
((lambda (syntmp-tmp-1386)
(if syntmp-tmp-1386
(apply (lambda (syntmp-_-1387
syntmp-val-1388
syntmp-key-1389
syntmp-m-1390)
(if (andmap
(lambda (syntmp-x-1391)
(and (syntmp-id?-118 syntmp-x-1391)
(not (syntmp-ellipsis?-163
syntmp-x-1391
syntmp-r-1381))))
syntmp-key-1389)
(let ((syntmp-x-1393
(syntmp-gen-var-166 (quote tmp))))
(list (list 'lambda
(list syntmp-x-1393)
(syntmp-gen-syntax-case-1308
syntmp-x-1393
syntmp-key-1389
syntmp-m-1390
syntmp-r-1381))
(syntmp-chi-154
syntmp-val-1388
syntmp-r-1381
'(()))))
(syntax-error
syntmp-e-1384
"invalid literals list in")))
syntmp-tmp-1386)
(syntax-error syntmp-tmp-1385)))
(syntax-dispatch
syntmp-tmp-1385
'(any any each-any . each-any))))
syntmp-e-1384)))))
(set! sc-expand
(let ((syntmp-m-1396 (quote e))
(syntmp-esew-1397 (quote (eval))))
(lambda (syntmp-x-1398)
(if (and (pair? syntmp-x-1398)
(equal? (car syntmp-x-1398) syntmp-noexpand-87))
(cadr syntmp-x-1398)
(syntmp-chi-top-153
syntmp-x-1398
'()
'((top))
syntmp-m-1396
syntmp-esew-1397)))))
(set! sc-expand3
(let ((syntmp-m-1399 (quote e))
(syntmp-esew-1400 (quote (eval))))
(lambda (syntmp-x-1402 . syntmp-rest-1401)
(if (and (pair? syntmp-x-1402)
(equal? (car syntmp-x-1402) syntmp-noexpand-87))
(cadr syntmp-x-1402)
(syntmp-chi-top-153
syntmp-x-1402
'()
'((top))
(if (null? syntmp-rest-1401)
syntmp-m-1399
(car syntmp-rest-1401))
(if (or (null? syntmp-rest-1401)
(null? (cdr syntmp-rest-1401)))
syntmp-esew-1400
(cadr syntmp-rest-1401)))))))
(set! identifier?
(lambda (syntmp-x-1403)
(syntmp-nonsymbol-id?-117 syntmp-x-1403)))
(set! datum->syntax-object
(lambda (syntmp-id-1404 syntmp-datum-1405)
(syntmp-make-syntax-object-103
syntmp-datum-1405
(syntmp-syntax-object-wrap-106 syntmp-id-1404))))
(set! syntax-object->datum
(lambda (syntmp-x-1406)
(syntmp-strip-165 syntmp-x-1406 (quote (())))))
(set! generate-temporaries
(lambda (syntmp-ls-1407)
(begin
(let ((syntmp-x-1408 syntmp-ls-1407))
(if (not (list? syntmp-x-1408))
(syntmp-error-hook-95
'generate-temporaries
"invalid argument"
syntmp-x-1408)))
(map (lambda (syntmp-x-1409)
(syntmp-wrap-146 (gensym) (quote ((top)))))
syntmp-ls-1407))))
(set! free-identifier=?
(lambda (syntmp-x-1410 syntmp-y-1411)
(begin
(let ((syntmp-x-1412 syntmp-x-1410))
(if (not (syntmp-nonsymbol-id?-117 syntmp-x-1412))
(syntmp-error-hook-95
'free-identifier=?
"invalid argument"
syntmp-x-1412)))
(let ((syntmp-x-1413 syntmp-y-1411))
(if (not (syntmp-nonsymbol-id?-117 syntmp-x-1413))
(syntmp-error-hook-95
'free-identifier=?
"invalid argument"
syntmp-x-1413)))
(syntmp-free-id=?-141
syntmp-x-1410
syntmp-y-1411))))
(set! bound-identifier=?
(lambda (syntmp-x-1414 syntmp-y-1415)
(begin
(let ((syntmp-x-1416 syntmp-x-1414))
(if (not (syntmp-nonsymbol-id?-117 syntmp-x-1416))
(syntmp-error-hook-95
'bound-identifier=?
"invalid argument"
syntmp-x-1416)))
(let ((syntmp-x-1417 syntmp-y-1415))
(if (not (syntmp-nonsymbol-id?-117 syntmp-x-1417))
(syntmp-error-hook-95
'bound-identifier=?
"invalid argument"
syntmp-x-1417)))
(syntmp-bound-id=?-142
syntmp-x-1414
syntmp-y-1415))))
(set! syntax-error
(lambda (syntmp-object-1419 . syntmp-messages-1418)
(begin
(for-each
(lambda (syntmp-x-1420)
(let ((syntmp-x-1421 syntmp-x-1420))
(if (not (string? syntmp-x-1421))
(syntmp-error-hook-95
'syntax-error
"invalid argument"
syntmp-x-1421))))
syntmp-messages-1418)
(let ((syntmp-message-1422
(if (null? syntmp-messages-1418)
"invalid syntax"
(apply string-append syntmp-messages-1418))))
(syntmp-error-hook-95
#f
syntmp-message-1422
(syntmp-strip-165
syntmp-object-1419
'(())))))))
(set! install-global-transformer
(lambda (syntmp-sym-1423 syntmp-v-1424)
(begin
(let ((syntmp-x-1425 syntmp-sym-1423))
(if (not (symbol? syntmp-x-1425))
(syntmp-error-hook-95
'define-syntax
"invalid argument"
syntmp-x-1425)))
(let ((syntmp-x-1426 syntmp-v-1424))
(if (not (procedure? syntmp-x-1426))
(syntmp-error-hook-95
'define-syntax
"invalid argument"
syntmp-x-1426)))
(syntmp-global-extend-116
'macro
syntmp-sym-1423
syntmp-v-1424))))
(letrec ((syntmp-match-1431
(lambda (syntmp-e-1432
syntmp-p-1433
syntmp-w-1434
syntmp-r-1435)
(cond ((not syntmp-r-1435) #f)
((eq? syntmp-p-1433 (quote _)) syntmp-r-1435)
((eq? syntmp-p-1433 (quote any))
(cons (syntmp-wrap-146 syntmp-e-1432 syntmp-w-1434)
syntmp-r-1435))
((syntmp-syntax-object?-104 syntmp-e-1432)
(syntmp-match*-1430
(let ((syntmp-e-1436
(syntmp-syntax-object-expression-105
syntmp-e-1432)))
(if (syntmp-annotation?-92 syntmp-e-1436)
(annotation-expression syntmp-e-1436)
syntmp-e-1436))
syntmp-p-1433
(syntmp-join-wraps-137
syntmp-w-1434
(syntmp-syntax-object-wrap-106 syntmp-e-1432))
syntmp-r-1435))
(else
(syntmp-match*-1430
(let ((syntmp-e-1437 syntmp-e-1432))
(if (syntmp-annotation?-92 syntmp-e-1437)
(annotation-expression syntmp-e-1437)
syntmp-e-1437))
syntmp-p-1433
syntmp-w-1434
syntmp-r-1435)))))
(syntmp-match*-1430
(lambda (syntmp-e-1438
syntmp-p-1439
syntmp-w-1440
syntmp-r-1441)
(cond ((null? syntmp-p-1439)
(and (null? syntmp-e-1438) syntmp-r-1441))
((pair? syntmp-p-1439)
(and (pair? syntmp-e-1438)
(syntmp-match-1431
(car syntmp-e-1438)
(car syntmp-p-1439)
syntmp-w-1440
(syntmp-match-1431
(cdr syntmp-e-1438)
(cdr syntmp-p-1439)
syntmp-w-1440
syntmp-r-1441))))
((eq? syntmp-p-1439 (quote each-any))
(let ((syntmp-l-1442
(syntmp-match-each-any-1428
syntmp-e-1438
syntmp-w-1440)))
(and syntmp-l-1442
(cons syntmp-l-1442 syntmp-r-1441))))
(else
(let ((syntmp-t-1443 (vector-ref syntmp-p-1439 0)))
(if (memv syntmp-t-1443 (quote (each)))
(if (null? syntmp-e-1438)
(syntmp-match-empty-1429
(vector-ref syntmp-p-1439 1)
syntmp-r-1441)
(let ((syntmp-l-1444
(syntmp-match-each-1427
syntmp-e-1438
(vector-ref syntmp-p-1439 1)
syntmp-w-1440)))
(and syntmp-l-1444
(let syntmp-collect-1445 ((syntmp-l-1446
syntmp-l-1444))
(if (null? (car syntmp-l-1446))
syntmp-r-1441
(cons (map car syntmp-l-1446)
(syntmp-collect-1445
(map cdr syntmp-l-1446))))))))
(if (memv syntmp-t-1443 (quote (free-id)))
(and (syntmp-id?-118 syntmp-e-1438)
(syntmp-free-id=?-141
(syntmp-wrap-146
syntmp-e-1438
syntmp-w-1440)
(vector-ref syntmp-p-1439 1))
syntmp-r-1441)
(if (memv syntmp-t-1443 (quote (atom)))
(and (equal?
(vector-ref syntmp-p-1439 1)
(syntmp-strip-165
syntmp-e-1438
syntmp-w-1440))
syntmp-r-1441)
(if (memv syntmp-t-1443 (quote (vector)))
(and (vector? syntmp-e-1438)
(syntmp-match-1431
(vector->list syntmp-e-1438)
(vector-ref syntmp-p-1439 1)
syntmp-w-1440
syntmp-r-1441)))))))))))
(syntmp-match-empty-1429
(lambda (syntmp-p-1447 syntmp-r-1448)
(cond ((null? syntmp-p-1447) syntmp-r-1448)
((eq? syntmp-p-1447 (quote _)) syntmp-r-1448)
((eq? syntmp-p-1447 (quote any))
(cons (quote ()) syntmp-r-1448))
((pair? syntmp-p-1447)
(syntmp-match-empty-1429
(car syntmp-p-1447)
(syntmp-match-empty-1429
(cdr syntmp-p-1447)
syntmp-r-1448)))
((eq? syntmp-p-1447 (quote each-any))
(cons (quote ()) syntmp-r-1448))
(else
(let ((syntmp-t-1449 (vector-ref syntmp-p-1447 0)))
(if (memv syntmp-t-1449 (quote (each)))
(syntmp-match-empty-1429
(vector-ref syntmp-p-1447 1)
syntmp-r-1448)
(if (memv syntmp-t-1449 (quote (free-id atom)))
syntmp-r-1448
(if (memv syntmp-t-1449 (quote (vector)))
(syntmp-match-empty-1429
(vector-ref syntmp-p-1447 1)
syntmp-r-1448)))))))))
(syntmp-match-each-any-1428
(lambda (syntmp-e-1450 syntmp-w-1451)
(cond ((syntmp-annotation?-92 syntmp-e-1450)
(syntmp-match-each-any-1428
(annotation-expression syntmp-e-1450)
syntmp-w-1451))
((pair? syntmp-e-1450)
(let ((syntmp-l-1452
(syntmp-match-each-any-1428
(cdr syntmp-e-1450)
syntmp-w-1451)))
(and syntmp-l-1452
(cons (syntmp-wrap-146
(car syntmp-e-1450)
syntmp-w-1451)
syntmp-l-1452))))
((null? syntmp-e-1450) (quote ()))
((syntmp-syntax-object?-104 syntmp-e-1450)
(syntmp-match-each-any-1428
(syntmp-syntax-object-expression-105
syntmp-e-1450)
(syntmp-join-wraps-137
syntmp-w-1451
(syntmp-syntax-object-wrap-106 syntmp-e-1450))))
(else #f))))
(syntmp-match-each-1427
(lambda (syntmp-e-1453 syntmp-p-1454 syntmp-w-1455)
(cond ((syntmp-annotation?-92 syntmp-e-1453)
(syntmp-match-each-1427
(annotation-expression syntmp-e-1453)
syntmp-p-1454
syntmp-w-1455))
((pair? syntmp-e-1453)
(let ((syntmp-first-1456
(syntmp-match-1431
(car syntmp-e-1453)
syntmp-p-1454
syntmp-w-1455
'())))
(and syntmp-first-1456
(let ((syntmp-rest-1457
(syntmp-match-each-1427
(cdr syntmp-e-1453)
syntmp-p-1454
syntmp-w-1455)))
(and syntmp-rest-1457
(cons syntmp-first-1456
syntmp-rest-1457))))))
((null? syntmp-e-1453) (quote ()))
((syntmp-syntax-object?-104 syntmp-e-1453)
(syntmp-match-each-1427
(syntmp-syntax-object-expression-105
syntmp-e-1453)
syntmp-p-1454
(syntmp-join-wraps-137
syntmp-w-1455
(syntmp-syntax-object-wrap-106 syntmp-e-1453))))
(else #f)))))
(begin
(set! syntax-dispatch
(lambda (syntmp-e-1458 syntmp-p-1459)
(cond ((eq? syntmp-p-1459 (quote any))
(list syntmp-e-1458))
((eq? syntmp-p-1459 (quote _)) (quote ()))
((syntmp-syntax-object?-104 syntmp-e-1458)
(syntmp-match*-1430
(let ((syntmp-e-1460
(syntmp-syntax-object-expression-105
syntmp-e-1458)))
(if (syntmp-annotation?-92 syntmp-e-1460)
(annotation-expression syntmp-e-1460)
syntmp-e-1460))
syntmp-p-1459
(syntmp-syntax-object-wrap-106 syntmp-e-1458)
'()))
(else
(syntmp-match*-1430
(let ((syntmp-e-1461 syntmp-e-1458))
(if (syntmp-annotation?-92 syntmp-e-1461)
(annotation-expression syntmp-e-1461)
syntmp-e-1461))
syntmp-p-1459
'(())
'())))))
(set! sc-chi syntmp-chi-154)))))
(install-global-transformer
'with-syntax
(lambda (syntmp-x-1462)
((lambda (syntmp-tmp-1463)
((lambda (syntmp-tmp-1464)
(if syntmp-tmp-1464
(apply (lambda (syntmp-_-1465 syntmp-e1-1466 syntmp-e2-1467)
(cons '#(syntax-object
let
((top)
#(ribcage
#(_ e1 e2)
#((top) (top) (top))
#("i" "i" "i"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))))
(cons '()
(cons syntmp-e1-1466 syntmp-e2-1467))))
syntmp-tmp-1464)
((lambda (syntmp-tmp-1469)
(if syntmp-tmp-1469
(apply (lambda (syntmp-_-1470
syntmp-out-1471
syntmp-in-1472
syntmp-e1-1473
syntmp-e2-1474)
(list '#(syntax-object
syntax-case
((top)
#(ribcage
#(_ out in e1 e2)
#((top) (top) (top) (top) (top))
#("i" "i" "i" "i" "i"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))))
syntmp-in-1472
'()
(list syntmp-out-1471
(cons '#(syntax-object
let
((top)
#(ribcage
#(_ out in e1 e2)
#((top)
(top)
(top)
(top)
(top))
#("i" "i" "i" "i" "i"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i"))))
(cons '()
(cons syntmp-e1-1473
syntmp-e2-1474))))))
syntmp-tmp-1469)
((lambda (syntmp-tmp-1476)
(if syntmp-tmp-1476
(apply (lambda (syntmp-_-1477
syntmp-out-1478
syntmp-in-1479
syntmp-e1-1480
syntmp-e2-1481)
(list '#(syntax-object
syntax-case
((top)
#(ribcage
#(_ out in e1 e2)
#((top) (top) (top) (top) (top))
#("i" "i" "i" "i" "i"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))))
(cons '#(syntax-object
list
((top)
#(ribcage
#(_ out in e1 e2)
#((top)
(top)
(top)
(top)
(top))
#("i" "i" "i" "i" "i"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i"))))
syntmp-in-1479)
'()
(list syntmp-out-1478
(cons '#(syntax-object
let
((top)
#(ribcage
#(_ out in e1 e2)
#((top)
(top)
(top)
(top)
(top))
#("i" "i" "i" "i" "i"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i"))))
(cons '()
(cons syntmp-e1-1480
syntmp-e2-1481))))))
syntmp-tmp-1476)
(syntax-error syntmp-tmp-1463)))
(syntax-dispatch
syntmp-tmp-1463
'(any #(each (any any)) any . each-any)))))
(syntax-dispatch
syntmp-tmp-1463
'(any ((any any)) any . each-any)))))
(syntax-dispatch
syntmp-tmp-1463
'(any () any . each-any))))
syntmp-x-1462)))
(install-global-transformer
'syntax-rules
(lambda (syntmp-xx-1503)
(letrec ((syntmp-expand-syntax-rules-1504
(lambda (syntmp-dots-1505
syntmp-keys-1506
syntmp-docstrings-1507
syntmp-clauses-1508)
((lambda (syntmp-tmp-1509)
((lambda (syntmp-tmp-1510)
(if syntmp-tmp-1510
(apply (lambda (syntmp-k-1511
syntmp-docstring-1512
syntmp-keyword-1513
syntmp-pattern-1514
syntmp-template-1515)
((lambda (syntmp-tmp-1516)
((lambda (syntmp-form-1517)
(if syntmp-dots-1505
((lambda (syntmp-tmp-1518)
((lambda (syntmp-dots-1519)
(list '#(syntax-object
with-ellipsis
((top)
#(ribcage () () ())
#(ribcage
#(dots)
#((top))
#("i"))
#(ribcage () () ())
#(ribcage
#(form)
#((top))
#("i"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(k
docstring
keyword
pattern
template)
#((top)
(top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"
"i"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(dots
keys
docstrings
clauses)
#((top)
(top)
(top)
(top))
#("i" "i" "i" "i"))
#(ribcage
(expand-syntax-rules)
((top))
("i"))
#(ribcage
#(xx)
#((top))
#("i"))))
syntmp-dots-1519
syntmp-form-1517))
syntmp-tmp-1518))
syntmp-dots-1505)
syntmp-form-1517))
syntmp-tmp-1516))
(cons '#(syntax-object
lambda
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(k
docstring
keyword
pattern
template)
#((top) (top) (top) (top) (top))
#("i" "i" "i" "i" "i"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(dots keys docstrings clauses)
#((top) (top) (top) (top))
#("i" "i" "i" "i"))
#(ribcage
(expand-syntax-rules)
((top))
("i"))
#(ribcage #(xx) #((top)) #("i"))))
(cons '(#(syntax-object
x
((top)
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(k
docstring
keyword
pattern
template)
#((top)
(top)
(top)
(top)
(top))
#("i" "i" "i" "i" "i"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(dots
keys
docstrings
clauses)
#((top)
(top)
(top)
(top))
#("i" "i" "i" "i"))
#(ribcage
(expand-syntax-rules)
((top))
("i"))
#(ribcage
#(xx)
#((top))
#("i")))))
(append
syntmp-docstring-1512
(list (cons '#(syntax-object
syntax-case
((top)
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(k
docstring
keyword
pattern
template)
#((top)
(top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(dots
keys
docstrings
clauses)
#((top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"))
#(ribcage
(expand-syntax-rules)
((top))
("i"))
#(ribcage
#(xx)
#((top))
#("i"))))
(cons '#(syntax-object
x
((top)
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(k
docstring
keyword
pattern
template)
#((top)
(top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(dots
keys
docstrings
clauses)
#((top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"))
#(ribcage
(expand-syntax-rules)
((top))
("i"))
#(ribcage
#(xx)
#((top))
#("i"))))
(cons syntmp-k-1511
(map (lambda (syntmp-tmp-1522
syntmp-tmp-1521)
(list (cons '#(syntax-object
dummy
((top)
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(k
docstring
keyword
pattern
template)
#((top)
(top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(dots
keys
docstrings
clauses)
#((top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"))
#(ribcage
(expand-syntax-rules)
((top))
("i"))
#(ribcage
#(xx)
#((top))
#("i"))))
syntmp-tmp-1521)
(list '#(syntax-object
syntax
((top)
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(k
docstring
keyword
pattern
template)
#((top)
(top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(dots
keys
docstrings
clauses)
#((top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"))
#(ribcage
(expand-syntax-rules)
((top))
("i"))
#(ribcage
#(xx)
#((top))
#("i"))))
syntmp-tmp-1522)))
syntmp-template-1515
syntmp-pattern-1514))))))))))
syntmp-tmp-1510)
(syntax-error syntmp-tmp-1509)))
(syntax-dispatch
syntmp-tmp-1509
'(each-any each-any #(each ((any . any) any))))))
(list syntmp-keys-1506
syntmp-docstrings-1507
syntmp-clauses-1508)))))
((lambda (syntmp-tmp-1524)
((lambda (syntmp-tmp-1525)
(if syntmp-tmp-1525
(apply (lambda (syntmp-_-1526
syntmp-k-1527
syntmp-keyword-1528
syntmp-pattern-1529
syntmp-template-1530)
(syntmp-expand-syntax-rules-1504
#f
syntmp-k-1527
'()
(map (lambda (syntmp-tmp-1534
syntmp-tmp-1533
syntmp-tmp-1532)
(list (cons syntmp-tmp-1532 syntmp-tmp-1533)
syntmp-tmp-1534))
syntmp-template-1530
syntmp-pattern-1529
syntmp-keyword-1528)))
syntmp-tmp-1525)
((lambda (syntmp-tmp-1535)
(if (if syntmp-tmp-1535
(apply (lambda (syntmp-_-1536
syntmp-k-1537
syntmp-docstring-1538
syntmp-keyword-1539
syntmp-pattern-1540
syntmp-template-1541)
(string?
(syntax-object->datum
syntmp-docstring-1538)))
syntmp-tmp-1535)
#f)
(apply (lambda (syntmp-_-1542
syntmp-k-1543
syntmp-docstring-1544
syntmp-keyword-1545
syntmp-pattern-1546
syntmp-template-1547)
(syntmp-expand-syntax-rules-1504
#f
syntmp-k-1543
(list syntmp-docstring-1544)
(map (lambda (syntmp-tmp-1551
syntmp-tmp-1550
syntmp-tmp-1549)
(list (cons syntmp-tmp-1549
syntmp-tmp-1550)
syntmp-tmp-1551))
syntmp-template-1547
syntmp-pattern-1546
syntmp-keyword-1545)))
syntmp-tmp-1535)
((lambda (syntmp-tmp-1552)
(if (if syntmp-tmp-1552
(apply (lambda (syntmp-_-1553
syntmp-dots-1554
syntmp-k-1555
syntmp-keyword-1556
syntmp-pattern-1557
syntmp-template-1558)
(identifier? syntmp-dots-1554))
syntmp-tmp-1552)
#f)
(apply (lambda (syntmp-_-1559
syntmp-dots-1560
syntmp-k-1561
syntmp-keyword-1562
syntmp-pattern-1563
syntmp-template-1564)
(syntmp-expand-syntax-rules-1504
syntmp-dots-1560
syntmp-k-1561
'()
(map (lambda (syntmp-tmp-1568
syntmp-tmp-1567
syntmp-tmp-1566)
(list (cons syntmp-tmp-1566
syntmp-tmp-1567)
syntmp-tmp-1568))
syntmp-template-1564
syntmp-pattern-1563
syntmp-keyword-1562)))
syntmp-tmp-1552)
((lambda (syntmp-tmp-1569)
(if (if syntmp-tmp-1569
(apply (lambda (syntmp-_-1570
syntmp-dots-1571
syntmp-k-1572
syntmp-docstring-1573
syntmp-keyword-1574
syntmp-pattern-1575
syntmp-template-1576)
(and (identifier? syntmp-dots-1571)
(string?
(syntax-object->datum
syntmp-docstring-1573))))
syntmp-tmp-1569)
#f)
(apply (lambda (syntmp-_-1577
syntmp-dots-1578
syntmp-k-1579
syntmp-docstring-1580
syntmp-keyword-1581
syntmp-pattern-1582
syntmp-template-1583)
(syntmp-expand-syntax-rules-1504
syntmp-dots-1578
syntmp-k-1579
(list syntmp-docstring-1580)
(map (lambda (syntmp-tmp-1587
syntmp-tmp-1586
syntmp-tmp-1585)
(list (cons syntmp-tmp-1585
syntmp-tmp-1586)
syntmp-tmp-1587))
syntmp-template-1583
syntmp-pattern-1582
syntmp-keyword-1581)))
syntmp-tmp-1569)
(syntax-error syntmp-tmp-1524)))
(syntax-dispatch
syntmp-tmp-1524
'(any any
each-any
any
.
#(each ((any . any) any)))))))
(syntax-dispatch
syntmp-tmp-1524
'(any any each-any . #(each ((any . any) any)))))))
(syntax-dispatch
syntmp-tmp-1524
'(any each-any any . #(each ((any . any) any)))))))
(syntax-dispatch
syntmp-tmp-1524
'(any each-any . #(each ((any . any) any))))))
syntmp-xx-1503))))
(install-global-transformer
'define-syntax-rule
(lambda (syntmp-x-1667)
((lambda (syntmp-tmp-1668)
((lambda (syntmp-tmp-1669)
(if syntmp-tmp-1669
(apply (lambda (syntmp-_-1670
syntmp-name-1671
syntmp-pattern-1672
syntmp-template-1673)
(list '#(syntax-object
define-syntax
((top)
#(ribcage
#(_ name pattern template)
#((top) (top) (top) (top))
#("i" "i" "i" "i"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))))
syntmp-name-1671
(list '#(syntax-object
syntax-rules
((top)
#(ribcage
#(_ name pattern template)
#((top) (top) (top) (top))
#("i" "i" "i" "i"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))))
'()
(list (cons syntmp-_-1670 syntmp-pattern-1672)
syntmp-template-1673))))
syntmp-tmp-1669)
((lambda (syntmp-tmp-1674)
(if (if syntmp-tmp-1674
(apply (lambda (syntmp-_-1675
syntmp-name-1676
syntmp-pattern-1677
syntmp-docstring-1678
syntmp-template-1679)
(string?
(syntax-object->datum syntmp-docstring-1678)))
syntmp-tmp-1674)
#f)
(apply (lambda (syntmp-_-1680
syntmp-name-1681
syntmp-pattern-1682
syntmp-docstring-1683
syntmp-template-1684)
(list '#(syntax-object
define-syntax
((top)
#(ribcage
#(_ name pattern docstring template)
#((top) (top) (top) (top) (top))
#("i" "i" "i" "i" "i"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))))
syntmp-name-1681
(list '#(syntax-object
syntax-rules
((top)
#(ribcage
#(_
name
pattern
docstring
template)
#((top) (top) (top) (top) (top))
#("i" "i" "i" "i" "i"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))))
'()
syntmp-docstring-1683
(list (cons syntmp-_-1680
syntmp-pattern-1682)
syntmp-template-1684))))
syntmp-tmp-1674)
(syntax-error syntmp-tmp-1668)))
(syntax-dispatch
syntmp-tmp-1668
'(any (any . any) any any)))))
(syntax-dispatch
syntmp-tmp-1668
'(any (any . any) any))))
syntmp-x-1667)))
(install-global-transformer
'let*
(lambda (syntmp-x-1703)
((lambda (syntmp-tmp-1704)
((lambda (syntmp-tmp-1705)
(if (if syntmp-tmp-1705
(apply (lambda (syntmp-let*-1706
syntmp-x-1707
syntmp-v-1708
syntmp-e1-1709
syntmp-e2-1710)
(andmap identifier? syntmp-x-1707))
syntmp-tmp-1705)
#f)
(apply (lambda (syntmp-let*-1712
syntmp-x-1713
syntmp-v-1714
syntmp-e1-1715
syntmp-e2-1716)
(let syntmp-f-1717 ((syntmp-bindings-1718
(map list
syntmp-x-1713
syntmp-v-1714)))
(if (null? syntmp-bindings-1718)
(cons '#(syntax-object
let
((top)
#(ribcage () () ())
#(ribcage
#(f bindings)
#((top) (top))
#("i" "i"))
#(ribcage
#(let* x v e1 e2)
#((top) (top) (top) (top) (top))
#("i" "i" "i" "i" "i"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))))
(cons '()
(cons syntmp-e1-1715 syntmp-e2-1716)))
((lambda (syntmp-tmp-1722)
((lambda (syntmp-tmp-1723)
(if syntmp-tmp-1723
(apply (lambda (syntmp-body-1724
syntmp-binding-1725)
(list '#(syntax-object
let
((top)
#(ribcage () () ())
#(ribcage
#(body binding)
#((top) (top))
#("i" "i"))
#(ribcage () () ())
#(ribcage
#(f bindings)
#((top) (top))
#("i" "i"))
#(ribcage
#(let* x v e1 e2)
#((top)
(top)
(top)
(top)
(top))
#("i" "i" "i" "i" "i"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i"))))
(list syntmp-binding-1725)
syntmp-body-1724))
syntmp-tmp-1723)
(syntax-error syntmp-tmp-1722)))
(syntax-dispatch
syntmp-tmp-1722
'(any any))))
(list (syntmp-f-1717 (cdr syntmp-bindings-1718))
(car syntmp-bindings-1718))))))
syntmp-tmp-1705)
(syntax-error syntmp-tmp-1704)))
(syntax-dispatch
syntmp-tmp-1704
'(any #(each (any any)) any . each-any))))
syntmp-x-1703)))
(install-global-transformer
'do
(lambda (syntmp-orig-x-1745)
((lambda (syntmp-tmp-1746)
((lambda (syntmp-tmp-1747)
(if syntmp-tmp-1747
(apply (lambda (syntmp-_-1748
syntmp-var-1749
syntmp-init-1750
syntmp-step-1751
syntmp-e0-1752
syntmp-e1-1753
syntmp-c-1754)
((lambda (syntmp-tmp-1755)
((lambda (syntmp-tmp-1756)
(if syntmp-tmp-1756
(apply (lambda (syntmp-step-1757)
((lambda (syntmp-tmp-1758)
((lambda (syntmp-tmp-1759)
(if syntmp-tmp-1759
(apply (lambda ()
(list '#(syntax-object
let
((top)
#(ribcage
()
()
())
#(ribcage
#(step)
#((top))
#("i"))
#(ribcage
#(_
var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"
"i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i"))))
'#(syntax-object
doloop
((top)
#(ribcage
()
()
())
#(ribcage
#(step)
#((top))
#("i"))
#(ribcage
#(_
var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"
"i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i"))))
(map list
syntmp-var-1749
syntmp-init-1750)
(list '#(syntax-object
if
((top)
#(ribcage
()
()
())
#(ribcage
#(step)
#((top))
#("i"))
#(ribcage
#(_
var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"
"i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i"))))
(list '#(syntax-object
not
((top)
#(ribcage
()
()
())
#(ribcage
#(step)
#((top))
#("i"))
#(ribcage
#(_
var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"
"i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i"))))
syntmp-e0-1752)
(cons '#(syntax-object
begin
((top)
#(ribcage
()
()
())
#(ribcage
#(step)
#((top))
#("i"))
#(ribcage
#(_
var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"
"i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i"))))
(append
syntmp-c-1754
(list (cons '#(syntax-object
doloop
((top)
#(ribcage
()
()
())
#(ribcage
#(step)
#((top))
#("i"))
#(ribcage
#(_
var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"
"i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i"))))
syntmp-step-1757)))))))
syntmp-tmp-1759)
((lambda (syntmp-tmp-1764)
(if syntmp-tmp-1764
(apply (lambda (syntmp-e1-1765
syntmp-e2-1766)
(list '#(syntax-object
let
((top)
#(ribcage
#(e1
e2)
#((top)
(top))
#("i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(step)
#((top))
#("i"))
#(ribcage
#(_
var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"
"i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i"))))
'#(syntax-object
doloop
((top)
#(ribcage
#(e1
e2)
#((top)
(top))
#("i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(step)
#((top))
#("i"))
#(ribcage
#(_
var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"
"i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i"))))
(map list
syntmp-var-1749
syntmp-init-1750)
(list '#(syntax-object
if
((top)
#(ribcage
#(e1
e2)
#((top)
(top))
#("i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(step)
#((top))
#("i"))
#(ribcage
#(_
var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"
"i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i"))))
syntmp-e0-1752
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1
e2)
#((top)
(top))
#("i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(step)
#((top))
#("i"))
#(ribcage
#(_
var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"
"i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i"))))
(cons syntmp-e1-1765
syntmp-e2-1766))
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1
e2)
#((top)
(top))
#("i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(step)
#((top))
#("i"))
#(ribcage
#(_
var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"
"i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i"))))
(append
syntmp-c-1754
(list (cons '#(syntax-object
doloop
((top)
#(ribcage
#(e1
e2)
#((top)
(top))
#("i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(step)
#((top))
#("i"))
#(ribcage
#(_
var
init
step
e0
e1
c)
#((top)
(top)
(top)
(top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"
"i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(orig-x)
#((top))
#("i"))))
syntmp-step-1757)))))))
syntmp-tmp-1764)
(syntax-error
syntmp-tmp-1758)))
(syntax-dispatch
syntmp-tmp-1758
'(any . each-any)))))
(syntax-dispatch
syntmp-tmp-1758
'())))
syntmp-e1-1753))
syntmp-tmp-1756)
(syntax-error syntmp-tmp-1755)))
(syntax-dispatch
syntmp-tmp-1755
'each-any)))
(map (lambda (syntmp-v-1773 syntmp-s-1774)
((lambda (syntmp-tmp-1775)
((lambda (syntmp-tmp-1776)
(if syntmp-tmp-1776
(apply (lambda () syntmp-v-1773)
syntmp-tmp-1776)
((lambda (syntmp-tmp-1777)
(if syntmp-tmp-1777
(apply (lambda (syntmp-e-1778)
syntmp-e-1778)
syntmp-tmp-1777)
((lambda (syntmp-_-1779)
(syntax-error syntmp-orig-x-1745))
syntmp-tmp-1775)))
(syntax-dispatch
syntmp-tmp-1775
'(any)))))
(syntax-dispatch syntmp-tmp-1775 (quote ()))))
syntmp-s-1774))
syntmp-var-1749
syntmp-step-1751)))
syntmp-tmp-1747)
(syntax-error syntmp-tmp-1746)))
(syntax-dispatch
syntmp-tmp-1746
'(any #(each (any any . any))
(any . each-any)
.
each-any))))
syntmp-orig-x-1745)))
(install-global-transformer
'quasiquote
(letrec ((syntmp-quasicons-1807
(lambda (syntmp-x-1811 syntmp-y-1812)
((lambda (syntmp-tmp-1813)
((lambda (syntmp-tmp-1814)
(if syntmp-tmp-1814
(apply (lambda (syntmp-x-1815 syntmp-y-1816)
((lambda (syntmp-tmp-1817)
((lambda (syntmp-tmp-1818)
(if syntmp-tmp-1818
(apply (lambda (syntmp-dy-1819)
((lambda (syntmp-tmp-1820)
((lambda (syntmp-tmp-1821)
(if syntmp-tmp-1821
(apply (lambda (syntmp-dx-1822)
(list '#(syntax-object
quote
((top)
#(ribcage
#(dx)
#((top))
#("i"))
#(ribcage
#(dy)
#((top))
#("i"))
#(ribcage
()
()
())
#(ribcage
#(x
y)
#((top)
(top))
#("i"
"i"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(x
y)
#((top)
(top))
#("i"
"i"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"))))
(cons syntmp-dx-1822
syntmp-dy-1819)))
syntmp-tmp-1821)
((lambda (syntmp-_-1823)
(if (null? syntmp-dy-1819)
(list '#(syntax-object
list
((top)
#(ribcage
#(_)
#((top))
#("i"))
#(ribcage
#(dy)
#((top))
#("i"))
#(ribcage
()
()
())
#(ribcage
#(x
y)
#((top)
(top))
#("i"
"i"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(x
y)
#((top)
(top))
#("i"
"i"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"))))
syntmp-x-1815)
(list '#(syntax-object
cons
((top)
#(ribcage
#(_)
#((top))
#("i"))
#(ribcage
#(dy)
#((top))
#("i"))
#(ribcage
()
()
())
#(ribcage
#(x
y)
#((top)
(top))
#("i"
"i"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(x
y)
#((top)
(top))
#("i"
"i"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"))))
syntmp-x-1815
syntmp-y-1816)))
syntmp-tmp-1820)))
(syntax-dispatch
syntmp-tmp-1820
'(#(free-id
#(syntax-object
quote
((top)
#(ribcage
#(dy)
#((top))
#("i"))
#(ribcage
()
()
())
#(ribcage
#(x y)
#((top) (top))
#("i" "i"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(x y)
#((top) (top))
#("i" "i"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i")))))
any))))
syntmp-x-1815))
syntmp-tmp-1818)
((lambda (syntmp-tmp-1824)
(if syntmp-tmp-1824
(apply (lambda (syntmp-stuff-1825)
(cons '#(syntax-object
list
((top)
#(ribcage
#(stuff)
#((top))
#("i"))
#(ribcage
()
()
())
#(ribcage
#(x y)
#((top)
(top))
#("i" "i"))
#(ribcage
()
()
())
#(ribcage
()
()
())
#(ribcage
#(x y)
#((top)
(top))
#("i" "i"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"))))
(cons syntmp-x-1815
syntmp-stuff-1825)))
syntmp-tmp-1824)
((lambda (syntmp-else-1826)
(list '#(syntax-object
cons
((top)
#(ribcage
#(else)
#((top))
#("i"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i" "i"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i" "i"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"))))
syntmp-x-1815
syntmp-y-1816))
syntmp-tmp-1817)))
(syntax-dispatch
syntmp-tmp-1817
'(#(free-id
#(syntax-object
list
((top)
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i" "i"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i" "i"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i" "i" "i" "i")))))
.
any)))))
(syntax-dispatch
syntmp-tmp-1817
'(#(free-id
#(syntax-object
quote
((top)
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i" "i"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i" "i"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i" "i" "i" "i")))))
any))))
syntmp-y-1816))
syntmp-tmp-1814)
(syntax-error syntmp-tmp-1813)))
(syntax-dispatch
syntmp-tmp-1813
'(any any))))
(list syntmp-x-1811 syntmp-y-1812))))
(syntmp-quasiappend-1808
(lambda (syntmp-x-1827 syntmp-y-1828)
((lambda (syntmp-tmp-1829)
((lambda (syntmp-tmp-1830)
(if syntmp-tmp-1830
(apply (lambda (syntmp-x-1831 syntmp-y-1832)
((lambda (syntmp-tmp-1833)
((lambda (syntmp-tmp-1834)
(if syntmp-tmp-1834
(apply (lambda () syntmp-x-1831)
syntmp-tmp-1834)
((lambda (syntmp-_-1835)
(list '#(syntax-object
append
((top)
#(ribcage
#(_)
#((top))
#("i"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i" "i"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i" "i"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top)
(top)
(top)
(top))
#("i" "i" "i" "i"))))
syntmp-x-1831
syntmp-y-1832))
syntmp-tmp-1833)))
(syntax-dispatch
syntmp-tmp-1833
'(#(free-id
#(syntax-object
quote
((top)
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i" "i"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
#("i" "i"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i" "i" "i" "i")))))
()))))
syntmp-y-1832))
syntmp-tmp-1830)
(syntax-error syntmp-tmp-1829)))
(syntax-dispatch
syntmp-tmp-1829
'(any any))))
(list syntmp-x-1827 syntmp-y-1828))))
(syntmp-quasivector-1809
(lambda (syntmp-x-1836)
((lambda (syntmp-tmp-1837)
((lambda (syntmp-x-1838)
((lambda (syntmp-tmp-1839)
((lambda (syntmp-tmp-1840)
(if syntmp-tmp-1840
(apply (lambda (syntmp-x-1841)
(list '#(syntax-object
quote
((top)
#(ribcage #(x) #((top)) #("i"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i" "i" "i" "i"))))
(list->vector syntmp-x-1841)))
syntmp-tmp-1840)
((lambda (syntmp-tmp-1843)
(if syntmp-tmp-1843
(apply (lambda (syntmp-x-1844)
(cons '#(syntax-object
vector
((top)
#(ribcage
#(x)
#((top))
#("i"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top)
(top)
(top)
(top))
#("i" "i" "i" "i"))))
syntmp-x-1844))
syntmp-tmp-1843)
((lambda (syntmp-_-1846)
(list '#(syntax-object
list->vector
((top)
#(ribcage #(_) #((top)) #("i"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i" "i" "i" "i"))))
syntmp-x-1838))
syntmp-tmp-1839)))
(syntax-dispatch
syntmp-tmp-1839
'(#(free-id
#(syntax-object
list
((top)
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i" "i" "i" "i")))))
.
each-any)))))
(syntax-dispatch
syntmp-tmp-1839
'(#(free-id
#(syntax-object
quote
((top)
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))
#(ribcage
#(quasicons quasiappend quasivector quasi)
#((top) (top) (top) (top))
#("i" "i" "i" "i")))))
each-any))))
syntmp-x-1838))
syntmp-tmp-1837))
syntmp-x-1836)))
(syntmp-quasi-1810
(lambda (syntmp-p-1847 syntmp-lev-1848)
((lambda (syntmp-tmp-1849)
((lambda (syntmp-tmp-1850)
(if syntmp-tmp-1850
(apply (lambda (syntmp-p-1851)
(if (= syntmp-lev-1848 0)
syntmp-p-1851
(syntmp-quasicons-1807
'(#(syntax-object
quote
((top)
#(ribcage #(p) #((top)) #("i"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i" "i"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i" "i" "i" "i"))))
#(syntax-object
unquote
((top)
#(ribcage #(p) #((top)) #("i"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i" "i"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i" "i" "i" "i")))))
(syntmp-quasi-1810
(list syntmp-p-1851)
(- syntmp-lev-1848 1)))))
syntmp-tmp-1850)
((lambda (syntmp-tmp-1852)
(if syntmp-tmp-1852
(apply (lambda (syntmp-p-1853 syntmp-q-1854)
(if (= syntmp-lev-1848 0)
(syntmp-quasiappend-1808
syntmp-p-1853
(syntmp-quasi-1810
syntmp-q-1854
syntmp-lev-1848))
(syntmp-quasicons-1807
(syntmp-quasicons-1807
'(#(syntax-object
quote
((top)
#(ribcage
#(p q)
#((top) (top))
#("i" "i"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i" "i"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i" "i" "i" "i"))))
#(syntax-object
unquote-splicing
((top)
#(ribcage
#(p q)
#((top) (top))
#("i" "i"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i" "i"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i" "i" "i" "i")))))
(syntmp-quasi-1810
(list syntmp-p-1853)
(- syntmp-lev-1848 1)))
(syntmp-quasi-1810
syntmp-q-1854
syntmp-lev-1848))))
syntmp-tmp-1852)
((lambda (syntmp-tmp-1855)
(if syntmp-tmp-1855
(apply (lambda (syntmp-p-1856)
(syntmp-quasicons-1807
'(#(syntax-object
quote
((top)
#(ribcage
#(p)
#((top))
#("i"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i" "i"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i" "i" "i" "i"))))
#(syntax-object
quasiquote
((top)
#(ribcage
#(p)
#((top))
#("i"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i" "i"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i" "i" "i" "i")))))
(syntmp-quasi-1810
(list syntmp-p-1856)
(+ syntmp-lev-1848 1))))
syntmp-tmp-1855)
((lambda (syntmp-tmp-1857)
(if syntmp-tmp-1857
(apply (lambda (syntmp-p-1858
syntmp-q-1859)
(syntmp-quasicons-1807
(syntmp-quasi-1810
syntmp-p-1858
syntmp-lev-1848)
(syntmp-quasi-1810
syntmp-q-1859
syntmp-lev-1848)))
syntmp-tmp-1857)
((lambda (syntmp-tmp-1860)
(if syntmp-tmp-1860
(apply (lambda (syntmp-x-1861)
(syntmp-quasivector-1809
(syntmp-quasi-1810
syntmp-x-1861
syntmp-lev-1848)))
syntmp-tmp-1860)
((lambda (syntmp-p-1863)
(list '#(syntax-object
quote
((top)
#(ribcage
#(p)
#((top))
#("i"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i" "i"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top)
(top)
(top)
(top))
#("i" "i" "i" "i"))))
syntmp-p-1863))
syntmp-tmp-1849)))
(syntax-dispatch
syntmp-tmp-1849
'#(vector each-any)))))
(syntax-dispatch
syntmp-tmp-1849
'(any . any)))))
(syntax-dispatch
syntmp-tmp-1849
'(#(free-id
#(syntax-object
quasiquote
((top)
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
#("i" "i"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
#("i" "i" "i" "i")))))
any)))))
(syntax-dispatch
syntmp-tmp-1849
'((#(free-id
#(syntax-object
unquote-splicing
((top)
#(ribcage () () ())
#(ribcage #(p lev) #((top) (top)) #("i" "i"))
#(ribcage
#(quasicons quasiappend quasivector quasi)
#((top) (top) (top) (top))
#("i" "i" "i" "i")))))
any)
.
any)))))
(syntax-dispatch
syntmp-tmp-1849
'(#(free-id
#(syntax-object
unquote
((top)
#(ribcage () () ())
#(ribcage #(p lev) #((top) (top)) #("i" "i"))
#(ribcage
#(quasicons quasiappend quasivector quasi)
#((top) (top) (top) (top))
#("i" "i" "i" "i")))))
any))))
syntmp-p-1847))))
(lambda (syntmp-x-1864)
((lambda (syntmp-tmp-1865)
((lambda (syntmp-tmp-1866)
(if syntmp-tmp-1866
(apply (lambda (syntmp-_-1867 syntmp-e-1868)
(syntmp-quasi-1810 syntmp-e-1868 0))
syntmp-tmp-1866)
(syntax-error syntmp-tmp-1865)))
(syntax-dispatch
syntmp-tmp-1865
'(any any))))
syntmp-x-1864))))
(install-global-transformer
'include
(lambda (syntmp-x-1928)
(letrec ((syntmp-read-file-1929
(lambda (syntmp-fn-1930 syntmp-k-1931)
(let ((syntmp-p-1932 (open-input-file syntmp-fn-1930)))
(let syntmp-f-1933 ((syntmp-x-1934 (read syntmp-p-1932)))
(if (eof-object? syntmp-x-1934)
(begin
(close-input-port syntmp-p-1932)
'())
(cons (datum->syntax-object
syntmp-k-1931
syntmp-x-1934)
(syntmp-f-1933 (read syntmp-p-1932)))))))))
((lambda (syntmp-tmp-1935)
((lambda (syntmp-tmp-1936)
(if syntmp-tmp-1936
(apply (lambda (syntmp-k-1937 syntmp-filename-1938)
(let ((syntmp-fn-1939
(syntax-object->datum syntmp-filename-1938)))
((lambda (syntmp-tmp-1940)
((lambda (syntmp-tmp-1941)
(if syntmp-tmp-1941
(apply (lambda (syntmp-exp-1942)
(cons '#(syntax-object
begin
((top)
#(ribcage () () ())
#(ribcage
#(exp)
#((top))
#("i"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(fn)
#((top))
#("i"))
#(ribcage
#(k filename)
#((top) (top))
#("i" "i"))
#(ribcage
(read-file)
((top))
("i"))
#(ribcage
#(x)
#((top))
#("i"))))
syntmp-exp-1942))
syntmp-tmp-1941)
(syntax-error syntmp-tmp-1940)))
(syntax-dispatch
syntmp-tmp-1940
'each-any)))
(syntmp-read-file-1929
syntmp-fn-1939
syntmp-k-1937))))
syntmp-tmp-1936)
(syntax-error syntmp-tmp-1935)))
(syntax-dispatch
syntmp-tmp-1935
'(any any))))
syntmp-x-1928))))
(install-global-transformer
'unquote
(lambda (syntmp-x-1959)
((lambda (syntmp-tmp-1960)
((lambda (syntmp-tmp-1961)
(if syntmp-tmp-1961
(apply (lambda (syntmp-_-1962 syntmp-e-1963)
(error 'unquote
"expression ,~s not valid outside of quasiquote"
(syntax-object->datum syntmp-e-1963)))
syntmp-tmp-1961)
(syntax-error syntmp-tmp-1960)))
(syntax-dispatch
syntmp-tmp-1960
'(any any))))
syntmp-x-1959)))
(install-global-transformer
'unquote-splicing
(lambda (syntmp-x-1969)
((lambda (syntmp-tmp-1970)
((lambda (syntmp-tmp-1971)
(if syntmp-tmp-1971
(apply (lambda (syntmp-_-1972 syntmp-e-1973)
(error 'unquote-splicing
"expression ,@~s not valid outside of quasiquote"
(syntax-object->datum syntmp-e-1973)))
syntmp-tmp-1971)
(syntax-error syntmp-tmp-1970)))
(syntax-dispatch
syntmp-tmp-1970
'(any any))))
syntmp-x-1969)))
(install-global-transformer
'case
(lambda (syntmp-x-1979)
((lambda (syntmp-tmp-1980)
((lambda (syntmp-tmp-1981)
(if syntmp-tmp-1981
(apply (lambda (syntmp-_-1982
syntmp-e-1983
syntmp-m1-1984
syntmp-m2-1985)
((lambda (syntmp-tmp-1986)
((lambda (syntmp-body-1987)
(list '#(syntax-object
let
((top)
#(ribcage () () ())
#(ribcage #(body) #((top)) #("i"))
#(ribcage
#(_ e m1 m2)
#((top) (top) (top) (top))
#("i" "i" "i" "i"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))))
(list (list '#(syntax-object
t
((top)
#(ribcage () () ())
#(ribcage
#(body)
#((top))
#("i"))
#(ribcage
#(_ e m1 m2)
#((top) (top) (top) (top))
#("i" "i" "i" "i"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i"))))
syntmp-e-1983))
syntmp-body-1987))
syntmp-tmp-1986))
(let syntmp-f-1988 ((syntmp-clause-1989 syntmp-m1-1984)
(syntmp-clauses-1990 syntmp-m2-1985))
(if (null? syntmp-clauses-1990)
((lambda (syntmp-tmp-1992)
((lambda (syntmp-tmp-1993)
(if syntmp-tmp-1993
(apply (lambda (syntmp-e1-1994
syntmp-e2-1995)
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1 e2)
#((top) (top))
#("i" "i"))
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
#("i" "i" "i"))
#(ribcage
#(_ e m1 m2)
#((top)
(top)
(top)
(top))
#("i" "i" "i" "i"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i"))))
(cons syntmp-e1-1994
syntmp-e2-1995)))
syntmp-tmp-1993)
((lambda (syntmp-tmp-1997)
(if syntmp-tmp-1997
(apply (lambda (syntmp-k-1998
syntmp-e1-1999
syntmp-e2-2000)
(list '#(syntax-object
if
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i" "i" "i"))
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top)
(top)
(top))
#("i" "i" "i"))
#(ribcage
#(_ e m1 m2)
#((top)
(top)
(top)
(top))
#("i" "i" "i" "i"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i"))))
(list '#(syntax-object
memv
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i"
"i"
"i"))
#(ribcage
#(_ e m1 m2)
#((top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i"))))
'#(syntax-object
t
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i"
"i"
"i"))
#(ribcage
#(_ e m1 m2)
#((top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i"))))
(list '#(syntax-object
quote
((top)
#(ribcage
#(k
e1
e2)
#((top)
(top)
(top))
#("i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i"
"i"
"i"))
#(ribcage
#(_
e
m1
m2)
#((top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i"))))
syntmp-k-1998))
(cons '#(syntax-object
begin
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i"
"i"
"i"))
#(ribcage
#(_ e m1 m2)
#((top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i"))))
(cons syntmp-e1-1999
syntmp-e2-2000))))
syntmp-tmp-1997)
((lambda (syntmp-_-2003)
(syntax-error syntmp-x-1979))
syntmp-tmp-1992)))
(syntax-dispatch
syntmp-tmp-1992
'(each-any any . each-any)))))
(syntax-dispatch
syntmp-tmp-1992
'(#(free-id
#(syntax-object
else
((top)
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
#("i" "i" "i"))
#(ribcage
#(_ e m1 m2)
#((top) (top) (top) (top))
#("i" "i" "i" "i"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i")))))
any
.
each-any))))
syntmp-clause-1989)
((lambda (syntmp-tmp-2004)
((lambda (syntmp-rest-2005)
((lambda (syntmp-tmp-2006)
((lambda (syntmp-tmp-2007)
(if syntmp-tmp-2007
(apply (lambda (syntmp-k-2008
syntmp-e1-2009
syntmp-e2-2010)
(list '#(syntax-object
if
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i" "i" "i"))
#(ribcage () () ())
#(ribcage
#(rest)
#((top))
#("i"))
#(ribcage () () ())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i" "i" "i"))
#(ribcage
#(_ e m1 m2)
#((top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i"))))
(list '#(syntax-object
memv
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(rest)
#((top))
#("i"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i"
"i"
"i"))
#(ribcage
#(_ e m1 m2)
#((top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i"))))
'#(syntax-object
t
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(rest)
#((top))
#("i"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i"
"i"
"i"))
#(ribcage
#(_ e m1 m2)
#((top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i"))))
(list '#(syntax-object
quote
((top)
#(ribcage
#(k
e1
e2)
#((top)
(top)
(top))
#("i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(rest)
#((top))
#("i"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i"
"i"
"i"))
#(ribcage
#(_
e
m1
m2)
#((top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i"))))
syntmp-k-2008))
(cons '#(syntax-object
begin
((top)
#(ribcage
#(k e1 e2)
#((top)
(top)
(top))
#("i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(rest)
#((top))
#("i"))
#(ribcage
()
()
())
#(ribcage
#(f
clause
clauses)
#((top)
(top)
(top))
#("i"
"i"
"i"))
#(ribcage
#(_ e m1 m2)
#((top)
(top)
(top)
(top))
#("i"
"i"
"i"
"i"))
#(ribcage
()
()
())
#(ribcage
#(x)
#((top))
#("i"))))
(cons syntmp-e1-2009
syntmp-e2-2010))
syntmp-rest-2005))
syntmp-tmp-2007)
((lambda (syntmp-_-2013)
(syntax-error syntmp-x-1979))
syntmp-tmp-2006)))
(syntax-dispatch
syntmp-tmp-2006
'(each-any any . each-any))))
syntmp-clause-1989))
syntmp-tmp-2004))
(syntmp-f-1988
(car syntmp-clauses-1990)
(cdr syntmp-clauses-1990)))))))
syntmp-tmp-1981)
(syntax-error syntmp-tmp-1980)))
(syntax-dispatch
syntmp-tmp-1980
'(any any any . each-any))))
syntmp-x-1979)))
(install-global-transformer
'identifier-syntax
(lambda (syntmp-x-2043)
((lambda (syntmp-tmp-2044)
((lambda (syntmp-tmp-2045)
(if syntmp-tmp-2045
(apply (lambda (syntmp-_-2046 syntmp-e-2047)
(list '#(syntax-object
lambda
((top)
#(ribcage #(_ e) #((top) (top)) #("i" "i"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))))
'(#(syntax-object
x
((top)
#(ribcage #(_ e) #((top) (top)) #("i" "i"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i")))))
(list '#(syntax-object
syntax-case
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i" "i"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))))
'#(syntax-object
x
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i" "i"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))))
'()
(list '#(syntax-object
id
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i" "i"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))))
'(#(syntax-object
identifier?
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i" "i"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))))
(#(syntax-object
syntax
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i" "i"))
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))))
#(syntax-object
id
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i" "i"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i"))))))
(list '#(syntax-object
syntax
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i" "i"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i"))))
syntmp-e-2047))
(list (cons syntmp-_-2046
'(#(syntax-object
x
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i" "i"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i"))))
#(syntax-object
...
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i" "i"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i"))))))
(list '#(syntax-object
syntax
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i" "i"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i"))))
(cons syntmp-e-2047
'(#(syntax-object
x
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i" "i"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i"))))
#(syntax-object
...
((top)
#(ribcage
#(_ e)
#((top) (top))
#("i" "i"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
#("i")))))))))))
syntmp-tmp-2045)
(syntax-error syntmp-tmp-2044)))
(syntax-dispatch
syntmp-tmp-2044
'(any any))))
syntmp-x-2043)))