Merge remote-tracking branch 'origin/stable-2.0'
[bpt/guile.git] / module / ice-9 / psyntax-pp.scm
1 (eval-when (compile) (set-current-module (resolve-module (quote (guile)))))
2 (if #f #f)
3
4 (let ((session-id-4511 (if #f #f))
5 (transformer-environment-4572 (if #f #f)))
6 (letrec*
7 ((top-level-eval-hook-4509
8 (lambda (x-36254 mod-36255)
9 (primitive-eval x-36254)))
10 (maybe-name-value!-4515
11 (lambda (name-19069 val-19070)
12 (if (if (struct? val-19070)
13 (eq? (struct-vtable val-19070)
14 (vector-ref %expanded-vtables 14))
15 #f)
16 (let ((meta-19077 (struct-ref val-19070 1)))
17 (if (not (assq 'name meta-19077))
18 (let ((v-19082
19 (cons (cons 'name name-19069) meta-19077)))
20 (struct-set! val-19070 1 v-19082)))))))
21 (build-call-4517
22 (lambda (source-18814 fun-exp-18815 arg-exps-18816)
23 (make-struct/no-tail
24 (vector-ref %expanded-vtables 11)
25 source-18814
26 fun-exp-18815
27 arg-exps-18816)))
28 (build-conditional-4518
29 (lambda (source-18822
30 test-exp-18823
31 then-exp-18824
32 else-exp-18825)
33 (make-struct/no-tail
34 (vector-ref %expanded-vtables 10)
35 source-18822
36 test-exp-18823
37 then-exp-18824
38 else-exp-18825)))
39 (build-dynlet-4519
40 (lambda (source-18832 fluids-18833 vals-18834 body-18835)
41 (make-struct/no-tail
42 (vector-ref %expanded-vtables 18)
43 source-18832
44 fluids-18833
45 vals-18834
46 body-18835)))
47 (build-lexical-reference-4520
48 (lambda (type-36256 source-36257 name-36258 var-36259)
49 (make-struct/no-tail
50 (vector-ref %expanded-vtables 3)
51 source-36257
52 name-36258
53 var-36259)))
54 (build-lexical-assignment-4521
55 (lambda (source-18842 name-18843 var-18844 exp-18845)
56 (begin
57 (if (if (struct? exp-18845)
58 (eq? (struct-vtable exp-18845)
59 (vector-ref %expanded-vtables 14))
60 #f)
61 (let ((meta-18861 (struct-ref exp-18845 1)))
62 (if (not (assq 'name meta-18861))
63 (let ((v-18868
64 (cons (cons 'name name-18843) meta-18861)))
65 (struct-set! exp-18845 1 v-18868)))))
66 (make-struct/no-tail
67 (vector-ref %expanded-vtables 4)
68 source-18842
69 name-18843
70 var-18844
71 exp-18845))))
72 (analyze-variable-4522
73 (lambda (mod-36265
74 var-36266
75 modref-cont-36267
76 bare-cont-36268)
77 (if (not mod-36265)
78 (bare-cont-36268 var-36266)
79 (let ((kind-36269 (car mod-36265))
80 (mod-36270 (cdr mod-36265)))
81 (if (eqv? kind-36269 'public)
82 (modref-cont-36267 mod-36270 var-36266 #t)
83 (if (eqv? kind-36269 'private)
84 (if (not (equal? mod-36270 (module-name (current-module))))
85 (modref-cont-36267 mod-36270 var-36266 #f)
86 (bare-cont-36268 var-36266))
87 (if (eqv? kind-36269 'bare)
88 (bare-cont-36268 var-36266)
89 (if (eqv? kind-36269 'hygiene)
90 (if (if (not (equal?
91 mod-36270
92 (module-name (current-module))))
93 (module-variable
94 (resolve-module mod-36270)
95 var-36266)
96 #f)
97 (modref-cont-36267 mod-36270 var-36266 #f)
98 (bare-cont-36268 var-36266))
99 (syntax-violation
100 #f
101 "bad module kind"
102 var-36266
103 mod-36270)))))))))
104 (build-global-reference-4523
105 (lambda (source-36285 var-36286 mod-36287)
106 (analyze-variable-4522
107 mod-36287
108 var-36286
109 (lambda (mod-36290 var-36291 public?-36292)
110 (make-struct/no-tail
111 (vector-ref %expanded-vtables 5)
112 source-36285
113 mod-36290
114 var-36291
115 public?-36292))
116 (lambda (var-36299)
117 (make-struct/no-tail
118 (vector-ref %expanded-vtables 7)
119 source-36285
120 var-36299)))))
121 (build-global-assignment-4524
122 (lambda (source-18877 var-18878 exp-18879 mod-18880)
123 (begin
124 (if (if (struct? exp-18879)
125 (eq? (struct-vtable exp-18879)
126 (vector-ref %expanded-vtables 14))
127 #f)
128 (let ((meta-18896 (struct-ref exp-18879 1)))
129 (if (not (assq 'name meta-18896))
130 (let ((v-18903
131 (cons (cons 'name var-18878) meta-18896)))
132 (struct-set! exp-18879 1 v-18903)))))
133 (analyze-variable-4522
134 mod-18880
135 var-18878
136 (lambda (mod-18908 var-18909 public?-18910)
137 (make-struct/no-tail
138 (vector-ref %expanded-vtables 6)
139 source-18877
140 mod-18908
141 var-18909
142 public?-18910
143 exp-18879))
144 (lambda (var-18918)
145 (make-struct/no-tail
146 (vector-ref %expanded-vtables 8)
147 source-18877
148 var-18918
149 exp-18879))))))
150 (build-global-definition-4525
151 (lambda (source-36304 var-36305 exp-36306)
152 (begin
153 (if (if (struct? exp-36306)
154 (eq? (struct-vtable exp-36306)
155 (vector-ref %expanded-vtables 14))
156 #f)
157 (let ((meta-36322 (struct-ref exp-36306 1)))
158 (if (not (assq 'name meta-36322))
159 (let ((v-36329
160 (cons (cons 'name var-36305) meta-36322)))
161 (struct-set! exp-36306 1 v-36329)))))
162 (make-struct/no-tail
163 (vector-ref %expanded-vtables 9)
164 source-36304
165 var-36305
166 exp-36306))))
167 (build-simple-lambda-4526
168 (lambda (src-18924
169 req-18925
170 rest-18926
171 vars-18927
172 meta-18928
173 exp-18929)
174 (let ((body-18935
175 (make-struct/no-tail
176 (vector-ref %expanded-vtables 15)
177 src-18924
178 req-18925
179 #f
180 rest-18926
181 #f
182 '()
183 vars-18927
184 exp-18929
185 #f)))
186 (make-struct/no-tail
187 (vector-ref %expanded-vtables 14)
188 src-18924
189 meta-18928
190 body-18935))))
191 (build-primcall-4529
192 (lambda (src-18947 name-18948 args-18949)
193 (make-struct/no-tail
194 (vector-ref %expanded-vtables 12)
195 src-18947
196 name-18948
197 args-18949)))
198 (build-sequence-4532
199 (lambda (src-36337 exps-36338)
200 (if (null? (cdr exps-36338))
201 (car exps-36338)
202 (let ((head-36342 (car exps-36338))
203 (tail-36343
204 (build-sequence-4532 #f (cdr exps-36338))))
205 (make-struct/no-tail
206 (vector-ref %expanded-vtables 13)
207 src-36337
208 head-36342
209 tail-36343)))))
210 (build-named-let-4534
211 (lambda (src-18955
212 ids-18956
213 vars-18957
214 val-exps-18958
215 body-exp-18959)
216 (let ((f-18960 (car vars-18957))
217 (f-name-18961 (car ids-18956))
218 (vars-18962 (cdr vars-18957))
219 (ids-18963 (cdr ids-18956)))
220 (let ((proc-18964
221 (let ((body-18984
222 (make-struct/no-tail
223 (vector-ref %expanded-vtables 15)
224 src-18955
225 ids-18963
226 #f
227 #f
228 #f
229 '()
230 vars-18962
231 body-exp-18959
232 #f)))
233 (make-struct/no-tail
234 (vector-ref %expanded-vtables 14)
235 src-18955
236 '()
237 body-18984))))
238 (begin
239 (if (if (struct? proc-18964)
240 (eq? (struct-vtable proc-18964)
241 (vector-ref %expanded-vtables 14))
242 #f)
243 (let ((meta-19008 (struct-ref proc-18964 1)))
244 (if (not (assq 'name meta-19008))
245 (let ((v-19015
246 (cons (cons 'name f-name-18961) meta-19008)))
247 (struct-set! proc-18964 1 v-19015)))))
248 (for-each
249 maybe-name-value!-4515
250 ids-18963
251 val-exps-18958)
252 (let ((names-19039 (list f-name-18961))
253 (gensyms-19040 (list f-18960))
254 (vals-19041 (list proc-18964))
255 (body-19042
256 (let ((fun-exp-19046
257 (make-struct/no-tail
258 (vector-ref %expanded-vtables 3)
259 src-18955
260 f-name-18961
261 f-18960)))
262 (make-struct/no-tail
263 (vector-ref %expanded-vtables 11)
264 src-18955
265 fun-exp-19046
266 val-exps-18958))))
267 (make-struct/no-tail
268 (vector-ref %expanded-vtables 17)
269 src-18955
270 #f
271 names-19039
272 gensyms-19040
273 vals-19041
274 body-19042)))))))
275 (build-letrec-4535
276 (lambda (src-19062
277 in-order?-19063
278 ids-19064
279 vars-19065
280 val-exps-19066
281 body-exp-19067)
282 (if (null? vars-19065)
283 body-exp-19067
284 (begin
285 (for-each
286 maybe-name-value!-4515
287 ids-19064
288 val-exps-19066)
289 (make-struct/no-tail
290 (vector-ref %expanded-vtables 17)
291 src-19062
292 in-order?-19063
293 ids-19064
294 vars-19065
295 val-exps-19066
296 body-exp-19067)))))
297 (source-annotation-4544
298 (lambda (x-19093)
299 (if (if (vector? x-19093)
300 (if (= (vector-length x-19093) 4)
301 (eq? (vector-ref x-19093 0) 'syntax-object)
302 #f)
303 #f)
304 (source-annotation-4544 (vector-ref x-19093 1))
305 (if (pair? x-19093)
306 (let ((props-19108 (source-properties x-19093)))
307 (if (pair? props-19108) props-19108 #f))
308 #f))))
309 (extend-env-4545
310 (lambda (labels-19110 bindings-19111 r-19112)
311 (if (null? labels-19110)
312 r-19112
313 (extend-env-4545
314 (cdr labels-19110)
315 (cdr bindings-19111)
316 (cons (cons (car labels-19110) (car bindings-19111))
317 r-19112)))))
318 (extend-var-env-4546
319 (lambda (labels-19113 vars-19114 r-19115)
320 (if (null? labels-19113)
321 r-19115
322 (extend-var-env-4546
323 (cdr labels-19113)
324 (cdr vars-19114)
325 (cons (cons (car labels-19113)
326 (cons 'lexical (car vars-19114)))
327 r-19115)))))
328 (macros-only-env-4547
329 (lambda (r-19116)
330 (if (null? r-19116)
331 '()
332 (let ((a-19117 (car r-19116)))
333 (if (let ((t-19120 (car (cdr a-19117))))
334 (if (eq? t-19120 'macro)
335 #t
336 (eq? t-19120 'syntax-parameter)))
337 (cons a-19117
338 (macros-only-env-4547 (cdr r-19116)))
339 (macros-only-env-4547 (cdr r-19116)))))))
340 (global-extend-4548
341 (lambda (type-19122 sym-19123 val-19124)
342 (module-define!
343 (current-module)
344 sym-19123
345 (make-syntax-transformer
346 sym-19123
347 type-19122
348 val-19124))))
349 (id?-4550
350 (lambda (x-11889)
351 (if (symbol? x-11889)
352 #t
353 (if (if (vector? x-11889)
354 (if (= (vector-length x-11889) 4)
355 (eq? (vector-ref x-11889 0) 'syntax-object)
356 #f)
357 #f)
358 (symbol? (vector-ref x-11889 1))
359 #f))))
360 (gen-labels-4553
361 (lambda (ls-19134)
362 (if (null? ls-19134)
363 '()
364 (cons (string-append
365 "l-"
366 (session-id-4511)
367 (symbol->string (gensym "-")))
368 (gen-labels-4553 (cdr ls-19134))))))
369 (make-binding-wrap-4564
370 (lambda (ids-19138 labels-19139 w-19140)
371 (if (null? ids-19138)
372 w-19140
373 (cons (car w-19140)
374 (cons (let ((labelvec-19141 (list->vector labels-19139)))
375 (let ((n-19142 (vector-length labelvec-19141)))
376 (let ((symnamevec-19143 (make-vector n-19142))
377 (marksvec-19144 (make-vector n-19142)))
378 (begin
379 (letrec*
380 ((f-19145
381 (lambda (ids-19342 i-19343)
382 (if (not (null? ids-19342))
383 (call-with-values
384 (lambda ()
385 (let ((x-19346 (car ids-19342)))
386 (if (if (vector? x-19346)
387 (if (= (vector-length
388 x-19346)
389 4)
390 (eq? (vector-ref
391 x-19346
392 0)
393 'syntax-object)
394 #f)
395 #f)
396 (values
397 (vector-ref x-19346 1)
398 (let ((m1-19362
399 (car w-19140))
400 (m2-19363
401 (car (vector-ref
402 x-19346
403 2))))
404 (if (null? m2-19363)
405 m1-19362
406 (append
407 m1-19362
408 m2-19363))))
409 (values
410 x-19346
411 (car w-19140)))))
412 (lambda (symname-19383 marks-19384)
413 (begin
414 (vector-set!
415 symnamevec-19143
416 i-19343
417 symname-19383)
418 (vector-set!
419 marksvec-19144
420 i-19343
421 marks-19384)
422 (f-19145
423 (cdr ids-19342)
424 (#{1+}# i-19343)))))))))
425 (f-19145 ids-19138 0))
426 (vector
427 'ribcage
428 symnamevec-19143
429 marksvec-19144
430 labelvec-19141)))))
431 (cdr w-19140))))))
432 (same-marks?-4568
433 (lambda (x-36344 y-36345)
434 (if (eq? x-36344 y-36345)
435 (eq? x-36344 y-36345)
436 (if (not (null? x-36344))
437 (if (not (null? y-36345))
438 (if (eq? (car x-36344) (car y-36345))
439 (same-marks?-4568 (cdr x-36344) (cdr y-36345))
440 #f)
441 #f)
442 #f))))
443 (id-var-name-4569
444 (lambda (id-36353 w-36354 mod-36355)
445 (letrec*
446 ((search-36356
447 (lambda (sym-36422 subst-36423 marks-36424 mod-36425)
448 (if (null? subst-36423)
449 (values #f marks-36424)
450 (let ((fst-36426 (car subst-36423)))
451 (if (eq? fst-36426 'shift)
452 (search-36356
453 sym-36422
454 (cdr subst-36423)
455 (cdr marks-36424)
456 mod-36425)
457 (let ((symnames-36428 (vector-ref fst-36426 1)))
458 (if (vector? symnames-36428)
459 (search-vector-rib-36358
460 sym-36422
461 subst-36423
462 marks-36424
463 symnames-36428
464 fst-36426
465 mod-36425)
466 (search-list-rib-36357
467 sym-36422
468 subst-36423
469 marks-36424
470 symnames-36428
471 fst-36426
472 mod-36425))))))))
473 (search-list-rib-36357
474 (lambda (sym-36603
475 subst-36604
476 marks-36605
477 symnames-36606
478 ribcage-36607
479 mod-36608)
480 (letrec*
481 ((f-36609
482 (lambda (symnames-36612 i-36613)
483 (if (null? symnames-36612)
484 (search-36356
485 sym-36603
486 (cdr subst-36604)
487 marks-36605
488 mod-36608)
489 (if (if (eq? (car symnames-36612) sym-36603)
490 (same-marks?-4568
491 marks-36605
492 (list-ref
493 (vector-ref ribcage-36607 2)
494 i-36613))
495 #f)
496 (let ((n-36759
497 (list-ref
498 (vector-ref ribcage-36607 3)
499 i-36613)))
500 (if (pair? n-36759)
501 (if (equal? mod-36608 (car n-36759))
502 (values (cdr n-36759) marks-36605)
503 (f-36609
504 (cdr symnames-36612)
505 (#{1+}# i-36613)))
506 (values n-36759 marks-36605)))
507 (f-36609 (cdr symnames-36612) (#{1+}# i-36613)))))))
508 (f-36609 symnames-36606 0))))
509 (search-vector-rib-36358
510 (lambda (sym-36764
511 subst-36765
512 marks-36766
513 symnames-36767
514 ribcage-36768
515 mod-36769)
516 (let ((n-36770 (vector-length symnames-36767)))
517 (letrec*
518 ((f-36771
519 (lambda (i-36774)
520 (if (= i-36774 n-36770)
521 (search-36356
522 sym-36764
523 (cdr subst-36765)
524 marks-36766
525 mod-36769)
526 (if (if (eq? (vector-ref symnames-36767 i-36774)
527 sym-36764)
528 (same-marks?-4568
529 marks-36766
530 (vector-ref
531 (vector-ref ribcage-36768 2)
532 i-36774))
533 #f)
534 (let ((n-36921
535 (vector-ref
536 (vector-ref ribcage-36768 3)
537 i-36774)))
538 (if (pair? n-36921)
539 (if (equal? mod-36769 (car n-36921))
540 (values (cdr n-36921) marks-36766)
541 (f-36771 (#{1+}# i-36774)))
542 (values n-36921 marks-36766)))
543 (f-36771 (#{1+}# i-36774)))))))
544 (f-36771 0))))))
545 (if (symbol? id-36353)
546 (let ((t-36359
547 (search-36356
548 id-36353
549 (cdr w-36354)
550 (car w-36354)
551 mod-36355)))
552 (if t-36359 t-36359 id-36353))
553 (if (if (vector? id-36353)
554 (if (= (vector-length id-36353) 4)
555 (eq? (vector-ref id-36353 0) 'syntax-object)
556 #f)
557 #f)
558 (let ((id-36374 (vector-ref id-36353 1))
559 (w1-36375 (vector-ref id-36353 2))
560 (mod-36376 (vector-ref id-36353 3)))
561 (let ((marks-36377
562 (let ((m1-36387 (car w-36354))
563 (m2-36388 (car w1-36375)))
564 (if (null? m2-36388)
565 m1-36387
566 (append m1-36387 m2-36388)))))
567 (call-with-values
568 (lambda ()
569 (search-36356
570 id-36374
571 (cdr w-36354)
572 marks-36377
573 mod-36376))
574 (lambda (new-id-36408 marks-36409)
575 (if new-id-36408
576 new-id-36408
577 (let ((t-36417
578 (search-36356
579 id-36374
580 (cdr w1-36375)
581 marks-36409
582 mod-36376)))
583 (if t-36417 t-36417 id-36374)))))))
584 (syntax-violation
585 'id-var-name
586 "invalid id"
587 id-36353))))))
588 (locally-bound-identifiers-4570
589 (lambda (w-19391 mod-19392)
590 (letrec*
591 ((scan-19393
592 (lambda (subst-19398 results-19399)
593 (if (null? subst-19398)
594 results-19399
595 (let ((fst-19400 (car subst-19398)))
596 (if (eq? fst-19400 'shift)
597 (scan-19393 (cdr subst-19398) results-19399)
598 (let ((symnames-19402 (vector-ref fst-19400 1))
599 (marks-19403 (vector-ref fst-19400 2)))
600 (if (vector? symnames-19402)
601 (scan-vector-rib-19395
602 subst-19398
603 symnames-19402
604 marks-19403
605 results-19399)
606 (scan-list-rib-19394
607 subst-19398
608 symnames-19402
609 marks-19403
610 results-19399))))))))
611 (scan-list-rib-19394
612 (lambda (subst-19520
613 symnames-19521
614 marks-19522
615 results-19523)
616 (letrec*
617 ((f-19524
618 (lambda (symnames-19709 marks-19710 results-19711)
619 (if (null? symnames-19709)
620 (scan-19393 (cdr subst-19520) results-19711)
621 (f-19524
622 (cdr symnames-19709)
623 (cdr marks-19710)
624 (cons (let ((x-19717 (car symnames-19709))
625 (w-19718
626 (let ((w-19722
627 (cons (car marks-19710)
628 subst-19520)))
629 (cons (cons #f (car w-19722))
630 (cons 'shift
631 (cdr w-19722))))))
632 (if (if (null? (car w-19718))
633 (null? (cdr w-19718))
634 #f)
635 x-19717
636 (if (if (vector? x-19717)
637 (if (= (vector-length x-19717) 4)
638 (eq? (vector-ref x-19717 0)
639 'syntax-object)
640 #f)
641 #f)
642 (let ((expression-19734
643 (vector-ref x-19717 1))
644 (wrap-19735
645 (let ((w2-19743
646 (vector-ref x-19717 2)))
647 (let ((m1-19744 (car w-19718))
648 (s1-19745
649 (cdr w-19718)))
650 (if (null? m1-19744)
651 (if (null? s1-19745)
652 w2-19743
653 (cons (car w2-19743)
654 (let ((m2-19756
655 (cdr w2-19743)))
656 (if (null? m2-19756)
657 s1-19745
658 (append
659 s1-19745
660 m2-19756)))))
661 (cons (let ((m2-19764
662 (car w2-19743)))
663 (if (null? m2-19764)
664 m1-19744
665 (append
666 m1-19744
667 m2-19764)))
668 (let ((m2-19772
669 (cdr w2-19743)))
670 (if (null? m2-19772)
671 s1-19745
672 (append
673 s1-19745
674 m2-19772))))))))
675 (module-19736
676 (vector-ref x-19717 3)))
677 (vector
678 'syntax-object
679 expression-19734
680 wrap-19735
681 module-19736))
682 (if (null? x-19717)
683 x-19717
684 (vector
685 'syntax-object
686 x-19717
687 w-19718
688 mod-19392)))))
689 results-19711))))))
690 (f-19524
691 symnames-19521
692 marks-19522
693 results-19523))))
694 (scan-vector-rib-19395
695 (lambda (subst-19785
696 symnames-19786
697 marks-19787
698 results-19788)
699 (let ((n-19789 (vector-length symnames-19786)))
700 (letrec*
701 ((f-19790
702 (lambda (i-19961 results-19962)
703 (if (= i-19961 n-19789)
704 (scan-19393 (cdr subst-19785) results-19962)
705 (f-19790
706 (#{1+}# i-19961)
707 (cons (let ((x-19968
708 (vector-ref symnames-19786 i-19961))
709 (w-19969
710 (let ((w-19973
711 (cons (vector-ref
712 marks-19787
713 i-19961)
714 subst-19785)))
715 (cons (cons #f (car w-19973))
716 (cons 'shift
717 (cdr w-19973))))))
718 (if (if (null? (car w-19969))
719 (null? (cdr w-19969))
720 #f)
721 x-19968
722 (if (if (vector? x-19968)
723 (if (= (vector-length x-19968) 4)
724 (eq? (vector-ref x-19968 0)
725 'syntax-object)
726 #f)
727 #f)
728 (let ((expression-19985
729 (vector-ref x-19968 1))
730 (wrap-19986
731 (let ((w2-19994
732 (vector-ref
733 x-19968
734 2)))
735 (let ((m1-19995
736 (car w-19969))
737 (s1-19996
738 (cdr w-19969)))
739 (if (null? m1-19995)
740 (if (null? s1-19996)
741 w2-19994
742 (cons (car w2-19994)
743 (let ((m2-20007
744 (cdr w2-19994)))
745 (if (null? m2-20007)
746 s1-19996
747 (append
748 s1-19996
749 m2-20007)))))
750 (cons (let ((m2-20015
751 (car w2-19994)))
752 (if (null? m2-20015)
753 m1-19995
754 (append
755 m1-19995
756 m2-20015)))
757 (let ((m2-20023
758 (cdr w2-19994)))
759 (if (null? m2-20023)
760 s1-19996
761 (append
762 s1-19996
763 m2-20023))))))))
764 (module-19987
765 (vector-ref x-19968 3)))
766 (vector
767 'syntax-object
768 expression-19985
769 wrap-19986
770 module-19987))
771 (if (null? x-19968)
772 x-19968
773 (vector
774 'syntax-object
775 x-19968
776 w-19969
777 mod-19392)))))
778 results-19962))))))
779 (f-19790 0 results-19788))))))
780 (scan-19393 (cdr w-19391) '()))))
781 (resolve-identifier-4571
782 (lambda (id-20036
783 w-20037
784 r-20038
785 mod-20039
786 resolve-syntax-parameters?-20040)
787 (let ((n-20044
788 (id-var-name-4569 id-20036 w-20037 mod-20039)))
789 (if (if (vector? n-20044)
790 (if (= (vector-length n-20044) 4)
791 (eq? (vector-ref n-20044 0) 'syntax-object)
792 #f)
793 #f)
794 (resolve-identifier-4571
795 n-20044
796 w-20037
797 r-20038
798 mod-20039
799 resolve-syntax-parameters?-20040)
800 (if (symbol? n-20044)
801 (let ((mod-20059
802 (if (if (vector? id-20036)
803 (if (= (vector-length id-20036) 4)
804 (eq? (vector-ref id-20036 0) 'syntax-object)
805 #f)
806 #f)
807 (vector-ref id-20036 3)
808 mod-20039)))
809 (let ((b-20060
810 (let ((b-20063
811 (let ((t-20064
812 (begin
813 (if (if (not mod-20059)
814 (current-module)
815 #f)
816 (warn "module system is booted, we should have a module"
817 n-20044))
818 (let ((v-20113
819 (module-variable
820 (if mod-20059
821 (resolve-module
822 (cdr mod-20059))
823 (current-module))
824 n-20044)))
825 (if v-20113
826 (if (variable-bound? v-20113)
827 (let ((val-20122
828 (variable-ref
829 v-20113)))
830 (if (macro? val-20122)
831 (if (macro-type val-20122)
832 (cons (macro-type
833 val-20122)
834 (macro-binding
835 val-20122))
836 #f)
837 #f))
838 #f)
839 #f)))))
840 (if t-20064 t-20064 '(global)))))
841 (if (if resolve-syntax-parameters?-20040
842 (eq? (car b-20063) 'syntax-parameter)
843 #f)
844 (let ((t-20131 (assq-ref r-20038 (cdr b-20063))))
845 (if t-20131
846 t-20131
847 (cons 'macro (car (cdr b-20063)))))
848 b-20063))))
849 (if (eq? (car b-20060) 'global)
850 (values 'global n-20044 mod-20059)
851 (values (car b-20060) (cdr b-20060) mod-20059))))
852 (if (string? n-20044)
853 (let ((mod-20137
854 (if (if (vector? id-20036)
855 (if (= (vector-length id-20036) 4)
856 (eq? (vector-ref id-20036 0) 'syntax-object)
857 #f)
858 #f)
859 (vector-ref id-20036 3)
860 mod-20039)))
861 (let ((b-20138
862 (let ((b-20141
863 (let ((t-20142 (assq-ref r-20038 n-20044)))
864 (if t-20142
865 t-20142
866 '(displaced-lexical)))))
867 (if (if resolve-syntax-parameters?-20040
868 (eq? (car b-20141) 'syntax-parameter)
869 #f)
870 (let ((t-20143
871 (assq-ref r-20038 (cdr b-20141))))
872 (if t-20143
873 t-20143
874 (cons 'macro (car (cdr b-20141)))))
875 b-20141))))
876 (values (car b-20138) (cdr b-20138) mod-20137)))
877 (error "unexpected id-var-name"
878 id-20036
879 w-20037
880 n-20044)))))))
881 (free-id=?-4574
882 (lambda (i-20156 j-20157)
883 (let ((mi-20158
884 (if (if (vector? i-20156)
885 (if (= (vector-length i-20156) 4)
886 (eq? (vector-ref i-20156 0) 'syntax-object)
887 #f)
888 #f)
889 (vector-ref i-20156 3)
890 #f)))
891 (let ((mj-20159
892 (if (if (vector? j-20157)
893 (if (= (vector-length j-20157) 4)
894 (eq? (vector-ref j-20157 0) 'syntax-object)
895 #f)
896 #f)
897 (vector-ref j-20157 3)
898 #f)))
899 (let ((ni-20160
900 (id-var-name-4569 i-20156 '(()) mi-20158)))
901 (let ((nj-20161
902 (id-var-name-4569 j-20157 '(()) mj-20159)))
903 (if (if (vector? ni-20160)
904 (if (= (vector-length ni-20160) 4)
905 (eq? (vector-ref ni-20160 0) 'syntax-object)
906 #f)
907 #f)
908 (free-id=?-4574 ni-20160 j-20157)
909 (if (if (vector? nj-20161)
910 (if (= (vector-length nj-20161) 4)
911 (eq? (vector-ref nj-20161 0) 'syntax-object)
912 #f)
913 #f)
914 (free-id=?-4574 i-20156 nj-20161)
915 (if (symbol? ni-20160)
916 (if (eq? nj-20161
917 (if (if (vector? j-20157)
918 (if (= (vector-length j-20157) 4)
919 (eq? (vector-ref j-20157 0)
920 'syntax-object)
921 #f)
922 #f)
923 (vector-ref j-20157 1)
924 j-20157))
925 (if (let ((bi-20233
926 (module-variable
927 (if mi-20158
928 (resolve-module (cdr mi-20158))
929 (current-module))
930 (if (if (vector? i-20156)
931 (if (= (vector-length i-20156) 4)
932 (eq? (vector-ref i-20156 0)
933 'syntax-object)
934 #f)
935 #f)
936 (vector-ref i-20156 1)
937 i-20156))))
938 (if bi-20233
939 (eq? bi-20233
940 (module-variable
941 (if mj-20159
942 (resolve-module (cdr mj-20159))
943 (current-module))
944 (if (if (vector? j-20157)
945 (if (= (vector-length j-20157) 4)
946 (eq? (vector-ref j-20157 0)
947 'syntax-object)
948 #f)
949 #f)
950 (vector-ref j-20157 1)
951 j-20157)))
952 (if (not (module-variable
953 (if mj-20159
954 (resolve-module (cdr mj-20159))
955 (current-module))
956 (if (if (vector? j-20157)
957 (if (= (vector-length
958 j-20157)
959 4)
960 (eq? (vector-ref j-20157 0)
961 'syntax-object)
962 #f)
963 #f)
964 (vector-ref j-20157 1)
965 j-20157)))
966 (eq? ni-20160 nj-20161)
967 #f)))
968 (eq? (module-variable
969 (if mi-20158
970 (resolve-module (cdr mi-20158))
971 (current-module))
972 (if (if (vector? i-20156)
973 (if (= (vector-length i-20156) 4)
974 (eq? (vector-ref i-20156 0)
975 'syntax-object)
976 #f)
977 #f)
978 (vector-ref i-20156 1)
979 i-20156))
980 (module-variable
981 (if mj-20159
982 (resolve-module (cdr mj-20159))
983 (current-module))
984 (if (if (vector? j-20157)
985 (if (= (vector-length j-20157) 4)
986 (eq? (vector-ref j-20157 0)
987 'syntax-object)
988 #f)
989 #f)
990 (vector-ref j-20157 1)
991 j-20157)))
992 #f)
993 #f)
994 (equal? ni-20160 nj-20161))))))))))
995 (bound-id=?-4575
996 (lambda (i-20426 j-20427)
997 (if (if (if (vector? i-20426)
998 (if (= (vector-length i-20426) 4)
999 (eq? (vector-ref i-20426 0) 'syntax-object)
1000 #f)
1001 #f)
1002 (if (vector? j-20427)
1003 (if (= (vector-length j-20427) 4)
1004 (eq? (vector-ref j-20427 0) 'syntax-object)
1005 #f)
1006 #f)
1007 #f)
1008 (if (eq? (vector-ref i-20426 1)
1009 (vector-ref j-20427 1))
1010 (same-marks?-4568
1011 (car (vector-ref i-20426 2))
1012 (car (vector-ref j-20427 2)))
1013 #f)
1014 (eq? i-20426 j-20427))))
1015 (valid-bound-ids?-4576
1016 (lambda (ids-20596)
1017 (if (letrec*
1018 ((all-ids?-20597
1019 (lambda (ids-20794)
1020 (if (null? ids-20794)
1021 (null? ids-20794)
1022 (if (let ((x-20805 (car ids-20794)))
1023 (if (symbol? x-20805)
1024 #t
1025 (if (if (vector? x-20805)
1026 (if (= (vector-length x-20805) 4)
1027 (eq? (vector-ref x-20805 0)
1028 'syntax-object)
1029 #f)
1030 #f)
1031 (symbol? (vector-ref x-20805 1))
1032 #f)))
1033 (all-ids?-20597 (cdr ids-20794))
1034 #f)))))
1035 (all-ids?-20597 ids-20596))
1036 (distinct-bound-ids?-4577 ids-20596)
1037 #f)))
1038 (distinct-bound-ids?-4577
1039 (lambda (ids-20926)
1040 (letrec*
1041 ((distinct?-20927
1042 (lambda (ids-21032)
1043 (if (null? ids-21032)
1044 (null? ids-21032)
1045 (if (not (bound-id-member?-4578
1046 (car ids-21032)
1047 (cdr ids-21032)))
1048 (distinct?-20927 (cdr ids-21032))
1049 #f)))))
1050 (distinct?-20927 ids-20926))))
1051 (bound-id-member?-4578
1052 (lambda (x-21128 list-21129)
1053 (if (not (null? list-21129))
1054 (let ((t-21130
1055 (bound-id=?-4575 x-21128 (car list-21129))))
1056 (if t-21130
1057 t-21130
1058 (bound-id-member?-4578 x-21128 (cdr list-21129))))
1059 #f)))
1060 (source-wrap-4580
1061 (lambda (x-21308 w-21309 s-21310 defmod-21311)
1062 (let ((x-21315
1063 (begin
1064 (if (if (pair? x-21308) s-21310 #f)
1065 (set-source-properties! x-21308 s-21310))
1066 x-21308)))
1067 (if (if (null? (car w-21309))
1068 (null? (cdr w-21309))
1069 #f)
1070 x-21315
1071 (if (if (vector? x-21315)
1072 (if (= (vector-length x-21315) 4)
1073 (eq? (vector-ref x-21315 0) 'syntax-object)
1074 #f)
1075 #f)
1076 (let ((expression-21347 (vector-ref x-21315 1))
1077 (wrap-21348
1078 (let ((w2-21356 (vector-ref x-21315 2)))
1079 (let ((m1-21357 (car w-21309))
1080 (s1-21358 (cdr w-21309)))
1081 (if (null? m1-21357)
1082 (if (null? s1-21358)
1083 w2-21356
1084 (cons (car w2-21356)
1085 (let ((m2-21373 (cdr w2-21356)))
1086 (if (null? m2-21373)
1087 s1-21358
1088 (append s1-21358 m2-21373)))))
1089 (cons (let ((m2-21381 (car w2-21356)))
1090 (if (null? m2-21381)
1091 m1-21357
1092 (append m1-21357 m2-21381)))
1093 (let ((m2-21389 (cdr w2-21356)))
1094 (if (null? m2-21389)
1095 s1-21358
1096 (append s1-21358 m2-21389))))))))
1097 (module-21349 (vector-ref x-21315 3)))
1098 (vector
1099 'syntax-object
1100 expression-21347
1101 wrap-21348
1102 module-21349))
1103 (if (null? x-21315)
1104 x-21315
1105 (vector
1106 'syntax-object
1107 x-21315
1108 w-21309
1109 defmod-21311)))))))
1110 (expand-sequence-4581
1111 (lambda (body-36926 r-36927 w-36928 s-36929 mod-36930)
1112 (build-sequence-4532
1113 s-36929
1114 (letrec*
1115 ((dobody-37018
1116 (lambda (body-37101 r-37102 w-37103 mod-37104)
1117 (if (null? body-37101)
1118 '()
1119 (let ((first-37105
1120 (expand-4586
1121 (car body-37101)
1122 r-37102
1123 w-37103
1124 mod-37104)))
1125 (cons first-37105
1126 (dobody-37018
1127 (cdr body-37101)
1128 r-37102
1129 w-37103
1130 mod-37104)))))))
1131 (dobody-37018
1132 body-36926
1133 r-36927
1134 w-36928
1135 mod-36930)))))
1136 (expand-top-sequence-4582
1137 (lambda (body-21418
1138 r-21419
1139 w-21420
1140 s-21421
1141 m-21422
1142 esew-21423
1143 mod-21424)
1144 (let ((r-21425
1145 (cons '("placeholder" placeholder) r-21419)))
1146 (let ((ribcage-21426 (vector 'ribcage '() '() '())))
1147 (let ((w-21427
1148 (cons (car w-21420)
1149 (cons ribcage-21426 (cdr w-21420)))))
1150 (letrec*
1151 ((record-definition!-21428
1152 (lambda (id-24805 var-24806)
1153 (let ((mod-24807
1154 (cons 'hygiene (module-name (current-module)))))
1155 (let ((label-24813
1156 (cons (vector-ref id-24805 3)
1157 (if (if (vector? var-24806)
1158 (if (= (vector-length var-24806) 4)
1159 (eq? (vector-ref var-24806 0)
1160 'syntax-object)
1161 #f)
1162 #f)
1163 (let ((expression-24875
1164 (vector-ref var-24806 1))
1165 (wrap-24876
1166 (let ((w2-24886
1167 (vector-ref
1168 var-24806
1169 2)))
1170 (cons (let ((m2-24893
1171 (car w2-24886)))
1172 (if (null? m2-24893)
1173 '(top)
1174 (append
1175 '(top)
1176 m2-24893)))
1177 (let ((m2-24902
1178 (cdr w2-24886)))
1179 (if (null? m2-24902)
1180 '()
1181 (append
1182 '()
1183 m2-24902))))))
1184 (module-24877
1185 (vector-ref var-24806 3)))
1186 (vector
1187 'syntax-object
1188 expression-24875
1189 wrap-24876
1190 module-24877))
1191 (if (null? var-24806)
1192 var-24806
1193 (vector
1194 'syntax-object
1195 var-24806
1196 '((top))
1197 mod-24807))))))
1198 (begin
1199 (let ((update-24816
1200 (cons (vector-ref id-24805 1)
1201 (vector-ref ribcage-21426 1))))
1202 (vector-set! ribcage-21426 1 update-24816))
1203 (let ((update-24831
1204 (cons (car (vector-ref id-24805 2))
1205 (vector-ref ribcage-21426 2))))
1206 (vector-set! ribcage-21426 2 update-24831))
1207 (let ((update-24846
1208 (cons label-24813
1209 (vector-ref ribcage-21426 3))))
1210 (vector-set! ribcage-21426 3 update-24846)))))))
1211 (parse-21431
1212 (lambda (body-21626
1213 r-21627
1214 w-21628
1215 s-21629
1216 m-21630
1217 esew-21631
1218 mod-21632)
1219 (letrec*
1220 ((lp-21633
1221 (lambda (body-21716 exps-21717)
1222 (if (null? body-21716)
1223 exps-21717
1224 (lp-21633
1225 (cdr body-21716)
1226 (append
1227 (parse1-21432
1228 (car body-21716)
1229 r-21627
1230 w-21628
1231 s-21629
1232 m-21630
1233 esew-21631
1234 mod-21632)
1235 exps-21717))))))
1236 (lp-21633 body-21626 '()))))
1237 (parse1-21432
1238 (lambda (x-21787
1239 r-21788
1240 w-21789
1241 s-21790
1242 m-21791
1243 esew-21792
1244 mod-21793)
1245 (call-with-values
1246 (lambda ()
1247 (syntax-type-4585
1248 x-21787
1249 r-21788
1250 w-21789
1251 (source-annotation-4544 x-21787)
1252 ribcage-21426
1253 mod-21793
1254 #f))
1255 (lambda (type-21979
1256 value-21980
1257 form-21981
1258 e-21982
1259 w-21983
1260 s-21984
1261 mod-21985)
1262 (if (eqv? type-21979 'define-form)
1263 (let ((id-21989
1264 (if (if (null? (car w-21983))
1265 (null? (cdr w-21983))
1266 #f)
1267 value-21980
1268 (if (if (vector? value-21980)
1269 (if (= (vector-length value-21980)
1270 4)
1271 (eq? (vector-ref value-21980 0)
1272 'syntax-object)
1273 #f)
1274 #f)
1275 (let ((expression-22039
1276 (vector-ref value-21980 1))
1277 (wrap-22040
1278 (let ((w2-22050
1279 (vector-ref
1280 value-21980
1281 2)))
1282 (let ((m1-22051
1283 (car w-21983))
1284 (s1-22052
1285 (cdr w-21983)))
1286 (if (null? m1-22051)
1287 (if (null? s1-22052)
1288 w2-22050
1289 (cons (car w2-22050)
1290 (let ((m2-22069
1291 (cdr w2-22050)))
1292 (if (null? m2-22069)
1293 s1-22052
1294 (append
1295 s1-22052
1296 m2-22069)))))
1297 (cons (let ((m2-22077
1298 (car w2-22050)))
1299 (if (null? m2-22077)
1300 m1-22051
1301 (append
1302 m1-22051
1303 m2-22077)))
1304 (let ((m2-22085
1305 (cdr w2-22050)))
1306 (if (null? m2-22085)
1307 s1-22052
1308 (append
1309 s1-22052
1310 m2-22085))))))))
1311 (module-22041
1312 (vector-ref value-21980 3)))
1313 (vector
1314 'syntax-object
1315 expression-22039
1316 wrap-22040
1317 module-22041))
1318 (if (null? value-21980)
1319 value-21980
1320 (vector
1321 'syntax-object
1322 value-21980
1323 w-21983
1324 mod-21985))))))
1325 (begin
1326 (string-append
1327 "l-"
1328 (session-id-4511)
1329 (symbol->string (gensym "-")))
1330 (let ((var-21991
1331 (if (not (equal?
1332 (car (vector-ref
1333 id-21989
1334 2))
1335 '(top)))
1336 (symbol-append
1337 (vector-ref id-21989 1)
1338 '-
1339 (string->symbol
1340 (number->string
1341 (hash (syntax->datum x-21787)
1342 most-positive-fixnum)
1343 16)))
1344 (vector-ref id-21989 1))))
1345 (begin
1346 (record-definition!-21428
1347 id-21989
1348 var-21991)
1349 (list (if (eq? m-21791 'c&e)
1350 (let ((x-22211
1351 (build-global-definition-4525
1352 s-21984
1353 var-21991
1354 (expand-4586
1355 e-21982
1356 r-21788
1357 w-21983
1358 mod-21985))))
1359 (begin
1360 (top-level-eval-hook-4509
1361 x-22211
1362 mod-21985)
1363 (lambda () x-22211)))
1364 (lambda ()
1365 (build-global-definition-4525
1366 s-21984
1367 var-21991
1368 (expand-4586
1369 e-21982
1370 r-21788
1371 w-21983
1372 mod-21985)))))))))
1373 (if (if (eqv? type-21979 'define-syntax-form)
1374 #t
1375 (eqv? type-21979
1376 'define-syntax-parameter-form))
1377 (let ((id-22705
1378 (if (if (null? (car w-21983))
1379 (null? (cdr w-21983))
1380 #f)
1381 value-21980
1382 (if (if (vector? value-21980)
1383 (if (= (vector-length
1384 value-21980)
1385 4)
1386 (eq? (vector-ref value-21980 0)
1387 'syntax-object)
1388 #f)
1389 #f)
1390 (let ((expression-22755
1391 (vector-ref value-21980 1))
1392 (wrap-22756
1393 (let ((w2-22766
1394 (vector-ref
1395 value-21980
1396 2)))
1397 (let ((m1-22767
1398 (car w-21983))
1399 (s1-22768
1400 (cdr w-21983)))
1401 (if (null? m1-22767)
1402 (if (null? s1-22768)
1403 w2-22766
1404 (cons (car w2-22766)
1405 (let ((m2-22785
1406 (cdr w2-22766)))
1407 (if (null? m2-22785)
1408 s1-22768
1409 (append
1410 s1-22768
1411 m2-22785)))))
1412 (cons (let ((m2-22793
1413 (car w2-22766)))
1414 (if (null? m2-22793)
1415 m1-22767
1416 (append
1417 m1-22767
1418 m2-22793)))
1419 (let ((m2-22801
1420 (cdr w2-22766)))
1421 (if (null? m2-22801)
1422 s1-22768
1423 (append
1424 s1-22768
1425 m2-22801))))))))
1426 (module-22757
1427 (vector-ref value-21980 3)))
1428 (vector
1429 'syntax-object
1430 expression-22755
1431 wrap-22756
1432 module-22757))
1433 (if (null? value-21980)
1434 value-21980
1435 (vector
1436 'syntax-object
1437 value-21980
1438 w-21983
1439 mod-21985))))))
1440 (begin
1441 (string-append
1442 "l-"
1443 (session-id-4511)
1444 (symbol->string (gensym "-")))
1445 (let ((var-22707
1446 (if (not (equal?
1447 (car (vector-ref
1448 id-22705
1449 2))
1450 '(top)))
1451 (symbol-append
1452 (vector-ref id-22705 1)
1453 '-
1454 (string->symbol
1455 (number->string
1456 (hash (syntax->datum x-21787)
1457 most-positive-fixnum)
1458 16)))
1459 (vector-ref id-22705 1))))
1460 (begin
1461 (record-definition!-21428
1462 id-22705
1463 var-22707)
1464 (if (eqv? m-21791 'c)
1465 (if (memq 'compile esew-21792)
1466 (let ((e-22930
1467 (expand-install-global-4583
1468 var-22707
1469 type-21979
1470 (expand-4586
1471 e-21982
1472 r-21788
1473 w-21983
1474 mod-21985))))
1475 (begin
1476 (top-level-eval-hook-4509
1477 e-22930
1478 mod-21985)
1479 (if (memq 'load esew-21792)
1480 (list (lambda () e-22930))
1481 '())))
1482 (if (memq 'load esew-21792)
1483 (list (lambda ()
1484 (expand-install-global-4583
1485 var-22707
1486 type-21979
1487 (expand-4586
1488 e-21982
1489 r-21788
1490 w-21983
1491 mod-21985))))
1492 '()))
1493 (if (eqv? m-21791 'c&e)
1494 (let ((e-23433
1495 (expand-install-global-4583
1496 var-22707
1497 type-21979
1498 (expand-4586
1499 e-21982
1500 r-21788
1501 w-21983
1502 mod-21985))))
1503 (begin
1504 (top-level-eval-hook-4509
1505 e-23433
1506 mod-21985)
1507 (list (lambda () e-23433))))
1508 (begin
1509 (if (memq 'eval esew-21792)
1510 (top-level-eval-hook-4509
1511 (expand-install-global-4583
1512 var-22707
1513 type-21979
1514 (expand-4586
1515 e-21982
1516 r-21788
1517 w-21983
1518 mod-21985))
1519 mod-21985))
1520 '())))))))
1521 (if (eqv? type-21979 'begin-form)
1522 (let ((tmp-24043
1523 ($sc-dispatch
1524 e-21982
1525 '(_ . each-any))))
1526 (if tmp-24043
1527 (@apply
1528 (lambda (e1-24047)
1529 (parse-21431
1530 e1-24047
1531 r-21788
1532 w-21983
1533 s-21984
1534 m-21791
1535 esew-21792
1536 mod-21985))
1537 tmp-24043)
1538 (syntax-violation
1539 #f
1540 "source expression failed to match any pattern"
1541 e-21982)))
1542 (if (eqv? type-21979 'local-syntax-form)
1543 (expand-local-syntax-4591
1544 value-21980
1545 e-21982
1546 r-21788
1547 w-21983
1548 s-21984
1549 mod-21985
1550 (lambda (forms-24090
1551 r-24091
1552 w-24092
1553 s-24093
1554 mod-24094)
1555 (parse-21431
1556 forms-24090
1557 r-24091
1558 w-24092
1559 s-24093
1560 m-21791
1561 esew-21792
1562 mod-24094)))
1563 (if (eqv? type-21979 'eval-when-form)
1564 (let ((tmp-24130
1565 ($sc-dispatch
1566 e-21982
1567 '(_ each-any any . each-any))))
1568 (if tmp-24130
1569 (@apply
1570 (lambda (x-24134 e1-24135 e2-24136)
1571 (let ((when-list-24137
1572 (parse-when-list-4584
1573 e-21982
1574 x-24134))
1575 (body-24138
1576 (cons e1-24135 e2-24136)))
1577 (letrec*
1578 ((recurse-24139
1579 (lambda (m-24725 esew-24726)
1580 (parse-21431
1581 body-24138
1582 r-21788
1583 w-21983
1584 s-21984
1585 m-24725
1586 esew-24726
1587 mod-21985))))
1588 (if (eq? m-21791 'e)
1589 (if (memq 'eval
1590 when-list-24137)
1591 (recurse-24139
1592 (if (memq 'expand
1593 when-list-24137)
1594 'c&e
1595 'e)
1596 '(eval))
1597 (begin
1598 (if (memq 'expand
1599 when-list-24137)
1600 (let ((x-24246
1601 (expand-top-sequence-4582
1602 body-24138
1603 r-21788
1604 w-21983
1605 s-21984
1606 'e
1607 '(eval)
1608 mod-21985)))
1609 (primitive-eval
1610 x-24246)))
1611 '()))
1612 (if (memq 'load
1613 when-list-24137)
1614 (if (let ((t-24274
1615 (memq 'compile
1616 when-list-24137)))
1617 (if t-24274
1618 t-24274
1619 (let ((t-24327
1620 (memq 'expand
1621 when-list-24137)))
1622 (if t-24327
1623 t-24327
1624 (if (eq? m-21791
1625 'c&e)
1626 (memq 'eval
1627 when-list-24137)
1628 #f)))))
1629 (recurse-24139
1630 'c&e
1631 '(compile load))
1632 (if (if (eq? m-21791 'c)
1633 #t
1634 (eq? m-21791 'c&e))
1635 (recurse-24139
1636 'c
1637 '(load))
1638 '()))
1639 (if (let ((t-24536
1640 (memq 'compile
1641 when-list-24137)))
1642 (if t-24536
1643 t-24536
1644 (let ((t-24589
1645 (memq 'expand
1646 when-list-24137)))
1647 (if t-24589
1648 t-24589
1649 (if (eq? m-21791
1650 'c&e)
1651 (memq 'eval
1652 when-list-24137)
1653 #f)))))
1654 (begin
1655 (let ((x-24723
1656 (expand-top-sequence-4582
1657 body-24138
1658 r-21788
1659 w-21983
1660 s-21984
1661 'e
1662 '(eval)
1663 mod-21985)))
1664 (primitive-eval
1665 x-24723))
1666 '())
1667 '()))))))
1668 tmp-24130)
1669 (syntax-violation
1670 #f
1671 "source expression failed to match any pattern"
1672 e-21982)))
1673 (list (if (eq? m-21791 'c&e)
1674 (let ((x-24796
1675 (expand-expr-4587
1676 type-21979
1677 value-21980
1678 form-21981
1679 e-21982
1680 r-21788
1681 w-21983
1682 s-21984
1683 mod-21985)))
1684 (begin
1685 (primitive-eval x-24796)
1686 (lambda () x-24796)))
1687 (lambda ()
1688 (expand-expr-4587
1689 type-21979
1690 value-21980
1691 form-21981
1692 e-21982
1693 r-21788
1694 w-21983
1695 s-21984
1696 mod-21985))))))))))))))
1697 (let ((exps-21433
1698 (map (lambda (x-21556) (x-21556))
1699 (reverse
1700 (parse-21431
1701 body-21418
1702 r-21425
1703 w-21427
1704 s-21421
1705 m-21422
1706 esew-21423
1707 mod-21424)))))
1708 (if (null? exps-21433)
1709 (make-struct/no-tail
1710 (vector-ref %expanded-vtables 0)
1711 s-21421)
1712 (build-sequence-4532 s-21421 exps-21433)))))))))
1713 (expand-install-global-4583
1714 (lambda (name-24924 type-24925 e-24926)
1715 (let ((exp-24932
1716 (let ((args-24943
1717 (if (eq? type-24925 'define-syntax-parameter-form)
1718 (list (make-struct/no-tail
1719 (vector-ref %expanded-vtables 1)
1720 #f
1721 name-24924)
1722 (make-struct/no-tail
1723 (vector-ref %expanded-vtables 1)
1724 #f
1725 'syntax-parameter)
1726 (let ((args-24966 (list e-24926)))
1727 (make-struct/no-tail
1728 (vector-ref %expanded-vtables 12)
1729 #f
1730 'list
1731 args-24966)))
1732 (list (make-struct/no-tail
1733 (vector-ref %expanded-vtables 1)
1734 #f
1735 name-24924)
1736 (make-struct/no-tail
1737 (vector-ref %expanded-vtables 1)
1738 #f
1739 'macro)
1740 e-24926))))
1741 (make-struct/no-tail
1742 (vector-ref %expanded-vtables 12)
1743 #f
1744 'make-syntax-transformer
1745 args-24943))))
1746 (begin
1747 (if (if (struct? exp-24932)
1748 (eq? (struct-vtable exp-24932)
1749 (vector-ref %expanded-vtables 14))
1750 #f)
1751 (let ((meta-24993 (struct-ref exp-24932 1)))
1752 (if (not (assq 'name meta-24993))
1753 (let ((v-25000
1754 (cons (cons 'name name-24924) meta-24993)))
1755 (struct-set! exp-24932 1 v-25000)))))
1756 (make-struct/no-tail
1757 (vector-ref %expanded-vtables 9)
1758 #f
1759 name-24924
1760 exp-24932)))))
1761 (parse-when-list-4584
1762 (lambda (e-25011 when-list-25012)
1763 (let ((result-25013 (strip-4599 when-list-25012 '(()))))
1764 (letrec*
1765 ((lp-25014
1766 (lambda (l-25080)
1767 (if (null? l-25080)
1768 result-25013
1769 (if (let ((t-25082 (car l-25080)))
1770 (if (eq? t-25082 'compile)
1771 #t
1772 (if (eq? t-25082 'load)
1773 #t
1774 (if (eq? t-25082 'eval)
1775 #t
1776 (eq? t-25082 'expand)))))
1777 (lp-25014 (cdr l-25080))
1778 (syntax-violation
1779 'eval-when
1780 "invalid situation"
1781 e-25011
1782 (car l-25080)))))))
1783 (lp-25014 result-25013)))))
1784 (syntax-type-4585
1785 (lambda (e-25084
1786 r-25085
1787 w-25086
1788 s-25087
1789 rib-25088
1790 mod-25089
1791 for-car?-25090)
1792 (if (symbol? e-25084)
1793 (call-with-values
1794 (lambda ()
1795 (resolve-identifier-4571
1796 e-25084
1797 w-25086
1798 r-25085
1799 mod-25089
1800 #t))
1801 (lambda (type-25093 value-25094 mod*-25095)
1802 (if (eqv? type-25093 'macro)
1803 (if for-car?-25090
1804 (values
1805 type-25093
1806 value-25094
1807 e-25084
1808 e-25084
1809 w-25086
1810 s-25087
1811 mod-25089)
1812 (syntax-type-4585
1813 (expand-macro-4589
1814 value-25094
1815 e-25084
1816 r-25085
1817 w-25086
1818 s-25087
1819 rib-25088
1820 mod-25089)
1821 r-25085
1822 '(())
1823 s-25087
1824 rib-25088
1825 mod-25089
1826 #f))
1827 (if (eqv? type-25093 'global)
1828 (values
1829 type-25093
1830 value-25094
1831 e-25084
1832 value-25094
1833 w-25086
1834 s-25087
1835 mod*-25095)
1836 (values
1837 type-25093
1838 value-25094
1839 e-25084
1840 e-25084
1841 w-25086
1842 s-25087
1843 mod-25089)))))
1844 (if (pair? e-25084)
1845 (let ((first-25104 (car e-25084)))
1846 (call-with-values
1847 (lambda ()
1848 (syntax-type-4585
1849 first-25104
1850 r-25085
1851 w-25086
1852 s-25087
1853 rib-25088
1854 mod-25089
1855 #t))
1856 (lambda (ftype-25106
1857 fval-25107
1858 fform-25108
1859 fe-25109
1860 fw-25110
1861 fs-25111
1862 fmod-25112)
1863 (if (eqv? ftype-25106 'lexical)
1864 (values
1865 'lexical-call
1866 fval-25107
1867 e-25084
1868 e-25084
1869 w-25086
1870 s-25087
1871 mod-25089)
1872 (if (eqv? ftype-25106 'global)
1873 (values
1874 'global-call
1875 (vector
1876 'syntax-object
1877 fval-25107
1878 w-25086
1879 fmod-25112)
1880 e-25084
1881 e-25084
1882 w-25086
1883 s-25087
1884 mod-25089)
1885 (if (eqv? ftype-25106 'macro)
1886 (syntax-type-4585
1887 (expand-macro-4589
1888 fval-25107
1889 e-25084
1890 r-25085
1891 w-25086
1892 s-25087
1893 rib-25088
1894 mod-25089)
1895 r-25085
1896 '(())
1897 s-25087
1898 rib-25088
1899 mod-25089
1900 for-car?-25090)
1901 (if (eqv? ftype-25106 'module-ref)
1902 (call-with-values
1903 (lambda () (fval-25107 e-25084 r-25085 w-25086))
1904 (lambda (e-25133
1905 r-25134
1906 w-25135
1907 s-25136
1908 mod-25137)
1909 (syntax-type-4585
1910 e-25133
1911 r-25134
1912 w-25135
1913 s-25136
1914 rib-25088
1915 mod-25137
1916 for-car?-25090)))
1917 (if (eqv? ftype-25106 'core)
1918 (values
1919 'core-form
1920 fval-25107
1921 e-25084
1922 e-25084
1923 w-25086
1924 s-25087
1925 mod-25089)
1926 (if (eqv? ftype-25106 'local-syntax)
1927 (values
1928 'local-syntax-form
1929 fval-25107
1930 e-25084
1931 e-25084
1932 w-25086
1933 s-25087
1934 mod-25089)
1935 (if (eqv? ftype-25106 'begin)
1936 (values
1937 'begin-form
1938 #f
1939 e-25084
1940 e-25084
1941 w-25086
1942 s-25087
1943 mod-25089)
1944 (if (eqv? ftype-25106 'eval-when)
1945 (values
1946 'eval-when-form
1947 #f
1948 e-25084
1949 e-25084
1950 w-25086
1951 s-25087
1952 mod-25089)
1953 (if (eqv? ftype-25106 'define)
1954 (let ((tmp-25154
1955 ($sc-dispatch
1956 e-25084
1957 '(_ any any))))
1958 (if (if tmp-25154
1959 (@apply
1960 (lambda (name-25158 val-25159)
1961 (if (symbol? name-25158)
1962 #t
1963 (if (if (vector? name-25158)
1964 (if (= (vector-length
1965 name-25158)
1966 4)
1967 (eq? (vector-ref
1968 name-25158
1969 0)
1970 'syntax-object)
1971 #f)
1972 #f)
1973 (symbol?
1974 (vector-ref
1975 name-25158
1976 1))
1977 #f)))
1978 tmp-25154)
1979 #f)
1980 (@apply
1981 (lambda (name-25186 val-25187)
1982 (values
1983 'define-form
1984 name-25186
1985 e-25084
1986 val-25187
1987 w-25086
1988 s-25087
1989 mod-25089))
1990 tmp-25154)
1991 (let ((tmp-25188
1992 ($sc-dispatch
1993 e-25084
1994 '(_ (any . any)
1995 any
1996 .
1997 each-any))))
1998 (if (if tmp-25188
1999 (@apply
2000 (lambda (name-25192
2001 args-25193
2002 e1-25194
2003 e2-25195)
2004 (if (if (symbol?
2005 name-25192)
2006 #t
2007 (if (if (vector?
2008 name-25192)
2009 (if (= (vector-length
2010 name-25192)
2011 4)
2012 (eq? (vector-ref
2013 name-25192
2014 0)
2015 'syntax-object)
2016 #f)
2017 #f)
2018 (symbol?
2019 (vector-ref
2020 name-25192
2021 1))
2022 #f))
2023 (valid-bound-ids?-4576
2024 (lambda-var-list-4601
2025 args-25193))
2026 #f))
2027 tmp-25188)
2028 #f)
2029 (@apply
2030 (lambda (name-25658
2031 args-25659
2032 e1-25660
2033 e2-25661)
2034 (values
2035 'define-form
2036 (if (if (null? (car w-25086))
2037 (null? (cdr w-25086))
2038 #f)
2039 name-25658
2040 (if (if (vector?
2041 name-25658)
2042 (if (= (vector-length
2043 name-25658)
2044 4)
2045 (eq? (vector-ref
2046 name-25658
2047 0)
2048 'syntax-object)
2049 #f)
2050 #f)
2051 (let ((expression-25691
2052 (vector-ref
2053 name-25658
2054 1))
2055 (wrap-25692
2056 (let ((w2-25702
2057 (vector-ref
2058 name-25658
2059 2)))
2060 (let ((m1-25703
2061 (car w-25086))
2062 (s1-25704
2063 (cdr w-25086)))
2064 (if (null? m1-25703)
2065 (if (null? s1-25704)
2066 w2-25702
2067 (cons (car w2-25702)
2068 (let ((m2-25721
2069 (cdr w2-25702)))
2070 (if (null? m2-25721)
2071 s1-25704
2072 (append
2073 s1-25704
2074 m2-25721)))))
2075 (cons (let ((m2-25729
2076 (car w2-25702)))
2077 (if (null? m2-25729)
2078 m1-25703
2079 (append
2080 m1-25703
2081 m2-25729)))
2082 (let ((m2-25737
2083 (cdr w2-25702)))
2084 (if (null? m2-25737)
2085 s1-25704
2086 (append
2087 s1-25704
2088 m2-25737))))))))
2089 (module-25693
2090 (vector-ref
2091 name-25658
2092 3)))
2093 (vector
2094 'syntax-object
2095 expression-25691
2096 wrap-25692
2097 module-25693))
2098 (if (null? name-25658)
2099 name-25658
2100 (vector
2101 'syntax-object
2102 name-25658
2103 w-25086
2104 mod-25089))))
2105 (if (if (null? (car w-25086))
2106 (null? (cdr w-25086))
2107 #f)
2108 e-25084
2109 (if (if (vector? e-25084)
2110 (if (= (vector-length
2111 e-25084)
2112 4)
2113 (eq? (vector-ref
2114 e-25084
2115 0)
2116 'syntax-object)
2117 #f)
2118 #f)
2119 (let ((expression-25789
2120 (vector-ref
2121 e-25084
2122 1))
2123 (wrap-25790
2124 (let ((w2-25800
2125 (vector-ref
2126 e-25084
2127 2)))
2128 (let ((m1-25801
2129 (car w-25086))
2130 (s1-25802
2131 (cdr w-25086)))
2132 (if (null? m1-25801)
2133 (if (null? s1-25802)
2134 w2-25800
2135 (cons (car w2-25800)
2136 (let ((m2-25819
2137 (cdr w2-25800)))
2138 (if (null? m2-25819)
2139 s1-25802
2140 (append
2141 s1-25802
2142 m2-25819)))))
2143 (cons (let ((m2-25827
2144 (car w2-25800)))
2145 (if (null? m2-25827)
2146 m1-25801
2147 (append
2148 m1-25801
2149 m2-25827)))
2150 (let ((m2-25835
2151 (cdr w2-25800)))
2152 (if (null? m2-25835)
2153 s1-25802
2154 (append
2155 s1-25802
2156 m2-25835))))))))
2157 (module-25791
2158 (vector-ref
2159 e-25084
2160 3)))
2161 (vector
2162 'syntax-object
2163 expression-25789
2164 wrap-25790
2165 module-25791))
2166 (if (null? e-25084)
2167 e-25084
2168 (vector
2169 'syntax-object
2170 e-25084
2171 w-25086
2172 mod-25089))))
2173 (let ((e-25861
2174 (cons '#(syntax-object
2175 lambda
2176 ((top)
2177 #(ribcage
2178 #(name
2179 args
2180 e1
2181 e2)
2182 #((top)
2183 (top)
2184 (top)
2185 (top))
2186 #("l-*-2021"
2187 "l-*-2022"
2188 "l-*-2023"
2189 "l-*-2024"))
2190 #(ribcage
2191 ()
2192 ()
2193 ())
2194 #(ribcage
2195 ()
2196 ()
2197 ())
2198 #(ribcage
2199 #(ftype
2200 fval
2201 fform
2202 fe
2203 fw
2204 fs
2205 fmod)
2206 #((top)
2207 (top)
2208 (top)
2209 (top)
2210 (top)
2211 (top)
2212 (top))
2213 #("l-*-1973"
2214 "l-*-1974"
2215 "l-*-1975"
2216 "l-*-1976"
2217 "l-*-1977"
2218 "l-*-1978"
2219 "l-*-1979"))
2220 #(ribcage
2221 ()
2222 ()
2223 ())
2224 #(ribcage
2225 #(first)
2226 #((top))
2227 #("l-*-1964"))
2228 #(ribcage
2229 ()
2230 ()
2231 ())
2232 #(ribcage
2233 ()
2234 ()
2235 ())
2236 #(ribcage
2237 ()
2238 ()
2239 ())
2240 #(ribcage
2241 #(e
2242 r
2243 w
2244 s
2245 rib
2246 mod
2247 for-car?)
2248 #((top)
2249 (top)
2250 (top)
2251 (top)
2252 (top)
2253 (top)
2254 (top))
2255 #("l-*-1943"
2256 "l-*-1944"
2257 "l-*-1945"
2258 "l-*-1946"
2259 "l-*-1947"
2260 "l-*-1948"
2261 "l-*-1949"))
2262 #(ribcage
2263 (lambda-var-list
2264 gen-var
2265 strip
2266 expand-lambda-case
2267 lambda*-formals
2268 expand-simple-lambda
2269 lambda-formals
2270 ellipsis?
2271 expand-void
2272 eval-local-transformer
2273 expand-local-syntax
2274 expand-body
2275 expand-macro
2276 expand-call
2277 expand-expr
2278 expand
2279 syntax-type
2280 parse-when-list
2281 expand-install-global
2282 expand-top-sequence
2283 expand-sequence
2284 source-wrap
2285 wrap
2286 bound-id-member?
2287 distinct-bound-ids?
2288 valid-bound-ids?
2289 bound-id=?
2290 free-id=?
2291 with-transformer-environment
2292 transformer-environment
2293 resolve-identifier
2294 locally-bound-identifiers
2295 id-var-name
2296 same-marks?
2297 join-marks
2298 join-wraps
2299 smart-append
2300 make-binding-wrap
2301 extend-ribcage!
2302 make-empty-ribcage
2303 new-mark
2304 anti-mark
2305 the-anti-mark
2306 top-marked?
2307 top-wrap
2308 empty-wrap
2309 set-ribcage-labels!
2310 set-ribcage-marks!
2311 set-ribcage-symnames!
2312 ribcage-labels
2313 ribcage-marks
2314 ribcage-symnames
2315 ribcage?
2316 make-ribcage
2317 gen-labels
2318 gen-label
2319 make-rename
2320 rename-marks
2321 rename-new
2322 rename-old
2323 subst-rename?
2324 wrap-subst
2325 wrap-marks
2326 make-wrap
2327 id-sym-name&marks
2328 id-sym-name
2329 id?
2330 nonsymbol-id?
2331 global-extend
2332 macros-only-env
2333 extend-var-env
2334 extend-env
2335 null-env
2336 binding-value
2337 binding-type
2338 make-binding
2339 arg-check
2340 source-annotation
2341 no-source
2342 set-syntax-object-module!
2343 set-syntax-object-wrap!
2344 set-syntax-object-expression!
2345 syntax-object-module
2346 syntax-object-wrap
2347 syntax-object-expression
2348 syntax-object?
2349 make-syntax-object
2350 build-lexical-var
2351 build-letrec
2352 build-named-let
2353 build-let
2354 build-sequence
2355 build-data
2356 build-primref
2357 build-primcall
2358 build-lambda-case
2359 build-case-lambda
2360 build-simple-lambda
2361 build-global-definition
2362 build-global-assignment
2363 build-global-reference
2364 analyze-variable
2365 build-lexical-assignment
2366 build-lexical-reference
2367 build-dynlet
2368 build-conditional
2369 build-call
2370 build-void
2371 maybe-name-value!
2372 decorate-source
2373 get-global-definition-hook
2374 put-global-definition-hook
2375 session-id
2376 local-eval-hook
2377 top-level-eval-hook
2378 fx<
2379 fx=
2380 fx-
2381 fx+
2382 set-lambda-meta!
2383 lambda-meta
2384 lambda?
2385 make-dynlet
2386 make-letrec
2387 make-let
2388 make-lambda-case
2389 make-lambda
2390 make-seq
2391 make-primcall
2392 make-call
2393 make-conditional
2394 make-toplevel-define
2395 make-toplevel-set
2396 make-toplevel-ref
2397 make-module-set
2398 make-module-ref
2399 make-lexical-set
2400 make-lexical-ref
2401 make-primitive-ref
2402 make-const
2403 make-void)
2404 ((top)
2405 (top)
2406 (top)
2407 (top)
2408 (top)
2409 (top)
2410 (top)
2411 (top)
2412 (top)
2413 (top)
2414 (top)
2415 (top)
2416 (top)
2417 (top)
2418 (top)
2419 (top)
2420 (top)
2421 (top)
2422 (top)
2423 (top)
2424 (top)
2425 (top)
2426 (top)
2427 (top)
2428 (top)
2429 (top)
2430 (top)
2431 (top)
2432 (top)
2433 (top)
2434 (top)
2435 (top)
2436 (top)
2437 (top)
2438 (top)
2439 (top)
2440 (top)
2441 (top)
2442 (top)
2443 (top)
2444 (top)
2445 (top)
2446 (top)
2447 (top)
2448 (top)
2449 (top)
2450 (top)
2451 (top)
2452 (top)
2453 (top)
2454 (top)
2455 (top)
2456 (top)
2457 (top)
2458 (top)
2459 (top)
2460 (top)
2461 (top)
2462 (top)
2463 (top)
2464 (top)
2465 (top)
2466 (top)
2467 (top)
2468 (top)
2469 (top)
2470 (top)
2471 (top)
2472 (top)
2473 (top)
2474 (top)
2475 (top)
2476 (top)
2477 (top)
2478 (top)
2479 (top)
2480 (top)
2481 (top)
2482 (top)
2483 (top)
2484 (top)
2485 (top)
2486 (top)
2487 (top)
2488 (top)
2489 (top)
2490 (top)
2491 (top)
2492 (top)
2493 (top)
2494 (top)
2495 (top)
2496 (top)
2497 (top)
2498 (top)
2499 (top)
2500 (top)
2501 (top)
2502 (top)
2503 (top)
2504 (top)
2505 (top)
2506 (top)
2507 (top)
2508 (top)
2509 (top)
2510 (top)
2511 (top)
2512 (top)
2513 (top)
2514 (top)
2515 (top)
2516 (top)
2517 (top)
2518 (top)
2519 (top)
2520 (top)
2521 (top)
2522 (top)
2523 (top)
2524 (top)
2525 (top)
2526 (top)
2527 (top)
2528 (top)
2529 (top)
2530 (top)
2531 (top)
2532 (top)
2533 (top)
2534 (top)
2535 (top)
2536 (top)
2537 (top)
2538 (top)
2539 (top)
2540 (top)
2541 (top)
2542 (top)
2543 (top)
2544 (top))
2545 ("l-*-478"
2546 "l-*-476"
2547 "l-*-474"
2548 "l-*-472"
2549 "l-*-470"
2550 "l-*-468"
2551 "l-*-466"
2552 "l-*-464"
2553 "l-*-462"
2554 "l-*-460"
2555 "l-*-458"
2556 "l-*-456"
2557 "l-*-454"
2558 "l-*-452"
2559 "l-*-450"
2560 "l-*-448"
2561 "l-*-446"
2562 "l-*-444"
2563 "l-*-442"
2564 "l-*-440"
2565 "l-*-438"
2566 "l-*-436"
2567 "l-*-434"
2568 "l-*-432"
2569 "l-*-430"
2570 "l-*-428"
2571 "l-*-426"
2572 "l-*-424"
2573 "l-*-422"
2574 "l-*-420"
2575 "l-*-418"
2576 "l-*-416"
2577 "l-*-414"
2578 "l-*-412"
2579 "l-*-410"
2580 "l-*-408"
2581 "l-*-406"
2582 "l-*-404"
2583 "l-*-402"
2584 "l-*-401"
2585 "l-*-399"
2586 "l-*-396"
2587 "l-*-395"
2588 "l-*-394"
2589 "l-*-392"
2590 "l-*-391"
2591 "l-*-389"
2592 "l-*-387"
2593 "l-*-385"
2594 "l-*-383"
2595 "l-*-381"
2596 "l-*-379"
2597 "l-*-377"
2598 "l-*-375"
2599 "l-*-372"
2600 "l-*-370"
2601 "l-*-369"
2602 "l-*-367"
2603 "l-*-365"
2604 "l-*-363"
2605 "l-*-361"
2606 "l-*-360"
2607 "l-*-359"
2608 "l-*-358"
2609 "l-*-356"
2610 "l-*-355"
2611 "l-*-352"
2612 "l-*-350"
2613 "l-*-348"
2614 "l-*-346"
2615 "l-*-344"
2616 "l-*-342"
2617 "l-*-341"
2618 "l-*-340"
2619 "l-*-338"
2620 "l-*-336"
2621 "l-*-335"
2622 "l-*-332"
2623 "l-*-331"
2624 "l-*-329"
2625 "l-*-327"
2626 "l-*-325"
2627 "l-*-323"
2628 "l-*-321"
2629 "l-*-319"
2630 "l-*-317"
2631 "l-*-315"
2632 "l-*-313"
2633 "l-*-310"
2634 "l-*-308"
2635 "l-*-306"
2636 "l-*-304"
2637 "l-*-302"
2638 "l-*-300"
2639 "l-*-298"
2640 "l-*-296"
2641 "l-*-294"
2642 "l-*-292"
2643 "l-*-290"
2644 "l-*-288"
2645 "l-*-286"
2646 "l-*-284"
2647 "l-*-282"
2648 "l-*-280"
2649 "l-*-278"
2650 "l-*-276"
2651 "l-*-274"
2652 "l-*-272"
2653 "l-*-270"
2654 "l-*-268"
2655 "l-*-266"
2656 "l-*-264"
2657 "l-*-262"
2658 "l-*-260"
2659 "l-*-258"
2660 "l-*-257"
2661 "l-*-256"
2662 "l-*-255"
2663 "l-*-254"
2664 "l-*-252"
2665 "l-*-250"
2666 "l-*-248"
2667 "l-*-245"
2668 "l-*-243"
2669 "l-*-241"
2670 "l-*-239"
2671 "l-*-237"
2672 "l-*-235"
2673 "l-*-233"
2674 "l-*-231"
2675 "l-*-229"
2676 "l-*-227"
2677 "l-*-225"
2678 "l-*-223"
2679 "l-*-221"
2680 "l-*-219"
2681 "l-*-217"
2682 "l-*-215"
2683 "l-*-213"
2684 "l-*-211"
2685 "l-*-209"))
2686 #(ribcage
2687 (define-structure
2688 define-expansion-accessors
2689 define-expansion-constructors)
2690 ((top)
2691 (top)
2692 (top))
2693 ("l-*-47"
2694 "l-*-46"
2695 "l-*-45"))
2696 #(ribcage
2697 ()
2698 ()
2699 ()))
2700 (hygiene
2701 guile))
2702 (let ((x-25865
2703 (cons args-25659
2704 (cons e1-25660
2705 e2-25661))))
2706 (if (if (null? (car w-25086))
2707 (null? (cdr w-25086))
2708 #f)
2709 x-25865
2710 (if (if (vector?
2711 x-25865)
2712 (if (= (vector-length
2713 x-25865)
2714 4)
2715 (eq? (vector-ref
2716 x-25865
2717 0)
2718 'syntax-object)
2719 #f)
2720 #f)
2721 (let ((expression-25883
2722 (vector-ref
2723 x-25865
2724 1))
2725 (wrap-25884
2726 (let ((w2-25892
2727 (vector-ref
2728 x-25865
2729 2)))
2730 (let ((m1-25893
2731 (car w-25086))
2732 (s1-25894
2733 (cdr w-25086)))
2734 (if (null? m1-25893)
2735 (if (null? s1-25894)
2736 w2-25892
2737 (cons (car w2-25892)
2738 (let ((m2-25909
2739 (cdr w2-25892)))
2740 (if (null? m2-25909)
2741 s1-25894
2742 (append
2743 s1-25894
2744 m2-25909)))))
2745 (cons (let ((m2-25917
2746 (car w2-25892)))
2747 (if (null? m2-25917)
2748 m1-25893
2749 (append
2750 m1-25893
2751 m2-25917)))
2752 (let ((m2-25925
2753 (cdr w2-25892)))
2754 (if (null? m2-25925)
2755 s1-25894
2756 (append
2757 s1-25894
2758 m2-25925))))))))
2759 (module-25885
2760 (vector-ref
2761 x-25865
2762 3)))
2763 (vector
2764 'syntax-object
2765 expression-25883
2766 wrap-25884
2767 module-25885))
2768 (if (null? x-25865)
2769 x-25865
2770 (vector
2771 'syntax-object
2772 x-25865
2773 w-25086
2774 mod-25089))))))))
2775 (begin
2776 (if (if (pair? e-25861)
2777 s-25087
2778 #f)
2779 (set-source-properties!
2780 e-25861
2781 s-25087))
2782 e-25861))
2783 '(())
2784 s-25087
2785 mod-25089))
2786 tmp-25188)
2787 (let ((tmp-25944
2788 ($sc-dispatch
2789 e-25084
2790 '(_ any))))
2791 (if (if tmp-25944
2792 (@apply
2793 (lambda (name-25948)
2794 (if (symbol?
2795 name-25948)
2796 #t
2797 (if (if (vector?
2798 name-25948)
2799 (if (= (vector-length
2800 name-25948)
2801 4)
2802 (eq? (vector-ref
2803 name-25948
2804 0)
2805 'syntax-object)
2806 #f)
2807 #f)
2808 (symbol?
2809 (vector-ref
2810 name-25948
2811 1))
2812 #f)))
2813 tmp-25944)
2814 #f)
2815 (@apply
2816 (lambda (name-25975)
2817 (values
2818 'define-form
2819 (if (if (null? (car w-25086))
2820 (null? (cdr w-25086))
2821 #f)
2822 name-25975
2823 (if (if (vector?
2824 name-25975)
2825 (if (= (vector-length
2826 name-25975)
2827 4)
2828 (eq? (vector-ref
2829 name-25975
2830 0)
2831 'syntax-object)
2832 #f)
2833 #f)
2834 (let ((expression-26005
2835 (vector-ref
2836 name-25975
2837 1))
2838 (wrap-26006
2839 (let ((w2-26016
2840 (vector-ref
2841 name-25975
2842 2)))
2843 (let ((m1-26017
2844 (car w-25086))
2845 (s1-26018
2846 (cdr w-25086)))
2847 (if (null? m1-26017)
2848 (if (null? s1-26018)
2849 w2-26016
2850 (cons (car w2-26016)
2851 (let ((m2-26035
2852 (cdr w2-26016)))
2853 (if (null? m2-26035)
2854 s1-26018
2855 (append
2856 s1-26018
2857 m2-26035)))))
2858 (cons (let ((m2-26043
2859 (car w2-26016)))
2860 (if (null? m2-26043)
2861 m1-26017
2862 (append
2863 m1-26017
2864 m2-26043)))
2865 (let ((m2-26051
2866 (cdr w2-26016)))
2867 (if (null? m2-26051)
2868 s1-26018
2869 (append
2870 s1-26018
2871 m2-26051))))))))
2872 (module-26007
2873 (vector-ref
2874 name-25975
2875 3)))
2876 (vector
2877 'syntax-object
2878 expression-26005
2879 wrap-26006
2880 module-26007))
2881 (if (null? name-25975)
2882 name-25975
2883 (vector
2884 'syntax-object
2885 name-25975
2886 w-25086
2887 mod-25089))))
2888 (if (if (null? (car w-25086))
2889 (null? (cdr w-25086))
2890 #f)
2891 e-25084
2892 (if (if (vector?
2893 e-25084)
2894 (if (= (vector-length
2895 e-25084)
2896 4)
2897 (eq? (vector-ref
2898 e-25084
2899 0)
2900 'syntax-object)
2901 #f)
2902 #f)
2903 (let ((expression-26103
2904 (vector-ref
2905 e-25084
2906 1))
2907 (wrap-26104
2908 (let ((w2-26114
2909 (vector-ref
2910 e-25084
2911 2)))
2912 (let ((m1-26115
2913 (car w-25086))
2914 (s1-26116
2915 (cdr w-25086)))
2916 (if (null? m1-26115)
2917 (if (null? s1-26116)
2918 w2-26114
2919 (cons (car w2-26114)
2920 (let ((m2-26133
2921 (cdr w2-26114)))
2922 (if (null? m2-26133)
2923 s1-26116
2924 (append
2925 s1-26116
2926 m2-26133)))))
2927 (cons (let ((m2-26141
2928 (car w2-26114)))
2929 (if (null? m2-26141)
2930 m1-26115
2931 (append
2932 m1-26115
2933 m2-26141)))
2934 (let ((m2-26149
2935 (cdr w2-26114)))
2936 (if (null? m2-26149)
2937 s1-26116
2938 (append
2939 s1-26116
2940 m2-26149))))))))
2941 (module-26105
2942 (vector-ref
2943 e-25084
2944 3)))
2945 (vector
2946 'syntax-object
2947 expression-26103
2948 wrap-26104
2949 module-26105))
2950 (if (null? e-25084)
2951 e-25084
2952 (vector
2953 'syntax-object
2954 e-25084
2955 w-25086
2956 mod-25089))))
2957 '(#(syntax-object
2958 if
2959 ((top)
2960 #(ribcage
2961 #(name)
2962 #((top))
2963 #("l-*-2034"))
2964 #(ribcage () () ())
2965 #(ribcage () () ())
2966 #(ribcage
2967 #(ftype
2968 fval
2969 fform
2970 fe
2971 fw
2972 fs
2973 fmod)
2974 #((top)
2975 (top)
2976 (top)
2977 (top)
2978 (top)
2979 (top)
2980 (top))
2981 #("l-*-1973"
2982 "l-*-1974"
2983 "l-*-1975"
2984 "l-*-1976"
2985 "l-*-1977"
2986 "l-*-1978"
2987 "l-*-1979"))
2988 #(ribcage () () ())
2989 #(ribcage
2990 #(first)
2991 #((top))
2992 #("l-*-1964"))
2993 #(ribcage () () ())
2994 #(ribcage () () ())
2995 #(ribcage () () ())
2996 #(ribcage
2997 #(e
2998 r
2999 w
3000 s
3001 rib
3002 mod
3003 for-car?)
3004 #((top)
3005 (top)
3006 (top)
3007 (top)
3008 (top)
3009 (top)
3010 (top))
3011 #("l-*-1943"
3012 "l-*-1944"
3013 "l-*-1945"
3014 "l-*-1946"
3015 "l-*-1947"
3016 "l-*-1948"
3017 "l-*-1949"))
3018 #(ribcage
3019 (lambda-var-list
3020 gen-var
3021 strip
3022 expand-lambda-case
3023 lambda*-formals
3024 expand-simple-lambda
3025 lambda-formals
3026 ellipsis?
3027 expand-void
3028 eval-local-transformer
3029 expand-local-syntax
3030 expand-body
3031 expand-macro
3032 expand-call
3033 expand-expr
3034 expand
3035 syntax-type
3036 parse-when-list
3037 expand-install-global
3038 expand-top-sequence
3039 expand-sequence
3040 source-wrap
3041 wrap
3042 bound-id-member?
3043 distinct-bound-ids?
3044 valid-bound-ids?
3045 bound-id=?
3046 free-id=?
3047 with-transformer-environment
3048 transformer-environment
3049 resolve-identifier
3050 locally-bound-identifiers
3051 id-var-name
3052 same-marks?
3053 join-marks
3054 join-wraps
3055 smart-append
3056 make-binding-wrap
3057 extend-ribcage!
3058 make-empty-ribcage
3059 new-mark
3060 anti-mark
3061 the-anti-mark
3062 top-marked?
3063 top-wrap
3064 empty-wrap
3065 set-ribcage-labels!
3066 set-ribcage-marks!
3067 set-ribcage-symnames!
3068 ribcage-labels
3069 ribcage-marks
3070 ribcage-symnames
3071 ribcage?
3072 make-ribcage
3073 gen-labels
3074 gen-label
3075 make-rename
3076 rename-marks
3077 rename-new
3078 rename-old
3079 subst-rename?
3080 wrap-subst
3081 wrap-marks
3082 make-wrap
3083 id-sym-name&marks
3084 id-sym-name
3085 id?
3086 nonsymbol-id?
3087 global-extend
3088 macros-only-env
3089 extend-var-env
3090 extend-env
3091 null-env
3092 binding-value
3093 binding-type
3094 make-binding
3095 arg-check
3096 source-annotation
3097 no-source
3098 set-syntax-object-module!
3099 set-syntax-object-wrap!
3100 set-syntax-object-expression!
3101 syntax-object-module
3102 syntax-object-wrap
3103 syntax-object-expression
3104 syntax-object?
3105 make-syntax-object
3106 build-lexical-var
3107 build-letrec
3108 build-named-let
3109 build-let
3110 build-sequence
3111 build-data
3112 build-primref
3113 build-primcall
3114 build-lambda-case
3115 build-case-lambda
3116 build-simple-lambda
3117 build-global-definition
3118 build-global-assignment
3119 build-global-reference
3120 analyze-variable
3121 build-lexical-assignment
3122 build-lexical-reference
3123 build-dynlet
3124 build-conditional
3125 build-call
3126 build-void
3127 maybe-name-value!
3128 decorate-source
3129 get-global-definition-hook
3130 put-global-definition-hook
3131 session-id
3132 local-eval-hook
3133 top-level-eval-hook
3134 fx<
3135 fx=
3136 fx-
3137 fx+
3138 set-lambda-meta!
3139 lambda-meta
3140 lambda?
3141 make-dynlet
3142 make-letrec
3143 make-let
3144 make-lambda-case
3145 make-lambda
3146 make-seq
3147 make-primcall
3148 make-call
3149 make-conditional
3150 make-toplevel-define
3151 make-toplevel-set
3152 make-toplevel-ref
3153 make-module-set
3154 make-module-ref
3155 make-lexical-set
3156 make-lexical-ref
3157 make-primitive-ref
3158 make-const
3159 make-void)
3160 ((top)
3161 (top)
3162 (top)
3163 (top)
3164 (top)
3165 (top)
3166 (top)
3167 (top)
3168 (top)
3169 (top)
3170 (top)
3171 (top)
3172 (top)
3173 (top)
3174 (top)
3175 (top)
3176 (top)
3177 (top)
3178 (top)
3179 (top)
3180 (top)
3181 (top)
3182 (top)
3183 (top)
3184 (top)
3185 (top)
3186 (top)
3187 (top)
3188 (top)
3189 (top)
3190 (top)
3191 (top)
3192 (top)
3193 (top)
3194 (top)
3195 (top)
3196 (top)
3197 (top)
3198 (top)
3199 (top)
3200 (top)
3201 (top)
3202 (top)
3203 (top)
3204 (top)
3205 (top)
3206 (top)
3207 (top)
3208 (top)
3209 (top)
3210 (top)
3211 (top)
3212 (top)
3213 (top)
3214 (top)
3215 (top)
3216 (top)
3217 (top)
3218 (top)
3219 (top)
3220 (top)
3221 (top)
3222 (top)
3223 (top)
3224 (top)
3225 (top)
3226 (top)
3227 (top)
3228 (top)
3229 (top)
3230 (top)
3231 (top)
3232 (top)
3233 (top)
3234 (top)
3235 (top)
3236 (top)
3237 (top)
3238 (top)
3239 (top)
3240 (top)
3241 (top)
3242 (top)
3243 (top)
3244 (top)
3245 (top)
3246 (top)
3247 (top)
3248 (top)
3249 (top)
3250 (top)
3251 (top)
3252 (top)
3253 (top)
3254 (top)
3255 (top)
3256 (top)
3257 (top)
3258 (top)
3259 (top)
3260 (top)
3261 (top)
3262 (top)
3263 (top)
3264 (top)
3265 (top)
3266 (top)
3267 (top)
3268 (top)
3269 (top)
3270 (top)
3271 (top)
3272 (top)
3273 (top)
3274 (top)
3275 (top)
3276 (top)
3277 (top)
3278 (top)
3279 (top)
3280 (top)
3281 (top)
3282 (top)
3283 (top)
3284 (top)
3285 (top)
3286 (top)
3287 (top)
3288 (top)
3289 (top)
3290 (top)
3291 (top)
3292 (top)
3293 (top)
3294 (top)
3295 (top)
3296 (top)
3297 (top)
3298 (top)
3299 (top)
3300 (top))
3301 ("l-*-478"
3302 "l-*-476"
3303 "l-*-474"
3304 "l-*-472"
3305 "l-*-470"
3306 "l-*-468"
3307 "l-*-466"
3308 "l-*-464"
3309 "l-*-462"
3310 "l-*-460"
3311 "l-*-458"
3312 "l-*-456"
3313 "l-*-454"
3314 "l-*-452"
3315 "l-*-450"
3316 "l-*-448"
3317 "l-*-446"
3318 "l-*-444"
3319 "l-*-442"
3320 "l-*-440"
3321 "l-*-438"
3322 "l-*-436"
3323 "l-*-434"
3324 "l-*-432"
3325 "l-*-430"
3326 "l-*-428"
3327 "l-*-426"
3328 "l-*-424"
3329 "l-*-422"
3330 "l-*-420"
3331 "l-*-418"
3332 "l-*-416"
3333 "l-*-414"
3334 "l-*-412"
3335 "l-*-410"
3336 "l-*-408"
3337 "l-*-406"
3338 "l-*-404"
3339 "l-*-402"
3340 "l-*-401"
3341 "l-*-399"
3342 "l-*-396"
3343 "l-*-395"
3344 "l-*-394"
3345 "l-*-392"
3346 "l-*-391"
3347 "l-*-389"
3348 "l-*-387"
3349 "l-*-385"
3350 "l-*-383"
3351 "l-*-381"
3352 "l-*-379"
3353 "l-*-377"
3354 "l-*-375"
3355 "l-*-372"
3356 "l-*-370"
3357 "l-*-369"
3358 "l-*-367"
3359 "l-*-365"
3360 "l-*-363"
3361 "l-*-361"
3362 "l-*-360"
3363 "l-*-359"
3364 "l-*-358"
3365 "l-*-356"
3366 "l-*-355"
3367 "l-*-352"
3368 "l-*-350"
3369 "l-*-348"
3370 "l-*-346"
3371 "l-*-344"
3372 "l-*-342"
3373 "l-*-341"
3374 "l-*-340"
3375 "l-*-338"
3376 "l-*-336"
3377 "l-*-335"
3378 "l-*-332"
3379 "l-*-331"
3380 "l-*-329"
3381 "l-*-327"
3382 "l-*-325"
3383 "l-*-323"
3384 "l-*-321"
3385 "l-*-319"
3386 "l-*-317"
3387 "l-*-315"
3388 "l-*-313"
3389 "l-*-310"
3390 "l-*-308"
3391 "l-*-306"
3392 "l-*-304"
3393 "l-*-302"
3394 "l-*-300"
3395 "l-*-298"
3396 "l-*-296"
3397 "l-*-294"
3398 "l-*-292"
3399 "l-*-290"
3400 "l-*-288"
3401 "l-*-286"
3402 "l-*-284"
3403 "l-*-282"
3404 "l-*-280"
3405 "l-*-278"
3406 "l-*-276"
3407 "l-*-274"
3408 "l-*-272"
3409 "l-*-270"
3410 "l-*-268"
3411 "l-*-266"
3412 "l-*-264"
3413 "l-*-262"
3414 "l-*-260"
3415 "l-*-258"
3416 "l-*-257"
3417 "l-*-256"
3418 "l-*-255"
3419 "l-*-254"
3420 "l-*-252"
3421 "l-*-250"
3422 "l-*-248"
3423 "l-*-245"
3424 "l-*-243"
3425 "l-*-241"
3426 "l-*-239"
3427 "l-*-237"
3428 "l-*-235"
3429 "l-*-233"
3430 "l-*-231"
3431 "l-*-229"
3432 "l-*-227"
3433 "l-*-225"
3434 "l-*-223"
3435 "l-*-221"
3436 "l-*-219"
3437 "l-*-217"
3438 "l-*-215"
3439 "l-*-213"
3440 "l-*-211"
3441 "l-*-209"))
3442 #(ribcage
3443 (define-structure
3444 define-expansion-accessors
3445 define-expansion-constructors)
3446 ((top)
3447 (top)
3448 (top))
3449 ("l-*-47"
3450 "l-*-46"
3451 "l-*-45"))
3452 #(ribcage
3453 ()
3454 ()
3455 ()))
3456 (hygiene guile))
3457 #(syntax-object
3458 #f
3459 ((top)
3460 #(ribcage
3461 #(name)
3462 #((top))
3463 #("l-*-2034"))
3464 #(ribcage () () ())
3465 #(ribcage () () ())
3466 #(ribcage
3467 #(ftype
3468 fval
3469 fform
3470 fe
3471 fw
3472 fs
3473 fmod)
3474 #((top)
3475 (top)
3476 (top)
3477 (top)
3478 (top)
3479 (top)
3480 (top))
3481 #("l-*-1973"
3482 "l-*-1974"
3483 "l-*-1975"
3484 "l-*-1976"
3485 "l-*-1977"
3486 "l-*-1978"
3487 "l-*-1979"))
3488 #(ribcage () () ())
3489 #(ribcage
3490 #(first)
3491 #((top))
3492 #("l-*-1964"))
3493 #(ribcage () () ())
3494 #(ribcage () () ())
3495 #(ribcage () () ())
3496 #(ribcage
3497 #(e
3498 r
3499 w
3500 s
3501 rib
3502 mod
3503 for-car?)
3504 #((top)
3505 (top)
3506 (top)
3507 (top)
3508 (top)
3509 (top)
3510 (top))
3511 #("l-*-1943"
3512 "l-*-1944"
3513 "l-*-1945"
3514 "l-*-1946"
3515 "l-*-1947"
3516 "l-*-1948"
3517 "l-*-1949"))
3518 #(ribcage
3519 (lambda-var-list
3520 gen-var
3521 strip
3522 expand-lambda-case
3523 lambda*-formals
3524 expand-simple-lambda
3525 lambda-formals
3526 ellipsis?
3527 expand-void
3528 eval-local-transformer
3529 expand-local-syntax
3530 expand-body
3531 expand-macro
3532 expand-call
3533 expand-expr
3534 expand
3535 syntax-type
3536 parse-when-list
3537 expand-install-global
3538 expand-top-sequence
3539 expand-sequence
3540 source-wrap
3541 wrap
3542 bound-id-member?
3543 distinct-bound-ids?
3544 valid-bound-ids?
3545 bound-id=?
3546 free-id=?
3547 with-transformer-environment
3548 transformer-environment
3549 resolve-identifier
3550 locally-bound-identifiers
3551 id-var-name
3552 same-marks?
3553 join-marks
3554 join-wraps
3555 smart-append
3556 make-binding-wrap
3557 extend-ribcage!
3558 make-empty-ribcage
3559 new-mark
3560 anti-mark
3561 the-anti-mark
3562 top-marked?
3563 top-wrap
3564 empty-wrap
3565 set-ribcage-labels!
3566 set-ribcage-marks!
3567 set-ribcage-symnames!
3568 ribcage-labels
3569 ribcage-marks
3570 ribcage-symnames
3571 ribcage?
3572 make-ribcage
3573 gen-labels
3574 gen-label
3575 make-rename
3576 rename-marks
3577 rename-new
3578 rename-old
3579 subst-rename?
3580 wrap-subst
3581 wrap-marks
3582 make-wrap
3583 id-sym-name&marks
3584 id-sym-name
3585 id?
3586 nonsymbol-id?
3587 global-extend
3588 macros-only-env
3589 extend-var-env
3590 extend-env
3591 null-env
3592 binding-value
3593 binding-type
3594 make-binding
3595 arg-check
3596 source-annotation
3597 no-source
3598 set-syntax-object-module!
3599 set-syntax-object-wrap!
3600 set-syntax-object-expression!
3601 syntax-object-module
3602 syntax-object-wrap
3603 syntax-object-expression
3604 syntax-object?
3605 make-syntax-object
3606 build-lexical-var
3607 build-letrec
3608 build-named-let
3609 build-let
3610 build-sequence
3611 build-data
3612 build-primref
3613 build-primcall
3614 build-lambda-case
3615 build-case-lambda
3616 build-simple-lambda
3617 build-global-definition
3618 build-global-assignment
3619 build-global-reference
3620 analyze-variable
3621 build-lexical-assignment
3622 build-lexical-reference
3623 build-dynlet
3624 build-conditional
3625 build-call
3626 build-void
3627 maybe-name-value!
3628 decorate-source
3629 get-global-definition-hook
3630 put-global-definition-hook
3631 session-id
3632 local-eval-hook
3633 top-level-eval-hook
3634 fx<
3635 fx=
3636 fx-
3637 fx+
3638 set-lambda-meta!
3639 lambda-meta
3640 lambda?
3641 make-dynlet
3642 make-letrec
3643 make-let
3644 make-lambda-case
3645 make-lambda
3646 make-seq
3647 make-primcall
3648 make-call
3649 make-conditional
3650 make-toplevel-define
3651 make-toplevel-set
3652 make-toplevel-ref
3653 make-module-set
3654 make-module-ref
3655 make-lexical-set
3656 make-lexical-ref
3657 make-primitive-ref
3658 make-const
3659 make-void)
3660 ((top)
3661 (top)
3662 (top)
3663 (top)
3664 (top)
3665 (top)
3666 (top)
3667 (top)
3668 (top)
3669 (top)
3670 (top)
3671 (top)
3672 (top)
3673 (top)
3674 (top)
3675 (top)
3676 (top)
3677 (top)
3678 (top)
3679 (top)
3680 (top)
3681 (top)
3682 (top)
3683 (top)
3684 (top)
3685 (top)
3686 (top)
3687 (top)
3688 (top)
3689 (top)
3690 (top)
3691 (top)
3692 (top)
3693 (top)
3694 (top)
3695 (top)
3696 (top)
3697 (top)
3698 (top)
3699 (top)
3700 (top)
3701 (top)
3702 (top)
3703 (top)
3704 (top)
3705 (top)
3706 (top)
3707 (top)
3708 (top)
3709 (top)
3710 (top)
3711 (top)
3712 (top)
3713 (top)
3714 (top)
3715 (top)
3716 (top)
3717 (top)
3718 (top)
3719 (top)
3720 (top)
3721 (top)
3722 (top)
3723 (top)
3724 (top)
3725 (top)
3726 (top)
3727 (top)
3728 (top)
3729 (top)
3730 (top)
3731 (top)
3732 (top)
3733 (top)
3734 (top)
3735 (top)
3736 (top)
3737 (top)
3738 (top)
3739 (top)
3740 (top)
3741 (top)
3742 (top)
3743 (top)
3744 (top)
3745 (top)
3746 (top)
3747 (top)
3748 (top)
3749 (top)
3750 (top)
3751 (top)
3752 (top)
3753 (top)
3754 (top)
3755 (top)
3756 (top)
3757 (top)
3758 (top)
3759 (top)
3760 (top)
3761 (top)
3762 (top)
3763 (top)
3764 (top)
3765 (top)
3766 (top)
3767 (top)
3768 (top)
3769 (top)
3770 (top)
3771 (top)
3772 (top)
3773 (top)
3774 (top)
3775 (top)
3776 (top)
3777 (top)
3778 (top)
3779 (top)
3780 (top)
3781 (top)
3782 (top)
3783 (top)
3784 (top)
3785 (top)
3786 (top)
3787 (top)
3788 (top)
3789 (top)
3790 (top)
3791 (top)
3792 (top)
3793 (top)
3794 (top)
3795 (top)
3796 (top)
3797 (top)
3798 (top)
3799 (top)
3800 (top))
3801 ("l-*-478"
3802 "l-*-476"
3803 "l-*-474"
3804 "l-*-472"
3805 "l-*-470"
3806 "l-*-468"
3807 "l-*-466"
3808 "l-*-464"
3809 "l-*-462"
3810 "l-*-460"
3811 "l-*-458"
3812 "l-*-456"
3813 "l-*-454"
3814 "l-*-452"
3815 "l-*-450"
3816 "l-*-448"
3817 "l-*-446"
3818 "l-*-444"
3819 "l-*-442"
3820 "l-*-440"
3821 "l-*-438"
3822 "l-*-436"
3823 "l-*-434"
3824 "l-*-432"
3825 "l-*-430"
3826 "l-*-428"
3827 "l-*-426"
3828 "l-*-424"
3829 "l-*-422"
3830 "l-*-420"
3831 "l-*-418"
3832 "l-*-416"
3833 "l-*-414"
3834 "l-*-412"
3835 "l-*-410"
3836 "l-*-408"
3837 "l-*-406"
3838 "l-*-404"
3839 "l-*-402"
3840 "l-*-401"
3841 "l-*-399"
3842 "l-*-396"
3843 "l-*-395"
3844 "l-*-394"
3845 "l-*-392"
3846 "l-*-391"
3847 "l-*-389"
3848 "l-*-387"
3849 "l-*-385"
3850 "l-*-383"
3851 "l-*-381"
3852 "l-*-379"
3853 "l-*-377"
3854 "l-*-375"
3855 "l-*-372"
3856 "l-*-370"
3857 "l-*-369"
3858 "l-*-367"
3859 "l-*-365"
3860 "l-*-363"
3861 "l-*-361"
3862 "l-*-360"
3863 "l-*-359"
3864 "l-*-358"
3865 "l-*-356"
3866 "l-*-355"
3867 "l-*-352"
3868 "l-*-350"
3869 "l-*-348"
3870 "l-*-346"
3871 "l-*-344"
3872 "l-*-342"
3873 "l-*-341"
3874 "l-*-340"
3875 "l-*-338"
3876 "l-*-336"
3877 "l-*-335"
3878 "l-*-332"
3879 "l-*-331"
3880 "l-*-329"
3881 "l-*-327"
3882 "l-*-325"
3883 "l-*-323"
3884 "l-*-321"
3885 "l-*-319"
3886 "l-*-317"
3887 "l-*-315"
3888 "l-*-313"
3889 "l-*-310"
3890 "l-*-308"
3891 "l-*-306"
3892 "l-*-304"
3893 "l-*-302"
3894 "l-*-300"
3895 "l-*-298"
3896 "l-*-296"
3897 "l-*-294"
3898 "l-*-292"
3899 "l-*-290"
3900 "l-*-288"
3901 "l-*-286"
3902 "l-*-284"
3903 "l-*-282"
3904 "l-*-280"
3905 "l-*-278"
3906 "l-*-276"
3907 "l-*-274"
3908 "l-*-272"
3909 "l-*-270"
3910 "l-*-268"
3911 "l-*-266"
3912 "l-*-264"
3913 "l-*-262"
3914 "l-*-260"
3915 "l-*-258"
3916 "l-*-257"
3917 "l-*-256"
3918 "l-*-255"
3919 "l-*-254"
3920 "l-*-252"
3921 "l-*-250"
3922 "l-*-248"
3923 "l-*-245"
3924 "l-*-243"
3925 "l-*-241"
3926 "l-*-239"
3927 "l-*-237"
3928 "l-*-235"
3929 "l-*-233"
3930 "l-*-231"
3931 "l-*-229"
3932 "l-*-227"
3933 "l-*-225"
3934 "l-*-223"
3935 "l-*-221"
3936 "l-*-219"
3937 "l-*-217"
3938 "l-*-215"
3939 "l-*-213"
3940 "l-*-211"
3941 "l-*-209"))
3942 #(ribcage
3943 (define-structure
3944 define-expansion-accessors
3945 define-expansion-constructors)
3946 ((top)
3947 (top)
3948 (top))
3949 ("l-*-47"
3950 "l-*-46"
3951 "l-*-45"))
3952 #(ribcage
3953 ()
3954 ()
3955 ()))
3956 (hygiene guile))
3957 #(syntax-object
3958 #f
3959 ((top)
3960 #(ribcage
3961 #(name)
3962 #((top))
3963 #("l-*-2034"))
3964 #(ribcage () () ())
3965 #(ribcage () () ())
3966 #(ribcage
3967 #(ftype
3968 fval
3969 fform
3970 fe
3971 fw
3972 fs
3973 fmod)
3974 #((top)
3975 (top)
3976 (top)
3977 (top)
3978 (top)
3979 (top)
3980 (top))
3981 #("l-*-1973"
3982 "l-*-1974"
3983 "l-*-1975"
3984 "l-*-1976"
3985 "l-*-1977"
3986 "l-*-1978"
3987 "l-*-1979"))
3988 #(ribcage () () ())
3989 #(ribcage
3990 #(first)
3991 #((top))
3992 #("l-*-1964"))
3993 #(ribcage () () ())
3994 #(ribcage () () ())
3995 #(ribcage () () ())
3996 #(ribcage
3997 #(e
3998 r
3999 w
4000 s
4001 rib
4002 mod
4003 for-car?)
4004 #((top)
4005 (top)
4006 (top)
4007 (top)
4008 (top)
4009 (top)
4010 (top))
4011 #("l-*-1943"
4012 "l-*-1944"
4013 "l-*-1945"
4014 "l-*-1946"
4015 "l-*-1947"
4016 "l-*-1948"
4017 "l-*-1949"))
4018 #(ribcage
4019 (lambda-var-list
4020 gen-var
4021 strip
4022 expand-lambda-case
4023 lambda*-formals
4024 expand-simple-lambda
4025 lambda-formals
4026 ellipsis?
4027 expand-void
4028 eval-local-transformer
4029 expand-local-syntax
4030 expand-body
4031 expand-macro
4032 expand-call
4033 expand-expr
4034 expand
4035 syntax-type
4036 parse-when-list
4037 expand-install-global
4038 expand-top-sequence
4039 expand-sequence
4040 source-wrap
4041 wrap
4042 bound-id-member?
4043 distinct-bound-ids?
4044 valid-bound-ids?
4045 bound-id=?
4046 free-id=?
4047 with-transformer-environment
4048 transformer-environment
4049 resolve-identifier
4050 locally-bound-identifiers
4051 id-var-name
4052 same-marks?
4053 join-marks
4054 join-wraps
4055 smart-append
4056 make-binding-wrap
4057 extend-ribcage!
4058 make-empty-ribcage
4059 new-mark
4060 anti-mark
4061 the-anti-mark
4062 top-marked?
4063 top-wrap
4064 empty-wrap
4065 set-ribcage-labels!
4066 set-ribcage-marks!
4067 set-ribcage-symnames!
4068 ribcage-labels
4069 ribcage-marks
4070 ribcage-symnames
4071 ribcage?
4072 make-ribcage
4073 gen-labels
4074 gen-label
4075 make-rename
4076 rename-marks
4077 rename-new
4078 rename-old
4079 subst-rename?
4080 wrap-subst
4081 wrap-marks
4082 make-wrap
4083 id-sym-name&marks
4084 id-sym-name
4085 id?
4086 nonsymbol-id?
4087 global-extend
4088 macros-only-env
4089 extend-var-env
4090 extend-env
4091 null-env
4092 binding-value
4093 binding-type
4094 make-binding
4095 arg-check
4096 source-annotation
4097 no-source
4098 set-syntax-object-module!
4099 set-syntax-object-wrap!
4100 set-syntax-object-expression!
4101 syntax-object-module
4102 syntax-object-wrap
4103 syntax-object-expression
4104 syntax-object?
4105 make-syntax-object
4106 build-lexical-var
4107 build-letrec
4108 build-named-let
4109 build-let
4110 build-sequence
4111 build-data
4112 build-primref
4113 build-primcall
4114 build-lambda-case
4115 build-case-lambda
4116 build-simple-lambda
4117 build-global-definition
4118 build-global-assignment
4119 build-global-reference
4120 analyze-variable
4121 build-lexical-assignment
4122 build-lexical-reference
4123 build-dynlet
4124 build-conditional
4125 build-call
4126 build-void
4127 maybe-name-value!
4128 decorate-source
4129 get-global-definition-hook
4130 put-global-definition-hook
4131 session-id
4132 local-eval-hook
4133 top-level-eval-hook
4134 fx<
4135 fx=
4136 fx-
4137 fx+
4138 set-lambda-meta!
4139 lambda-meta
4140 lambda?
4141 make-dynlet
4142 make-letrec
4143 make-let
4144 make-lambda-case
4145 make-lambda
4146 make-seq
4147 make-primcall
4148 make-call
4149 make-conditional
4150 make-toplevel-define
4151 make-toplevel-set
4152 make-toplevel-ref
4153 make-module-set
4154 make-module-ref
4155 make-lexical-set
4156 make-lexical-ref
4157 make-primitive-ref
4158 make-const
4159 make-void)
4160 ((top)
4161 (top)
4162 (top)
4163 (top)
4164 (top)
4165 (top)
4166 (top)
4167 (top)
4168 (top)
4169 (top)
4170 (top)
4171 (top)
4172 (top)
4173 (top)
4174 (top)
4175 (top)
4176 (top)
4177 (top)
4178 (top)
4179 (top)
4180 (top)
4181 (top)
4182 (top)
4183 (top)
4184 (top)
4185 (top)
4186 (top)
4187 (top)
4188 (top)
4189 (top)
4190 (top)
4191 (top)
4192 (top)
4193 (top)
4194 (top)
4195 (top)
4196 (top)
4197 (top)
4198 (top)
4199 (top)
4200 (top)
4201 (top)
4202 (top)
4203 (top)
4204 (top)
4205 (top)
4206 (top)
4207 (top)
4208 (top)
4209 (top)
4210 (top)
4211 (top)
4212 (top)
4213 (top)
4214 (top)
4215 (top)
4216 (top)
4217 (top)
4218 (top)
4219 (top)
4220 (top)
4221 (top)
4222 (top)
4223 (top)
4224 (top)
4225 (top)
4226 (top)
4227 (top)
4228 (top)
4229 (top)
4230 (top)
4231 (top)
4232 (top)
4233 (top)
4234 (top)
4235 (top)
4236 (top)
4237 (top)
4238 (top)
4239 (top)
4240 (top)
4241 (top)
4242 (top)
4243 (top)
4244 (top)
4245 (top)
4246 (top)
4247 (top)
4248 (top)
4249 (top)
4250 (top)
4251 (top)
4252 (top)
4253 (top)
4254 (top)
4255 (top)
4256 (top)
4257 (top)
4258 (top)
4259 (top)
4260 (top)
4261 (top)
4262 (top)
4263 (top)
4264 (top)
4265 (top)
4266 (top)
4267 (top)
4268 (top)
4269 (top)
4270 (top)
4271 (top)
4272 (top)
4273 (top)
4274 (top)
4275 (top)
4276 (top)
4277 (top)
4278 (top)
4279 (top)
4280 (top)
4281 (top)
4282 (top)
4283 (top)
4284 (top)
4285 (top)
4286 (top)
4287 (top)
4288 (top)
4289 (top)
4290 (top)
4291 (top)
4292 (top)
4293 (top)
4294 (top)
4295 (top)
4296 (top)
4297 (top)
4298 (top)
4299 (top)
4300 (top))
4301 ("l-*-478"
4302 "l-*-476"
4303 "l-*-474"
4304 "l-*-472"
4305 "l-*-470"
4306 "l-*-468"
4307 "l-*-466"
4308 "l-*-464"
4309 "l-*-462"
4310 "l-*-460"
4311 "l-*-458"
4312 "l-*-456"
4313 "l-*-454"
4314 "l-*-452"
4315 "l-*-450"
4316 "l-*-448"
4317 "l-*-446"
4318 "l-*-444"
4319 "l-*-442"
4320 "l-*-440"
4321 "l-*-438"
4322 "l-*-436"
4323 "l-*-434"
4324 "l-*-432"
4325 "l-*-430"
4326 "l-*-428"
4327 "l-*-426"
4328 "l-*-424"
4329 "l-*-422"
4330 "l-*-420"
4331 "l-*-418"
4332 "l-*-416"
4333 "l-*-414"
4334 "l-*-412"
4335 "l-*-410"
4336 "l-*-408"
4337 "l-*-406"
4338 "l-*-404"
4339 "l-*-402"
4340 "l-*-401"
4341 "l-*-399"
4342 "l-*-396"
4343 "l-*-395"
4344 "l-*-394"
4345 "l-*-392"
4346 "l-*-391"
4347 "l-*-389"
4348 "l-*-387"
4349 "l-*-385"
4350 "l-*-383"
4351 "l-*-381"
4352 "l-*-379"
4353 "l-*-377"
4354 "l-*-375"
4355 "l-*-372"
4356 "l-*-370"
4357 "l-*-369"
4358 "l-*-367"
4359 "l-*-365"
4360 "l-*-363"
4361 "l-*-361"
4362 "l-*-360"
4363 "l-*-359"
4364 "l-*-358"
4365 "l-*-356"
4366 "l-*-355"
4367 "l-*-352"
4368 "l-*-350"
4369 "l-*-348"
4370 "l-*-346"
4371 "l-*-344"
4372 "l-*-342"
4373 "l-*-341"
4374 "l-*-340"
4375 "l-*-338"
4376 "l-*-336"
4377 "l-*-335"
4378 "l-*-332"
4379 "l-*-331"
4380 "l-*-329"
4381 "l-*-327"
4382 "l-*-325"
4383 "l-*-323"
4384 "l-*-321"
4385 "l-*-319"
4386 "l-*-317"
4387 "l-*-315"
4388 "l-*-313"
4389 "l-*-310"
4390 "l-*-308"
4391 "l-*-306"
4392 "l-*-304"
4393 "l-*-302"
4394 "l-*-300"
4395 "l-*-298"
4396 "l-*-296"
4397 "l-*-294"
4398 "l-*-292"
4399 "l-*-290"
4400 "l-*-288"
4401 "l-*-286"
4402 "l-*-284"
4403 "l-*-282"
4404 "l-*-280"
4405 "l-*-278"
4406 "l-*-276"
4407 "l-*-274"
4408 "l-*-272"
4409 "l-*-270"
4410 "l-*-268"
4411 "l-*-266"
4412 "l-*-264"
4413 "l-*-262"
4414 "l-*-260"
4415 "l-*-258"
4416 "l-*-257"
4417 "l-*-256"
4418 "l-*-255"
4419 "l-*-254"
4420 "l-*-252"
4421 "l-*-250"
4422 "l-*-248"
4423 "l-*-245"
4424 "l-*-243"
4425 "l-*-241"
4426 "l-*-239"
4427 "l-*-237"
4428 "l-*-235"
4429 "l-*-233"
4430 "l-*-231"
4431 "l-*-229"
4432 "l-*-227"
4433 "l-*-225"
4434 "l-*-223"
4435 "l-*-221"
4436 "l-*-219"
4437 "l-*-217"
4438 "l-*-215"
4439 "l-*-213"
4440 "l-*-211"
4441 "l-*-209"))
4442 #(ribcage
4443 (define-structure
4444 define-expansion-accessors
4445 define-expansion-constructors)
4446 ((top)
4447 (top)
4448 (top))
4449 ("l-*-47"
4450 "l-*-46"
4451 "l-*-45"))
4452 #(ribcage
4453 ()
4454 ()
4455 ()))
4456 (hygiene guile)))
4457 '(())
4458 s-25087
4459 mod-25089))
4460 tmp-25944)
4461 (syntax-violation
4462 #f
4463 "source expression failed to match any pattern"
4464 e-25084)))))))
4465 (if (eqv? ftype-25106 'define-syntax)
4466 (let ((tmp-26188
4467 ($sc-dispatch
4468 e-25084
4469 '(_ any any))))
4470 (if (if tmp-26188
4471 (@apply
4472 (lambda (name-26192 val-26193)
4473 (if (symbol? name-26192)
4474 #t
4475 (if (if (vector?
4476 name-26192)
4477 (if (= (vector-length
4478 name-26192)
4479 4)
4480 (eq? (vector-ref
4481 name-26192
4482 0)
4483 'syntax-object)
4484 #f)
4485 #f)
4486 (symbol?
4487 (vector-ref
4488 name-26192
4489 1))
4490 #f)))
4491 tmp-26188)
4492 #f)
4493 (@apply
4494 (lambda (name-26220 val-26221)
4495 (values
4496 'define-syntax-form
4497 name-26220
4498 e-25084
4499 val-26221
4500 w-25086
4501 s-25087
4502 mod-25089))
4503 tmp-26188)
4504 (syntax-violation
4505 #f
4506 "source expression failed to match any pattern"
4507 e-25084)))
4508 (if (eqv? ftype-25106
4509 'define-syntax-parameter)
4510 (let ((tmp-26232
4511 ($sc-dispatch
4512 e-25084
4513 '(_ any any))))
4514 (if (if tmp-26232
4515 (@apply
4516 (lambda (name-26236
4517 val-26237)
4518 (if (symbol? name-26236)
4519 #t
4520 (if (if (vector?
4521 name-26236)
4522 (if (= (vector-length
4523 name-26236)
4524 4)
4525 (eq? (vector-ref
4526 name-26236
4527 0)
4528 'syntax-object)
4529 #f)
4530 #f)
4531 (symbol?
4532 (vector-ref
4533 name-26236
4534 1))
4535 #f)))
4536 tmp-26232)
4537 #f)
4538 (@apply
4539 (lambda (name-26264 val-26265)
4540 (values
4541 'define-syntax-parameter-form
4542 name-26264
4543 e-25084
4544 val-26265
4545 w-25086
4546 s-25087
4547 mod-25089))
4548 tmp-26232)
4549 (syntax-violation
4550 #f
4551 "source expression failed to match any pattern"
4552 e-25084)))
4553 (values
4554 'call
4555 #f
4556 e-25084
4557 e-25084
4558 w-25086
4559 s-25087
4560 mod-25089)))))))))))))))
4561 (if (if (vector? e-25084)
4562 (if (= (vector-length e-25084) 4)
4563 (eq? (vector-ref e-25084 0) 'syntax-object)
4564 #f)
4565 #f)
4566 (syntax-type-4585
4567 (vector-ref e-25084 1)
4568 r-25085
4569 (let ((w2-26290 (vector-ref e-25084 2)))
4570 (let ((m1-26291 (car w-25086))
4571 (s1-26292 (cdr w-25086)))
4572 (if (null? m1-26291)
4573 (if (null? s1-26292)
4574 w2-26290
4575 (cons (car w2-26290)
4576 (let ((m2-26303 (cdr w2-26290)))
4577 (if (null? m2-26303)
4578 s1-26292
4579 (append s1-26292 m2-26303)))))
4580 (cons (let ((m2-26311 (car w2-26290)))
4581 (if (null? m2-26311)
4582 m1-26291
4583 (append m1-26291 m2-26311)))
4584 (let ((m2-26319 (cdr w2-26290)))
4585 (if (null? m2-26319)
4586 s1-26292
4587 (append s1-26292 m2-26319)))))))
4588 (let ((t-26324 (source-annotation-4544 e-25084)))
4589 (if t-26324 t-26324 s-25087))
4590 rib-25088
4591 (let ((t-26600 (vector-ref e-25084 3)))
4592 (if t-26600 t-26600 mod-25089))
4593 for-car?-25090)
4594 (if (self-evaluating? e-25084)
4595 (values
4596 'constant
4597 #f
4598 e-25084
4599 e-25084
4600 w-25086
4601 s-25087
4602 mod-25089)
4603 (values
4604 'other
4605 #f
4606 e-25084
4607 e-25084
4608 w-25086
4609 s-25087
4610 mod-25089)))))))
4611 (expand-4586
4612 (lambda (e-26609 r-26610 w-26611 mod-26612)
4613 (call-with-values
4614 (lambda ()
4615 (syntax-type-4585
4616 e-26609
4617 r-26610
4618 w-26611
4619 (source-annotation-4544 e-26609)
4620 #f
4621 mod-26612
4622 #f))
4623 (lambda (type-26798
4624 value-26799
4625 form-26800
4626 e-26801
4627 w-26802
4628 s-26803
4629 mod-26804)
4630 (expand-expr-4587
4631 type-26798
4632 value-26799
4633 form-26800
4634 e-26801
4635 r-26610
4636 w-26802
4637 s-26803
4638 mod-26804)))))
4639 (expand-expr-4587
4640 (lambda (type-26807
4641 value-26808
4642 form-26809
4643 e-26810
4644 r-26811
4645 w-26812
4646 s-26813
4647 mod-26814)
4648 (if (eqv? type-26807 'lexical)
4649 (make-struct/no-tail
4650 (vector-ref %expanded-vtables 3)
4651 s-26813
4652 e-26810
4653 value-26808)
4654 (if (if (eqv? type-26807 'core)
4655 #t
4656 (eqv? type-26807 'core-form))
4657 (value-26808
4658 e-26810
4659 r-26811
4660 w-26812
4661 s-26813
4662 mod-26814)
4663 (if (eqv? type-26807 'module-ref)
4664 (call-with-values
4665 (lambda () (value-26808 e-26810 r-26811 w-26812))
4666 (lambda (e-26840 r-26841 w-26842 s-26843 mod-26844)
4667 (expand-4586 e-26840 r-26841 w-26842 mod-26844)))
4668 (if (eqv? type-26807 'lexical-call)
4669 (expand-call-4588
4670 (let ((id-27017 (car e-26810)))
4671 (build-lexical-reference-4520
4672 'fun
4673 (source-annotation-4544 id-27017)
4674 (if (if (vector? id-27017)
4675 (if (= (vector-length id-27017) 4)
4676 (eq? (vector-ref id-27017 0) 'syntax-object)
4677 #f)
4678 #f)
4679 (syntax->datum id-27017)
4680 id-27017)
4681 value-26808))
4682 e-26810
4683 r-26811
4684 w-26812
4685 s-26813
4686 mod-26814)
4687 (if (eqv? type-26807 'global-call)
4688 (expand-call-4588
4689 (build-global-reference-4523
4690 (source-annotation-4544 (car e-26810))
4691 (if (if (vector? value-26808)
4692 (if (= (vector-length value-26808) 4)
4693 (eq? (vector-ref value-26808 0) 'syntax-object)
4694 #f)
4695 #f)
4696 (vector-ref value-26808 1)
4697 value-26808)
4698 (if (if (vector? value-26808)
4699 (if (= (vector-length value-26808) 4)
4700 (eq? (vector-ref value-26808 0) 'syntax-object)
4701 #f)
4702 #f)
4703 (vector-ref value-26808 3)
4704 mod-26814))
4705 e-26810
4706 r-26811
4707 w-26812
4708 s-26813
4709 mod-26814)
4710 (if (eqv? type-26807 'constant)
4711 (let ((exp-27691
4712 (strip-4599
4713 (let ((x-27704
4714 (begin
4715 (if (if (pair? e-26810) s-26813 #f)
4716 (set-source-properties!
4717 e-26810
4718 s-26813))
4719 e-26810)))
4720 (if (if (null? (car w-26812))
4721 (null? (cdr w-26812))
4722 #f)
4723 x-27704
4724 (if (if (vector? x-27704)
4725 (if (= (vector-length x-27704) 4)
4726 (eq? (vector-ref x-27704 0)
4727 'syntax-object)
4728 #f)
4729 #f)
4730 (let ((expression-27736
4731 (vector-ref x-27704 1))
4732 (wrap-27737
4733 (let ((w2-27745
4734 (vector-ref x-27704 2)))
4735 (let ((m1-27746 (car w-26812))
4736 (s1-27747 (cdr w-26812)))
4737 (if (null? m1-27746)
4738 (if (null? s1-27747)
4739 w2-27745
4740 (cons (car w2-27745)
4741 (let ((m2-27762
4742 (cdr w2-27745)))
4743 (if (null? m2-27762)
4744 s1-27747
4745 (append
4746 s1-27747
4747 m2-27762)))))
4748 (cons (let ((m2-27770
4749 (car w2-27745)))
4750 (if (null? m2-27770)
4751 m1-27746
4752 (append
4753 m1-27746
4754 m2-27770)))
4755 (let ((m2-27778
4756 (cdr w2-27745)))
4757 (if (null? m2-27778)
4758 s1-27747
4759 (append
4760 s1-27747
4761 m2-27778))))))))
4762 (module-27738
4763 (vector-ref x-27704 3)))
4764 (vector
4765 'syntax-object
4766 expression-27736
4767 wrap-27737
4768 module-27738))
4769 (if (null? x-27704)
4770 x-27704
4771 (vector
4772 'syntax-object
4773 x-27704
4774 w-26812
4775 mod-26814)))))
4776 '(()))))
4777 (make-struct/no-tail
4778 (vector-ref %expanded-vtables 1)
4779 s-26813
4780 exp-27691))
4781 (if (eqv? type-26807 'global)
4782 (analyze-variable-4522
4783 mod-26814
4784 value-26808
4785 (lambda (mod-27803 var-27804 public?-27805)
4786 (make-struct/no-tail
4787 (vector-ref %expanded-vtables 5)
4788 s-26813
4789 mod-27803
4790 var-27804
4791 public?-27805))
4792 (lambda (var-27813)
4793 (make-struct/no-tail
4794 (vector-ref %expanded-vtables 7)
4795 s-26813
4796 var-27813)))
4797 (if (eqv? type-26807 'call)
4798 (expand-call-4588
4799 (expand-4586
4800 (car e-26810)
4801 r-26811
4802 w-26812
4803 mod-26814)
4804 e-26810
4805 r-26811
4806 w-26812
4807 s-26813
4808 mod-26814)
4809 (if (eqv? type-26807 'begin-form)
4810 (let ((tmp-27983
4811 ($sc-dispatch e-26810 '(_ any . each-any))))
4812 (if tmp-27983
4813 (@apply
4814 (lambda (e1-27987 e2-27988)
4815 (expand-sequence-4581
4816 (cons e1-27987 e2-27988)
4817 r-26811
4818 w-26812
4819 s-26813
4820 mod-26814))
4821 tmp-27983)
4822 (let ((tmp-28083 ($sc-dispatch e-26810 '(_))))
4823 (if tmp-28083
4824 (@apply
4825 (lambda ()
4826 (syntax-violation
4827 #f
4828 "sequence of zero expressions"
4829 (let ((x-28096
4830 (begin
4831 (if (if (pair? e-26810)
4832 s-26813
4833 #f)
4834 (set-source-properties!
4835 e-26810
4836 s-26813))
4837 e-26810)))
4838 (if (if (null? (car w-26812))
4839 (null? (cdr w-26812))
4840 #f)
4841 x-28096
4842 (if (if (vector? x-28096)
4843 (if (= (vector-length
4844 x-28096)
4845 4)
4846 (eq? (vector-ref
4847 x-28096
4848 0)
4849 'syntax-object)
4850 #f)
4851 #f)
4852 (let ((expression-28128
4853 (vector-ref x-28096 1))
4854 (wrap-28129
4855 (let ((w2-28137
4856 (vector-ref
4857 x-28096
4858 2)))
4859 (let ((m1-28138
4860 (car w-26812))
4861 (s1-28139
4862 (cdr w-26812)))
4863 (if (null? m1-28138)
4864 (if (null? s1-28139)
4865 w2-28137
4866 (cons (car w2-28137)
4867 (let ((m2-28154
4868 (cdr w2-28137)))
4869 (if (null? m2-28154)
4870 s1-28139
4871 (append
4872 s1-28139
4873 m2-28154)))))
4874 (cons (let ((m2-28162
4875 (car w2-28137)))
4876 (if (null? m2-28162)
4877 m1-28138
4878 (append
4879 m1-28138
4880 m2-28162)))
4881 (let ((m2-28170
4882 (cdr w2-28137)))
4883 (if (null? m2-28170)
4884 s1-28139
4885 (append
4886 s1-28139
4887 m2-28170))))))))
4888 (module-28130
4889 (vector-ref x-28096 3)))
4890 (vector
4891 'syntax-object
4892 expression-28128
4893 wrap-28129
4894 module-28130))
4895 (if (null? x-28096)
4896 x-28096
4897 (vector
4898 'syntax-object
4899 x-28096
4900 w-26812
4901 mod-26814)))))))
4902 tmp-28083)
4903 (syntax-violation
4904 #f
4905 "source expression failed to match any pattern"
4906 e-26810)))))
4907 (if (eqv? type-26807 'local-syntax-form)
4908 (expand-local-syntax-4591
4909 value-26808
4910 e-26810
4911 r-26811
4912 w-26812
4913 s-26813
4914 mod-26814
4915 expand-sequence-4581)
4916 (if (eqv? type-26807 'eval-when-form)
4917 (let ((tmp-28265
4918 ($sc-dispatch
4919 e-26810
4920 '(_ each-any any . each-any))))
4921 (if tmp-28265
4922 (@apply
4923 (lambda (x-28269 e1-28270 e2-28271)
4924 (let ((when-list-28272
4925 (parse-when-list-4584
4926 e-26810
4927 x-28269)))
4928 (if (memq 'eval when-list-28272)
4929 (expand-sequence-4581
4930 (cons e1-28270 e2-28271)
4931 r-26811
4932 w-26812
4933 s-26813
4934 mod-26814)
4935 (make-struct/no-tail
4936 (vector-ref %expanded-vtables 0)
4937 #f))))
4938 tmp-28265)
4939 (syntax-violation
4940 #f
4941 "source expression failed to match any pattern"
4942 e-26810)))
4943 (if (if (eqv? type-26807 'define-form)
4944 #t
4945 (if (eqv? type-26807 'define-syntax-form)
4946 #t
4947 (eqv? type-26807
4948 'define-syntax-parameter-form)))
4949 (syntax-violation
4950 #f
4951 "definition in expression context, where definitions are not allowed,"
4952 (let ((x-28458
4953 (begin
4954 (if (if (pair? form-26809)
4955 s-26813
4956 #f)
4957 (set-source-properties!
4958 form-26809
4959 s-26813))
4960 form-26809)))
4961 (if (if (null? (car w-26812))
4962 (null? (cdr w-26812))
4963 #f)
4964 x-28458
4965 (if (if (vector? x-28458)
4966 (if (= (vector-length x-28458) 4)
4967 (eq? (vector-ref x-28458 0)
4968 'syntax-object)
4969 #f)
4970 #f)
4971 (let ((expression-28490
4972 (vector-ref x-28458 1))
4973 (wrap-28491
4974 (let ((w2-28499
4975 (vector-ref
4976 x-28458
4977 2)))
4978 (let ((m1-28500
4979 (car w-26812))
4980 (s1-28501
4981 (cdr w-26812)))
4982 (if (null? m1-28500)
4983 (if (null? s1-28501)
4984 w2-28499
4985 (cons (car w2-28499)
4986 (let ((m2-28516
4987 (cdr w2-28499)))
4988 (if (null? m2-28516)
4989 s1-28501
4990 (append
4991 s1-28501
4992 m2-28516)))))
4993 (cons (let ((m2-28524
4994 (car w2-28499)))
4995 (if (null? m2-28524)
4996 m1-28500
4997 (append
4998 m1-28500
4999 m2-28524)))
5000 (let ((m2-28532
5001 (cdr w2-28499)))
5002 (if (null? m2-28532)
5003 s1-28501
5004 (append
5005 s1-28501
5006 m2-28532))))))))
5007 (module-28492
5008 (vector-ref x-28458 3)))
5009 (vector
5010 'syntax-object
5011 expression-28490
5012 wrap-28491
5013 module-28492))
5014 (if (null? x-28458)
5015 x-28458
5016 (vector
5017 'syntax-object
5018 x-28458
5019 w-26812
5020 mod-26814))))))
5021 (if (eqv? type-26807 'syntax)
5022 (syntax-violation
5023 #f
5024 "reference to pattern variable outside syntax form"
5025 (let ((x-28559
5026 (begin
5027 (if (if (pair? e-26810)
5028 s-26813
5029 #f)
5030 (set-source-properties!
5031 e-26810
5032 s-26813))
5033 e-26810)))
5034 (if (if (null? (car w-26812))
5035 (null? (cdr w-26812))
5036 #f)
5037 x-28559
5038 (if (if (vector? x-28559)
5039 (if (= (vector-length x-28559)
5040 4)
5041 (eq? (vector-ref x-28559 0)
5042 'syntax-object)
5043 #f)
5044 #f)
5045 (let ((expression-28591
5046 (vector-ref x-28559 1))
5047 (wrap-28592
5048 (let ((w2-28600
5049 (vector-ref
5050 x-28559
5051 2)))
5052 (let ((m1-28601
5053 (car w-26812))
5054 (s1-28602
5055 (cdr w-26812)))
5056 (if (null? m1-28601)
5057 (if (null? s1-28602)
5058 w2-28600
5059 (cons (car w2-28600)
5060 (let ((m2-28617
5061 (cdr w2-28600)))
5062 (if (null? m2-28617)
5063 s1-28602
5064 (append
5065 s1-28602
5066 m2-28617)))))
5067 (cons (let ((m2-28625
5068 (car w2-28600)))
5069 (if (null? m2-28625)
5070 m1-28601
5071 (append
5072 m1-28601
5073 m2-28625)))
5074 (let ((m2-28633
5075 (cdr w2-28600)))
5076 (if (null? m2-28633)
5077 s1-28602
5078 (append
5079 s1-28602
5080 m2-28633))))))))
5081 (module-28593
5082 (vector-ref x-28559 3)))
5083 (vector
5084 'syntax-object
5085 expression-28591
5086 wrap-28592
5087 module-28593))
5088 (if (null? x-28559)
5089 x-28559
5090 (vector
5091 'syntax-object
5092 x-28559
5093 w-26812
5094 mod-26814))))))
5095 (if (eqv? type-26807 'displaced-lexical)
5096 (syntax-violation
5097 #f
5098 "reference to identifier outside its scope"
5099 (let ((x-28660
5100 (begin
5101 (if (if (pair? e-26810)
5102 s-26813
5103 #f)
5104 (set-source-properties!
5105 e-26810
5106 s-26813))
5107 e-26810)))
5108 (if (if (null? (car w-26812))
5109 (null? (cdr w-26812))
5110 #f)
5111 x-28660
5112 (if (if (vector? x-28660)
5113 (if (= (vector-length x-28660)
5114 4)
5115 (eq? (vector-ref x-28660 0)
5116 'syntax-object)
5117 #f)
5118 #f)
5119 (let ((expression-28692
5120 (vector-ref x-28660 1))
5121 (wrap-28693
5122 (let ((w2-28701
5123 (vector-ref
5124 x-28660
5125 2)))
5126 (let ((m1-28702
5127 (car w-26812))
5128 (s1-28703
5129 (cdr w-26812)))
5130 (if (null? m1-28702)
5131 (if (null? s1-28703)
5132 w2-28701
5133 (cons (car w2-28701)
5134 (let ((m2-28718
5135 (cdr w2-28701)))
5136 (if (null? m2-28718)
5137 s1-28703
5138 (append
5139 s1-28703
5140 m2-28718)))))
5141 (cons (let ((m2-28726
5142 (car w2-28701)))
5143 (if (null? m2-28726)
5144 m1-28702
5145 (append
5146 m1-28702
5147 m2-28726)))
5148 (let ((m2-28734
5149 (cdr w2-28701)))
5150 (if (null? m2-28734)
5151 s1-28703
5152 (append
5153 s1-28703
5154 m2-28734))))))))
5155 (module-28694
5156 (vector-ref x-28660 3)))
5157 (vector
5158 'syntax-object
5159 expression-28692
5160 wrap-28693
5161 module-28694))
5162 (if (null? x-28660)
5163 x-28660
5164 (vector
5165 'syntax-object
5166 x-28660
5167 w-26812
5168 mod-26814))))))
5169 (syntax-violation
5170 #f
5171 "unexpected syntax"
5172 (let ((x-28758
5173 (begin
5174 (if (if (pair? e-26810)
5175 s-26813
5176 #f)
5177 (set-source-properties!
5178 e-26810
5179 s-26813))
5180 e-26810)))
5181 (if (if (null? (car w-26812))
5182 (null? (cdr w-26812))
5183 #f)
5184 x-28758
5185 (if (if (vector? x-28758)
5186 (if (= (vector-length x-28758)
5187 4)
5188 (eq? (vector-ref x-28758 0)
5189 'syntax-object)
5190 #f)
5191 #f)
5192 (let ((expression-28790
5193 (vector-ref x-28758 1))
5194 (wrap-28791
5195 (let ((w2-28799
5196 (vector-ref
5197 x-28758
5198 2)))
5199 (let ((m1-28800
5200 (car w-26812))
5201 (s1-28801
5202 (cdr w-26812)))
5203 (if (null? m1-28800)
5204 (if (null? s1-28801)
5205 w2-28799
5206 (cons (car w2-28799)
5207 (let ((m2-28816
5208 (cdr w2-28799)))
5209 (if (null? m2-28816)
5210 s1-28801
5211 (append
5212 s1-28801
5213 m2-28816)))))
5214 (cons (let ((m2-28824
5215 (car w2-28799)))
5216 (if (null? m2-28824)
5217 m1-28800
5218 (append
5219 m1-28800
5220 m2-28824)))
5221 (let ((m2-28832
5222 (cdr w2-28799)))
5223 (if (null? m2-28832)
5224 s1-28801
5225 (append
5226 s1-28801
5227 m2-28832))))))))
5228 (module-28792
5229 (vector-ref x-28758 3)))
5230 (vector
5231 'syntax-object
5232 expression-28790
5233 wrap-28791
5234 module-28792))
5235 (if (null? x-28758)
5236 x-28758
5237 (vector
5238 'syntax-object
5239 x-28758
5240 w-26812
5241 mod-26814))))))))))))))))))))))
5242 (expand-call-4588
5243 (lambda (x-28847
5244 e-28848
5245 r-28849
5246 w-28850
5247 s-28851
5248 mod-28852)
5249 (let ((tmp-28854
5250 ($sc-dispatch e-28848 '(any . each-any))))
5251 (if tmp-28854
5252 (@apply
5253 (lambda (e0-28858 e1-28859)
5254 (build-call-4517
5255 s-28851
5256 x-28847
5257 (map (lambda (e-28947)
5258 (expand-4586 e-28947 r-28849 w-28850 mod-28852))
5259 e1-28859)))
5260 tmp-28854)
5261 (syntax-violation
5262 #f
5263 "source expression failed to match any pattern"
5264 e-28848)))))
5265 (expand-macro-4589
5266 (lambda (p-29031
5267 e-29032
5268 r-29033
5269 w-29034
5270 s-29035
5271 rib-29036
5272 mod-29037)
5273 (letrec*
5274 ((rebuild-macro-output-29038
5275 (lambda (x-29147 m-29148)
5276 (if (pair? x-29147)
5277 (let ((e-29152
5278 (cons (rebuild-macro-output-29038
5279 (car x-29147)
5280 m-29148)
5281 (rebuild-macro-output-29038
5282 (cdr x-29147)
5283 m-29148))))
5284 (begin
5285 (if (if (pair? e-29152) s-29035 #f)
5286 (set-source-properties! e-29152 s-29035))
5287 e-29152))
5288 (if (if (vector? x-29147)
5289 (if (= (vector-length x-29147) 4)
5290 (eq? (vector-ref x-29147 0) 'syntax-object)
5291 #f)
5292 #f)
5293 (let ((w-29168 (vector-ref x-29147 2)))
5294 (let ((ms-29169 (car w-29168))
5295 (s-29170 (cdr w-29168)))
5296 (if (if (pair? ms-29169) (eq? (car ms-29169) #f) #f)
5297 (let ((expression-29178 (vector-ref x-29147 1))
5298 (wrap-29179
5299 (cons (cdr ms-29169)
5300 (if rib-29036
5301 (cons rib-29036 (cdr s-29170))
5302 (cdr s-29170))))
5303 (module-29180 (vector-ref x-29147 3)))
5304 (vector
5305 'syntax-object
5306 expression-29178
5307 wrap-29179
5308 module-29180))
5309 (let ((expression-29190
5310 (let ((e-29195 (vector-ref x-29147 1)))
5311 (begin
5312 (if (if (pair? e-29195) s-29170 #f)
5313 (set-source-properties!
5314 e-29195
5315 s-29170))
5316 e-29195)))
5317 (wrap-29191
5318 (cons (cons m-29148 ms-29169)
5319 (if rib-29036
5320 (cons rib-29036
5321 (cons 'shift s-29170))
5322 (cons 'shift s-29170))))
5323 (module-29192 (vector-ref x-29147 3)))
5324 (vector
5325 'syntax-object
5326 expression-29190
5327 wrap-29191
5328 module-29192)))))
5329 (if (vector? x-29147)
5330 (let ((n-29207 (vector-length x-29147)))
5331 (let ((v-29208
5332 (let ((e-29274 (make-vector n-29207)))
5333 (begin
5334 (if (if (pair? e-29274) x-29147 #f)
5335 (set-source-properties! e-29274 x-29147))
5336 e-29274))))
5337 (letrec*
5338 ((loop-29209
5339 (lambda (i-29270)
5340 (if (= i-29270 n-29207)
5341 v-29208
5342 (begin
5343 (vector-set!
5344 v-29208
5345 i-29270
5346 (rebuild-macro-output-29038
5347 (vector-ref x-29147 i-29270)
5348 m-29148))
5349 (loop-29209 (#{1+}# i-29270)))))))
5350 (loop-29209 0))))
5351 (if (symbol? x-29147)
5352 (syntax-violation
5353 #f
5354 "encountered raw symbol in macro output"
5355 (let ((s-29285 (cdr w-29034)))
5356 (let ((x-29289
5357 (begin
5358 (if (if (pair? e-29032) s-29285 #f)
5359 (set-source-properties!
5360 e-29032
5361 s-29285))
5362 e-29032)))
5363 (if (if (null? (car w-29034))
5364 (null? (cdr w-29034))
5365 #f)
5366 x-29289
5367 (if (if (vector? x-29289)
5368 (if (= (vector-length x-29289) 4)
5369 (eq? (vector-ref x-29289 0)
5370 'syntax-object)
5371 #f)
5372 #f)
5373 (let ((expression-29321
5374 (vector-ref x-29289 1))
5375 (wrap-29322
5376 (let ((w2-29330
5377 (vector-ref x-29289 2)))
5378 (let ((m1-29331 (car w-29034))
5379 (s1-29332 (cdr w-29034)))
5380 (if (null? m1-29331)
5381 (if (null? s1-29332)
5382 w2-29330
5383 (cons (car w2-29330)
5384 (let ((m2-29347
5385 (cdr w2-29330)))
5386 (if (null? m2-29347)
5387 s1-29332
5388 (append
5389 s1-29332
5390 m2-29347)))))
5391 (cons (let ((m2-29355
5392 (car w2-29330)))
5393 (if (null? m2-29355)
5394 m1-29331
5395 (append
5396 m1-29331
5397 m2-29355)))
5398 (let ((m2-29363
5399 (cdr w2-29330)))
5400 (if (null? m2-29363)
5401 s1-29332
5402 (append
5403 s1-29332
5404 m2-29363))))))))
5405 (module-29323 (vector-ref x-29289 3)))
5406 (vector
5407 'syntax-object
5408 expression-29321
5409 wrap-29322
5410 module-29323))
5411 (if (null? x-29289)
5412 x-29289
5413 (vector
5414 'syntax-object
5415 x-29289
5416 w-29034
5417 mod-29037))))))
5418 x-29147)
5419 (begin
5420 (if (if (pair? x-29147) s-29035 #f)
5421 (set-source-properties! x-29147 s-29035))
5422 x-29147))))))))
5423 (with-fluids
5424 ((transformer-environment-4572
5425 (lambda (k-29039)
5426 (k-29039
5427 e-29032
5428 r-29033
5429 w-29034
5430 s-29035
5431 rib-29036
5432 mod-29037))))
5433 (rebuild-macro-output-29038
5434 (p-29031
5435 (let ((w-29046
5436 (cons (cons #f (car w-29034))
5437 (cons 'shift (cdr w-29034)))))
5438 (let ((x-29051
5439 (begin
5440 (if (if (pair? e-29032) s-29035 #f)
5441 (set-source-properties! e-29032 s-29035))
5442 e-29032)))
5443 (if (if (null? (car w-29046))
5444 (null? (cdr w-29046))
5445 #f)
5446 x-29051
5447 (if (if (vector? x-29051)
5448 (if (= (vector-length x-29051) 4)
5449 (eq? (vector-ref x-29051 0) 'syntax-object)
5450 #f)
5451 #f)
5452 (let ((expression-29090 (vector-ref x-29051 1))
5453 (wrap-29091
5454 (let ((w2-29099 (vector-ref x-29051 2)))
5455 (let ((m1-29100 (car w-29046))
5456 (s1-29101 (cdr w-29046)))
5457 (if (null? m1-29100)
5458 (if (null? s1-29101)
5459 w2-29099
5460 (cons (car w2-29099)
5461 (let ((m2-29116 (cdr w2-29099)))
5462 (if (null? m2-29116)
5463 s1-29101
5464 (append
5465 s1-29101
5466 m2-29116)))))
5467 (cons (let ((m2-29124 (car w2-29099)))
5468 (if (null? m2-29124)
5469 m1-29100
5470 (append m1-29100 m2-29124)))
5471 (let ((m2-29132 (cdr w2-29099)))
5472 (if (null? m2-29132)
5473 s1-29101
5474 (append
5475 s1-29101
5476 m2-29132))))))))
5477 (module-29092 (vector-ref x-29051 3)))
5478 (vector
5479 'syntax-object
5480 expression-29090
5481 wrap-29091
5482 module-29092))
5483 (if (null? x-29051)
5484 x-29051
5485 (vector
5486 'syntax-object
5487 x-29051
5488 w-29046
5489 mod-29037)))))))
5490 (gensym
5491 (string-append "m-" (session-id-4511) "-")))))))
5492 (expand-body-4590
5493 (lambda (body-29393
5494 outer-form-29394
5495 r-29395
5496 w-29396
5497 mod-29397)
5498 (let ((r-29398
5499 (cons '("placeholder" placeholder) r-29395)))
5500 (let ((ribcage-29399 (vector 'ribcage '() '() '())))
5501 (let ((w-29400
5502 (cons (car w-29396)
5503 (cons ribcage-29399 (cdr w-29396)))))
5504 (letrec*
5505 ((parse-29401
5506 (lambda (body-29509
5507 ids-29510
5508 labels-29511
5509 var-ids-29512
5510 vars-29513
5511 vals-29514
5512 bindings-29515)
5513 (if (null? body-29509)
5514 (syntax-violation
5515 #f
5516 "no expressions in body"
5517 outer-form-29394)
5518 (let ((e-29516 (cdr (car body-29509)))
5519 (er-29517 (car (car body-29509))))
5520 (call-with-values
5521 (lambda ()
5522 (syntax-type-4585
5523 e-29516
5524 er-29517
5525 '(())
5526 (source-annotation-4544 er-29517)
5527 ribcage-29399
5528 mod-29397
5529 #f))
5530 (lambda (type-29705
5531 value-29706
5532 form-29707
5533 e-29708
5534 w-29709
5535 s-29710
5536 mod-29711)
5537 (if (eqv? type-29705 'define-form)
5538 (let ((id-29715
5539 (if (if (null? (car w-29709))
5540 (null? (cdr w-29709))
5541 #f)
5542 value-29706
5543 (if (if (vector? value-29706)
5544 (if (= (vector-length
5545 value-29706)
5546 4)
5547 (eq? (vector-ref
5548 value-29706
5549 0)
5550 'syntax-object)
5551 #f)
5552 #f)
5553 (let ((expression-29760
5554 (vector-ref value-29706 1))
5555 (wrap-29761
5556 (let ((w2-29771
5557 (vector-ref
5558 value-29706
5559 2)))
5560 (let ((m1-29772
5561 (car w-29709))
5562 (s1-29773
5563 (cdr w-29709)))
5564 (if (null? m1-29772)
5565 (if (null? s1-29773)
5566 w2-29771
5567 (cons (car w2-29771)
5568 (let ((m2-29790
5569 (cdr w2-29771)))
5570 (if (null? m2-29790)
5571 s1-29773
5572 (append
5573 s1-29773
5574 m2-29790)))))
5575 (cons (let ((m2-29798
5576 (car w2-29771)))
5577 (if (null? m2-29798)
5578 m1-29772
5579 (append
5580 m1-29772
5581 m2-29798)))
5582 (let ((m2-29806
5583 (cdr w2-29771)))
5584 (if (null? m2-29806)
5585 s1-29773
5586 (append
5587 s1-29773
5588 m2-29806))))))))
5589 (module-29762
5590 (vector-ref
5591 value-29706
5592 3)))
5593 (vector
5594 'syntax-object
5595 expression-29760
5596 wrap-29761
5597 module-29762))
5598 (if (null? value-29706)
5599 value-29706
5600 (vector
5601 'syntax-object
5602 value-29706
5603 w-29709
5604 mod-29711)))))
5605 (label-29716
5606 (string-append
5607 "l-"
5608 (session-id-4511)
5609 (symbol->string (gensym "-")))))
5610 (let ((var-29717
5611 (let ((id-29867
5612 (if (if (vector? id-29715)
5613 (if (= (vector-length
5614 id-29715)
5615 4)
5616 (eq? (vector-ref
5617 id-29715
5618 0)
5619 'syntax-object)
5620 #f)
5621 #f)
5622 (vector-ref id-29715 1)
5623 id-29715)))
5624 (gensym
5625 (string-append
5626 (symbol->string id-29867)
5627 "-")))))
5628 (begin
5629 (begin
5630 (let ((update-29726
5631 (cons (vector-ref id-29715 1)
5632 (vector-ref
5633 ribcage-29399
5634 1))))
5635 (vector-set!
5636 ribcage-29399
5637 1
5638 update-29726))
5639 (let ((update-29838
5640 (cons (car (vector-ref
5641 id-29715
5642 2))
5643 (vector-ref
5644 ribcage-29399
5645 2))))
5646 (vector-set!
5647 ribcage-29399
5648 2
5649 update-29838))
5650 (let ((update-29853
5651 (cons label-29716
5652 (vector-ref
5653 ribcage-29399
5654 3))))
5655 (vector-set!
5656 ribcage-29399
5657 3
5658 update-29853)))
5659 (parse-29401
5660 (cdr body-29509)
5661 (cons id-29715 ids-29510)
5662 (cons label-29716 labels-29511)
5663 (cons id-29715 var-ids-29512)
5664 (cons var-29717 vars-29513)
5665 (cons (cons er-29517
5666 (if (if (null? (car w-29709))
5667 (null? (cdr w-29709))
5668 #f)
5669 e-29708
5670 (if (if (vector? e-29708)
5671 (if (= (vector-length
5672 e-29708)
5673 4)
5674 (eq? (vector-ref
5675 e-29708
5676 0)
5677 'syntax-object)
5678 #f)
5679 #f)
5680 (let ((expression-29919
5681 (vector-ref
5682 e-29708
5683 1))
5684 (wrap-29920
5685 (let ((w2-29930
5686 (vector-ref
5687 e-29708
5688 2)))
5689 (let ((m1-29931
5690 (car w-29709))
5691 (s1-29932
5692 (cdr w-29709)))
5693 (if (null? m1-29931)
5694 (if (null? s1-29932)
5695 w2-29930
5696 (cons (car w2-29930)
5697 (let ((m2-29949
5698 (cdr w2-29930)))
5699 (if (null? m2-29949)
5700 s1-29932
5701 (append
5702 s1-29932
5703 m2-29949)))))
5704 (cons (let ((m2-29957
5705 (car w2-29930)))
5706 (if (null? m2-29957)
5707 m1-29931
5708 (append
5709 m1-29931
5710 m2-29957)))
5711 (let ((m2-29965
5712 (cdr w2-29930)))
5713 (if (null? m2-29965)
5714 s1-29932
5715 (append
5716 s1-29932
5717 m2-29965))))))))
5718 (module-29921
5719 (vector-ref
5720 e-29708
5721 3)))
5722 (vector
5723 'syntax-object
5724 expression-29919
5725 wrap-29920
5726 module-29921))
5727 (if (null? e-29708)
5728 e-29708
5729 (vector
5730 'syntax-object
5731 e-29708
5732 w-29709
5733 mod-29711)))))
5734 vals-29514)
5735 (cons (cons 'lexical var-29717)
5736 bindings-29515)))))
5737 (if (if (eqv? type-29705 'define-syntax-form)
5738 #t
5739 (eqv? type-29705
5740 'define-syntax-parameter-form))
5741 (let ((id-29996
5742 (if (if (null? (car w-29709))
5743 (null? (cdr w-29709))
5744 #f)
5745 value-29706
5746 (if (if (vector? value-29706)
5747 (if (= (vector-length
5748 value-29706)
5749 4)
5750 (eq? (vector-ref
5751 value-29706
5752 0)
5753 'syntax-object)
5754 #f)
5755 #f)
5756 (let ((expression-30040
5757 (vector-ref
5758 value-29706
5759 1))
5760 (wrap-30041
5761 (let ((w2-30051
5762 (vector-ref
5763 value-29706
5764 2)))
5765 (let ((m1-30052
5766 (car w-29709))
5767 (s1-30053
5768 (cdr w-29709)))
5769 (if (null? m1-30052)
5770 (if (null? s1-30053)
5771 w2-30051
5772 (cons (car w2-30051)
5773 (let ((m2-30070
5774 (cdr w2-30051)))
5775 (if (null? m2-30070)
5776 s1-30053
5777 (append
5778 s1-30053
5779 m2-30070)))))
5780 (cons (let ((m2-30078
5781 (car w2-30051)))
5782 (if (null? m2-30078)
5783 m1-30052
5784 (append
5785 m1-30052
5786 m2-30078)))
5787 (let ((m2-30086
5788 (cdr w2-30051)))
5789 (if (null? m2-30086)
5790 s1-30053
5791 (append
5792 s1-30053
5793 m2-30086))))))))
5794 (module-30042
5795 (vector-ref
5796 value-29706
5797 3)))
5798 (vector
5799 'syntax-object
5800 expression-30040
5801 wrap-30041
5802 module-30042))
5803 (if (null? value-29706)
5804 value-29706
5805 (vector
5806 'syntax-object
5807 value-29706
5808 w-29709
5809 mod-29711)))))
5810 (label-29997
5811 (string-append
5812 "l-"
5813 (session-id-4511)
5814 (symbol->string (gensym "-")))))
5815 (begin
5816 (begin
5817 (let ((update-30006
5818 (cons (vector-ref id-29996 1)
5819 (vector-ref
5820 ribcage-29399
5821 1))))
5822 (vector-set!
5823 ribcage-29399
5824 1
5825 update-30006))
5826 (let ((update-30118
5827 (cons (car (vector-ref
5828 id-29996
5829 2))
5830 (vector-ref
5831 ribcage-29399
5832 2))))
5833 (vector-set!
5834 ribcage-29399
5835 2
5836 update-30118))
5837 (let ((update-30133
5838 (cons label-29997
5839 (vector-ref
5840 ribcage-29399
5841 3))))
5842 (vector-set!
5843 ribcage-29399
5844 3
5845 update-30133)))
5846 (parse-29401
5847 (cdr body-29509)
5848 (cons id-29996 ids-29510)
5849 (cons label-29997 labels-29511)
5850 var-ids-29512
5851 vars-29513
5852 vals-29514
5853 (cons (cons (if (eq? type-29705
5854 'define-syntax-parameter-form)
5855 'syntax-parameter
5856 'macro)
5857 (cons er-29517
5858 (if (if (null? (car w-29709))
5859 (null? (cdr w-29709))
5860 #f)
5861 e-29708
5862 (if (if (vector?
5863 e-29708)
5864 (if (= (vector-length
5865 e-29708)
5866 4)
5867 (eq? (vector-ref
5868 e-29708
5869 0)
5870 'syntax-object)
5871 #f)
5872 #f)
5873 (let ((expression-30172
5874 (vector-ref
5875 e-29708
5876 1))
5877 (wrap-30173
5878 (let ((w2-30183
5879 (vector-ref
5880 e-29708
5881 2)))
5882 (let ((m1-30184
5883 (car w-29709))
5884 (s1-30185
5885 (cdr w-29709)))
5886 (if (null? m1-30184)
5887 (if (null? s1-30185)
5888 w2-30183
5889 (cons (car w2-30183)
5890 (let ((m2-30202
5891 (cdr w2-30183)))
5892 (if (null? m2-30202)
5893 s1-30185
5894 (append
5895 s1-30185
5896 m2-30202)))))
5897 (cons (let ((m2-30210
5898 (car w2-30183)))
5899 (if (null? m2-30210)
5900 m1-30184
5901 (append
5902 m1-30184
5903 m2-30210)))
5904 (let ((m2-30218
5905 (cdr w2-30183)))
5906 (if (null? m2-30218)
5907 s1-30185
5908 (append
5909 s1-30185
5910 m2-30218))))))))
5911 (module-30174
5912 (vector-ref
5913 e-29708
5914 3)))
5915 (vector
5916 'syntax-object
5917 expression-30172
5918 wrap-30173
5919 module-30174))
5920 (if (null? e-29708)
5921 e-29708
5922 (vector
5923 'syntax-object
5924 e-29708
5925 w-29709
5926 mod-29711))))))
5927 bindings-29515))))
5928 (if (eqv? type-29705 'begin-form)
5929 (let ((tmp-30245
5930 ($sc-dispatch
5931 e-29708
5932 '(_ . each-any))))
5933 (if tmp-30245
5934 (@apply
5935 (lambda (e1-30249)
5936 (parse-29401
5937 (letrec*
5938 ((f-30250
5939 (lambda (forms-30451)
5940 (if (null? forms-30451)
5941 (cdr body-29509)
5942 (cons (cons er-29517
5943 (let ((x-30455
5944 (car forms-30451)))
5945 (if (if (null? (car w-29709))
5946 (null? (cdr w-29709))
5947 #f)
5948 x-30455
5949 (if (if (vector?
5950 x-30455)
5951 (if (= (vector-length
5952 x-30455)
5953 4)
5954 (eq? (vector-ref
5955 x-30455
5956 0)
5957 'syntax-object)
5958 #f)
5959 #f)
5960 (let ((expression-30473
5961 (vector-ref
5962 x-30455
5963 1))
5964 (wrap-30474
5965 (let ((w2-30482
5966 (vector-ref
5967 x-30455
5968 2)))
5969 (let ((m1-30483
5970 (car w-29709))
5971 (s1-30484
5972 (cdr w-29709)))
5973 (if (null? m1-30483)
5974 (if (null? s1-30484)
5975 w2-30482
5976 (cons (car w2-30482)
5977 (let ((m2-30499
5978 (cdr w2-30482)))
5979 (if (null? m2-30499)
5980 s1-30484
5981 (append
5982 s1-30484
5983 m2-30499)))))
5984 (cons (let ((m2-30507
5985 (car w2-30482)))
5986 (if (null? m2-30507)
5987 m1-30483
5988 (append
5989 m1-30483
5990 m2-30507)))
5991 (let ((m2-30515
5992 (cdr w2-30482)))
5993 (if (null? m2-30515)
5994 s1-30484
5995 (append
5996 s1-30484
5997 m2-30515))))))))
5998 (module-30475
5999 (vector-ref
6000 x-30455
6001 3)))
6002 (vector
6003 'syntax-object
6004 expression-30473
6005 wrap-30474
6006 module-30475))
6007 (if (null? x-30455)
6008 x-30455
6009 (vector
6010 'syntax-object
6011 x-30455
6012 w-29709
6013 mod-29711))))))
6014 (f-30250
6015 (cdr forms-30451)))))))
6016 (f-30250 e1-30249))
6017 ids-29510
6018 labels-29511
6019 var-ids-29512
6020 vars-29513
6021 vals-29514
6022 bindings-29515))
6023 tmp-30245)
6024 (syntax-violation
6025 #f
6026 "source expression failed to match any pattern"
6027 e-29708)))
6028 (if (eqv? type-29705 'local-syntax-form)
6029 (expand-local-syntax-4591
6030 value-29706
6031 e-29708
6032 er-29517
6033 w-29709
6034 s-29710
6035 mod-29711
6036 (lambda (forms-30541
6037 er-30542
6038 w-30543
6039 s-30544
6040 mod-30545)
6041 (parse-29401
6042 (letrec*
6043 ((f-30546
6044 (lambda (forms-30747)
6045 (if (null? forms-30747)
6046 (cdr body-29509)
6047 (cons (cons er-30542
6048 (let ((x-30751
6049 (car forms-30747)))
6050 (if (if (null? (car w-30543))
6051 (null? (cdr w-30543))
6052 #f)
6053 x-30751
6054 (if (if (vector?
6055 x-30751)
6056 (if (= (vector-length
6057 x-30751)
6058 4)
6059 (eq? (vector-ref
6060 x-30751
6061 0)
6062 'syntax-object)
6063 #f)
6064 #f)
6065 (let ((expression-30769
6066 (vector-ref
6067 x-30751
6068 1))
6069 (wrap-30770
6070 (let ((w2-30778
6071 (vector-ref
6072 x-30751
6073 2)))
6074 (let ((m1-30779
6075 (car w-30543))
6076 (s1-30780
6077 (cdr w-30543)))
6078 (if (null? m1-30779)
6079 (if (null? s1-30780)
6080 w2-30778
6081 (cons (car w2-30778)
6082 (let ((m2-30795
6083 (cdr w2-30778)))
6084 (if (null? m2-30795)
6085 s1-30780
6086 (append
6087 s1-30780
6088 m2-30795)))))
6089 (cons (let ((m2-30803
6090 (car w2-30778)))
6091 (if (null? m2-30803)
6092 m1-30779
6093 (append
6094 m1-30779
6095 m2-30803)))
6096 (let ((m2-30811
6097 (cdr w2-30778)))
6098 (if (null? m2-30811)
6099 s1-30780
6100 (append
6101 s1-30780
6102 m2-30811))))))))
6103 (module-30771
6104 (vector-ref
6105 x-30751
6106 3)))
6107 (vector
6108 'syntax-object
6109 expression-30769
6110 wrap-30770
6111 module-30771))
6112 (if (null? x-30751)
6113 x-30751
6114 (vector
6115 'syntax-object
6116 x-30751
6117 w-30543
6118 mod-30545))))))
6119 (f-30546
6120 (cdr forms-30747)))))))
6121 (f-30546 forms-30541))
6122 ids-29510
6123 labels-29511
6124 var-ids-29512
6125 vars-29513
6126 vals-29514
6127 bindings-29515)))
6128 (if (null? ids-29510)
6129 (build-sequence-4532
6130 #f
6131 (map (lambda (x-30896)
6132 (expand-4586
6133 (cdr x-30896)
6134 (car x-30896)
6135 '(())
6136 mod-29711))
6137 (cons (cons er-29517
6138 (let ((x-30971
6139 (begin
6140 (if (if (pair? e-29708)
6141 s-29710
6142 #f)
6143 (set-source-properties!
6144 e-29708
6145 s-29710))
6146 e-29708)))
6147 (if (if (null? (car w-29709))
6148 (null? (cdr w-29709))
6149 #f)
6150 x-30971
6151 (if (if (vector?
6152 x-30971)
6153 (if (= (vector-length
6154 x-30971)
6155 4)
6156 (eq? (vector-ref
6157 x-30971
6158 0)
6159 'syntax-object)
6160 #f)
6161 #f)
6162 (let ((expression-31003
6163 (vector-ref
6164 x-30971
6165 1))
6166 (wrap-31004
6167 (let ((w2-31012
6168 (vector-ref
6169 x-30971
6170 2)))
6171 (let ((m1-31013
6172 (car w-29709))
6173 (s1-31014
6174 (cdr w-29709)))
6175 (if (null? m1-31013)
6176 (if (null? s1-31014)
6177 w2-31012
6178 (cons (car w2-31012)
6179 (let ((m2-31029
6180 (cdr w2-31012)))
6181 (if (null? m2-31029)
6182 s1-31014
6183 (append
6184 s1-31014
6185 m2-31029)))))
6186 (cons (let ((m2-31037
6187 (car w2-31012)))
6188 (if (null? m2-31037)
6189 m1-31013
6190 (append
6191 m1-31013
6192 m2-31037)))
6193 (let ((m2-31045
6194 (cdr w2-31012)))
6195 (if (null? m2-31045)
6196 s1-31014
6197 (append
6198 s1-31014
6199 m2-31045))))))))
6200 (module-31005
6201 (vector-ref
6202 x-30971
6203 3)))
6204 (vector
6205 'syntax-object
6206 expression-31003
6207 wrap-31004
6208 module-31005))
6209 (if (null? x-30971)
6210 x-30971
6211 (vector
6212 'syntax-object
6213 x-30971
6214 w-29709
6215 mod-29711))))))
6216 (cdr body-29509))))
6217 (begin
6218 (if (not (valid-bound-ids?-4576
6219 ids-29510))
6220 (syntax-violation
6221 #f
6222 "invalid or duplicate identifier in definition"
6223 outer-form-29394))
6224 (letrec*
6225 ((loop-31144
6226 (lambda (bs-31147
6227 er-cache-31148
6228 r-cache-31149)
6229 (if (not (null? bs-31147))
6230 (let ((b-31150
6231 (car bs-31147)))
6232 (if (let ((t-31153
6233 (car b-31150)))
6234 (if (eq? t-31153
6235 'macro)
6236 #t
6237 (eq? t-31153
6238 'syntax-parameter)))
6239 (let ((er-31155
6240 (car (cdr b-31150))))
6241 (let ((r-cache-31156
6242 (if (eq? er-31155
6243 er-cache-31148)
6244 r-cache-31149
6245 (macros-only-env-4547
6246 er-31155))))
6247 (begin
6248 (set-cdr!
6249 b-31150
6250 (eval-local-transformer-4592
6251 (expand-4586
6252 (cdr (cdr b-31150))
6253 r-cache-31156
6254 '(())
6255 mod-29711)
6256 mod-29711))
6257 (if (eq? (car b-31150)
6258 'syntax-parameter)
6259 (set-cdr!
6260 b-31150
6261 (list (cdr b-31150))))
6262 (loop-31144
6263 (cdr bs-31147)
6264 er-31155
6265 r-cache-31156))))
6266 (loop-31144
6267 (cdr bs-31147)
6268 er-cache-31148
6269 r-cache-31149)))))))
6270 (loop-31144 bindings-29515 #f #f))
6271 (set-cdr!
6272 r-29398
6273 (extend-env-4545
6274 labels-29511
6275 bindings-29515
6276 (cdr r-29398)))
6277 (build-letrec-4535
6278 #f
6279 #t
6280 (reverse
6281 (map syntax->datum
6282 var-ids-29512))
6283 (reverse vars-29513)
6284 (map (lambda (x-31576)
6285 (expand-4586
6286 (cdr x-31576)
6287 (car x-31576)
6288 '(())
6289 mod-29711))
6290 (reverse vals-29514))
6291 (build-sequence-4532
6292 #f
6293 (map (lambda (x-31712)
6294 (expand-4586
6295 (cdr x-31712)
6296 (car x-31712)
6297 '(())
6298 mod-29711))
6299 (cons (cons er-29517
6300 (let ((x-31787
6301 (begin
6302 (if (if (pair? e-29708)
6303 s-29710
6304 #f)
6305 (set-source-properties!
6306 e-29708
6307 s-29710))
6308 e-29708)))
6309 (if (if (null? (car w-29709))
6310 (null? (cdr w-29709))
6311 #f)
6312 x-31787
6313 (if (if (vector?
6314 x-31787)
6315 (if (= (vector-length
6316 x-31787)
6317 4)
6318 (eq? (vector-ref
6319 x-31787
6320 0)
6321 'syntax-object)
6322 #f)
6323 #f)
6324 (let ((expression-31819
6325 (vector-ref
6326 x-31787
6327 1))
6328 (wrap-31820
6329 (let ((w2-31828
6330 (vector-ref
6331 x-31787
6332 2)))
6333 (let ((m1-31829
6334 (car w-29709))
6335 (s1-31830
6336 (cdr w-29709)))
6337 (if (null? m1-31829)
6338 (if (null? s1-31830)
6339 w2-31828
6340 (cons (car w2-31828)
6341 (let ((m2-31845
6342 (cdr w2-31828)))
6343 (if (null? m2-31845)
6344 s1-31830
6345 (append
6346 s1-31830
6347 m2-31845)))))
6348 (cons (let ((m2-31853
6349 (car w2-31828)))
6350 (if (null? m2-31853)
6351 m1-31829
6352 (append
6353 m1-31829
6354 m2-31853)))
6355 (let ((m2-31861
6356 (cdr w2-31828)))
6357 (if (null? m2-31861)
6358 s1-31830
6359 (append
6360 s1-31830
6361 m2-31861))))))))
6362 (module-31821
6363 (vector-ref
6364 x-31787
6365 3)))
6366 (vector
6367 'syntax-object
6368 expression-31819
6369 wrap-31820
6370 module-31821))
6371 (if (null? x-31787)
6372 x-31787
6373 (vector
6374 'syntax-object
6375 x-31787
6376 w-29709
6377 mod-29711))))))
6378 (cdr body-29509))))))))))))))))))
6379 (parse-29401
6380 (map (lambda (x-29404)
6381 (cons r-29398
6382 (if (if (null? (car w-29400))
6383 (null? (cdr w-29400))
6384 #f)
6385 x-29404
6386 (if (if (vector? x-29404)
6387 (if (= (vector-length x-29404) 4)
6388 (eq? (vector-ref x-29404 0)
6389 'syntax-object)
6390 #f)
6391 #f)
6392 (let ((expression-29440
6393 (vector-ref x-29404 1))
6394 (wrap-29441
6395 (let ((w2-29451
6396 (vector-ref x-29404 2)))
6397 (let ((m1-29452 (car w-29400))
6398 (s1-29453 (cdr w-29400)))
6399 (if (null? m1-29452)
6400 (if (null? s1-29453)
6401 w2-29451
6402 (cons (car w2-29451)
6403 (let ((m2-29470
6404 (cdr w2-29451)))
6405 (if (null? m2-29470)
6406 s1-29453
6407 (append
6408 s1-29453
6409 m2-29470)))))
6410 (cons (let ((m2-29478
6411 (car w2-29451)))
6412 (if (null? m2-29478)
6413 m1-29452
6414 (append
6415 m1-29452
6416 m2-29478)))
6417 (let ((m2-29486
6418 (cdr w2-29451)))
6419 (if (null? m2-29486)
6420 s1-29453
6421 (append
6422 s1-29453
6423 m2-29486))))))))
6424 (module-29442
6425 (vector-ref x-29404 3)))
6426 (vector
6427 'syntax-object
6428 expression-29440
6429 wrap-29441
6430 module-29442))
6431 (if (null? x-29404)
6432 x-29404
6433 (vector
6434 'syntax-object
6435 x-29404
6436 w-29400
6437 mod-29397))))))
6438 body-29393)
6439 '()
6440 '()
6441 '()
6442 '()
6443 '()
6444 '())))))))
6445 (expand-local-syntax-4591
6446 (lambda (rec?-31876
6447 e-31877
6448 r-31878
6449 w-31879
6450 s-31880
6451 mod-31881
6452 k-31882)
6453 (let ((tmp-31884
6454 ($sc-dispatch
6455 e-31877
6456 '(_ #(each (any any)) any . each-any))))
6457 (if tmp-31884
6458 (@apply
6459 (lambda (id-31888 val-31889 e1-31890 e2-31891)
6460 (if (not (valid-bound-ids?-4576 id-31888))
6461 (syntax-violation
6462 #f
6463 "duplicate bound keyword"
6464 e-31877)
6465 (let ((labels-31988 (gen-labels-4553 id-31888)))
6466 (let ((new-w-31989
6467 (make-binding-wrap-4564
6468 id-31888
6469 labels-31988
6470 w-31879)))
6471 (k-31882
6472 (cons e1-31890 e2-31891)
6473 (extend-env-4545
6474 labels-31988
6475 (let ((trans-r-32027
6476 (macros-only-env-4547 r-31878)))
6477 (begin
6478 (if rec?-31876 new-w-31989 w-31879)
6479 (map (lambda (x-32028)
6480 (cons 'macro
6481 (eval-local-transformer-4592
6482 (expand-4586
6483 x-32028
6484 trans-r-32027
6485 (values
6486 (if rec?-31876
6487 new-w-31989
6488 w-31879))
6489 mod-31881)
6490 mod-31881)))
6491 val-31889)))
6492 r-31878)
6493 new-w-31989
6494 s-31880
6495 mod-31881)))))
6496 tmp-31884)
6497 (syntax-violation
6498 #f
6499 "bad local syntax definition"
6500 (let ((x-32335
6501 (begin
6502 (if (if (pair? e-31877) s-31880 #f)
6503 (set-source-properties! e-31877 s-31880))
6504 e-31877)))
6505 (if (if (null? (car w-31879))
6506 (null? (cdr w-31879))
6507 #f)
6508 x-32335
6509 (if (if (vector? x-32335)
6510 (if (= (vector-length x-32335) 4)
6511 (eq? (vector-ref x-32335 0) 'syntax-object)
6512 #f)
6513 #f)
6514 (let ((expression-32367 (vector-ref x-32335 1))
6515 (wrap-32368
6516 (let ((w2-32376 (vector-ref x-32335 2)))
6517 (let ((m1-32377 (car w-31879))
6518 (s1-32378 (cdr w-31879)))
6519 (if (null? m1-32377)
6520 (if (null? s1-32378)
6521 w2-32376
6522 (cons (car w2-32376)
6523 (let ((m2-32393 (cdr w2-32376)))
6524 (if (null? m2-32393)
6525 s1-32378
6526 (append s1-32378 m2-32393)))))
6527 (cons (let ((m2-32401 (car w2-32376)))
6528 (if (null? m2-32401)
6529 m1-32377
6530 (append m1-32377 m2-32401)))
6531 (let ((m2-32409 (cdr w2-32376)))
6532 (if (null? m2-32409)
6533 s1-32378
6534 (append s1-32378 m2-32409))))))))
6535 (module-32369 (vector-ref x-32335 3)))
6536 (vector
6537 'syntax-object
6538 expression-32367
6539 wrap-32368
6540 module-32369))
6541 (if (null? x-32335)
6542 x-32335
6543 (vector
6544 'syntax-object
6545 x-32335
6546 w-31879
6547 mod-31881))))))))))
6548 (eval-local-transformer-4592
6549 (lambda (expanded-32427 mod-32428)
6550 (let ((p-32429 (primitive-eval expanded-32427)))
6551 (if (procedure? p-32429)
6552 p-32429
6553 (syntax-violation
6554 #f
6555 "nonprocedure transformer"
6556 p-32429)))))
6557 (ellipsis?-4594
6558 (lambda (x-6134)
6559 (if (if (if (vector? x-6134)
6560 (if (= (vector-length x-6134) 4)
6561 (eq? (vector-ref x-6134 0) 'syntax-object)
6562 #f)
6563 #f)
6564 (symbol? (vector-ref x-6134 1))
6565 #f)
6566 (free-id=?-4574
6567 x-6134
6568 '#(syntax-object
6569 ...
6570 ((top)
6571 #(ribcage () () ())
6572 #(ribcage () () ())
6573 #(ribcage #(x) #((top)) #("l-*-2416"))
6574 #(ribcage
6575 (lambda-var-list
6576 gen-var
6577 strip
6578 expand-lambda-case
6579 lambda*-formals
6580 expand-simple-lambda
6581 lambda-formals
6582 ellipsis?
6583 expand-void
6584 eval-local-transformer
6585 expand-local-syntax
6586 expand-body
6587 expand-macro
6588 expand-call
6589 expand-expr
6590 expand
6591 syntax-type
6592 parse-when-list
6593 expand-install-global
6594 expand-top-sequence
6595 expand-sequence
6596 source-wrap
6597 wrap
6598 bound-id-member?
6599 distinct-bound-ids?
6600 valid-bound-ids?
6601 bound-id=?
6602 free-id=?
6603 with-transformer-environment
6604 transformer-environment
6605 resolve-identifier
6606 locally-bound-identifiers
6607 id-var-name
6608 same-marks?
6609 join-marks
6610 join-wraps
6611 smart-append
6612 make-binding-wrap
6613 extend-ribcage!
6614 make-empty-ribcage
6615 new-mark
6616 anti-mark
6617 the-anti-mark
6618 top-marked?
6619 top-wrap
6620 empty-wrap
6621 set-ribcage-labels!
6622 set-ribcage-marks!
6623 set-ribcage-symnames!
6624 ribcage-labels
6625 ribcage-marks
6626 ribcage-symnames
6627 ribcage?
6628 make-ribcage
6629 gen-labels
6630 gen-label
6631 make-rename
6632 rename-marks
6633 rename-new
6634 rename-old
6635 subst-rename?
6636 wrap-subst
6637 wrap-marks
6638 make-wrap
6639 id-sym-name&marks
6640 id-sym-name
6641 id?
6642 nonsymbol-id?
6643 global-extend
6644 macros-only-env
6645 extend-var-env
6646 extend-env
6647 null-env
6648 binding-value
6649 binding-type
6650 make-binding
6651 arg-check
6652 source-annotation
6653 no-source
6654 set-syntax-object-module!
6655 set-syntax-object-wrap!
6656 set-syntax-object-expression!
6657 syntax-object-module
6658 syntax-object-wrap
6659 syntax-object-expression
6660 syntax-object?
6661 make-syntax-object
6662 build-lexical-var
6663 build-letrec
6664 build-named-let
6665 build-let
6666 build-sequence
6667 build-data
6668 build-primref
6669 build-primcall
6670 build-lambda-case
6671 build-case-lambda
6672 build-simple-lambda
6673 build-global-definition
6674 build-global-assignment
6675 build-global-reference
6676 analyze-variable
6677 build-lexical-assignment
6678 build-lexical-reference
6679 build-dynlet
6680 build-conditional
6681 build-call
6682 build-void
6683 maybe-name-value!
6684 decorate-source
6685 get-global-definition-hook
6686 put-global-definition-hook
6687 session-id
6688 local-eval-hook
6689 top-level-eval-hook
6690 fx<
6691 fx=
6692 fx-
6693 fx+
6694 set-lambda-meta!
6695 lambda-meta
6696 lambda?
6697 make-dynlet
6698 make-letrec
6699 make-let
6700 make-lambda-case
6701 make-lambda
6702 make-seq
6703 make-primcall
6704 make-call
6705 make-conditional
6706 make-toplevel-define
6707 make-toplevel-set
6708 make-toplevel-ref
6709 make-module-set
6710 make-module-ref
6711 make-lexical-set
6712 make-lexical-ref
6713 make-primitive-ref
6714 make-const
6715 make-void)
6716 ((top)
6717 (top)
6718 (top)
6719 (top)
6720 (top)
6721 (top)
6722 (top)
6723 (top)
6724 (top)
6725 (top)
6726 (top)
6727 (top)
6728 (top)
6729 (top)
6730 (top)
6731 (top)
6732 (top)
6733 (top)
6734 (top)
6735 (top)
6736 (top)
6737 (top)
6738 (top)
6739 (top)
6740 (top)
6741 (top)
6742 (top)
6743 (top)
6744 (top)
6745 (top)
6746 (top)
6747 (top)
6748 (top)
6749 (top)
6750 (top)
6751 (top)
6752 (top)
6753 (top)
6754 (top)
6755 (top)
6756 (top)
6757 (top)
6758 (top)
6759 (top)
6760 (top)
6761 (top)
6762 (top)
6763 (top)
6764 (top)
6765 (top)
6766 (top)
6767 (top)
6768 (top)
6769 (top)
6770 (top)
6771 (top)
6772 (top)
6773 (top)
6774 (top)
6775 (top)
6776 (top)
6777 (top)
6778 (top)
6779 (top)
6780 (top)
6781 (top)
6782 (top)
6783 (top)
6784 (top)
6785 (top)
6786 (top)
6787 (top)
6788 (top)
6789 (top)
6790 (top)
6791 (top)
6792 (top)
6793 (top)
6794 (top)
6795 (top)
6796 (top)
6797 (top)
6798 (top)
6799 (top)
6800 (top)
6801 (top)
6802 (top)
6803 (top)
6804 (top)
6805 (top)
6806 (top)
6807 (top)
6808 (top)
6809 (top)
6810 (top)
6811 (top)
6812 (top)
6813 (top)
6814 (top)
6815 (top)
6816 (top)
6817 (top)
6818 (top)
6819 (top)
6820 (top)
6821 (top)
6822 (top)
6823 (top)
6824 (top)
6825 (top)
6826 (top)
6827 (top)
6828 (top)
6829 (top)
6830 (top)
6831 (top)
6832 (top)
6833 (top)
6834 (top)
6835 (top)
6836 (top)
6837 (top)
6838 (top)
6839 (top)
6840 (top)
6841 (top)
6842 (top)
6843 (top)
6844 (top)
6845 (top)
6846 (top)
6847 (top)
6848 (top)
6849 (top)
6850 (top)
6851 (top)
6852 (top)
6853 (top)
6854 (top)
6855 (top)
6856 (top))
6857 ("l-*-478"
6858 "l-*-476"
6859 "l-*-474"
6860 "l-*-472"
6861 "l-*-470"
6862 "l-*-468"
6863 "l-*-466"
6864 "l-*-464"
6865 "l-*-462"
6866 "l-*-460"
6867 "l-*-458"
6868 "l-*-456"
6869 "l-*-454"
6870 "l-*-452"
6871 "l-*-450"
6872 "l-*-448"
6873 "l-*-446"
6874 "l-*-444"
6875 "l-*-442"
6876 "l-*-440"
6877 "l-*-438"
6878 "l-*-436"
6879 "l-*-434"
6880 "l-*-432"
6881 "l-*-430"
6882 "l-*-428"
6883 "l-*-426"
6884 "l-*-424"
6885 "l-*-422"
6886 "l-*-420"
6887 "l-*-418"
6888 "l-*-416"
6889 "l-*-414"
6890 "l-*-412"
6891 "l-*-410"
6892 "l-*-408"
6893 "l-*-406"
6894 "l-*-404"
6895 "l-*-402"
6896 "l-*-401"
6897 "l-*-399"
6898 "l-*-396"
6899 "l-*-395"
6900 "l-*-394"
6901 "l-*-392"
6902 "l-*-391"
6903 "l-*-389"
6904 "l-*-387"
6905 "l-*-385"
6906 "l-*-383"
6907 "l-*-381"
6908 "l-*-379"
6909 "l-*-377"
6910 "l-*-375"
6911 "l-*-372"
6912 "l-*-370"
6913 "l-*-369"
6914 "l-*-367"
6915 "l-*-365"
6916 "l-*-363"
6917 "l-*-361"
6918 "l-*-360"
6919 "l-*-359"
6920 "l-*-358"
6921 "l-*-356"
6922 "l-*-355"
6923 "l-*-352"
6924 "l-*-350"
6925 "l-*-348"
6926 "l-*-346"
6927 "l-*-344"
6928 "l-*-342"
6929 "l-*-341"
6930 "l-*-340"
6931 "l-*-338"
6932 "l-*-336"
6933 "l-*-335"
6934 "l-*-332"
6935 "l-*-331"
6936 "l-*-329"
6937 "l-*-327"
6938 "l-*-325"
6939 "l-*-323"
6940 "l-*-321"
6941 "l-*-319"
6942 "l-*-317"
6943 "l-*-315"
6944 "l-*-313"
6945 "l-*-310"
6946 "l-*-308"
6947 "l-*-306"
6948 "l-*-304"
6949 "l-*-302"
6950 "l-*-300"
6951 "l-*-298"
6952 "l-*-296"
6953 "l-*-294"
6954 "l-*-292"
6955 "l-*-290"
6956 "l-*-288"
6957 "l-*-286"
6958 "l-*-284"
6959 "l-*-282"
6960 "l-*-280"
6961 "l-*-278"
6962 "l-*-276"
6963 "l-*-274"
6964 "l-*-272"
6965 "l-*-270"
6966 "l-*-268"
6967 "l-*-266"
6968 "l-*-264"
6969 "l-*-262"
6970 "l-*-260"
6971 "l-*-258"
6972 "l-*-257"
6973 "l-*-256"
6974 "l-*-255"
6975 "l-*-254"
6976 "l-*-252"
6977 "l-*-250"
6978 "l-*-248"
6979 "l-*-245"
6980 "l-*-243"
6981 "l-*-241"
6982 "l-*-239"
6983 "l-*-237"
6984 "l-*-235"
6985 "l-*-233"
6986 "l-*-231"
6987 "l-*-229"
6988 "l-*-227"
6989 "l-*-225"
6990 "l-*-223"
6991 "l-*-221"
6992 "l-*-219"
6993 "l-*-217"
6994 "l-*-215"
6995 "l-*-213"
6996 "l-*-211"
6997 "l-*-209"))
6998 #(ribcage
6999 (define-structure
7000 define-expansion-accessors
7001 define-expansion-constructors)
7002 ((top) (top) (top))
7003 ("l-*-47" "l-*-46" "l-*-45"))
7004 #(ribcage () () ()))
7005 (hygiene guile)))
7006 #f)))
7007 (lambda-formals-4595
7008 (lambda (orig-args-32434)
7009 (letrec*
7010 ((req-32435
7011 (lambda (args-32439 rreq-32440)
7012 (let ((tmp-32442 ($sc-dispatch args-32439 '())))
7013 (if tmp-32442
7014 (@apply
7015 (lambda () (check-32436 (reverse rreq-32440) #f))
7016 tmp-32442)
7017 (let ((tmp-32558
7018 ($sc-dispatch args-32439 '(any . any))))
7019 (if (if tmp-32558
7020 (@apply
7021 (lambda (a-32562 b-32563)
7022 (if (symbol? a-32562)
7023 #t
7024 (if (if (vector? a-32562)
7025 (if (= (vector-length a-32562) 4)
7026 (eq? (vector-ref a-32562 0)
7027 'syntax-object)
7028 #f)
7029 #f)
7030 (symbol? (vector-ref a-32562 1))
7031 #f)))
7032 tmp-32558)
7033 #f)
7034 (@apply
7035 (lambda (a-32590 b-32591)
7036 (req-32435 b-32591 (cons a-32590 rreq-32440)))
7037 tmp-32558)
7038 (let ((tmp-32592 (list args-32439)))
7039 (if (@apply
7040 (lambda (r-32594)
7041 (if (symbol? r-32594)
7042 #t
7043 (if (if (vector? r-32594)
7044 (if (= (vector-length r-32594) 4)
7045 (eq? (vector-ref r-32594 0)
7046 'syntax-object)
7047 #f)
7048 #f)
7049 (symbol? (vector-ref r-32594 1))
7050 #f)))
7051 tmp-32592)
7052 (@apply
7053 (lambda (r-32624)
7054 (check-32436 (reverse rreq-32440) r-32624))
7055 tmp-32592)
7056 (syntax-violation
7057 'lambda
7058 "invalid argument list"
7059 orig-args-32434
7060 args-32439)))))))))
7061 (check-32436
7062 (lambda (req-32748 rest-32749)
7063 (if (distinct-bound-ids?-4577
7064 (if rest-32749
7065 (cons rest-32749 req-32748)
7066 req-32748))
7067 (values req-32748 #f rest-32749 #f)
7068 (syntax-violation
7069 'lambda
7070 "duplicate identifier in argument list"
7071 orig-args-32434)))))
7072 (req-32435 orig-args-32434 '()))))
7073 (expand-simple-lambda-4596
7074 (lambda (e-32858
7075 r-32859
7076 w-32860
7077 s-32861
7078 mod-32862
7079 req-32863
7080 rest-32864
7081 meta-32865
7082 body-32866)
7083 (let ((ids-32867
7084 (if rest-32864
7085 (append req-32863 (list rest-32864))
7086 req-32863)))
7087 (let ((vars-32868 (map gen-var-4600 ids-32867)))
7088 (let ((labels-32869 (gen-labels-4553 ids-32867)))
7089 (build-simple-lambda-4526
7090 s-32861
7091 (map syntax->datum req-32863)
7092 (if rest-32864 (syntax->datum rest-32864) #f)
7093 vars-32868
7094 meta-32865
7095 (expand-body-4590
7096 body-32866
7097 (let ((x-33052
7098 (begin
7099 (if (if (pair? e-32858) s-32861 #f)
7100 (set-source-properties! e-32858 s-32861))
7101 e-32858)))
7102 (if (if (null? (car w-32860))
7103 (null? (cdr w-32860))
7104 #f)
7105 x-33052
7106 (if (if (vector? x-33052)
7107 (if (= (vector-length x-33052) 4)
7108 (eq? (vector-ref x-33052 0) 'syntax-object)
7109 #f)
7110 #f)
7111 (let ((expression-33084 (vector-ref x-33052 1))
7112 (wrap-33085
7113 (let ((w2-33093 (vector-ref x-33052 2)))
7114 (let ((m1-33094 (car w-32860))
7115 (s1-33095 (cdr w-32860)))
7116 (if (null? m1-33094)
7117 (if (null? s1-33095)
7118 w2-33093
7119 (cons (car w2-33093)
7120 (let ((m2-33110 (cdr w2-33093)))
7121 (if (null? m2-33110)
7122 s1-33095
7123 (append
7124 s1-33095
7125 m2-33110)))))
7126 (cons (let ((m2-33118 (car w2-33093)))
7127 (if (null? m2-33118)
7128 m1-33094
7129 (append m1-33094 m2-33118)))
7130 (let ((m2-33126 (cdr w2-33093)))
7131 (if (null? m2-33126)
7132 s1-33095
7133 (append
7134 s1-33095
7135 m2-33126))))))))
7136 (module-33086 (vector-ref x-33052 3)))
7137 (vector
7138 'syntax-object
7139 expression-33084
7140 wrap-33085
7141 module-33086))
7142 (if (null? x-33052)
7143 x-33052
7144 (vector
7145 'syntax-object
7146 x-33052
7147 w-32860
7148 mod-32862)))))
7149 (extend-var-env-4546
7150 labels-32869
7151 vars-32868
7152 r-32859)
7153 (make-binding-wrap-4564
7154 ids-32867
7155 labels-32869
7156 w-32860)
7157 mod-32862)))))))
7158 (lambda*-formals-4597
7159 (lambda (orig-args-33335)
7160 (letrec*
7161 ((req-33336
7162 (lambda (args-33343 rreq-33344)
7163 (let ((tmp-33346 ($sc-dispatch args-33343 '())))
7164 (if tmp-33346
7165 (@apply
7166 (lambda ()
7167 (check-33340 (reverse rreq-33344) '() #f '()))
7168 tmp-33346)
7169 (let ((tmp-33465
7170 ($sc-dispatch args-33343 '(any . any))))
7171 (if (if tmp-33465
7172 (@apply
7173 (lambda (a-33469 b-33470)
7174 (if (symbol? a-33469)
7175 #t
7176 (if (if (vector? a-33469)
7177 (if (= (vector-length a-33469) 4)
7178 (eq? (vector-ref a-33469 0)
7179 'syntax-object)
7180 #f)
7181 #f)
7182 (symbol? (vector-ref a-33469 1))
7183 #f)))
7184 tmp-33465)
7185 #f)
7186 (@apply
7187 (lambda (a-33497 b-33498)
7188 (req-33336 b-33498 (cons a-33497 rreq-33344)))
7189 tmp-33465)
7190 (let ((tmp-33499
7191 ($sc-dispatch args-33343 '(any . any))))
7192 (if (if tmp-33499
7193 (@apply
7194 (lambda (a-33503 b-33504)
7195 (eq? (syntax->datum a-33503) #:optional))
7196 tmp-33499)
7197 #f)
7198 (@apply
7199 (lambda (a-33505 b-33506)
7200 (opt-33337 b-33506 (reverse rreq-33344) '()))
7201 tmp-33499)
7202 (let ((tmp-33509
7203 ($sc-dispatch args-33343 '(any . any))))
7204 (if (if tmp-33509
7205 (@apply
7206 (lambda (a-33513 b-33514)
7207 (eq? (syntax->datum a-33513) #:key))
7208 tmp-33509)
7209 #f)
7210 (@apply
7211 (lambda (a-33515 b-33516)
7212 (key-33338
7213 b-33516
7214 (reverse rreq-33344)
7215 '()
7216 '()))
7217 tmp-33509)
7218 (let ((tmp-33519
7219 ($sc-dispatch args-33343 '(any any))))
7220 (if (if tmp-33519
7221 (@apply
7222 (lambda (a-33523 b-33524)
7223 (eq? (syntax->datum a-33523)
7224 #:rest))
7225 tmp-33519)
7226 #f)
7227 (@apply
7228 (lambda (a-33525 b-33526)
7229 (rest-33339
7230 b-33526
7231 (reverse rreq-33344)
7232 '()
7233 '()))
7234 tmp-33519)
7235 (let ((tmp-33529 (list args-33343)))
7236 (if (@apply
7237 (lambda (r-33531)
7238 (if (symbol? r-33531)
7239 #t
7240 (if (if (vector? r-33531)
7241 (if (= (vector-length
7242 r-33531)
7243 4)
7244 (eq? (vector-ref
7245 r-33531
7246 0)
7247 'syntax-object)
7248 #f)
7249 #f)
7250 (symbol?
7251 (vector-ref r-33531 1))
7252 #f)))
7253 tmp-33529)
7254 (@apply
7255 (lambda (r-33561)
7256 (rest-33339
7257 r-33561
7258 (reverse rreq-33344)
7259 '()
7260 '()))
7261 tmp-33529)
7262 (syntax-violation
7263 'lambda*
7264 "invalid argument list"
7265 orig-args-33335
7266 args-33343)))))))))))))))
7267 (opt-33337
7268 (lambda (args-33580 req-33581 ropt-33582)
7269 (let ((tmp-33584 ($sc-dispatch args-33580 '())))
7270 (if tmp-33584
7271 (@apply
7272 (lambda ()
7273 (check-33340
7274 req-33581
7275 (reverse ropt-33582)
7276 #f
7277 '()))
7278 tmp-33584)
7279 (let ((tmp-33705
7280 ($sc-dispatch args-33580 '(any . any))))
7281 (if (if tmp-33705
7282 (@apply
7283 (lambda (a-33709 b-33710)
7284 (if (symbol? a-33709)
7285 #t
7286 (if (if (vector? a-33709)
7287 (if (= (vector-length a-33709) 4)
7288 (eq? (vector-ref a-33709 0)
7289 'syntax-object)
7290 #f)
7291 #f)
7292 (symbol? (vector-ref a-33709 1))
7293 #f)))
7294 tmp-33705)
7295 #f)
7296 (@apply
7297 (lambda (a-33737 b-33738)
7298 (opt-33337
7299 b-33738
7300 req-33581
7301 (cons (cons a-33737
7302 '(#(syntax-object
7303 #f
7304 ((top)
7305 #(ribcage
7306 #(a b)
7307 #((top) (top))
7308 #("l-*-2555" "l-*-2556"))
7309 #(ribcage () () ())
7310 #(ribcage
7311 #(args req ropt)
7312 #((top) (top) (top))
7313 #("l-*-2545"
7314 "l-*-2546"
7315 "l-*-2547"))
7316 #(ribcage
7317 (check rest key opt req)
7318 ((top)
7319 (top)
7320 (top)
7321 (top)
7322 (top))
7323 ("l-*-2491"
7324 "l-*-2489"
7325 "l-*-2487"
7326 "l-*-2485"
7327 "l-*-2483"))
7328 #(ribcage
7329 #(orig-args)
7330 #((top))
7331 #("l-*-2482"))
7332 #(ribcage
7333 (lambda-var-list
7334 gen-var
7335 strip
7336 expand-lambda-case
7337 lambda*-formals
7338 expand-simple-lambda
7339 lambda-formals
7340 ellipsis?
7341 expand-void
7342 eval-local-transformer
7343 expand-local-syntax
7344 expand-body
7345 expand-macro
7346 expand-call
7347 expand-expr
7348 expand
7349 syntax-type
7350 parse-when-list
7351 expand-install-global
7352 expand-top-sequence
7353 expand-sequence
7354 source-wrap
7355 wrap
7356 bound-id-member?
7357 distinct-bound-ids?
7358 valid-bound-ids?
7359 bound-id=?
7360 free-id=?
7361 with-transformer-environment
7362 transformer-environment
7363 resolve-identifier
7364 locally-bound-identifiers
7365 id-var-name
7366 same-marks?
7367 join-marks
7368 join-wraps
7369 smart-append
7370 make-binding-wrap
7371 extend-ribcage!
7372 make-empty-ribcage
7373 new-mark
7374 anti-mark
7375 the-anti-mark
7376 top-marked?
7377 top-wrap
7378 empty-wrap
7379 set-ribcage-labels!
7380 set-ribcage-marks!
7381 set-ribcage-symnames!
7382 ribcage-labels
7383 ribcage-marks
7384 ribcage-symnames
7385 ribcage?
7386 make-ribcage
7387 gen-labels
7388 gen-label
7389 make-rename
7390 rename-marks
7391 rename-new
7392 rename-old
7393 subst-rename?
7394 wrap-subst
7395 wrap-marks
7396 make-wrap
7397 id-sym-name&marks
7398 id-sym-name
7399 id?
7400 nonsymbol-id?
7401 global-extend
7402 macros-only-env
7403 extend-var-env
7404 extend-env
7405 null-env
7406 binding-value
7407 binding-type
7408 make-binding
7409 arg-check
7410 source-annotation
7411 no-source
7412 set-syntax-object-module!
7413 set-syntax-object-wrap!
7414 set-syntax-object-expression!
7415 syntax-object-module
7416 syntax-object-wrap
7417 syntax-object-expression
7418 syntax-object?
7419 make-syntax-object
7420 build-lexical-var
7421 build-letrec
7422 build-named-let
7423 build-let
7424 build-sequence
7425 build-data
7426 build-primref
7427 build-primcall
7428 build-lambda-case
7429 build-case-lambda
7430 build-simple-lambda
7431 build-global-definition
7432 build-global-assignment
7433 build-global-reference
7434 analyze-variable
7435 build-lexical-assignment
7436 build-lexical-reference
7437 build-dynlet
7438 build-conditional
7439 build-call
7440 build-void
7441 maybe-name-value!
7442 decorate-source
7443 get-global-definition-hook
7444 put-global-definition-hook
7445 session-id
7446 local-eval-hook
7447 top-level-eval-hook
7448 fx<
7449 fx=
7450 fx-
7451 fx+
7452 set-lambda-meta!
7453 lambda-meta
7454 lambda?
7455 make-dynlet
7456 make-letrec
7457 make-let
7458 make-lambda-case
7459 make-lambda
7460 make-seq
7461 make-primcall
7462 make-call
7463 make-conditional
7464 make-toplevel-define
7465 make-toplevel-set
7466 make-toplevel-ref
7467 make-module-set
7468 make-module-ref
7469 make-lexical-set
7470 make-lexical-ref
7471 make-primitive-ref
7472 make-const
7473 make-void)
7474 ((top)
7475 (top)
7476 (top)
7477 (top)
7478 (top)
7479 (top)
7480 (top)
7481 (top)
7482 (top)
7483 (top)
7484 (top)
7485 (top)
7486 (top)
7487 (top)
7488 (top)
7489 (top)
7490 (top)
7491 (top)
7492 (top)
7493 (top)
7494 (top)
7495 (top)
7496 (top)
7497 (top)
7498 (top)
7499 (top)
7500 (top)
7501 (top)
7502 (top)
7503 (top)
7504 (top)
7505 (top)
7506 (top)
7507 (top)
7508 (top)
7509 (top)
7510 (top)
7511 (top)
7512 (top)
7513 (top)
7514 (top)
7515 (top)
7516 (top)
7517 (top)
7518 (top)
7519 (top)
7520 (top)
7521 (top)
7522 (top)
7523 (top)
7524 (top)
7525 (top)
7526 (top)
7527 (top)
7528 (top)
7529 (top)
7530 (top)
7531 (top)
7532 (top)
7533 (top)
7534 (top)
7535 (top)
7536 (top)
7537 (top)
7538 (top)
7539 (top)
7540 (top)
7541 (top)
7542 (top)
7543 (top)
7544 (top)
7545 (top)
7546 (top)
7547 (top)
7548 (top)
7549 (top)
7550 (top)
7551 (top)
7552 (top)
7553 (top)
7554 (top)
7555 (top)
7556 (top)
7557 (top)
7558 (top)
7559 (top)
7560 (top)
7561 (top)
7562 (top)
7563 (top)
7564 (top)
7565 (top)
7566 (top)
7567 (top)
7568 (top)
7569 (top)
7570 (top)
7571 (top)
7572 (top)
7573 (top)
7574 (top)
7575 (top)
7576 (top)
7577 (top)
7578 (top)
7579 (top)
7580 (top)
7581 (top)
7582 (top)
7583 (top)
7584 (top)
7585 (top)
7586 (top)
7587 (top)
7588 (top)
7589 (top)
7590 (top)
7591 (top)
7592 (top)
7593 (top)
7594 (top)
7595 (top)
7596 (top)
7597 (top)
7598 (top)
7599 (top)
7600 (top)
7601 (top)
7602 (top)
7603 (top)
7604 (top)
7605 (top)
7606 (top)
7607 (top)
7608 (top)
7609 (top)
7610 (top)
7611 (top)
7612 (top)
7613 (top)
7614 (top))
7615 ("l-*-478"
7616 "l-*-476"
7617 "l-*-474"
7618 "l-*-472"
7619 "l-*-470"
7620 "l-*-468"
7621 "l-*-466"
7622 "l-*-464"
7623 "l-*-462"
7624 "l-*-460"
7625 "l-*-458"
7626 "l-*-456"
7627 "l-*-454"
7628 "l-*-452"
7629 "l-*-450"
7630 "l-*-448"
7631 "l-*-446"
7632 "l-*-444"
7633 "l-*-442"
7634 "l-*-440"
7635 "l-*-438"
7636 "l-*-436"
7637 "l-*-434"
7638 "l-*-432"
7639 "l-*-430"
7640 "l-*-428"
7641 "l-*-426"
7642 "l-*-424"
7643 "l-*-422"
7644 "l-*-420"
7645 "l-*-418"
7646 "l-*-416"
7647 "l-*-414"
7648 "l-*-412"
7649 "l-*-410"
7650 "l-*-408"
7651 "l-*-406"
7652 "l-*-404"
7653 "l-*-402"
7654 "l-*-401"
7655 "l-*-399"
7656 "l-*-396"
7657 "l-*-395"
7658 "l-*-394"
7659 "l-*-392"
7660 "l-*-391"
7661 "l-*-389"
7662 "l-*-387"
7663 "l-*-385"
7664 "l-*-383"
7665 "l-*-381"
7666 "l-*-379"
7667 "l-*-377"
7668 "l-*-375"
7669 "l-*-372"
7670 "l-*-370"
7671 "l-*-369"
7672 "l-*-367"
7673 "l-*-365"
7674 "l-*-363"
7675 "l-*-361"
7676 "l-*-360"
7677 "l-*-359"
7678 "l-*-358"
7679 "l-*-356"
7680 "l-*-355"
7681 "l-*-352"
7682 "l-*-350"
7683 "l-*-348"
7684 "l-*-346"
7685 "l-*-344"
7686 "l-*-342"
7687 "l-*-341"
7688 "l-*-340"
7689 "l-*-338"
7690 "l-*-336"
7691 "l-*-335"
7692 "l-*-332"
7693 "l-*-331"
7694 "l-*-329"
7695 "l-*-327"
7696 "l-*-325"
7697 "l-*-323"
7698 "l-*-321"
7699 "l-*-319"
7700 "l-*-317"
7701 "l-*-315"
7702 "l-*-313"
7703 "l-*-310"
7704 "l-*-308"
7705 "l-*-306"
7706 "l-*-304"
7707 "l-*-302"
7708 "l-*-300"
7709 "l-*-298"
7710 "l-*-296"
7711 "l-*-294"
7712 "l-*-292"
7713 "l-*-290"
7714 "l-*-288"
7715 "l-*-286"
7716 "l-*-284"
7717 "l-*-282"
7718 "l-*-280"
7719 "l-*-278"
7720 "l-*-276"
7721 "l-*-274"
7722 "l-*-272"
7723 "l-*-270"
7724 "l-*-268"
7725 "l-*-266"
7726 "l-*-264"
7727 "l-*-262"
7728 "l-*-260"
7729 "l-*-258"
7730 "l-*-257"
7731 "l-*-256"
7732 "l-*-255"
7733 "l-*-254"
7734 "l-*-252"
7735 "l-*-250"
7736 "l-*-248"
7737 "l-*-245"
7738 "l-*-243"
7739 "l-*-241"
7740 "l-*-239"
7741 "l-*-237"
7742 "l-*-235"
7743 "l-*-233"
7744 "l-*-231"
7745 "l-*-229"
7746 "l-*-227"
7747 "l-*-225"
7748 "l-*-223"
7749 "l-*-221"
7750 "l-*-219"
7751 "l-*-217"
7752 "l-*-215"
7753 "l-*-213"
7754 "l-*-211"
7755 "l-*-209"))
7756 #(ribcage
7757 (define-structure
7758 define-expansion-accessors
7759 define-expansion-constructors)
7760 ((top) (top) (top))
7761 ("l-*-47" "l-*-46" "l-*-45"))
7762 #(ribcage () () ()))
7763 (hygiene guile))))
7764 ropt-33582)))
7765 tmp-33705)
7766 (let ((tmp-33739
7767 ($sc-dispatch args-33580 '((any any) . any))))
7768 (if (if tmp-33739
7769 (@apply
7770 (lambda (a-33743 init-33744 b-33745)
7771 (if (symbol? a-33743)
7772 #t
7773 (if (if (vector? a-33743)
7774 (if (= (vector-length a-33743) 4)
7775 (eq? (vector-ref a-33743 0)
7776 'syntax-object)
7777 #f)
7778 #f)
7779 (symbol? (vector-ref a-33743 1))
7780 #f)))
7781 tmp-33739)
7782 #f)
7783 (@apply
7784 (lambda (a-33772 init-33773 b-33774)
7785 (opt-33337
7786 b-33774
7787 req-33581
7788 (cons (list a-33772 init-33773) ropt-33582)))
7789 tmp-33739)
7790 (let ((tmp-33775
7791 ($sc-dispatch args-33580 '(any . any))))
7792 (if (if tmp-33775
7793 (@apply
7794 (lambda (a-33779 b-33780)
7795 (eq? (syntax->datum a-33779) #:key))
7796 tmp-33775)
7797 #f)
7798 (@apply
7799 (lambda (a-33781 b-33782)
7800 (key-33338
7801 b-33782
7802 req-33581
7803 (reverse ropt-33582)
7804 '()))
7805 tmp-33775)
7806 (let ((tmp-33785
7807 ($sc-dispatch args-33580 '(any any))))
7808 (if (if tmp-33785
7809 (@apply
7810 (lambda (a-33789 b-33790)
7811 (eq? (syntax->datum a-33789)
7812 #:rest))
7813 tmp-33785)
7814 #f)
7815 (@apply
7816 (lambda (a-33791 b-33792)
7817 (rest-33339
7818 b-33792
7819 req-33581
7820 (reverse ropt-33582)
7821 '()))
7822 tmp-33785)
7823 (let ((tmp-33795 (list args-33580)))
7824 (if (@apply
7825 (lambda (r-33797)
7826 (if (symbol? r-33797)
7827 #t
7828 (if (if (vector? r-33797)
7829 (if (= (vector-length
7830 r-33797)
7831 4)
7832 (eq? (vector-ref
7833 r-33797
7834 0)
7835 'syntax-object)
7836 #f)
7837 #f)
7838 (symbol?
7839 (vector-ref r-33797 1))
7840 #f)))
7841 tmp-33795)
7842 (@apply
7843 (lambda (r-33827)
7844 (rest-33339
7845 r-33827
7846 req-33581
7847 (reverse ropt-33582)
7848 '()))
7849 tmp-33795)
7850 (syntax-violation
7851 'lambda*
7852 "invalid optional argument list"
7853 orig-args-33335
7854 args-33580)))))))))))))))
7855 (key-33338
7856 (lambda (args-33846 req-33847 opt-33848 rkey-33849)
7857 (let ((tmp-33851 ($sc-dispatch args-33846 '())))
7858 (if tmp-33851
7859 (@apply
7860 (lambda ()
7861 (check-33340
7862 req-33847
7863 opt-33848
7864 #f
7865 (cons #f (reverse rkey-33849))))
7866 tmp-33851)
7867 (let ((tmp-33973
7868 ($sc-dispatch args-33846 '(any . any))))
7869 (if (if tmp-33973
7870 (@apply
7871 (lambda (a-33977 b-33978)
7872 (if (symbol? a-33977)
7873 #t
7874 (if (if (vector? a-33977)
7875 (if (= (vector-length a-33977) 4)
7876 (eq? (vector-ref a-33977 0)
7877 'syntax-object)
7878 #f)
7879 #f)
7880 (symbol? (vector-ref a-33977 1))
7881 #f)))
7882 tmp-33973)
7883 #f)
7884 (@apply
7885 (lambda (a-34005 b-34006)
7886 (let ((tmp-34007
7887 (symbol->keyword (syntax->datum a-34005))))
7888 (key-33338
7889 b-34006
7890 req-33847
7891 opt-33848
7892 (cons (cons tmp-34007
7893 (cons a-34005
7894 '(#(syntax-object
7895 #f
7896 ((top)
7897 #(ribcage () () ())
7898 #(ribcage
7899 #(k)
7900 #((top))
7901 #("l-*-2618"))
7902 #(ribcage
7903 #(a b)
7904 #((top) (top))
7905 #("l-*-2612"
7906 "l-*-2613"))
7907 #(ribcage () () ())
7908 #(ribcage
7909 #(args req opt rkey)
7910 #((top)
7911 (top)
7912 (top)
7913 (top))
7914 #("l-*-2601"
7915 "l-*-2602"
7916 "l-*-2603"
7917 "l-*-2604"))
7918 #(ribcage
7919 (check rest
7920 key
7921 opt
7922 req)
7923 ((top)
7924 (top)
7925 (top)
7926 (top)
7927 (top))
7928 ("l-*-2491"
7929 "l-*-2489"
7930 "l-*-2487"
7931 "l-*-2485"
7932 "l-*-2483"))
7933 #(ribcage
7934 #(orig-args)
7935 #((top))
7936 #("l-*-2482"))
7937 #(ribcage
7938 (lambda-var-list
7939 gen-var
7940 strip
7941 expand-lambda-case
7942 lambda*-formals
7943 expand-simple-lambda
7944 lambda-formals
7945 ellipsis?
7946 expand-void
7947 eval-local-transformer
7948 expand-local-syntax
7949 expand-body
7950 expand-macro
7951 expand-call
7952 expand-expr
7953 expand
7954 syntax-type
7955 parse-when-list
7956 expand-install-global
7957 expand-top-sequence
7958 expand-sequence
7959 source-wrap
7960 wrap
7961 bound-id-member?
7962 distinct-bound-ids?
7963 valid-bound-ids?
7964 bound-id=?
7965 free-id=?
7966 with-transformer-environment
7967 transformer-environment
7968 resolve-identifier
7969 locally-bound-identifiers
7970 id-var-name
7971 same-marks?
7972 join-marks
7973 join-wraps
7974 smart-append
7975 make-binding-wrap
7976 extend-ribcage!
7977 make-empty-ribcage
7978 new-mark
7979 anti-mark
7980 the-anti-mark
7981 top-marked?
7982 top-wrap
7983 empty-wrap
7984 set-ribcage-labels!
7985 set-ribcage-marks!
7986 set-ribcage-symnames!
7987 ribcage-labels
7988 ribcage-marks
7989 ribcage-symnames
7990 ribcage?
7991 make-ribcage
7992 gen-labels
7993 gen-label
7994 make-rename
7995 rename-marks
7996 rename-new
7997 rename-old
7998 subst-rename?
7999 wrap-subst
8000 wrap-marks
8001 make-wrap
8002 id-sym-name&marks
8003 id-sym-name
8004 id?
8005 nonsymbol-id?
8006 global-extend
8007 macros-only-env
8008 extend-var-env
8009 extend-env
8010 null-env
8011 binding-value
8012 binding-type
8013 make-binding
8014 arg-check
8015 source-annotation
8016 no-source
8017 set-syntax-object-module!
8018 set-syntax-object-wrap!
8019 set-syntax-object-expression!
8020 syntax-object-module
8021 syntax-object-wrap
8022 syntax-object-expression
8023 syntax-object?
8024 make-syntax-object
8025 build-lexical-var
8026 build-letrec
8027 build-named-let
8028 build-let
8029 build-sequence
8030 build-data
8031 build-primref
8032 build-primcall
8033 build-lambda-case
8034 build-case-lambda
8035 build-simple-lambda
8036 build-global-definition
8037 build-global-assignment
8038 build-global-reference
8039 analyze-variable
8040 build-lexical-assignment
8041 build-lexical-reference
8042 build-dynlet
8043 build-conditional
8044 build-call
8045 build-void
8046 maybe-name-value!
8047 decorate-source
8048 get-global-definition-hook
8049 put-global-definition-hook
8050 session-id
8051 local-eval-hook
8052 top-level-eval-hook
8053 fx<
8054 fx=
8055 fx-
8056 fx+
8057 set-lambda-meta!
8058 lambda-meta
8059 lambda?
8060 make-dynlet
8061 make-letrec
8062 make-let
8063 make-lambda-case
8064 make-lambda
8065 make-seq
8066 make-primcall
8067 make-call
8068 make-conditional
8069 make-toplevel-define
8070 make-toplevel-set
8071 make-toplevel-ref
8072 make-module-set
8073 make-module-ref
8074 make-lexical-set
8075 make-lexical-ref
8076 make-primitive-ref
8077 make-const
8078 make-void)
8079 ((top)
8080 (top)
8081 (top)
8082 (top)
8083 (top)
8084 (top)
8085 (top)
8086 (top)
8087 (top)
8088 (top)
8089 (top)
8090 (top)
8091 (top)
8092 (top)
8093 (top)
8094 (top)
8095 (top)
8096 (top)
8097 (top)
8098 (top)
8099 (top)
8100 (top)
8101 (top)
8102 (top)
8103 (top)
8104 (top)
8105 (top)
8106 (top)
8107 (top)
8108 (top)
8109 (top)
8110 (top)
8111 (top)
8112 (top)
8113 (top)
8114 (top)
8115 (top)
8116 (top)
8117 (top)
8118 (top)
8119 (top)
8120 (top)
8121 (top)
8122 (top)
8123 (top)
8124 (top)
8125 (top)
8126 (top)
8127 (top)
8128 (top)
8129 (top)
8130 (top)
8131 (top)
8132 (top)
8133 (top)
8134 (top)
8135 (top)
8136 (top)
8137 (top)
8138 (top)
8139 (top)
8140 (top)
8141 (top)
8142 (top)
8143 (top)
8144 (top)
8145 (top)
8146 (top)
8147 (top)
8148 (top)
8149 (top)
8150 (top)
8151 (top)
8152 (top)
8153 (top)
8154 (top)
8155 (top)
8156 (top)
8157 (top)
8158 (top)
8159 (top)
8160 (top)
8161 (top)
8162 (top)
8163 (top)
8164 (top)
8165 (top)
8166 (top)
8167 (top)
8168 (top)
8169 (top)
8170 (top)
8171 (top)
8172 (top)
8173 (top)
8174 (top)
8175 (top)
8176 (top)
8177 (top)
8178 (top)
8179 (top)
8180 (top)
8181 (top)
8182 (top)
8183 (top)
8184 (top)
8185 (top)
8186 (top)
8187 (top)
8188 (top)
8189 (top)
8190 (top)
8191 (top)
8192 (top)
8193 (top)
8194 (top)
8195 (top)
8196 (top)
8197 (top)
8198 (top)
8199 (top)
8200 (top)
8201 (top)
8202 (top)
8203 (top)
8204 (top)
8205 (top)
8206 (top)
8207 (top)
8208 (top)
8209 (top)
8210 (top)
8211 (top)
8212 (top)
8213 (top)
8214 (top)
8215 (top)
8216 (top)
8217 (top)
8218 (top)
8219 (top))
8220 ("l-*-478"
8221 "l-*-476"
8222 "l-*-474"
8223 "l-*-472"
8224 "l-*-470"
8225 "l-*-468"
8226 "l-*-466"
8227 "l-*-464"
8228 "l-*-462"
8229 "l-*-460"
8230 "l-*-458"
8231 "l-*-456"
8232 "l-*-454"
8233 "l-*-452"
8234 "l-*-450"
8235 "l-*-448"
8236 "l-*-446"
8237 "l-*-444"
8238 "l-*-442"
8239 "l-*-440"
8240 "l-*-438"
8241 "l-*-436"
8242 "l-*-434"
8243 "l-*-432"
8244 "l-*-430"
8245 "l-*-428"
8246 "l-*-426"
8247 "l-*-424"
8248 "l-*-422"
8249 "l-*-420"
8250 "l-*-418"
8251 "l-*-416"
8252 "l-*-414"
8253 "l-*-412"
8254 "l-*-410"
8255 "l-*-408"
8256 "l-*-406"
8257 "l-*-404"
8258 "l-*-402"
8259 "l-*-401"
8260 "l-*-399"
8261 "l-*-396"
8262 "l-*-395"
8263 "l-*-394"
8264 "l-*-392"
8265 "l-*-391"
8266 "l-*-389"
8267 "l-*-387"
8268 "l-*-385"
8269 "l-*-383"
8270 "l-*-381"
8271 "l-*-379"
8272 "l-*-377"
8273 "l-*-375"
8274 "l-*-372"
8275 "l-*-370"
8276 "l-*-369"
8277 "l-*-367"
8278 "l-*-365"
8279 "l-*-363"
8280 "l-*-361"
8281 "l-*-360"
8282 "l-*-359"
8283 "l-*-358"
8284 "l-*-356"
8285 "l-*-355"
8286 "l-*-352"
8287 "l-*-350"
8288 "l-*-348"
8289 "l-*-346"
8290 "l-*-344"
8291 "l-*-342"
8292 "l-*-341"
8293 "l-*-340"
8294 "l-*-338"
8295 "l-*-336"
8296 "l-*-335"
8297 "l-*-332"
8298 "l-*-331"
8299 "l-*-329"
8300 "l-*-327"
8301 "l-*-325"
8302 "l-*-323"
8303 "l-*-321"
8304 "l-*-319"
8305 "l-*-317"
8306 "l-*-315"
8307 "l-*-313"
8308 "l-*-310"
8309 "l-*-308"
8310 "l-*-306"
8311 "l-*-304"
8312 "l-*-302"
8313 "l-*-300"
8314 "l-*-298"
8315 "l-*-296"
8316 "l-*-294"
8317 "l-*-292"
8318 "l-*-290"
8319 "l-*-288"
8320 "l-*-286"
8321 "l-*-284"
8322 "l-*-282"
8323 "l-*-280"
8324 "l-*-278"
8325 "l-*-276"
8326 "l-*-274"
8327 "l-*-272"
8328 "l-*-270"
8329 "l-*-268"
8330 "l-*-266"
8331 "l-*-264"
8332 "l-*-262"
8333 "l-*-260"
8334 "l-*-258"
8335 "l-*-257"
8336 "l-*-256"
8337 "l-*-255"
8338 "l-*-254"
8339 "l-*-252"
8340 "l-*-250"
8341 "l-*-248"
8342 "l-*-245"
8343 "l-*-243"
8344 "l-*-241"
8345 "l-*-239"
8346 "l-*-237"
8347 "l-*-235"
8348 "l-*-233"
8349 "l-*-231"
8350 "l-*-229"
8351 "l-*-227"
8352 "l-*-225"
8353 "l-*-223"
8354 "l-*-221"
8355 "l-*-219"
8356 "l-*-217"
8357 "l-*-215"
8358 "l-*-213"
8359 "l-*-211"
8360 "l-*-209"))
8361 #(ribcage
8362 (define-structure
8363 define-expansion-accessors
8364 define-expansion-constructors)
8365 ((top) (top) (top))
8366 ("l-*-47"
8367 "l-*-46"
8368 "l-*-45"))
8369 #(ribcage () () ()))
8370 (hygiene guile)))))
8371 rkey-33849))))
8372 tmp-33973)
8373 (let ((tmp-34010
8374 ($sc-dispatch args-33846 '((any any) . any))))
8375 (if (if tmp-34010
8376 (@apply
8377 (lambda (a-34014 init-34015 b-34016)
8378 (if (symbol? a-34014)
8379 #t
8380 (if (if (vector? a-34014)
8381 (if (= (vector-length a-34014) 4)
8382 (eq? (vector-ref a-34014 0)
8383 'syntax-object)
8384 #f)
8385 #f)
8386 (symbol? (vector-ref a-34014 1))
8387 #f)))
8388 tmp-34010)
8389 #f)
8390 (@apply
8391 (lambda (a-34043 init-34044 b-34045)
8392 (let ((tmp-34046
8393 (symbol->keyword
8394 (syntax->datum a-34043))))
8395 (key-33338
8396 b-34045
8397 req-33847
8398 opt-33848
8399 (cons (list tmp-34046 a-34043 init-34044)
8400 rkey-33849))))
8401 tmp-34010)
8402 (let ((tmp-34049
8403 ($sc-dispatch
8404 args-33846
8405 '((any any any) . any))))
8406 (if (if tmp-34049
8407 (@apply
8408 (lambda (a-34053
8409 init-34054
8410 k-34055
8411 b-34056)
8412 (if (if (symbol? a-34053)
8413 #t
8414 (if (if (vector? a-34053)
8415 (if (= (vector-length
8416 a-34053)
8417 4)
8418 (eq? (vector-ref
8419 a-34053
8420 0)
8421 'syntax-object)
8422 #f)
8423 #f)
8424 (symbol?
8425 (vector-ref a-34053 1))
8426 #f))
8427 (keyword? (syntax->datum k-34055))
8428 #f))
8429 tmp-34049)
8430 #f)
8431 (@apply
8432 (lambda (a-34083 init-34084 k-34085 b-34086)
8433 (key-33338
8434 b-34086
8435 req-33847
8436 opt-33848
8437 (cons (list k-34085 a-34083 init-34084)
8438 rkey-33849)))
8439 tmp-34049)
8440 (let ((tmp-34087
8441 ($sc-dispatch args-33846 '(any))))
8442 (if (if tmp-34087
8443 (@apply
8444 (lambda (aok-34091)
8445 (eq? (syntax->datum aok-34091)
8446 #:allow-other-keys))
8447 tmp-34087)
8448 #f)
8449 (@apply
8450 (lambda (aok-34092)
8451 (check-33340
8452 req-33847
8453 opt-33848
8454 #f
8455 (cons #t (reverse rkey-33849))))
8456 tmp-34087)
8457 (let ((tmp-34211
8458 ($sc-dispatch
8459 args-33846
8460 '(any any any))))
8461 (if (if tmp-34211
8462 (@apply
8463 (lambda (aok-34215
8464 a-34216
8465 b-34217)
8466 (if (eq? (syntax->datum
8467 aok-34215)
8468 #:allow-other-keys)
8469 (eq? (syntax->datum a-34216)
8470 #:rest)
8471 #f))
8472 tmp-34211)
8473 #f)
8474 (@apply
8475 (lambda (aok-34218 a-34219 b-34220)
8476 (rest-33339
8477 b-34220
8478 req-33847
8479 opt-33848
8480 (cons #t (reverse rkey-33849))))
8481 tmp-34211)
8482 (let ((tmp-34223
8483 ($sc-dispatch
8484 args-33846
8485 '(any . any))))
8486 (if (if tmp-34223
8487 (@apply
8488 (lambda (aok-34227 r-34228)
8489 (if (eq? (syntax->datum
8490 aok-34227)
8491 #:allow-other-keys)
8492 (if (symbol? r-34228)
8493 #t
8494 (if (if (vector?
8495 r-34228)
8496 (if (= (vector-length
8497 r-34228)
8498 4)
8499 (eq? (vector-ref
8500 r-34228
8501 0)
8502 'syntax-object)
8503 #f)
8504 #f)
8505 (symbol?
8506 (vector-ref
8507 r-34228
8508 1))
8509 #f))
8510 #f))
8511 tmp-34223)
8512 #f)
8513 (@apply
8514 (lambda (aok-34255 r-34256)
8515 (rest-33339
8516 r-34256
8517 req-33847
8518 opt-33848
8519 (cons #t
8520 (reverse rkey-33849))))
8521 tmp-34223)
8522 (let ((tmp-34259
8523 ($sc-dispatch
8524 args-33846
8525 '(any any))))
8526 (if (if tmp-34259
8527 (@apply
8528 (lambda (a-34263 b-34264)
8529 (eq? (syntax->datum
8530 a-34263)
8531 #:rest))
8532 tmp-34259)
8533 #f)
8534 (@apply
8535 (lambda (a-34265 b-34266)
8536 (rest-33339
8537 b-34266
8538 req-33847
8539 opt-33848
8540 (cons #f
8541 (reverse
8542 rkey-33849))))
8543 tmp-34259)
8544 (let ((tmp-34269
8545 (list args-33846)))
8546 (if (@apply
8547 (lambda (r-34271)
8548 (if (symbol? r-34271)
8549 #t
8550 (if (if (vector?
8551 r-34271)
8552 (if (= (vector-length
8553 r-34271)
8554 4)
8555 (eq? (vector-ref
8556 r-34271
8557 0)
8558 'syntax-object)
8559 #f)
8560 #f)
8561 (symbol?
8562 (vector-ref
8563 r-34271
8564 1))
8565 #f)))
8566 tmp-34269)
8567 (@apply
8568 (lambda (r-34301)
8569 (rest-33339
8570 r-34301
8571 req-33847
8572 opt-33848
8573 (cons #f
8574 (reverse
8575 rkey-33849))))
8576 tmp-34269)
8577 (syntax-violation
8578 'lambda*
8579 "invalid keyword argument list"
8580 orig-args-33335
8581 args-33846)))))))))))))))))))))
8582 (rest-33339
8583 (lambda (args-34329 req-34330 opt-34331 kw-34332)
8584 (let ((tmp-34334 (list args-34329)))
8585 (if (@apply
8586 (lambda (r-34336)
8587 (if (symbol? r-34336)
8588 #t
8589 (if (if (vector? r-34336)
8590 (if (= (vector-length r-34336) 4)
8591 (eq? (vector-ref r-34336 0) 'syntax-object)
8592 #f)
8593 #f)
8594 (symbol? (vector-ref r-34336 1))
8595 #f)))
8596 tmp-34334)
8597 (@apply
8598 (lambda (r-34366)
8599 (check-33340
8600 req-34330
8601 opt-34331
8602 r-34366
8603 kw-34332))
8604 tmp-34334)
8605 (syntax-violation
8606 'lambda*
8607 "invalid rest argument"
8608 orig-args-33335
8609 args-34329)))))
8610 (check-33340
8611 (lambda (req-34494 opt-34495 rest-34496 kw-34497)
8612 (if (distinct-bound-ids?-4577
8613 (append
8614 req-34494
8615 (map car opt-34495)
8616 (if rest-34496 (list rest-34496) '())
8617 (if (pair? kw-34497)
8618 (map cadr (cdr kw-34497))
8619 '())))
8620 (values req-34494 opt-34495 rest-34496 kw-34497)
8621 (syntax-violation
8622 'lambda*
8623 "duplicate identifier in argument list"
8624 orig-args-33335)))))
8625 (req-33336 orig-args-33335 '()))))
8626 (expand-lambda-case-4598
8627 (lambda (e-34606
8628 r-34607
8629 w-34608
8630 s-34609
8631 mod-34610
8632 get-formals-34611
8633 clauses-34612)
8634 (letrec*
8635 ((parse-req-34613
8636 (lambda (req-34746
8637 opt-34747
8638 rest-34748
8639 kw-34749
8640 body-34750)
8641 (let ((vars-34751 (map gen-var-4600 req-34746))
8642 (labels-34752 (gen-labels-4553 req-34746)))
8643 (let ((r*-34753
8644 (extend-var-env-4546
8645 labels-34752
8646 vars-34751
8647 r-34607))
8648 (w*-34754
8649 (make-binding-wrap-4564
8650 req-34746
8651 labels-34752
8652 w-34608)))
8653 (parse-opt-34614
8654 (map syntax->datum req-34746)
8655 opt-34747
8656 rest-34748
8657 kw-34749
8658 body-34750
8659 (reverse vars-34751)
8660 r*-34753
8661 w*-34754
8662 '()
8663 '())))))
8664 (parse-opt-34614
8665 (lambda (req-34951
8666 opt-34952
8667 rest-34953
8668 kw-34954
8669 body-34955
8670 vars-34956
8671 r*-34957
8672 w*-34958
8673 out-34959
8674 inits-34960)
8675 (if (pair? opt-34952)
8676 (let ((tmp-34961 (car opt-34952)))
8677 (let ((tmp-34962 ($sc-dispatch tmp-34961 '(any any))))
8678 (if tmp-34962
8679 (@apply
8680 (lambda (id-34964 i-34965)
8681 (let ((v-34966
8682 (let ((id-34974
8683 (if (if (vector? id-34964)
8684 (if (= (vector-length
8685 id-34964)
8686 4)
8687 (eq? (vector-ref
8688 id-34964
8689 0)
8690 'syntax-object)
8691 #f)
8692 #f)
8693 (vector-ref id-34964 1)
8694 id-34964)))
8695 (gensym
8696 (string-append
8697 (symbol->string id-34974)
8698 "-")))))
8699 (let ((l-34967 (gen-labels-4553 (list v-34966))))
8700 (let ((r**-34968
8701 (extend-var-env-4546
8702 l-34967
8703 (list v-34966)
8704 r*-34957)))
8705 (let ((w**-34969
8706 (make-binding-wrap-4564
8707 (list id-34964)
8708 l-34967
8709 w*-34958)))
8710 (parse-opt-34614
8711 req-34951
8712 (cdr opt-34952)
8713 rest-34953
8714 kw-34954
8715 body-34955
8716 (cons v-34966 vars-34956)
8717 r**-34968
8718 w**-34969
8719 (cons (syntax->datum id-34964) out-34959)
8720 (cons (expand-4586
8721 i-34965
8722 r*-34957
8723 w*-34958
8724 mod-34610)
8725 inits-34960)))))))
8726 tmp-34962)
8727 (syntax-violation
8728 #f
8729 "source expression failed to match any pattern"
8730 tmp-34961))))
8731 (if rest-34953
8732 (let ((v-35232
8733 (let ((id-35242
8734 (if (if (vector? rest-34953)
8735 (if (= (vector-length rest-34953) 4)
8736 (eq? (vector-ref rest-34953 0)
8737 'syntax-object)
8738 #f)
8739 #f)
8740 (vector-ref rest-34953 1)
8741 rest-34953)))
8742 (gensym
8743 (string-append
8744 (symbol->string id-35242)
8745 "-")))))
8746 (let ((l-35233 (gen-labels-4553 (list v-35232))))
8747 (let ((r*-35234
8748 (extend-var-env-4546
8749 l-35233
8750 (list v-35232)
8751 r*-34957)))
8752 (let ((w*-35235
8753 (make-binding-wrap-4564
8754 (list rest-34953)
8755 l-35233
8756 w*-34958)))
8757 (parse-kw-34615
8758 req-34951
8759 (if (pair? out-34959) (reverse out-34959) #f)
8760 (syntax->datum rest-34953)
8761 (if (pair? kw-34954) (cdr kw-34954) kw-34954)
8762 body-34955
8763 (cons v-35232 vars-34956)
8764 r*-35234
8765 w*-35235
8766 (if (pair? kw-34954) (car kw-34954) #f)
8767 '()
8768 inits-34960)))))
8769 (parse-kw-34615
8770 req-34951
8771 (if (pair? out-34959) (reverse out-34959) #f)
8772 #f
8773 (if (pair? kw-34954) (cdr kw-34954) kw-34954)
8774 body-34955
8775 vars-34956
8776 r*-34957
8777 w*-34958
8778 (if (pair? kw-34954) (car kw-34954) #f)
8779 '()
8780 inits-34960)))))
8781 (parse-kw-34615
8782 (lambda (req-35425
8783 opt-35426
8784 rest-35427
8785 kw-35428
8786 body-35429
8787 vars-35430
8788 r*-35431
8789 w*-35432
8790 aok-35433
8791 out-35434
8792 inits-35435)
8793 (if (pair? kw-35428)
8794 (let ((tmp-35436 (car kw-35428)))
8795 (let ((tmp-35437
8796 ($sc-dispatch tmp-35436 '(any any any))))
8797 (if tmp-35437
8798 (@apply
8799 (lambda (k-35439 id-35440 i-35441)
8800 (let ((v-35442
8801 (let ((id-35450
8802 (if (if (vector? id-35440)
8803 (if (= (vector-length
8804 id-35440)
8805 4)
8806 (eq? (vector-ref
8807 id-35440
8808 0)
8809 'syntax-object)
8810 #f)
8811 #f)
8812 (vector-ref id-35440 1)
8813 id-35440)))
8814 (gensym
8815 (string-append
8816 (symbol->string id-35450)
8817 "-")))))
8818 (let ((l-35443 (gen-labels-4553 (list v-35442))))
8819 (let ((r**-35444
8820 (extend-var-env-4546
8821 l-35443
8822 (list v-35442)
8823 r*-35431)))
8824 (let ((w**-35445
8825 (make-binding-wrap-4564
8826 (list id-35440)
8827 l-35443
8828 w*-35432)))
8829 (parse-kw-34615
8830 req-35425
8831 opt-35426
8832 rest-35427
8833 (cdr kw-35428)
8834 body-35429
8835 (cons v-35442 vars-35430)
8836 r**-35444
8837 w**-35445
8838 aok-35433
8839 (cons (list (syntax->datum k-35439)
8840 (syntax->datum id-35440)
8841 v-35442)
8842 out-35434)
8843 (cons (expand-4586
8844 i-35441
8845 r*-35431
8846 w*-35432
8847 mod-34610)
8848 inits-35435)))))))
8849 tmp-35437)
8850 (syntax-violation
8851 #f
8852 "source expression failed to match any pattern"
8853 tmp-35436))))
8854 (parse-body-34616
8855 req-35425
8856 opt-35426
8857 rest-35427
8858 (if (if aok-35433 aok-35433 (pair? out-35434))
8859 (cons aok-35433 (reverse out-35434))
8860 #f)
8861 body-35429
8862 (reverse vars-35430)
8863 r*-35431
8864 w*-35432
8865 (reverse inits-35435)
8866 '()))))
8867 (parse-body-34616
8868 (lambda (req-35717
8869 opt-35718
8870 rest-35719
8871 kw-35720
8872 body-35721
8873 vars-35722
8874 r*-35723
8875 w*-35724
8876 inits-35725
8877 meta-35726)
8878 (let ((tmp-35728
8879 ($sc-dispatch body-35721 '(any any . each-any))))
8880 (if (if tmp-35728
8881 (@apply
8882 (lambda (docstring-35732 e1-35733 e2-35734)
8883 (string? (syntax->datum docstring-35732)))
8884 tmp-35728)
8885 #f)
8886 (@apply
8887 (lambda (docstring-35735 e1-35736 e2-35737)
8888 (parse-body-34616
8889 req-35717
8890 opt-35718
8891 rest-35719
8892 kw-35720
8893 (cons e1-35736 e2-35737)
8894 vars-35722
8895 r*-35723
8896 w*-35724
8897 inits-35725
8898 (append
8899 meta-35726
8900 (list (cons 'documentation
8901 (syntax->datum docstring-35735))))))
8902 tmp-35728)
8903 (let ((tmp-35738
8904 ($sc-dispatch
8905 body-35721
8906 '(#(vector #(each (any . any)))
8907 any
8908 .
8909 each-any))))
8910 (if tmp-35738
8911 (@apply
8912 (lambda (k-35742 v-35743 e1-35744 e2-35745)
8913 (parse-body-34616
8914 req-35717
8915 opt-35718
8916 rest-35719
8917 kw-35720
8918 (cons e1-35744 e2-35745)
8919 vars-35722
8920 r*-35723
8921 w*-35724
8922 inits-35725
8923 (append
8924 meta-35726
8925 (syntax->datum (map cons k-35742 v-35743)))))
8926 tmp-35738)
8927 (let ((tmp-35746
8928 ($sc-dispatch body-35721 '(any . each-any))))
8929 (if tmp-35746
8930 (@apply
8931 (lambda (e1-35750 e2-35751)
8932 (values
8933 meta-35726
8934 req-35717
8935 opt-35718
8936 rest-35719
8937 kw-35720
8938 inits-35725
8939 vars-35722
8940 (expand-body-4590
8941 (cons e1-35750 e2-35751)
8942 (let ((x-35763
8943 (begin
8944 (if (if (pair? e-34606)
8945 s-34609
8946 #f)
8947 (set-source-properties!
8948 e-34606
8949 s-34609))
8950 e-34606)))
8951 (if (if (null? (car w-34608))
8952 (null? (cdr w-34608))
8953 #f)
8954 x-35763
8955 (if (if (vector? x-35763)
8956 (if (= (vector-length x-35763) 4)
8957 (eq? (vector-ref x-35763 0)
8958 'syntax-object)
8959 #f)
8960 #f)
8961 (let ((expression-35795
8962 (vector-ref x-35763 1))
8963 (wrap-35796
8964 (let ((w2-35804
8965 (vector-ref
8966 x-35763
8967 2)))
8968 (let ((m1-35805
8969 (car w-34608))
8970 (s1-35806
8971 (cdr w-34608)))
8972 (if (null? m1-35805)
8973 (if (null? s1-35806)
8974 w2-35804
8975 (cons (car w2-35804)
8976 (let ((m2-35821
8977 (cdr w2-35804)))
8978 (if (null? m2-35821)
8979 s1-35806
8980 (append
8981 s1-35806
8982 m2-35821)))))
8983 (cons (let ((m2-35829
8984 (car w2-35804)))
8985 (if (null? m2-35829)
8986 m1-35805
8987 (append
8988 m1-35805
8989 m2-35829)))
8990 (let ((m2-35837
8991 (cdr w2-35804)))
8992 (if (null? m2-35837)
8993 s1-35806
8994 (append
8995 s1-35806
8996 m2-35837))))))))
8997 (module-35797
8998 (vector-ref x-35763 3)))
8999 (vector
9000 'syntax-object
9001 expression-35795
9002 wrap-35796
9003 module-35797))
9004 (if (null? x-35763)
9005 x-35763
9006 (vector
9007 'syntax-object
9008 x-35763
9009 w-34608
9010 mod-34610)))))
9011 r*-35723
9012 w*-35724
9013 mod-34610)))
9014 tmp-35746)
9015 (syntax-violation
9016 #f
9017 "source expression failed to match any pattern"
9018 body-35721))))))))))
9019 (let ((tmp-34618 ($sc-dispatch clauses-34612 '())))
9020 (if tmp-34618
9021 (@apply (lambda () (values '() #f)) tmp-34618)
9022 (let ((tmp-34622
9023 ($sc-dispatch
9024 clauses-34612
9025 '((any any . each-any)
9026 .
9027 #(each (any any . each-any))))))
9028 (if tmp-34622
9029 (@apply
9030 (lambda (args-34626
9031 e1-34627
9032 e2-34628
9033 args*-34629
9034 e1*-34630
9035 e2*-34631)
9036 (call-with-values
9037 (lambda () (get-formals-34611 args-34626))
9038 (lambda (req-34632 opt-34633 rest-34634 kw-34635)
9039 (call-with-values
9040 (lambda ()
9041 (parse-req-34613
9042 req-34632
9043 opt-34633
9044 rest-34634
9045 kw-34635
9046 (cons e1-34627 e2-34628)))
9047 (lambda (meta-34702
9048 req-34703
9049 opt-34704
9050 rest-34705
9051 kw-34706
9052 inits-34707
9053 vars-34708
9054 body-34709)
9055 (call-with-values
9056 (lambda ()
9057 (expand-lambda-case-4598
9058 e-34606
9059 r-34607
9060 w-34608
9061 s-34609
9062 mod-34610
9063 get-formals-34611
9064 (map (lambda (tmp-2961-34710
9065 tmp-2960-34711
9066 tmp-2959-34712)
9067 (cons tmp-2959-34712
9068 (cons tmp-2960-34711
9069 tmp-2961-34710)))
9070 e2*-34631
9071 e1*-34630
9072 args*-34629)))
9073 (lambda (meta*-34713 else*-34714)
9074 (values
9075 (append meta-34702 meta*-34713)
9076 (make-struct/no-tail
9077 (vector-ref %expanded-vtables 15)
9078 s-34609
9079 req-34703
9080 opt-34704
9081 rest-34705
9082 kw-34706
9083 inits-34707
9084 vars-34708
9085 body-34709
9086 else*-34714)))))))))
9087 tmp-34622)
9088 (syntax-violation
9089 #f
9090 "source expression failed to match any pattern"
9091 clauses-34612))))))))
9092 (strip-4599
9093 (lambda (x-35864 w-35865)
9094 (if (memq 'top (car w-35865))
9095 x-35864
9096 (letrec*
9097 ((f-35866
9098 (lambda (x-35869)
9099 (if (if (vector? x-35869)
9100 (if (= (vector-length x-35869) 4)
9101 (eq? (vector-ref x-35869 0) 'syntax-object)
9102 #f)
9103 #f)
9104 (strip-4599
9105 (vector-ref x-35869 1)
9106 (vector-ref x-35869 2))
9107 (if (pair? x-35869)
9108 (let ((a-35888 (f-35866 (car x-35869)))
9109 (d-35889 (f-35866 (cdr x-35869))))
9110 (if (if (eq? a-35888 (car x-35869))
9111 (eq? d-35889 (cdr x-35869))
9112 #f)
9113 x-35869
9114 (cons a-35888 d-35889)))
9115 (if (vector? x-35869)
9116 (let ((old-35892 (vector->list x-35869)))
9117 (let ((new-35893 (map f-35866 old-35892)))
9118 (letrec*
9119 ((lp-35894
9120 (lambda (l1-35991 l2-35992)
9121 (if (null? l1-35991)
9122 x-35869
9123 (if (eq? (car l1-35991) (car l2-35992))
9124 (lp-35894 (cdr l1-35991) (cdr l2-35992))
9125 (list->vector new-35893))))))
9126 (lp-35894 old-35892 new-35893))))
9127 x-35869))))))
9128 (f-35866 x-35864)))))
9129 (gen-var-4600
9130 (lambda (id-34758)
9131 (let ((id-34759
9132 (if (if (vector? id-34758)
9133 (if (= (vector-length id-34758) 4)
9134 (eq? (vector-ref id-34758 0) 'syntax-object)
9135 #f)
9136 #f)
9137 (vector-ref id-34758 1)
9138 id-34758)))
9139 (gensym
9140 (string-append (symbol->string id-34759) "-")))))
9141 (lambda-var-list-4601
9142 (lambda (vars-35993)
9143 (letrec*
9144 ((lvl-35994
9145 (lambda (vars-35997 ls-35998 w-35999)
9146 (if (pair? vars-35997)
9147 (lvl-35994
9148 (cdr vars-35997)
9149 (cons (let ((x-36003 (car vars-35997)))
9150 (if (if (null? (car w-35999))
9151 (null? (cdr w-35999))
9152 #f)
9153 x-36003
9154 (if (if (vector? x-36003)
9155 (if (= (vector-length x-36003) 4)
9156 (eq? (vector-ref x-36003 0)
9157 'syntax-object)
9158 #f)
9159 #f)
9160 (let ((expression-36021 (vector-ref x-36003 1))
9161 (wrap-36022
9162 (let ((w2-36030
9163 (vector-ref x-36003 2)))
9164 (let ((m1-36031 (car w-35999))
9165 (s1-36032 (cdr w-35999)))
9166 (if (null? m1-36031)
9167 (if (null? s1-36032)
9168 w2-36030
9169 (cons (car w2-36030)
9170 (let ((m2-36047
9171 (cdr w2-36030)))
9172 (if (null? m2-36047)
9173 s1-36032
9174 (append
9175 s1-36032
9176 m2-36047)))))
9177 (cons (let ((m2-36055
9178 (car w2-36030)))
9179 (if (null? m2-36055)
9180 m1-36031
9181 (append
9182 m1-36031
9183 m2-36055)))
9184 (let ((m2-36063
9185 (cdr w2-36030)))
9186 (if (null? m2-36063)
9187 s1-36032
9188 (append
9189 s1-36032
9190 m2-36063))))))))
9191 (module-36023 (vector-ref x-36003 3)))
9192 (vector
9193 'syntax-object
9194 expression-36021
9195 wrap-36022
9196 module-36023))
9197 (if (null? x-36003)
9198 x-36003
9199 (vector
9200 'syntax-object
9201 x-36003
9202 w-35999
9203 #f)))))
9204 ls-35998)
9205 w-35999)
9206 (if (if (symbol? vars-35997)
9207 #t
9208 (if (if (vector? vars-35997)
9209 (if (= (vector-length vars-35997) 4)
9210 (eq? (vector-ref vars-35997 0) 'syntax-object)
9211 #f)
9212 #f)
9213 (symbol? (vector-ref vars-35997 1))
9214 #f))
9215 (cons (if (if (null? (car w-35999))
9216 (null? (cdr w-35999))
9217 #f)
9218 vars-35997
9219 (if (if (vector? vars-35997)
9220 (if (= (vector-length vars-35997) 4)
9221 (eq? (vector-ref vars-35997 0)
9222 'syntax-object)
9223 #f)
9224 #f)
9225 (let ((expression-36133
9226 (vector-ref vars-35997 1))
9227 (wrap-36134
9228 (let ((w2-36144
9229 (vector-ref vars-35997 2)))
9230 (let ((m1-36145 (car w-35999))
9231 (s1-36146 (cdr w-35999)))
9232 (if (null? m1-36145)
9233 (if (null? s1-36146)
9234 w2-36144
9235 (cons (car w2-36144)
9236 (let ((m2-36163
9237 (cdr w2-36144)))
9238 (if (null? m2-36163)
9239 s1-36146
9240 (append
9241 s1-36146
9242 m2-36163)))))
9243 (cons (let ((m2-36171
9244 (car w2-36144)))
9245 (if (null? m2-36171)
9246 m1-36145
9247 (append
9248 m1-36145
9249 m2-36171)))
9250 (let ((m2-36179
9251 (cdr w2-36144)))
9252 (if (null? m2-36179)
9253 s1-36146
9254 (append
9255 s1-36146
9256 m2-36179))))))))
9257 (module-36135 (vector-ref vars-35997 3)))
9258 (vector
9259 'syntax-object
9260 expression-36133
9261 wrap-36134
9262 module-36135))
9263 (if (null? vars-35997)
9264 vars-35997
9265 (vector
9266 'syntax-object
9267 vars-35997
9268 w-35999
9269 #f))))
9270 ls-35998)
9271 (if (null? vars-35997)
9272 ls-35998
9273 (if (if (vector? vars-35997)
9274 (if (= (vector-length vars-35997) 4)
9275 (eq? (vector-ref vars-35997 0) 'syntax-object)
9276 #f)
9277 #f)
9278 (lvl-35994
9279 (vector-ref vars-35997 1)
9280 ls-35998
9281 (let ((w2-36220 (vector-ref vars-35997 2)))
9282 (let ((m1-36221 (car w-35999))
9283 (s1-36222 (cdr w-35999)))
9284 (if (null? m1-36221)
9285 (if (null? s1-36222)
9286 w2-36220
9287 (cons (car w2-36220)
9288 (let ((m2-36233 (cdr w2-36220)))
9289 (if (null? m2-36233)
9290 s1-36222
9291 (append s1-36222 m2-36233)))))
9292 (cons (let ((m2-36241 (car w2-36220)))
9293 (if (null? m2-36241)
9294 m1-36221
9295 (append m1-36221 m2-36241)))
9296 (let ((m2-36249 (cdr w2-36220)))
9297 (if (null? m2-36249)
9298 s1-36222
9299 (append s1-36222 m2-36249))))))))
9300 (cons vars-35997 ls-35998))))))))
9301 (lvl-35994 vars-35993 '() '(()))))))
9302 (begin
9303 (set! session-id-4511
9304 (let ((v-18812
9305 (module-variable
9306 (current-module)
9307 'syntax-session-id)))
9308 (lambda () ((variable-ref v-18812)))))
9309 (set! transformer-environment-4572
9310 (make-fluid
9311 (lambda (k-17456)
9312 (error "called outside the dynamic extent of a syntax transformer"))))
9313 (module-define!
9314 (current-module)
9315 'letrec-syntax
9316 (make-syntax-transformer
9317 'letrec-syntax
9318 'local-syntax
9319 #t))
9320 (module-define!
9321 (current-module)
9322 'let-syntax
9323 (make-syntax-transformer
9324 'let-syntax
9325 'local-syntax
9326 #f))
9327 (global-extend-4548
9328 'core
9329 'syntax-parameterize
9330 (lambda (e-4728 r-4729 w-4730 s-4731 mod-4732)
9331 (let ((tmp-4734
9332 ($sc-dispatch
9333 e-4728
9334 '(_ #(each (any any)) any . each-any))))
9335 (if (if tmp-4734
9336 (@apply
9337 (lambda (var-4738 val-4739 e1-4740 e2-4741)
9338 (valid-bound-ids?-4576 var-4738))
9339 tmp-4734)
9340 #f)
9341 (@apply
9342 (lambda (var-4826 val-4827 e1-4828 e2-4829)
9343 (let ((names-4830
9344 (map (lambda (x-5170)
9345 (call-with-values
9346 (lambda ()
9347 (resolve-identifier-4571
9348 x-5170
9349 w-4730
9350 r-4729
9351 mod-4732
9352 #f))
9353 (lambda (type-5173 value-5174 mod-5175)
9354 (if (eqv? type-5173 'displaced-lexical)
9355 (syntax-violation
9356 'syntax-parameterize
9357 "identifier out of context"
9358 e-4728
9359 (let ((x-5188
9360 (begin
9361 (if (if (pair? x-5170)
9362 s-4731
9363 #f)
9364 (set-source-properties!
9365 x-5170
9366 s-4731))
9367 x-5170)))
9368 (if (if (null? (car w-4730))
9369 (null? (cdr w-4730))
9370 #f)
9371 x-5188
9372 (if (if (vector? x-5188)
9373 (if (= (vector-length
9374 x-5188)
9375 4)
9376 (eq? (vector-ref x-5188 0)
9377 'syntax-object)
9378 #f)
9379 #f)
9380 (let ((expression-5220
9381 (vector-ref x-5188 1))
9382 (wrap-5221
9383 (let ((w2-5229
9384 (vector-ref
9385 x-5188
9386 2)))
9387 (let ((m1-5230
9388 (car w-4730))
9389 (s1-5231
9390 (cdr w-4730)))
9391 (if (null? m1-5230)
9392 (if (null? s1-5231)
9393 w2-5229
9394 (cons (car w2-5229)
9395 (let ((m2-5246
9396 (cdr w2-5229)))
9397 (if (null? m2-5246)
9398 s1-5231
9399 (append
9400 s1-5231
9401 m2-5246)))))
9402 (cons (let ((m2-5254
9403 (car w2-5229)))
9404 (if (null? m2-5254)
9405 m1-5230
9406 (append
9407 m1-5230
9408 m2-5254)))
9409 (let ((m2-5262
9410 (cdr w2-5229)))
9411 (if (null? m2-5262)
9412 s1-5231
9413 (append
9414 s1-5231
9415 m2-5262))))))))
9416 (module-5222
9417 (vector-ref x-5188 3)))
9418 (vector
9419 'syntax-object
9420 expression-5220
9421 wrap-5221
9422 module-5222))
9423 (if (null? x-5188)
9424 x-5188
9425 (vector
9426 'syntax-object
9427 x-5188
9428 w-4730
9429 mod-5175))))))
9430 (if (eqv? type-5173 'syntax-parameter)
9431 value-5174
9432 (syntax-violation
9433 'syntax-parameterize
9434 "invalid syntax parameter"
9435 e-4728
9436 (let ((x-5289
9437 (begin
9438 (if (if (pair? x-5170)
9439 s-4731
9440 #f)
9441 (set-source-properties!
9442 x-5170
9443 s-4731))
9444 x-5170)))
9445 (if (if (null? (car w-4730))
9446 (null? (cdr w-4730))
9447 #f)
9448 x-5289
9449 (if (if (vector? x-5289)
9450 (if (= (vector-length
9451 x-5289)
9452 4)
9453 (eq? (vector-ref
9454 x-5289
9455 0)
9456 'syntax-object)
9457 #f)
9458 #f)
9459 (let ((expression-5321
9460 (vector-ref x-5289 1))
9461 (wrap-5322
9462 (let ((w2-5330
9463 (vector-ref
9464 x-5289
9465 2)))
9466 (let ((m1-5331
9467 (car w-4730))
9468 (s1-5332
9469 (cdr w-4730)))
9470 (if (null? m1-5331)
9471 (if (null? s1-5332)
9472 w2-5330
9473 (cons (car w2-5330)
9474 (let ((m2-5347
9475 (cdr w2-5330)))
9476 (if (null? m2-5347)
9477 s1-5332
9478 (append
9479 s1-5332
9480 m2-5347)))))
9481 (cons (let ((m2-5355
9482 (car w2-5330)))
9483 (if (null? m2-5355)
9484 m1-5331
9485 (append
9486 m1-5331
9487 m2-5355)))
9488 (let ((m2-5363
9489 (cdr w2-5330)))
9490 (if (null? m2-5363)
9491 s1-5332
9492 (append
9493 s1-5332
9494 m2-5363))))))))
9495 (module-5323
9496 (vector-ref
9497 x-5289
9498 3)))
9499 (vector
9500 'syntax-object
9501 expression-5321
9502 wrap-5322
9503 module-5323))
9504 (if (null? x-5289)
9505 x-5289
9506 (vector
9507 'syntax-object
9508 x-5289
9509 w-4730
9510 mod-5175)))))))))))
9511 var-4826))
9512 (bindings-4831
9513 (let ((trans-r-5378 (macros-only-env-4547 r-4729)))
9514 (map (lambda (x-5379)
9515 (cons 'macro
9516 (eval-local-transformer-4592
9517 (expand-4586
9518 x-5379
9519 trans-r-5378
9520 w-4730
9521 mod-4732)
9522 mod-4732)))
9523 val-4827))))
9524 (expand-body-4590
9525 (cons e1-4828 e2-4829)
9526 (let ((x-4843
9527 (begin
9528 (if (if (pair? e-4728) s-4731 #f)
9529 (set-source-properties! e-4728 s-4731))
9530 e-4728)))
9531 (if (if (null? (car w-4730)) (null? (cdr w-4730)) #f)
9532 x-4843
9533 (if (if (vector? x-4843)
9534 (if (= (vector-length x-4843) 4)
9535 (eq? (vector-ref x-4843 0) 'syntax-object)
9536 #f)
9537 #f)
9538 (let ((expression-4875 (vector-ref x-4843 1))
9539 (wrap-4876
9540 (let ((w2-4884 (vector-ref x-4843 2)))
9541 (let ((m1-4885 (car w-4730))
9542 (s1-4886 (cdr w-4730)))
9543 (if (null? m1-4885)
9544 (if (null? s1-4886)
9545 w2-4884
9546 (cons (car w2-4884)
9547 (let ((m2-4901
9548 (cdr w2-4884)))
9549 (if (null? m2-4901)
9550 s1-4886
9551 (append
9552 s1-4886
9553 m2-4901)))))
9554 (cons (let ((m2-4909 (car w2-4884)))
9555 (if (null? m2-4909)
9556 m1-4885
9557 (append m1-4885 m2-4909)))
9558 (let ((m2-4917 (cdr w2-4884)))
9559 (if (null? m2-4917)
9560 s1-4886
9561 (append
9562 s1-4886
9563 m2-4917))))))))
9564 (module-4877 (vector-ref x-4843 3)))
9565 (vector
9566 'syntax-object
9567 expression-4875
9568 wrap-4876
9569 module-4877))
9570 (if (null? x-4843)
9571 x-4843
9572 (vector
9573 'syntax-object
9574 x-4843
9575 w-4730
9576 mod-4732)))))
9577 (extend-env-4545 names-4830 bindings-4831 r-4729)
9578 w-4730
9579 mod-4732)))
9580 tmp-4734)
9581 (syntax-violation
9582 'syntax-parameterize
9583 "bad syntax"
9584 (let ((x-5599
9585 (begin
9586 (if (if (pair? e-4728) s-4731 #f)
9587 (set-source-properties! e-4728 s-4731))
9588 e-4728)))
9589 (if (if (null? (car w-4730)) (null? (cdr w-4730)) #f)
9590 x-5599
9591 (if (if (vector? x-5599)
9592 (if (= (vector-length x-5599) 4)
9593 (eq? (vector-ref x-5599 0) 'syntax-object)
9594 #f)
9595 #f)
9596 (let ((expression-5631 (vector-ref x-5599 1))
9597 (wrap-5632
9598 (let ((w2-5640 (vector-ref x-5599 2)))
9599 (let ((m1-5641 (car w-4730))
9600 (s1-5642 (cdr w-4730)))
9601 (if (null? m1-5641)
9602 (if (null? s1-5642)
9603 w2-5640
9604 (cons (car w2-5640)
9605 (let ((m2-5657 (cdr w2-5640)))
9606 (if (null? m2-5657)
9607 s1-5642
9608 (append s1-5642 m2-5657)))))
9609 (cons (let ((m2-5665 (car w2-5640)))
9610 (if (null? m2-5665)
9611 m1-5641
9612 (append m1-5641 m2-5665)))
9613 (let ((m2-5673 (cdr w2-5640)))
9614 (if (null? m2-5673)
9615 s1-5642
9616 (append s1-5642 m2-5673))))))))
9617 (module-5633 (vector-ref x-5599 3)))
9618 (vector
9619 'syntax-object
9620 expression-5631
9621 wrap-5632
9622 module-5633))
9623 (if (null? x-5599)
9624 x-5599
9625 (vector 'syntax-object x-5599 w-4730 mod-4732))))))))))
9626 (module-define!
9627 (current-module)
9628 'quote
9629 (make-syntax-transformer
9630 'quote
9631 'core
9632 (lambda (e-5701 r-5702 w-5703 s-5704 mod-5705)
9633 (let ((tmp-5707 ($sc-dispatch e-5701 '(_ any))))
9634 (if tmp-5707
9635 (@apply
9636 (lambda (e-5710)
9637 (let ((exp-5714 (strip-4599 e-5710 w-5703)))
9638 (make-struct/no-tail
9639 (vector-ref %expanded-vtables 1)
9640 s-5704
9641 exp-5714)))
9642 tmp-5707)
9643 (syntax-violation
9644 'quote
9645 "bad syntax"
9646 (let ((x-5728
9647 (begin
9648 (if (if (pair? e-5701) s-5704 #f)
9649 (set-source-properties! e-5701 s-5704))
9650 e-5701)))
9651 (if (if (null? (car w-5703)) (null? (cdr w-5703)) #f)
9652 x-5728
9653 (if (if (vector? x-5728)
9654 (if (= (vector-length x-5728) 4)
9655 (eq? (vector-ref x-5728 0) 'syntax-object)
9656 #f)
9657 #f)
9658 (let ((expression-5760 (vector-ref x-5728 1))
9659 (wrap-5761
9660 (let ((w2-5769 (vector-ref x-5728 2)))
9661 (let ((m1-5770 (car w-5703))
9662 (s1-5771 (cdr w-5703)))
9663 (if (null? m1-5770)
9664 (if (null? s1-5771)
9665 w2-5769
9666 (cons (car w2-5769)
9667 (let ((m2-5786 (cdr w2-5769)))
9668 (if (null? m2-5786)
9669 s1-5771
9670 (append s1-5771 m2-5786)))))
9671 (cons (let ((m2-5794 (car w2-5769)))
9672 (if (null? m2-5794)
9673 m1-5770
9674 (append m1-5770 m2-5794)))
9675 (let ((m2-5802 (cdr w2-5769)))
9676 (if (null? m2-5802)
9677 s1-5771
9678 (append s1-5771 m2-5802))))))))
9679 (module-5762 (vector-ref x-5728 3)))
9680 (vector
9681 'syntax-object
9682 expression-5760
9683 wrap-5761
9684 module-5762))
9685 (if (null? x-5728)
9686 x-5728
9687 (vector
9688 'syntax-object
9689 x-5728
9690 w-5703
9691 mod-5705)))))))))))
9692 (global-extend-4548
9693 'core
9694 'syntax
9695 (letrec*
9696 ((gen-syntax-6020
9697 (lambda (src-6451
9698 e-6452
9699 r-6453
9700 maps-6454
9701 ellipsis?-6455
9702 mod-6456)
9703 (if (if (symbol? e-6452)
9704 #t
9705 (if (if (vector? e-6452)
9706 (if (= (vector-length e-6452) 4)
9707 (eq? (vector-ref e-6452 0) 'syntax-object)
9708 #f)
9709 #f)
9710 (symbol? (vector-ref e-6452 1))
9711 #f))
9712 (call-with-values
9713 (lambda ()
9714 (resolve-identifier-4571
9715 e-6452
9716 '(())
9717 r-6453
9718 mod-6456
9719 #f))
9720 (lambda (type-6485 value-6486 mod-6487)
9721 (if (eqv? type-6485 'syntax)
9722 (call-with-values
9723 (lambda ()
9724 (gen-ref-6021
9725 src-6451
9726 (car value-6486)
9727 (cdr value-6486)
9728 maps-6454))
9729 (lambda (var-6493 maps-6494)
9730 (values (list 'ref var-6493) maps-6494)))
9731 (if (ellipsis?-6455 e-6452)
9732 (syntax-violation
9733 'syntax
9734 "misplaced ellipsis"
9735 src-6451)
9736 (values (list 'quote e-6452) maps-6454)))))
9737 (let ((tmp-6496 ($sc-dispatch e-6452 '(any any))))
9738 (if (if tmp-6496
9739 (@apply
9740 (lambda (dots-6500 e-6501)
9741 (ellipsis?-6455 dots-6500))
9742 tmp-6496)
9743 #f)
9744 (@apply
9745 (lambda (dots-6502 e-6503)
9746 (gen-syntax-6020
9747 src-6451
9748 e-6503
9749 r-6453
9750 maps-6454
9751 (lambda (x-6504) #f)
9752 mod-6456))
9753 tmp-6496)
9754 (let ((tmp-6505 ($sc-dispatch e-6452 '(any any . any))))
9755 (if (if tmp-6505
9756 (@apply
9757 (lambda (x-6509 dots-6510 y-6511)
9758 (ellipsis?-6455 dots-6510))
9759 tmp-6505)
9760 #f)
9761 (@apply
9762 (lambda (x-6512 dots-6513 y-6514)
9763 (letrec*
9764 ((f-6515
9765 (lambda (y-6523 k-6524)
9766 (let ((tmp-6526
9767 ($sc-dispatch
9768 y-6523
9769 '(any . any))))
9770 (if (if tmp-6526
9771 (@apply
9772 (lambda (dots-6530 y-6531)
9773 (ellipsis?-6455 dots-6530))
9774 tmp-6526)
9775 #f)
9776 (@apply
9777 (lambda (dots-6532 y-6533)
9778 (f-6515
9779 y-6533
9780 (lambda (maps-6534)
9781 (call-with-values
9782 (lambda ()
9783 (k-6524
9784 (cons '() maps-6534)))
9785 (lambda (x-6535 maps-6536)
9786 (if (null? (car maps-6536))
9787 (syntax-violation
9788 'syntax
9789 "extra ellipsis"
9790 src-6451)
9791 (values
9792 (let ((map-env-6540
9793 (car maps-6536)))
9794 (list 'apply
9795 '(primitive
9796 append)
9797 (gen-map-6023
9798 x-6535
9799 map-env-6540)))
9800 (cdr maps-6536))))))))
9801 tmp-6526)
9802 (call-with-values
9803 (lambda ()
9804 (gen-syntax-6020
9805 src-6451
9806 y-6523
9807 r-6453
9808 maps-6454
9809 ellipsis?-6455
9810 mod-6456))
9811 (lambda (y-6543 maps-6544)
9812 (call-with-values
9813 (lambda () (k-6524 maps-6544))
9814 (lambda (x-6545 maps-6546)
9815 (values
9816 (if (equal? y-6543 ''())
9817 x-6545
9818 (list 'append
9819 x-6545
9820 y-6543))
9821 maps-6546))))))))))
9822 (f-6515
9823 y-6514
9824 (lambda (maps-6518)
9825 (call-with-values
9826 (lambda ()
9827 (gen-syntax-6020
9828 src-6451
9829 x-6512
9830 r-6453
9831 (cons '() maps-6518)
9832 ellipsis?-6455
9833 mod-6456))
9834 (lambda (x-6519 maps-6520)
9835 (if (null? (car maps-6520))
9836 (syntax-violation
9837 'syntax
9838 "extra ellipsis"
9839 src-6451)
9840 (values
9841 (gen-map-6023
9842 x-6519
9843 (car maps-6520))
9844 (cdr maps-6520)))))))))
9845 tmp-6505)
9846 (let ((tmp-6562 ($sc-dispatch e-6452 '(any . any))))
9847 (if tmp-6562
9848 (@apply
9849 (lambda (x-6566 y-6567)
9850 (call-with-values
9851 (lambda ()
9852 (gen-syntax-6020
9853 src-6451
9854 x-6566
9855 r-6453
9856 maps-6454
9857 ellipsis?-6455
9858 mod-6456))
9859 (lambda (x-6568 maps-6569)
9860 (call-with-values
9861 (lambda ()
9862 (gen-syntax-6020
9863 src-6451
9864 y-6567
9865 r-6453
9866 maps-6569
9867 ellipsis?-6455
9868 mod-6456))
9869 (lambda (y-6570 maps-6571)
9870 (values
9871 (let ((atom-key-6576 (car y-6570)))
9872 (if (eqv? atom-key-6576 'quote)
9873 (if (eq? (car x-6568) 'quote)
9874 (list 'quote
9875 (cons (car (cdr x-6568))
9876 (car (cdr y-6570))))
9877 (if (eq? (car (cdr y-6570))
9878 '())
9879 (list 'list x-6568)
9880 (list 'cons x-6568 y-6570)))
9881 (if (eqv? atom-key-6576 'list)
9882 (cons 'list
9883 (cons x-6568
9884 (cdr y-6570)))
9885 (list 'cons x-6568 y-6570))))
9886 maps-6571))))))
9887 tmp-6562)
9888 (let ((tmp-6605
9889 ($sc-dispatch
9890 e-6452
9891 '#(vector (any . each-any)))))
9892 (if tmp-6605
9893 (@apply
9894 (lambda (e1-6609 e2-6610)
9895 (call-with-values
9896 (lambda ()
9897 (gen-syntax-6020
9898 src-6451
9899 (cons e1-6609 e2-6610)
9900 r-6453
9901 maps-6454
9902 ellipsis?-6455
9903 mod-6456))
9904 (lambda (e-6611 maps-6612)
9905 (values
9906 (if (eq? (car e-6611) 'list)
9907 (cons 'vector (cdr e-6611))
9908 (if (eq? (car e-6611) 'quote)
9909 (list 'quote
9910 (list->vector
9911 (car (cdr e-6611))))
9912 (list 'list->vector e-6611)))
9913 maps-6612))))
9914 tmp-6605)
9915 (values
9916 (list 'quote e-6452)
9917 maps-6454))))))))))))
9918 (gen-ref-6021
9919 (lambda (src-6639 var-6640 level-6641 maps-6642)
9920 (if (= level-6641 0)
9921 (values var-6640 maps-6642)
9922 (if (null? maps-6642)
9923 (syntax-violation
9924 'syntax
9925 "missing ellipsis"
9926 src-6639)
9927 (call-with-values
9928 (lambda ()
9929 (gen-ref-6021
9930 src-6639
9931 var-6640
9932 (#{1-}# level-6641)
9933 (cdr maps-6642)))
9934 (lambda (outer-var-6643 outer-maps-6644)
9935 (let ((b-6645 (assq outer-var-6643 (car maps-6642))))
9936 (if b-6645
9937 (values (cdr b-6645) maps-6642)
9938 (let ((inner-var-6647
9939 (gensym
9940 (string-append
9941 (symbol->string 'tmp)
9942 "-"))))
9943 (values
9944 inner-var-6647
9945 (cons (cons (cons outer-var-6643 inner-var-6647)
9946 (car maps-6642))
9947 outer-maps-6644)))))))))))
9948 (gen-map-6023
9949 (lambda (e-6661 map-env-6662)
9950 (let ((formals-6663 (map cdr map-env-6662))
9951 (actuals-6664
9952 (map (lambda (x-6666) (list 'ref (car x-6666)))
9953 map-env-6662)))
9954 (if (eq? (car e-6661) 'ref)
9955 (car actuals-6664)
9956 (if (and-map
9957 (lambda (x-6667)
9958 (if (eq? (car x-6667) 'ref)
9959 (memq (car (cdr x-6667)) formals-6663)
9960 #f))
9961 (cdr e-6661))
9962 (cons 'map
9963 (cons (list 'primitive (car e-6661))
9964 (map (let ((r-6669
9965 (map cons
9966 formals-6663
9967 actuals-6664)))
9968 (lambda (x-6670)
9969 (cdr (assq (car (cdr x-6670))
9970 r-6669))))
9971 (cdr e-6661))))
9972 (cons 'map
9973 (cons (list 'lambda formals-6663 e-6661)
9974 actuals-6664)))))))
9975 (regen-6027
9976 (lambda (x-6672)
9977 (let ((atom-key-6673 (car x-6672)))
9978 (if (eqv? atom-key-6673 'ref)
9979 (let ((name-6683 (car (cdr x-6672)))
9980 (var-6684 (car (cdr x-6672))))
9981 (make-struct/no-tail
9982 (vector-ref %expanded-vtables 3)
9983 #f
9984 name-6683
9985 var-6684))
9986 (if (eqv? atom-key-6673 'primitive)
9987 (let ((name-6695 (car (cdr x-6672))))
9988 (make-struct/no-tail
9989 (vector-ref %expanded-vtables 2)
9990 #f
9991 name-6695))
9992 (if (eqv? atom-key-6673 'quote)
9993 (let ((exp-6706 (car (cdr x-6672))))
9994 (make-struct/no-tail
9995 (vector-ref %expanded-vtables 1)
9996 #f
9997 exp-6706))
9998 (if (eqv? atom-key-6673 'lambda)
9999 (if (list? (car (cdr x-6672)))
10000 (let ((req-6717 (car (cdr x-6672)))
10001 (vars-6719 (car (cdr x-6672)))
10002 (exp-6721
10003 (regen-6027 (car (cdr (cdr x-6672))))))
10004 (let ((body-6726
10005 (make-struct/no-tail
10006 (vector-ref %expanded-vtables 15)
10007 #f
10008 req-6717
10009 #f
10010 #f
10011 #f
10012 '()
10013 vars-6719
10014 exp-6721
10015 #f)))
10016 (make-struct/no-tail
10017 (vector-ref %expanded-vtables 14)
10018 #f
10019 '()
10020 body-6726)))
10021 (error "how did we get here" x-6672))
10022 (let ((name-6742 (car x-6672))
10023 (args-6743 (map regen-6027 (cdr x-6672))))
10024 (make-struct/no-tail
10025 (vector-ref %expanded-vtables 12)
10026 #f
10027 name-6742
10028 args-6743))))))))))
10029 (lambda (e-6028 r-6029 w-6030 s-6031 mod-6032)
10030 (let ((e-6033
10031 (let ((x-6362
10032 (begin
10033 (if (if (pair? e-6028) s-6031 #f)
10034 (set-source-properties! e-6028 s-6031))
10035 e-6028)))
10036 (if (if (null? (car w-6030)) (null? (cdr w-6030)) #f)
10037 x-6362
10038 (if (if (vector? x-6362)
10039 (if (= (vector-length x-6362) 4)
10040 (eq? (vector-ref x-6362 0) 'syntax-object)
10041 #f)
10042 #f)
10043 (let ((expression-6394 (vector-ref x-6362 1))
10044 (wrap-6395
10045 (let ((w2-6403 (vector-ref x-6362 2)))
10046 (let ((m1-6404 (car w-6030))
10047 (s1-6405 (cdr w-6030)))
10048 (if (null? m1-6404)
10049 (if (null? s1-6405)
10050 w2-6403
10051 (cons (car w2-6403)
10052 (let ((m2-6420 (cdr w2-6403)))
10053 (if (null? m2-6420)
10054 s1-6405
10055 (append
10056 s1-6405
10057 m2-6420)))))
10058 (cons (let ((m2-6428 (car w2-6403)))
10059 (if (null? m2-6428)
10060 m1-6404
10061 (append m1-6404 m2-6428)))
10062 (let ((m2-6436 (cdr w2-6403)))
10063 (if (null? m2-6436)
10064 s1-6405
10065 (append
10066 s1-6405
10067 m2-6436))))))))
10068 (module-6396 (vector-ref x-6362 3)))
10069 (vector
10070 'syntax-object
10071 expression-6394
10072 wrap-6395
10073 module-6396))
10074 (if (null? x-6362)
10075 x-6362
10076 (vector
10077 'syntax-object
10078 x-6362
10079 w-6030
10080 mod-6032)))))))
10081 (let ((tmp-6034 e-6033))
10082 (let ((tmp-6035 ($sc-dispatch tmp-6034 '(_ any))))
10083 (if tmp-6035
10084 (@apply
10085 (lambda (x-6083)
10086 (call-with-values
10087 (lambda ()
10088 (gen-syntax-6020
10089 e-6033
10090 x-6083
10091 r-6029
10092 '()
10093 ellipsis?-4594
10094 mod-6032))
10095 (lambda (e-6160 maps-6161) (regen-6027 e-6160))))
10096 tmp-6035)
10097 (syntax-violation
10098 'syntax
10099 "bad `syntax' form"
10100 e-6033))))))))
10101 (global-extend-4548
10102 'core
10103 'lambda
10104 (lambda (e-6974 r-6975 w-6976 s-6977 mod-6978)
10105 (let ((tmp-6980
10106 ($sc-dispatch e-6974 '(_ any any . each-any))))
10107 (if tmp-6980
10108 (@apply
10109 (lambda (args-6984 e1-6985 e2-6986)
10110 (call-with-values
10111 (lambda () (lambda-formals-4595 args-6984))
10112 (lambda (req-6989 opt-6990 rest-6991 kw-6992)
10113 (letrec*
10114 ((lp-6993
10115 (lambda (body-6996 meta-6997)
10116 (let ((tmp-6999
10117 ($sc-dispatch
10118 body-6996
10119 '(any any . each-any))))
10120 (if (if tmp-6999
10121 (@apply
10122 (lambda (docstring-7003 e1-7004 e2-7005)
10123 (string?
10124 (syntax->datum docstring-7003)))
10125 tmp-6999)
10126 #f)
10127 (@apply
10128 (lambda (docstring-7006 e1-7007 e2-7008)
10129 (lp-6993
10130 (cons e1-7007 e2-7008)
10131 (append
10132 meta-6997
10133 (list (cons 'documentation
10134 (syntax->datum
10135 docstring-7006))))))
10136 tmp-6999)
10137 (let ((tmp-7009
10138 ($sc-dispatch
10139 body-6996
10140 '(#(vector #(each (any . any)))
10141 any
10142 .
10143 each-any))))
10144 (if tmp-7009
10145 (@apply
10146 (lambda (k-7013 v-7014 e1-7015 e2-7016)
10147 (lp-6993
10148 (cons e1-7015 e2-7016)
10149 (append
10150 meta-6997
10151 (syntax->datum
10152 (map cons k-7013 v-7014)))))
10153 tmp-7009)
10154 (expand-simple-lambda-4596
10155 e-6974
10156 r-6975
10157 w-6976
10158 s-6977
10159 mod-6978
10160 req-6989
10161 rest-6991
10162 meta-6997
10163 body-6996))))))))
10164 (lp-6993 (cons e1-6985 e2-6986) '())))))
10165 tmp-6980)
10166 (syntax-violation 'lambda "bad lambda" e-6974)))))
10167 (global-extend-4548
10168 'core
10169 'lambda*
10170 (lambda (e-7391 r-7392 w-7393 s-7394 mod-7395)
10171 (let ((tmp-7397
10172 ($sc-dispatch e-7391 '(_ any any . each-any))))
10173 (if tmp-7397
10174 (@apply
10175 (lambda (args-7401 e1-7402 e2-7403)
10176 (call-with-values
10177 (lambda ()
10178 (expand-lambda-case-4598
10179 e-7391
10180 r-7392
10181 w-7393
10182 s-7394
10183 mod-7395
10184 lambda*-formals-4597
10185 (list (cons args-7401 (cons e1-7402 e2-7403)))))
10186 (lambda (meta-7406 lcase-7407)
10187 (make-struct/no-tail
10188 (vector-ref %expanded-vtables 14)
10189 s-7394
10190 meta-7406
10191 lcase-7407))))
10192 tmp-7397)
10193 (syntax-violation 'lambda "bad lambda*" e-7391)))))
10194 (global-extend-4548
10195 'core
10196 'case-lambda
10197 (lambda (e-7570 r-7571 w-7572 s-7573 mod-7574)
10198 (let ((tmp-7576
10199 ($sc-dispatch
10200 e-7570
10201 '(_ (any any . each-any)
10202 .
10203 #(each (any any . each-any))))))
10204 (if tmp-7576
10205 (@apply
10206 (lambda (args-7580
10207 e1-7581
10208 e2-7582
10209 args*-7583
10210 e1*-7584
10211 e2*-7585)
10212 (call-with-values
10213 (lambda ()
10214 (expand-lambda-case-4598
10215 e-7570
10216 r-7571
10217 w-7572
10218 s-7573
10219 mod-7574
10220 lambda-formals-4595
10221 (cons (cons args-7580 (cons e1-7581 e2-7582))
10222 (map (lambda (tmp-3460-7588
10223 tmp-3459-7589
10224 tmp-3458-7590)
10225 (cons tmp-3458-7590
10226 (cons tmp-3459-7589 tmp-3460-7588)))
10227 e2*-7585
10228 e1*-7584
10229 args*-7583))))
10230 (lambda (meta-7591 lcase-7592)
10231 (make-struct/no-tail
10232 (vector-ref %expanded-vtables 14)
10233 s-7573
10234 meta-7591
10235 lcase-7592))))
10236 tmp-7576)
10237 (syntax-violation
10238 'case-lambda
10239 "bad case-lambda"
10240 e-7570)))))
10241 (global-extend-4548
10242 'core
10243 'case-lambda*
10244 (lambda (e-7761 r-7762 w-7763 s-7764 mod-7765)
10245 (let ((tmp-7767
10246 ($sc-dispatch
10247 e-7761
10248 '(_ (any any . each-any)
10249 .
10250 #(each (any any . each-any))))))
10251 (if tmp-7767
10252 (@apply
10253 (lambda (args-7771
10254 e1-7772
10255 e2-7773
10256 args*-7774
10257 e1*-7775
10258 e2*-7776)
10259 (call-with-values
10260 (lambda ()
10261 (expand-lambda-case-4598
10262 e-7761
10263 r-7762
10264 w-7763
10265 s-7764
10266 mod-7765
10267 lambda*-formals-4597
10268 (cons (cons args-7771 (cons e1-7772 e2-7773))
10269 (map (lambda (tmp-3495-7779
10270 tmp-3494-7780
10271 tmp-3493-7781)
10272 (cons tmp-3493-7781
10273 (cons tmp-3494-7780 tmp-3495-7779)))
10274 e2*-7776
10275 e1*-7775
10276 args*-7774))))
10277 (lambda (meta-7782 lcase-7783)
10278 (make-struct/no-tail
10279 (vector-ref %expanded-vtables 14)
10280 s-7764
10281 meta-7782
10282 lcase-7783))))
10283 tmp-7767)
10284 (syntax-violation
10285 'case-lambda
10286 "bad case-lambda*"
10287 e-7761)))))
10288 (global-extend-4548
10289 'core
10290 'let
10291 (letrec*
10292 ((expand-let-7991
10293 (lambda (e-8201
10294 r-8202
10295 w-8203
10296 s-8204
10297 mod-8205
10298 constructor-8206
10299 ids-8207
10300 vals-8208
10301 exps-8209)
10302 (if (not (valid-bound-ids?-4576 ids-8207))
10303 (syntax-violation
10304 'let
10305 "duplicate bound variable"
10306 e-8201)
10307 (let ((labels-8294 (gen-labels-4553 ids-8207))
10308 (new-vars-8295 (map gen-var-4600 ids-8207)))
10309 (let ((nw-8296
10310 (make-binding-wrap-4564
10311 ids-8207
10312 labels-8294
10313 w-8203))
10314 (nr-8297
10315 (extend-var-env-4546
10316 labels-8294
10317 new-vars-8295
10318 r-8202)))
10319 (constructor-8206
10320 s-8204
10321 (map syntax->datum ids-8207)
10322 new-vars-8295
10323 (map (lambda (x-8314)
10324 (expand-4586 x-8314 r-8202 w-8203 mod-8205))
10325 vals-8208)
10326 (expand-body-4590
10327 exps-8209
10328 (source-wrap-4580 e-8201 nw-8296 s-8204 mod-8205)
10329 nr-8297
10330 nw-8296
10331 mod-8205))))))))
10332 (lambda (e-7992 r-7993 w-7994 s-7995 mod-7996)
10333 (let ((tmp-7998
10334 ($sc-dispatch
10335 e-7992
10336 '(_ #(each (any any)) any . each-any))))
10337 (if (if tmp-7998
10338 (@apply
10339 (lambda (id-8002 val-8003 e1-8004 e2-8005)
10340 (and-map id?-4550 id-8002))
10341 tmp-7998)
10342 #f)
10343 (@apply
10344 (lambda (id-8021 val-8022 e1-8023 e2-8024)
10345 (expand-let-7991
10346 e-7992
10347 r-7993
10348 w-7994
10349 s-7995
10350 mod-7996
10351 (lambda (src-8028
10352 ids-8029
10353 vars-8030
10354 val-exps-8031
10355 body-exp-8032)
10356 (begin
10357 (for-each
10358 maybe-name-value!-4515
10359 ids-8029
10360 val-exps-8031)
10361 (if (null? vars-8030)
10362 body-exp-8032
10363 (make-struct/no-tail
10364 (vector-ref %expanded-vtables 16)
10365 src-8028
10366 ids-8029
10367 vars-8030
10368 val-exps-8031
10369 body-exp-8032))))
10370 id-8021
10371 val-8022
10372 (cons e1-8023 e2-8024)))
10373 tmp-7998)
10374 (let ((tmp-8039
10375 ($sc-dispatch
10376 e-7992
10377 '(_ any #(each (any any)) any . each-any))))
10378 (if (if tmp-8039
10379 (@apply
10380 (lambda (f-8043 id-8044 val-8045 e1-8046 e2-8047)
10381 (if (if (symbol? f-8043)
10382 #t
10383 (if (if (vector? f-8043)
10384 (if (= (vector-length f-8043) 4)
10385 (eq? (vector-ref f-8043 0)
10386 'syntax-object)
10387 #f)
10388 #f)
10389 (symbol? (vector-ref f-8043 1))
10390 #f))
10391 (and-map id?-4550 id-8044)
10392 #f))
10393 tmp-8039)
10394 #f)
10395 (@apply
10396 (lambda (f-8089 id-8090 val-8091 e1-8092 e2-8093)
10397 (expand-let-7991
10398 e-7992
10399 r-7993
10400 w-7994
10401 s-7995
10402 mod-7996
10403 build-named-let-4534
10404 (cons f-8089 id-8090)
10405 val-8091
10406 (cons e1-8092 e2-8093)))
10407 tmp-8039)
10408 (syntax-violation
10409 'let
10410 "bad let"
10411 (let ((x-8106
10412 (begin
10413 (if (if (pair? e-7992) s-7995 #f)
10414 (set-source-properties! e-7992 s-7995))
10415 e-7992)))
10416 (if (if (null? (car w-7994)) (null? (cdr w-7994)) #f)
10417 x-8106
10418 (if (if (vector? x-8106)
10419 (if (= (vector-length x-8106) 4)
10420 (eq? (vector-ref x-8106 0) 'syntax-object)
10421 #f)
10422 #f)
10423 (let ((expression-8138 (vector-ref x-8106 1))
10424 (wrap-8139
10425 (let ((w2-8147 (vector-ref x-8106 2)))
10426 (let ((m1-8148 (car w-7994))
10427 (s1-8149 (cdr w-7994)))
10428 (if (null? m1-8148)
10429 (if (null? s1-8149)
10430 w2-8147
10431 (cons (car w2-8147)
10432 (let ((m2-8164
10433 (cdr w2-8147)))
10434 (if (null? m2-8164)
10435 s1-8149
10436 (append
10437 s1-8149
10438 m2-8164)))))
10439 (cons (let ((m2-8172 (car w2-8147)))
10440 (if (null? m2-8172)
10441 m1-8148
10442 (append m1-8148 m2-8172)))
10443 (let ((m2-8180 (cdr w2-8147)))
10444 (if (null? m2-8180)
10445 s1-8149
10446 (append
10447 s1-8149
10448 m2-8180))))))))
10449 (module-8140 (vector-ref x-8106 3)))
10450 (vector
10451 'syntax-object
10452 expression-8138
10453 wrap-8139
10454 module-8140))
10455 (if (null? x-8106)
10456 x-8106
10457 (vector
10458 'syntax-object
10459 x-8106
10460 w-7994
10461 mod-7996)))))))))))))
10462 (global-extend-4548
10463 'core
10464 'letrec
10465 (lambda (e-8744 r-8745 w-8746 s-8747 mod-8748)
10466 (let ((tmp-8750
10467 ($sc-dispatch
10468 e-8744
10469 '(_ #(each (any any)) any . each-any))))
10470 (if (if tmp-8750
10471 (@apply
10472 (lambda (id-8754 val-8755 e1-8756 e2-8757)
10473 (and-map id?-4550 id-8754))
10474 tmp-8750)
10475 #f)
10476 (@apply
10477 (lambda (id-8773 val-8774 e1-8775 e2-8776)
10478 (if (not (valid-bound-ids?-4576 id-8773))
10479 (syntax-violation
10480 'letrec
10481 "duplicate bound variable"
10482 e-8744)
10483 (let ((labels-8873 (gen-labels-4553 id-8773))
10484 (new-vars-8874 (map gen-var-4600 id-8773)))
10485 (let ((w-8875
10486 (make-binding-wrap-4564
10487 id-8773
10488 labels-8873
10489 w-8746))
10490 (r-8876
10491 (extend-var-env-4546
10492 labels-8873
10493 new-vars-8874
10494 r-8745)))
10495 (build-letrec-4535
10496 s-8747
10497 #f
10498 (map syntax->datum id-8773)
10499 new-vars-8874
10500 (map (lambda (x-8953)
10501 (expand-4586 x-8953 r-8876 w-8875 mod-8748))
10502 val-8774)
10503 (expand-body-4590
10504 (cons e1-8775 e2-8776)
10505 (let ((x-9015
10506 (begin
10507 (if (if (pair? e-8744) s-8747 #f)
10508 (set-source-properties! e-8744 s-8747))
10509 e-8744)))
10510 (if (if (null? (car w-8875))
10511 (null? (cdr w-8875))
10512 #f)
10513 x-9015
10514 (if (if (vector? x-9015)
10515 (if (= (vector-length x-9015) 4)
10516 (eq? (vector-ref x-9015 0)
10517 'syntax-object)
10518 #f)
10519 #f)
10520 (let ((expression-9047 (vector-ref x-9015 1))
10521 (wrap-9048
10522 (let ((w2-9056
10523 (vector-ref x-9015 2)))
10524 (let ((m1-9057 (car w-8875))
10525 (s1-9058 (cdr w-8875)))
10526 (if (null? m1-9057)
10527 (if (null? s1-9058)
10528 w2-9056
10529 (cons (car w2-9056)
10530 (let ((m2-9073
10531 (cdr w2-9056)))
10532 (if (null? m2-9073)
10533 s1-9058
10534 (append
10535 s1-9058
10536 m2-9073)))))
10537 (cons (let ((m2-9081
10538 (car w2-9056)))
10539 (if (null? m2-9081)
10540 m1-9057
10541 (append
10542 m1-9057
10543 m2-9081)))
10544 (let ((m2-9089
10545 (cdr w2-9056)))
10546 (if (null? m2-9089)
10547 s1-9058
10548 (append
10549 s1-9058
10550 m2-9089))))))))
10551 (module-9049 (vector-ref x-9015 3)))
10552 (vector
10553 'syntax-object
10554 expression-9047
10555 wrap-9048
10556 module-9049))
10557 (if (null? x-9015)
10558 x-9015
10559 (vector
10560 'syntax-object
10561 x-9015
10562 w-8875
10563 mod-8748)))))
10564 r-8876
10565 w-8875
10566 mod-8748))))))
10567 tmp-8750)
10568 (syntax-violation
10569 'letrec
10570 "bad letrec"
10571 (let ((x-9300
10572 (begin
10573 (if (if (pair? e-8744) s-8747 #f)
10574 (set-source-properties! e-8744 s-8747))
10575 e-8744)))
10576 (if (if (null? (car w-8746)) (null? (cdr w-8746)) #f)
10577 x-9300
10578 (if (if (vector? x-9300)
10579 (if (= (vector-length x-9300) 4)
10580 (eq? (vector-ref x-9300 0) 'syntax-object)
10581 #f)
10582 #f)
10583 (let ((expression-9332 (vector-ref x-9300 1))
10584 (wrap-9333
10585 (let ((w2-9341 (vector-ref x-9300 2)))
10586 (let ((m1-9342 (car w-8746))
10587 (s1-9343 (cdr w-8746)))
10588 (if (null? m1-9342)
10589 (if (null? s1-9343)
10590 w2-9341
10591 (cons (car w2-9341)
10592 (let ((m2-9358 (cdr w2-9341)))
10593 (if (null? m2-9358)
10594 s1-9343
10595 (append s1-9343 m2-9358)))))
10596 (cons (let ((m2-9366 (car w2-9341)))
10597 (if (null? m2-9366)
10598 m1-9342
10599 (append m1-9342 m2-9366)))
10600 (let ((m2-9374 (cdr w2-9341)))
10601 (if (null? m2-9374)
10602 s1-9343
10603 (append s1-9343 m2-9374))))))))
10604 (module-9334 (vector-ref x-9300 3)))
10605 (vector
10606 'syntax-object
10607 expression-9332
10608 wrap-9333
10609 module-9334))
10610 (if (null? x-9300)
10611 x-9300
10612 (vector 'syntax-object x-9300 w-8746 mod-8748))))))))))
10613 (global-extend-4548
10614 'core
10615 'letrec*
10616 (lambda (e-9525 r-9526 w-9527 s-9528 mod-9529)
10617 (let ((tmp-9531
10618 ($sc-dispatch
10619 e-9525
10620 '(_ #(each (any any)) any . each-any))))
10621 (if (if tmp-9531
10622 (@apply
10623 (lambda (id-9535 val-9536 e1-9537 e2-9538)
10624 (and-map id?-4550 id-9535))
10625 tmp-9531)
10626 #f)
10627 (@apply
10628 (lambda (id-9554 val-9555 e1-9556 e2-9557)
10629 (if (not (valid-bound-ids?-4576 id-9554))
10630 (syntax-violation
10631 'letrec*
10632 "duplicate bound variable"
10633 e-9525)
10634 (let ((labels-9654 (gen-labels-4553 id-9554))
10635 (new-vars-9655 (map gen-var-4600 id-9554)))
10636 (let ((w-9656
10637 (make-binding-wrap-4564
10638 id-9554
10639 labels-9654
10640 w-9527))
10641 (r-9657
10642 (extend-var-env-4546
10643 labels-9654
10644 new-vars-9655
10645 r-9526)))
10646 (build-letrec-4535
10647 s-9528
10648 #t
10649 (map syntax->datum id-9554)
10650 new-vars-9655
10651 (map (lambda (x-9734)
10652 (expand-4586 x-9734 r-9657 w-9656 mod-9529))
10653 val-9555)
10654 (expand-body-4590
10655 (cons e1-9556 e2-9557)
10656 (let ((x-9796
10657 (begin
10658 (if (if (pair? e-9525) s-9528 #f)
10659 (set-source-properties! e-9525 s-9528))
10660 e-9525)))
10661 (if (if (null? (car w-9656))
10662 (null? (cdr w-9656))
10663 #f)
10664 x-9796
10665 (if (if (vector? x-9796)
10666 (if (= (vector-length x-9796) 4)
10667 (eq? (vector-ref x-9796 0)
10668 'syntax-object)
10669 #f)
10670 #f)
10671 (let ((expression-9828 (vector-ref x-9796 1))
10672 (wrap-9829
10673 (let ((w2-9837
10674 (vector-ref x-9796 2)))
10675 (let ((m1-9838 (car w-9656))
10676 (s1-9839 (cdr w-9656)))
10677 (if (null? m1-9838)
10678 (if (null? s1-9839)
10679 w2-9837
10680 (cons (car w2-9837)
10681 (let ((m2-9854
10682 (cdr w2-9837)))
10683 (if (null? m2-9854)
10684 s1-9839
10685 (append
10686 s1-9839
10687 m2-9854)))))
10688 (cons (let ((m2-9862
10689 (car w2-9837)))
10690 (if (null? m2-9862)
10691 m1-9838
10692 (append
10693 m1-9838
10694 m2-9862)))
10695 (let ((m2-9870
10696 (cdr w2-9837)))
10697 (if (null? m2-9870)
10698 s1-9839
10699 (append
10700 s1-9839
10701 m2-9870))))))))
10702 (module-9830 (vector-ref x-9796 3)))
10703 (vector
10704 'syntax-object
10705 expression-9828
10706 wrap-9829
10707 module-9830))
10708 (if (null? x-9796)
10709 x-9796
10710 (vector
10711 'syntax-object
10712 x-9796
10713 w-9656
10714 mod-9529)))))
10715 r-9657
10716 w-9656
10717 mod-9529))))))
10718 tmp-9531)
10719 (syntax-violation
10720 'letrec*
10721 "bad letrec*"
10722 (let ((x-10081
10723 (begin
10724 (if (if (pair? e-9525) s-9528 #f)
10725 (set-source-properties! e-9525 s-9528))
10726 e-9525)))
10727 (if (if (null? (car w-9527)) (null? (cdr w-9527)) #f)
10728 x-10081
10729 (if (if (vector? x-10081)
10730 (if (= (vector-length x-10081) 4)
10731 (eq? (vector-ref x-10081 0) 'syntax-object)
10732 #f)
10733 #f)
10734 (let ((expression-10113 (vector-ref x-10081 1))
10735 (wrap-10114
10736 (let ((w2-10122 (vector-ref x-10081 2)))
10737 (let ((m1-10123 (car w-9527))
10738 (s1-10124 (cdr w-9527)))
10739 (if (null? m1-10123)
10740 (if (null? s1-10124)
10741 w2-10122
10742 (cons (car w2-10122)
10743 (let ((m2-10139 (cdr w2-10122)))
10744 (if (null? m2-10139)
10745 s1-10124
10746 (append s1-10124 m2-10139)))))
10747 (cons (let ((m2-10147 (car w2-10122)))
10748 (if (null? m2-10147)
10749 m1-10123
10750 (append m1-10123 m2-10147)))
10751 (let ((m2-10155 (cdr w2-10122)))
10752 (if (null? m2-10155)
10753 s1-10124
10754 (append s1-10124 m2-10155))))))))
10755 (module-10115 (vector-ref x-10081 3)))
10756 (vector
10757 'syntax-object
10758 expression-10113
10759 wrap-10114
10760 module-10115))
10761 (if (null? x-10081)
10762 x-10081
10763 (vector
10764 'syntax-object
10765 x-10081
10766 w-9527
10767 mod-9529))))))))))
10768 (global-extend-4548
10769 'core
10770 'set!
10771 (lambda (e-10314 r-10315 w-10316 s-10317 mod-10318)
10772 (let ((tmp-10320 ($sc-dispatch e-10314 '(_ any any))))
10773 (if (if tmp-10320
10774 (@apply
10775 (lambda (id-10324 val-10325)
10776 (if (symbol? id-10324)
10777 #t
10778 (if (if (vector? id-10324)
10779 (if (= (vector-length id-10324) 4)
10780 (eq? (vector-ref id-10324 0) 'syntax-object)
10781 #f)
10782 #f)
10783 (symbol? (vector-ref id-10324 1))
10784 #f)))
10785 tmp-10320)
10786 #f)
10787 (@apply
10788 (lambda (id-10352 val-10353)
10789 (call-with-values
10790 (lambda ()
10791 (resolve-identifier-4571
10792 id-10352
10793 w-10316
10794 r-10315
10795 mod-10318
10796 #t))
10797 (lambda (type-10356 value-10357 id-mod-10358)
10798 (if (eqv? type-10356 'lexical)
10799 (build-lexical-assignment-4521
10800 s-10317
10801 (syntax->datum id-10352)
10802 value-10357
10803 (expand-4586 val-10353 r-10315 w-10316 mod-10318))
10804 (if (eqv? type-10356 'global)
10805 (build-global-assignment-4524
10806 s-10317
10807 value-10357
10808 (expand-4586 val-10353 r-10315 w-10316 mod-10318)
10809 id-mod-10358)
10810 (if (eqv? type-10356 'macro)
10811 (if (procedure-property
10812 value-10357
10813 'variable-transformer)
10814 (expand-4586
10815 (expand-macro-4589
10816 value-10357
10817 e-10314
10818 r-10315
10819 w-10316
10820 s-10317
10821 #f
10822 mod-10318)
10823 r-10315
10824 '(())
10825 mod-10318)
10826 (syntax-violation
10827 'set!
10828 "not a variable transformer"
10829 (if (if (null? (car w-10316))
10830 (null? (cdr w-10316))
10831 #f)
10832 e-10314
10833 (if (if (vector? e-10314)
10834 (if (= (vector-length e-10314) 4)
10835 (eq? (vector-ref e-10314 0)
10836 'syntax-object)
10837 #f)
10838 #f)
10839 (let ((expression-10798
10840 (vector-ref e-10314 1))
10841 (wrap-10799
10842 (let ((w2-10809
10843 (vector-ref e-10314 2)))
10844 (let ((m1-10810 (car w-10316))
10845 (s1-10811 (cdr w-10316)))
10846 (if (null? m1-10810)
10847 (if (null? s1-10811)
10848 w2-10809
10849 (cons (car w2-10809)
10850 (let ((m2-10828
10851 (cdr w2-10809)))
10852 (if (null? m2-10828)
10853 s1-10811
10854 (append
10855 s1-10811
10856 m2-10828)))))
10857 (cons (let ((m2-10836
10858 (car w2-10809)))
10859 (if (null? m2-10836)
10860 m1-10810
10861 (append
10862 m1-10810
10863 m2-10836)))
10864 (let ((m2-10844
10865 (cdr w2-10809)))
10866 (if (null? m2-10844)
10867 s1-10811
10868 (append
10869 s1-10811
10870 m2-10844))))))))
10871 (module-10800
10872 (vector-ref e-10314 3)))
10873 (vector
10874 'syntax-object
10875 expression-10798
10876 wrap-10799
10877 module-10800))
10878 (if (null? e-10314)
10879 e-10314
10880 (vector
10881 'syntax-object
10882 e-10314
10883 w-10316
10884 mod-10318))))
10885 (if (if (null? (car w-10316))
10886 (null? (cdr w-10316))
10887 #f)
10888 id-10352
10889 (if (if (vector? id-10352)
10890 (if (= (vector-length id-10352) 4)
10891 (eq? (vector-ref id-10352 0)
10892 'syntax-object)
10893 #f)
10894 #f)
10895 (let ((expression-10896
10896 (vector-ref id-10352 1))
10897 (wrap-10897
10898 (let ((w2-10907
10899 (vector-ref id-10352 2)))
10900 (let ((m1-10908 (car w-10316))
10901 (s1-10909 (cdr w-10316)))
10902 (if (null? m1-10908)
10903 (if (null? s1-10909)
10904 w2-10907
10905 (cons (car w2-10907)
10906 (let ((m2-10926
10907 (cdr w2-10907)))
10908 (if (null? m2-10926)
10909 s1-10909
10910 (append
10911 s1-10909
10912 m2-10926)))))
10913 (cons (let ((m2-10934
10914 (car w2-10907)))
10915 (if (null? m2-10934)
10916 m1-10908
10917 (append
10918 m1-10908
10919 m2-10934)))
10920 (let ((m2-10942
10921 (cdr w2-10907)))
10922 (if (null? m2-10942)
10923 s1-10909
10924 (append
10925 s1-10909
10926 m2-10942))))))))
10927 (module-10898
10928 (vector-ref id-10352 3)))
10929 (vector
10930 'syntax-object
10931 expression-10896
10932 wrap-10897
10933 module-10898))
10934 (if (null? id-10352)
10935 id-10352
10936 (vector
10937 'syntax-object
10938 id-10352
10939 w-10316
10940 id-mod-10358))))))
10941 (if (eqv? type-10356 'displaced-lexical)
10942 (syntax-violation
10943 'set!
10944 "identifier out of context"
10945 (if (if (null? (car w-10316))
10946 (null? (cdr w-10316))
10947 #f)
10948 id-10352
10949 (if (if (vector? id-10352)
10950 (if (= (vector-length id-10352) 4)
10951 (eq? (vector-ref id-10352 0)
10952 'syntax-object)
10953 #f)
10954 #f)
10955 (let ((expression-10997
10956 (vector-ref id-10352 1))
10957 (wrap-10998
10958 (let ((w2-11008
10959 (vector-ref id-10352 2)))
10960 (let ((m1-11009 (car w-10316))
10961 (s1-11010 (cdr w-10316)))
10962 (if (null? m1-11009)
10963 (if (null? s1-11010)
10964 w2-11008
10965 (cons (car w2-11008)
10966 (let ((m2-11027
10967 (cdr w2-11008)))
10968 (if (null? m2-11027)
10969 s1-11010
10970 (append
10971 s1-11010
10972 m2-11027)))))
10973 (cons (let ((m2-11035
10974 (car w2-11008)))
10975 (if (null? m2-11035)
10976 m1-11009
10977 (append
10978 m1-11009
10979 m2-11035)))
10980 (let ((m2-11043
10981 (cdr w2-11008)))
10982 (if (null? m2-11043)
10983 s1-11010
10984 (append
10985 s1-11010
10986 m2-11043))))))))
10987 (module-10999
10988 (vector-ref id-10352 3)))
10989 (vector
10990 'syntax-object
10991 expression-10997
10992 wrap-10998
10993 module-10999))
10994 (if (null? id-10352)
10995 id-10352
10996 (vector
10997 'syntax-object
10998 id-10352
10999 w-10316
11000 mod-10318)))))
11001 (syntax-violation
11002 'set!
11003 "bad set!"
11004 (let ((x-11075
11005 (begin
11006 (if (if (pair? e-10314) s-10317 #f)
11007 (set-source-properties!
11008 e-10314
11009 s-10317))
11010 e-10314)))
11011 (if (if (null? (car w-10316))
11012 (null? (cdr w-10316))
11013 #f)
11014 x-11075
11015 (if (if (vector? x-11075)
11016 (if (= (vector-length x-11075) 4)
11017 (eq? (vector-ref x-11075 0)
11018 'syntax-object)
11019 #f)
11020 #f)
11021 (let ((expression-11107
11022 (vector-ref x-11075 1))
11023 (wrap-11108
11024 (let ((w2-11116
11025 (vector-ref x-11075 2)))
11026 (let ((m1-11117 (car w-10316))
11027 (s1-11118 (cdr w-10316)))
11028 (if (null? m1-11117)
11029 (if (null? s1-11118)
11030 w2-11116
11031 (cons (car w2-11116)
11032 (let ((m2-11133
11033 (cdr w2-11116)))
11034 (if (null? m2-11133)
11035 s1-11118
11036 (append
11037 s1-11118
11038 m2-11133)))))
11039 (cons (let ((m2-11141
11040 (car w2-11116)))
11041 (if (null? m2-11141)
11042 m1-11117
11043 (append
11044 m1-11117
11045 m2-11141)))
11046 (let ((m2-11149
11047 (cdr w2-11116)))
11048 (if (null? m2-11149)
11049 s1-11118
11050 (append
11051 s1-11118
11052 m2-11149))))))))
11053 (module-11109
11054 (vector-ref x-11075 3)))
11055 (vector
11056 'syntax-object
11057 expression-11107
11058 wrap-11108
11059 module-11109))
11060 (if (null? x-11075)
11061 x-11075
11062 (vector
11063 'syntax-object
11064 x-11075
11065 w-10316
11066 mod-10318)))))))))))))
11067 tmp-10320)
11068 (let ((tmp-11164
11069 ($sc-dispatch e-10314 '(_ (any . each-any) any))))
11070 (if tmp-11164
11071 (@apply
11072 (lambda (head-11168 tail-11169 val-11170)
11073 (call-with-values
11074 (lambda ()
11075 (syntax-type-4585
11076 head-11168
11077 r-10315
11078 '(())
11079 #f
11080 #f
11081 mod-10318
11082 #t))
11083 (lambda (type-11173
11084 value-11174
11085 ee*-11175
11086 ee-11176
11087 ww-11177
11088 ss-11178
11089 modmod-11179)
11090 (if (eqv? type-11173 'module-ref)
11091 (let ((val-11183
11092 (expand-4586
11093 val-11170
11094 r-10315
11095 w-10316
11096 mod-10318)))
11097 (call-with-values
11098 (lambda ()
11099 (value-11174
11100 (cons head-11168 tail-11169)
11101 r-10315
11102 w-10316))
11103 (lambda (e-11184
11104 r-11185
11105 w-11186
11106 s*-11187
11107 mod-11188)
11108 (let ((tmp-11190 (list e-11184)))
11109 (if (@apply
11110 (lambda (e-11192)
11111 (if (symbol? e-11192)
11112 #t
11113 (if (if (vector? e-11192)
11114 (if (= (vector-length
11115 e-11192)
11116 4)
11117 (eq? (vector-ref
11118 e-11192
11119 0)
11120 'syntax-object)
11121 #f)
11122 #f)
11123 (symbol?
11124 (vector-ref e-11192 1))
11125 #f)))
11126 tmp-11190)
11127 (@apply
11128 (lambda (e-11222)
11129 (build-global-assignment-4524
11130 s-10317
11131 (syntax->datum e-11222)
11132 val-11183
11133 mod-11188))
11134 tmp-11190)
11135 (syntax-violation
11136 #f
11137 "source expression failed to match any pattern"
11138 e-11184))))))
11139 (build-call-4517
11140 s-10317
11141 (expand-4586
11142 (list '#(syntax-object
11143 setter
11144 ((top)
11145 #(ribcage () () ())
11146 #(ribcage () () ())
11147 #(ribcage
11148 #(type value ee* ee ww ss modmod)
11149 #((top)
11150 (top)
11151 (top)
11152 (top)
11153 (top)
11154 (top)
11155 (top))
11156 #("l-*-3734"
11157 "l-*-3735"
11158 "l-*-3736"
11159 "l-*-3737"
11160 "l-*-3738"
11161 "l-*-3739"
11162 "l-*-3740"))
11163 #(ribcage
11164 #(head tail val)
11165 #((top) (top) (top))
11166 #("l-*-3719"
11167 "l-*-3720"
11168 "l-*-3721"))
11169 #(ribcage () () ())
11170 #(ribcage
11171 #(e r w s mod)
11172 #((top) (top) (top) (top) (top))
11173 #("l-*-3691"
11174 "l-*-3692"
11175 "l-*-3693"
11176 "l-*-3694"
11177 "l-*-3695"))
11178 #(ribcage
11179 (lambda-var-list
11180 gen-var
11181 strip
11182 expand-lambda-case
11183 lambda*-formals
11184 expand-simple-lambda
11185 lambda-formals
11186 ellipsis?
11187 expand-void
11188 eval-local-transformer
11189 expand-local-syntax
11190 expand-body
11191 expand-macro
11192 expand-call
11193 expand-expr
11194 expand
11195 syntax-type
11196 parse-when-list
11197 expand-install-global
11198 expand-top-sequence
11199 expand-sequence
11200 source-wrap
11201 wrap
11202 bound-id-member?
11203 distinct-bound-ids?
11204 valid-bound-ids?
11205 bound-id=?
11206 free-id=?
11207 with-transformer-environment
11208 transformer-environment
11209 resolve-identifier
11210 locally-bound-identifiers
11211 id-var-name
11212 same-marks?
11213 join-marks
11214 join-wraps
11215 smart-append
11216 make-binding-wrap
11217 extend-ribcage!
11218 make-empty-ribcage
11219 new-mark
11220 anti-mark
11221 the-anti-mark
11222 top-marked?
11223 top-wrap
11224 empty-wrap
11225 set-ribcage-labels!
11226 set-ribcage-marks!
11227 set-ribcage-symnames!
11228 ribcage-labels
11229 ribcage-marks
11230 ribcage-symnames
11231 ribcage?
11232 make-ribcage
11233 gen-labels
11234 gen-label
11235 make-rename
11236 rename-marks
11237 rename-new
11238 rename-old
11239 subst-rename?
11240 wrap-subst
11241 wrap-marks
11242 make-wrap
11243 id-sym-name&marks
11244 id-sym-name
11245 id?
11246 nonsymbol-id?
11247 global-extend
11248 macros-only-env
11249 extend-var-env
11250 extend-env
11251 null-env
11252 binding-value
11253 binding-type
11254 make-binding
11255 arg-check
11256 source-annotation
11257 no-source
11258 set-syntax-object-module!
11259 set-syntax-object-wrap!
11260 set-syntax-object-expression!
11261 syntax-object-module
11262 syntax-object-wrap
11263 syntax-object-expression
11264 syntax-object?
11265 make-syntax-object
11266 build-lexical-var
11267 build-letrec
11268 build-named-let
11269 build-let
11270 build-sequence
11271 build-data
11272 build-primref
11273 build-primcall
11274 build-lambda-case
11275 build-case-lambda
11276 build-simple-lambda
11277 build-global-definition
11278 build-global-assignment
11279 build-global-reference
11280 analyze-variable
11281 build-lexical-assignment
11282 build-lexical-reference
11283 build-dynlet
11284 build-conditional
11285 build-call
11286 build-void
11287 maybe-name-value!
11288 decorate-source
11289 get-global-definition-hook
11290 put-global-definition-hook
11291 session-id
11292 local-eval-hook
11293 top-level-eval-hook
11294 fx<
11295 fx=
11296 fx-
11297 fx+
11298 set-lambda-meta!
11299 lambda-meta
11300 lambda?
11301 make-dynlet
11302 make-letrec
11303 make-let
11304 make-lambda-case
11305 make-lambda
11306 make-seq
11307 make-primcall
11308 make-call
11309 make-conditional
11310 make-toplevel-define
11311 make-toplevel-set
11312 make-toplevel-ref
11313 make-module-set
11314 make-module-ref
11315 make-lexical-set
11316 make-lexical-ref
11317 make-primitive-ref
11318 make-const
11319 make-void)
11320 ((top)
11321 (top)
11322 (top)
11323 (top)
11324 (top)
11325 (top)
11326 (top)
11327 (top)
11328 (top)
11329 (top)
11330 (top)
11331 (top)
11332 (top)
11333 (top)
11334 (top)
11335 (top)
11336 (top)
11337 (top)
11338 (top)
11339 (top)
11340 (top)
11341 (top)
11342 (top)
11343 (top)
11344 (top)
11345 (top)
11346 (top)
11347 (top)
11348 (top)
11349 (top)
11350 (top)
11351 (top)
11352 (top)
11353 (top)
11354 (top)
11355 (top)
11356 (top)
11357 (top)
11358 (top)
11359 (top)
11360 (top)
11361 (top)
11362 (top)
11363 (top)
11364 (top)
11365 (top)
11366 (top)
11367 (top)
11368 (top)
11369 (top)
11370 (top)
11371 (top)
11372 (top)
11373 (top)
11374 (top)
11375 (top)
11376 (top)
11377 (top)
11378 (top)
11379 (top)
11380 (top)
11381 (top)
11382 (top)
11383 (top)
11384 (top)
11385 (top)
11386 (top)
11387 (top)
11388 (top)
11389 (top)
11390 (top)
11391 (top)
11392 (top)
11393 (top)
11394 (top)
11395 (top)
11396 (top)
11397 (top)
11398 (top)
11399 (top)
11400 (top)
11401 (top)
11402 (top)
11403 (top)
11404 (top)
11405 (top)
11406 (top)
11407 (top)
11408 (top)
11409 (top)
11410 (top)
11411 (top)
11412 (top)
11413 (top)
11414 (top)
11415 (top)
11416 (top)
11417 (top)
11418 (top)
11419 (top)
11420 (top)
11421 (top)
11422 (top)
11423 (top)
11424 (top)
11425 (top)
11426 (top)
11427 (top)
11428 (top)
11429 (top)
11430 (top)
11431 (top)
11432 (top)
11433 (top)
11434 (top)
11435 (top)
11436 (top)
11437 (top)
11438 (top)
11439 (top)
11440 (top)
11441 (top)
11442 (top)
11443 (top)
11444 (top)
11445 (top)
11446 (top)
11447 (top)
11448 (top)
11449 (top)
11450 (top)
11451 (top)
11452 (top)
11453 (top)
11454 (top)
11455 (top)
11456 (top)
11457 (top)
11458 (top)
11459 (top)
11460 (top))
11461 ("l-*-478"
11462 "l-*-476"
11463 "l-*-474"
11464 "l-*-472"
11465 "l-*-470"
11466 "l-*-468"
11467 "l-*-466"
11468 "l-*-464"
11469 "l-*-462"
11470 "l-*-460"
11471 "l-*-458"
11472 "l-*-456"
11473 "l-*-454"
11474 "l-*-452"
11475 "l-*-450"
11476 "l-*-448"
11477 "l-*-446"
11478 "l-*-444"
11479 "l-*-442"
11480 "l-*-440"
11481 "l-*-438"
11482 "l-*-436"
11483 "l-*-434"
11484 "l-*-432"
11485 "l-*-430"
11486 "l-*-428"
11487 "l-*-426"
11488 "l-*-424"
11489 "l-*-422"
11490 "l-*-420"
11491 "l-*-418"
11492 "l-*-416"
11493 "l-*-414"
11494 "l-*-412"
11495 "l-*-410"
11496 "l-*-408"
11497 "l-*-406"
11498 "l-*-404"
11499 "l-*-402"
11500 "l-*-401"
11501 "l-*-399"
11502 "l-*-396"
11503 "l-*-395"
11504 "l-*-394"
11505 "l-*-392"
11506 "l-*-391"
11507 "l-*-389"
11508 "l-*-387"
11509 "l-*-385"
11510 "l-*-383"
11511 "l-*-381"
11512 "l-*-379"
11513 "l-*-377"
11514 "l-*-375"
11515 "l-*-372"
11516 "l-*-370"
11517 "l-*-369"
11518 "l-*-367"
11519 "l-*-365"
11520 "l-*-363"
11521 "l-*-361"
11522 "l-*-360"
11523 "l-*-359"
11524 "l-*-358"
11525 "l-*-356"
11526 "l-*-355"
11527 "l-*-352"
11528 "l-*-350"
11529 "l-*-348"
11530 "l-*-346"
11531 "l-*-344"
11532 "l-*-342"
11533 "l-*-341"
11534 "l-*-340"
11535 "l-*-338"
11536 "l-*-336"
11537 "l-*-335"
11538 "l-*-332"
11539 "l-*-331"
11540 "l-*-329"
11541 "l-*-327"
11542 "l-*-325"
11543 "l-*-323"
11544 "l-*-321"
11545 "l-*-319"
11546 "l-*-317"
11547 "l-*-315"
11548 "l-*-313"
11549 "l-*-310"
11550 "l-*-308"
11551 "l-*-306"
11552 "l-*-304"
11553 "l-*-302"
11554 "l-*-300"
11555 "l-*-298"
11556 "l-*-296"
11557 "l-*-294"
11558 "l-*-292"
11559 "l-*-290"
11560 "l-*-288"
11561 "l-*-286"
11562 "l-*-284"
11563 "l-*-282"
11564 "l-*-280"
11565 "l-*-278"
11566 "l-*-276"
11567 "l-*-274"
11568 "l-*-272"
11569 "l-*-270"
11570 "l-*-268"
11571 "l-*-266"
11572 "l-*-264"
11573 "l-*-262"
11574 "l-*-260"
11575 "l-*-258"
11576 "l-*-257"
11577 "l-*-256"
11578 "l-*-255"
11579 "l-*-254"
11580 "l-*-252"
11581 "l-*-250"
11582 "l-*-248"
11583 "l-*-245"
11584 "l-*-243"
11585 "l-*-241"
11586 "l-*-239"
11587 "l-*-237"
11588 "l-*-235"
11589 "l-*-233"
11590 "l-*-231"
11591 "l-*-229"
11592 "l-*-227"
11593 "l-*-225"
11594 "l-*-223"
11595 "l-*-221"
11596 "l-*-219"
11597 "l-*-217"
11598 "l-*-215"
11599 "l-*-213"
11600 "l-*-211"
11601 "l-*-209"))
11602 #(ribcage
11603 (define-structure
11604 define-expansion-accessors
11605 define-expansion-constructors)
11606 ((top) (top) (top))
11607 ("l-*-47" "l-*-46" "l-*-45"))
11608 #(ribcage () () ()))
11609 (hygiene guile))
11610 head-11168)
11611 r-10315
11612 w-10316
11613 mod-10318)
11614 (map (lambda (e-11535)
11615 (expand-4586
11616 e-11535
11617 r-10315
11618 w-10316
11619 mod-10318))
11620 (append tail-11169 (list val-11170))))))))
11621 tmp-11164)
11622 (syntax-violation
11623 'set!
11624 "bad set!"
11625 (let ((x-11623
11626 (begin
11627 (if (if (pair? e-10314) s-10317 #f)
11628 (set-source-properties! e-10314 s-10317))
11629 e-10314)))
11630 (if (if (null? (car w-10316))
11631 (null? (cdr w-10316))
11632 #f)
11633 x-11623
11634 (if (if (vector? x-11623)
11635 (if (= (vector-length x-11623) 4)
11636 (eq? (vector-ref x-11623 0) 'syntax-object)
11637 #f)
11638 #f)
11639 (let ((expression-11655 (vector-ref x-11623 1))
11640 (wrap-11656
11641 (let ((w2-11664 (vector-ref x-11623 2)))
11642 (let ((m1-11665 (car w-10316))
11643 (s1-11666 (cdr w-10316)))
11644 (if (null? m1-11665)
11645 (if (null? s1-11666)
11646 w2-11664
11647 (cons (car w2-11664)
11648 (let ((m2-11681
11649 (cdr w2-11664)))
11650 (if (null? m2-11681)
11651 s1-11666
11652 (append
11653 s1-11666
11654 m2-11681)))))
11655 (cons (let ((m2-11689 (car w2-11664)))
11656 (if (null? m2-11689)
11657 m1-11665
11658 (append m1-11665 m2-11689)))
11659 (let ((m2-11697 (cdr w2-11664)))
11660 (if (null? m2-11697)
11661 s1-11666
11662 (append
11663 s1-11666
11664 m2-11697))))))))
11665 (module-11657 (vector-ref x-11623 3)))
11666 (vector
11667 'syntax-object
11668 expression-11655
11669 wrap-11656
11670 module-11657))
11671 (if (null? x-11623)
11672 x-11623
11673 (vector
11674 'syntax-object
11675 x-11623
11676 w-10316
11677 mod-10318))))))))))))
11678 (module-define!
11679 (current-module)
11680 '@
11681 (make-syntax-transformer
11682 '@
11683 'module-ref
11684 (lambda (e-11728 r-11729 w-11730)
11685 (let ((tmp-11732
11686 ($sc-dispatch e-11728 '(_ each-any any))))
11687 (if (if tmp-11732
11688 (@apply
11689 (lambda (mod-11735 id-11736)
11690 (if (and-map id?-4550 mod-11735)
11691 (if (symbol? id-11736)
11692 #t
11693 (if (if (vector? id-11736)
11694 (if (= (vector-length id-11736) 4)
11695 (eq? (vector-ref id-11736 0)
11696 'syntax-object)
11697 #f)
11698 #f)
11699 (symbol? (vector-ref id-11736 1))
11700 #f))
11701 #f))
11702 tmp-11732)
11703 #f)
11704 (@apply
11705 (lambda (mod-11776 id-11777)
11706 (values
11707 (syntax->datum id-11777)
11708 r-11729
11709 w-11730
11710 #f
11711 (syntax->datum
11712 (cons '#(syntax-object
11713 public
11714 ((top)
11715 #(ribcage
11716 #(mod id)
11717 #((top) (top))
11718 #("l-*-3782" "l-*-3783"))
11719 #(ribcage () () ())
11720 #(ribcage
11721 #(e r w)
11722 #((top) (top) (top))
11723 #("l-*-3770" "l-*-3771" "l-*-3772"))
11724 #(ribcage
11725 (lambda-var-list
11726 gen-var
11727 strip
11728 expand-lambda-case
11729 lambda*-formals
11730 expand-simple-lambda
11731 lambda-formals
11732 ellipsis?
11733 expand-void
11734 eval-local-transformer
11735 expand-local-syntax
11736 expand-body
11737 expand-macro
11738 expand-call
11739 expand-expr
11740 expand
11741 syntax-type
11742 parse-when-list
11743 expand-install-global
11744 expand-top-sequence
11745 expand-sequence
11746 source-wrap
11747 wrap
11748 bound-id-member?
11749 distinct-bound-ids?
11750 valid-bound-ids?
11751 bound-id=?
11752 free-id=?
11753 with-transformer-environment
11754 transformer-environment
11755 resolve-identifier
11756 locally-bound-identifiers
11757 id-var-name
11758 same-marks?
11759 join-marks
11760 join-wraps
11761 smart-append
11762 make-binding-wrap
11763 extend-ribcage!
11764 make-empty-ribcage
11765 new-mark
11766 anti-mark
11767 the-anti-mark
11768 top-marked?
11769 top-wrap
11770 empty-wrap
11771 set-ribcage-labels!
11772 set-ribcage-marks!
11773 set-ribcage-symnames!
11774 ribcage-labels
11775 ribcage-marks
11776 ribcage-symnames
11777 ribcage?
11778 make-ribcage
11779 gen-labels
11780 gen-label
11781 make-rename
11782 rename-marks
11783 rename-new
11784 rename-old
11785 subst-rename?
11786 wrap-subst
11787 wrap-marks
11788 make-wrap
11789 id-sym-name&marks
11790 id-sym-name
11791 id?
11792 nonsymbol-id?
11793 global-extend
11794 macros-only-env
11795 extend-var-env
11796 extend-env
11797 null-env
11798 binding-value
11799 binding-type
11800 make-binding
11801 arg-check
11802 source-annotation
11803 no-source
11804 set-syntax-object-module!
11805 set-syntax-object-wrap!
11806 set-syntax-object-expression!
11807 syntax-object-module
11808 syntax-object-wrap
11809 syntax-object-expression
11810 syntax-object?
11811 make-syntax-object
11812 build-lexical-var
11813 build-letrec
11814 build-named-let
11815 build-let
11816 build-sequence
11817 build-data
11818 build-primref
11819 build-primcall
11820 build-lambda-case
11821 build-case-lambda
11822 build-simple-lambda
11823 build-global-definition
11824 build-global-assignment
11825 build-global-reference
11826 analyze-variable
11827 build-lexical-assignment
11828 build-lexical-reference
11829 build-dynlet
11830 build-conditional
11831 build-call
11832 build-void
11833 maybe-name-value!
11834 decorate-source
11835 get-global-definition-hook
11836 put-global-definition-hook
11837 session-id
11838 local-eval-hook
11839 top-level-eval-hook
11840 fx<
11841 fx=
11842 fx-
11843 fx+
11844 set-lambda-meta!
11845 lambda-meta
11846 lambda?
11847 make-dynlet
11848 make-letrec
11849 make-let
11850 make-lambda-case
11851 make-lambda
11852 make-seq
11853 make-primcall
11854 make-call
11855 make-conditional
11856 make-toplevel-define
11857 make-toplevel-set
11858 make-toplevel-ref
11859 make-module-set
11860 make-module-ref
11861 make-lexical-set
11862 make-lexical-ref
11863 make-primitive-ref
11864 make-const
11865 make-void)
11866 ((top)
11867 (top)
11868 (top)
11869 (top)
11870 (top)
11871 (top)
11872 (top)
11873 (top)
11874 (top)
11875 (top)
11876 (top)
11877 (top)
11878 (top)
11879 (top)
11880 (top)
11881 (top)
11882 (top)
11883 (top)
11884 (top)
11885 (top)
11886 (top)
11887 (top)
11888 (top)
11889 (top)
11890 (top)
11891 (top)
11892 (top)
11893 (top)
11894 (top)
11895 (top)
11896 (top)
11897 (top)
11898 (top)
11899 (top)
11900 (top)
11901 (top)
11902 (top)
11903 (top)
11904 (top)
11905 (top)
11906 (top)
11907 (top)
11908 (top)
11909 (top)
11910 (top)
11911 (top)
11912 (top)
11913 (top)
11914 (top)
11915 (top)
11916 (top)
11917 (top)
11918 (top)
11919 (top)
11920 (top)
11921 (top)
11922 (top)
11923 (top)
11924 (top)
11925 (top)
11926 (top)
11927 (top)
11928 (top)
11929 (top)
11930 (top)
11931 (top)
11932 (top)
11933 (top)
11934 (top)
11935 (top)
11936 (top)
11937 (top)
11938 (top)
11939 (top)
11940 (top)
11941 (top)
11942 (top)
11943 (top)
11944 (top)
11945 (top)
11946 (top)
11947 (top)
11948 (top)
11949 (top)
11950 (top)
11951 (top)
11952 (top)
11953 (top)
11954 (top)
11955 (top)
11956 (top)
11957 (top)
11958 (top)
11959 (top)
11960 (top)
11961 (top)
11962 (top)
11963 (top)
11964 (top)
11965 (top)
11966 (top)
11967 (top)
11968 (top)
11969 (top)
11970 (top)
11971 (top)
11972 (top)
11973 (top)
11974 (top)
11975 (top)
11976 (top)
11977 (top)
11978 (top)
11979 (top)
11980 (top)
11981 (top)
11982 (top)
11983 (top)
11984 (top)
11985 (top)
11986 (top)
11987 (top)
11988 (top)
11989 (top)
11990 (top)
11991 (top)
11992 (top)
11993 (top)
11994 (top)
11995 (top)
11996 (top)
11997 (top)
11998 (top)
11999 (top)
12000 (top)
12001 (top)
12002 (top)
12003 (top)
12004 (top)
12005 (top)
12006 (top))
12007 ("l-*-478"
12008 "l-*-476"
12009 "l-*-474"
12010 "l-*-472"
12011 "l-*-470"
12012 "l-*-468"
12013 "l-*-466"
12014 "l-*-464"
12015 "l-*-462"
12016 "l-*-460"
12017 "l-*-458"
12018 "l-*-456"
12019 "l-*-454"
12020 "l-*-452"
12021 "l-*-450"
12022 "l-*-448"
12023 "l-*-446"
12024 "l-*-444"
12025 "l-*-442"
12026 "l-*-440"
12027 "l-*-438"
12028 "l-*-436"
12029 "l-*-434"
12030 "l-*-432"
12031 "l-*-430"
12032 "l-*-428"
12033 "l-*-426"
12034 "l-*-424"
12035 "l-*-422"
12036 "l-*-420"
12037 "l-*-418"
12038 "l-*-416"
12039 "l-*-414"
12040 "l-*-412"
12041 "l-*-410"
12042 "l-*-408"
12043 "l-*-406"
12044 "l-*-404"
12045 "l-*-402"
12046 "l-*-401"
12047 "l-*-399"
12048 "l-*-396"
12049 "l-*-395"
12050 "l-*-394"
12051 "l-*-392"
12052 "l-*-391"
12053 "l-*-389"
12054 "l-*-387"
12055 "l-*-385"
12056 "l-*-383"
12057 "l-*-381"
12058 "l-*-379"
12059 "l-*-377"
12060 "l-*-375"
12061 "l-*-372"
12062 "l-*-370"
12063 "l-*-369"
12064 "l-*-367"
12065 "l-*-365"
12066 "l-*-363"
12067 "l-*-361"
12068 "l-*-360"
12069 "l-*-359"
12070 "l-*-358"
12071 "l-*-356"
12072 "l-*-355"
12073 "l-*-352"
12074 "l-*-350"
12075 "l-*-348"
12076 "l-*-346"
12077 "l-*-344"
12078 "l-*-342"
12079 "l-*-341"
12080 "l-*-340"
12081 "l-*-338"
12082 "l-*-336"
12083 "l-*-335"
12084 "l-*-332"
12085 "l-*-331"
12086 "l-*-329"
12087 "l-*-327"
12088 "l-*-325"
12089 "l-*-323"
12090 "l-*-321"
12091 "l-*-319"
12092 "l-*-317"
12093 "l-*-315"
12094 "l-*-313"
12095 "l-*-310"
12096 "l-*-308"
12097 "l-*-306"
12098 "l-*-304"
12099 "l-*-302"
12100 "l-*-300"
12101 "l-*-298"
12102 "l-*-296"
12103 "l-*-294"
12104 "l-*-292"
12105 "l-*-290"
12106 "l-*-288"
12107 "l-*-286"
12108 "l-*-284"
12109 "l-*-282"
12110 "l-*-280"
12111 "l-*-278"
12112 "l-*-276"
12113 "l-*-274"
12114 "l-*-272"
12115 "l-*-270"
12116 "l-*-268"
12117 "l-*-266"
12118 "l-*-264"
12119 "l-*-262"
12120 "l-*-260"
12121 "l-*-258"
12122 "l-*-257"
12123 "l-*-256"
12124 "l-*-255"
12125 "l-*-254"
12126 "l-*-252"
12127 "l-*-250"
12128 "l-*-248"
12129 "l-*-245"
12130 "l-*-243"
12131 "l-*-241"
12132 "l-*-239"
12133 "l-*-237"
12134 "l-*-235"
12135 "l-*-233"
12136 "l-*-231"
12137 "l-*-229"
12138 "l-*-227"
12139 "l-*-225"
12140 "l-*-223"
12141 "l-*-221"
12142 "l-*-219"
12143 "l-*-217"
12144 "l-*-215"
12145 "l-*-213"
12146 "l-*-211"
12147 "l-*-209"))
12148 #(ribcage
12149 (define-structure
12150 define-expansion-accessors
12151 define-expansion-constructors)
12152 ((top) (top) (top))
12153 ("l-*-47" "l-*-46" "l-*-45"))
12154 #(ribcage () () ()))
12155 (hygiene guile))
12156 mod-11776))))
12157 tmp-11732)
12158 (syntax-violation
12159 #f
12160 "source expression failed to match any pattern"
12161 e-11728))))))
12162 (global-extend-4548
12163 'module-ref
12164 '@@
12165 (lambda (e-11877 r-11878 w-11879)
12166 (letrec*
12167 ((remodulate-11880
12168 (lambda (x-12098 mod-12099)
12169 (if (pair? x-12098)
12170 (cons (remodulate-11880 (car x-12098) mod-12099)
12171 (remodulate-11880 (cdr x-12098) mod-12099))
12172 (if (if (vector? x-12098)
12173 (if (= (vector-length x-12098) 4)
12174 (eq? (vector-ref x-12098 0) 'syntax-object)
12175 #f)
12176 #f)
12177 (let ((expression-12113
12178 (remodulate-11880
12179 (vector-ref x-12098 1)
12180 mod-12099))
12181 (wrap-12114 (vector-ref x-12098 2)))
12182 (vector
12183 'syntax-object
12184 expression-12113
12185 wrap-12114
12186 mod-12099))
12187 (if (vector? x-12098)
12188 (let ((n-12122 (vector-length x-12098)))
12189 (let ((v-12123 (make-vector n-12122)))
12190 (letrec*
12191 ((loop-12124
12192 (lambda (i-12179)
12193 (if (= i-12179 n-12122)
12194 v-12123
12195 (begin
12196 (vector-set!
12197 v-12123
12198 i-12179
12199 (remodulate-11880
12200 (vector-ref x-12098 i-12179)
12201 mod-12099))
12202 (loop-12124 (#{1+}# i-12179)))))))
12203 (loop-12124 0))))
12204 x-12098))))))
12205 (let ((tmp-11882
12206 ($sc-dispatch e-11877 '(_ each-any any))))
12207 (if (if tmp-11882
12208 (@apply
12209 (lambda (mod-11886 exp-11887)
12210 (and-map id?-4550 mod-11886))
12211 tmp-11882)
12212 #f)
12213 (@apply
12214 (lambda (mod-11903 exp-11904)
12215 (let ((mod-11905
12216 (syntax->datum
12217 (cons '#(syntax-object
12218 private
12219 ((top)
12220 #(ribcage
12221 #(mod exp)
12222 #((top) (top))
12223 #("l-*-3826" "l-*-3827"))
12224 #(ribcage
12225 (remodulate)
12226 ((top))
12227 ("l-*-3793"))
12228 #(ribcage
12229 #(e r w)
12230 #((top) (top) (top))
12231 #("l-*-3790" "l-*-3791" "l-*-3792"))
12232 #(ribcage
12233 (lambda-var-list
12234 gen-var
12235 strip
12236 expand-lambda-case
12237 lambda*-formals
12238 expand-simple-lambda
12239 lambda-formals
12240 ellipsis?
12241 expand-void
12242 eval-local-transformer
12243 expand-local-syntax
12244 expand-body
12245 expand-macro
12246 expand-call
12247 expand-expr
12248 expand
12249 syntax-type
12250 parse-when-list
12251 expand-install-global
12252 expand-top-sequence
12253 expand-sequence
12254 source-wrap
12255 wrap
12256 bound-id-member?
12257 distinct-bound-ids?
12258 valid-bound-ids?
12259 bound-id=?
12260 free-id=?
12261 with-transformer-environment
12262 transformer-environment
12263 resolve-identifier
12264 locally-bound-identifiers
12265 id-var-name
12266 same-marks?
12267 join-marks
12268 join-wraps
12269 smart-append
12270 make-binding-wrap
12271 extend-ribcage!
12272 make-empty-ribcage
12273 new-mark
12274 anti-mark
12275 the-anti-mark
12276 top-marked?
12277 top-wrap
12278 empty-wrap
12279 set-ribcage-labels!
12280 set-ribcage-marks!
12281 set-ribcage-symnames!
12282 ribcage-labels
12283 ribcage-marks
12284 ribcage-symnames
12285 ribcage?
12286 make-ribcage
12287 gen-labels
12288 gen-label
12289 make-rename
12290 rename-marks
12291 rename-new
12292 rename-old
12293 subst-rename?
12294 wrap-subst
12295 wrap-marks
12296 make-wrap
12297 id-sym-name&marks
12298 id-sym-name
12299 id?
12300 nonsymbol-id?
12301 global-extend
12302 macros-only-env
12303 extend-var-env
12304 extend-env
12305 null-env
12306 binding-value
12307 binding-type
12308 make-binding
12309 arg-check
12310 source-annotation
12311 no-source
12312 set-syntax-object-module!
12313 set-syntax-object-wrap!
12314 set-syntax-object-expression!
12315 syntax-object-module
12316 syntax-object-wrap
12317 syntax-object-expression
12318 syntax-object?
12319 make-syntax-object
12320 build-lexical-var
12321 build-letrec
12322 build-named-let
12323 build-let
12324 build-sequence
12325 build-data
12326 build-primref
12327 build-primcall
12328 build-lambda-case
12329 build-case-lambda
12330 build-simple-lambda
12331 build-global-definition
12332 build-global-assignment
12333 build-global-reference
12334 analyze-variable
12335 build-lexical-assignment
12336 build-lexical-reference
12337 build-dynlet
12338 build-conditional
12339 build-call
12340 build-void
12341 maybe-name-value!
12342 decorate-source
12343 get-global-definition-hook
12344 put-global-definition-hook
12345 session-id
12346 local-eval-hook
12347 top-level-eval-hook
12348 fx<
12349 fx=
12350 fx-
12351 fx+
12352 set-lambda-meta!
12353 lambda-meta
12354 lambda?
12355 make-dynlet
12356 make-letrec
12357 make-let
12358 make-lambda-case
12359 make-lambda
12360 make-seq
12361 make-primcall
12362 make-call
12363 make-conditional
12364 make-toplevel-define
12365 make-toplevel-set
12366 make-toplevel-ref
12367 make-module-set
12368 make-module-ref
12369 make-lexical-set
12370 make-lexical-ref
12371 make-primitive-ref
12372 make-const
12373 make-void)
12374 ((top)
12375 (top)
12376 (top)
12377 (top)
12378 (top)
12379 (top)
12380 (top)
12381 (top)
12382 (top)
12383 (top)
12384 (top)
12385 (top)
12386 (top)
12387 (top)
12388 (top)
12389 (top)
12390 (top)
12391 (top)
12392 (top)
12393 (top)
12394 (top)
12395 (top)
12396 (top)
12397 (top)
12398 (top)
12399 (top)
12400 (top)
12401 (top)
12402 (top)
12403 (top)
12404 (top)
12405 (top)
12406 (top)
12407 (top)
12408 (top)
12409 (top)
12410 (top)
12411 (top)
12412 (top)
12413 (top)
12414 (top)
12415 (top)
12416 (top)
12417 (top)
12418 (top)
12419 (top)
12420 (top)
12421 (top)
12422 (top)
12423 (top)
12424 (top)
12425 (top)
12426 (top)
12427 (top)
12428 (top)
12429 (top)
12430 (top)
12431 (top)
12432 (top)
12433 (top)
12434 (top)
12435 (top)
12436 (top)
12437 (top)
12438 (top)
12439 (top)
12440 (top)
12441 (top)
12442 (top)
12443 (top)
12444 (top)
12445 (top)
12446 (top)
12447 (top)
12448 (top)
12449 (top)
12450 (top)
12451 (top)
12452 (top)
12453 (top)
12454 (top)
12455 (top)
12456 (top)
12457 (top)
12458 (top)
12459 (top)
12460 (top)
12461 (top)
12462 (top)
12463 (top)
12464 (top)
12465 (top)
12466 (top)
12467 (top)
12468 (top)
12469 (top)
12470 (top)
12471 (top)
12472 (top)
12473 (top)
12474 (top)
12475 (top)
12476 (top)
12477 (top)
12478 (top)
12479 (top)
12480 (top)
12481 (top)
12482 (top)
12483 (top)
12484 (top)
12485 (top)
12486 (top)
12487 (top)
12488 (top)
12489 (top)
12490 (top)
12491 (top)
12492 (top)
12493 (top)
12494 (top)
12495 (top)
12496 (top)
12497 (top)
12498 (top)
12499 (top)
12500 (top)
12501 (top)
12502 (top)
12503 (top)
12504 (top)
12505 (top)
12506 (top)
12507 (top)
12508 (top)
12509 (top)
12510 (top)
12511 (top)
12512 (top)
12513 (top)
12514 (top))
12515 ("l-*-478"
12516 "l-*-476"
12517 "l-*-474"
12518 "l-*-472"
12519 "l-*-470"
12520 "l-*-468"
12521 "l-*-466"
12522 "l-*-464"
12523 "l-*-462"
12524 "l-*-460"
12525 "l-*-458"
12526 "l-*-456"
12527 "l-*-454"
12528 "l-*-452"
12529 "l-*-450"
12530 "l-*-448"
12531 "l-*-446"
12532 "l-*-444"
12533 "l-*-442"
12534 "l-*-440"
12535 "l-*-438"
12536 "l-*-436"
12537 "l-*-434"
12538 "l-*-432"
12539 "l-*-430"
12540 "l-*-428"
12541 "l-*-426"
12542 "l-*-424"
12543 "l-*-422"
12544 "l-*-420"
12545 "l-*-418"
12546 "l-*-416"
12547 "l-*-414"
12548 "l-*-412"
12549 "l-*-410"
12550 "l-*-408"
12551 "l-*-406"
12552 "l-*-404"
12553 "l-*-402"
12554 "l-*-401"
12555 "l-*-399"
12556 "l-*-396"
12557 "l-*-395"
12558 "l-*-394"
12559 "l-*-392"
12560 "l-*-391"
12561 "l-*-389"
12562 "l-*-387"
12563 "l-*-385"
12564 "l-*-383"
12565 "l-*-381"
12566 "l-*-379"
12567 "l-*-377"
12568 "l-*-375"
12569 "l-*-372"
12570 "l-*-370"
12571 "l-*-369"
12572 "l-*-367"
12573 "l-*-365"
12574 "l-*-363"
12575 "l-*-361"
12576 "l-*-360"
12577 "l-*-359"
12578 "l-*-358"
12579 "l-*-356"
12580 "l-*-355"
12581 "l-*-352"
12582 "l-*-350"
12583 "l-*-348"
12584 "l-*-346"
12585 "l-*-344"
12586 "l-*-342"
12587 "l-*-341"
12588 "l-*-340"
12589 "l-*-338"
12590 "l-*-336"
12591 "l-*-335"
12592 "l-*-332"
12593 "l-*-331"
12594 "l-*-329"
12595 "l-*-327"
12596 "l-*-325"
12597 "l-*-323"
12598 "l-*-321"
12599 "l-*-319"
12600 "l-*-317"
12601 "l-*-315"
12602 "l-*-313"
12603 "l-*-310"
12604 "l-*-308"
12605 "l-*-306"
12606 "l-*-304"
12607 "l-*-302"
12608 "l-*-300"
12609 "l-*-298"
12610 "l-*-296"
12611 "l-*-294"
12612 "l-*-292"
12613 "l-*-290"
12614 "l-*-288"
12615 "l-*-286"
12616 "l-*-284"
12617 "l-*-282"
12618 "l-*-280"
12619 "l-*-278"
12620 "l-*-276"
12621 "l-*-274"
12622 "l-*-272"
12623 "l-*-270"
12624 "l-*-268"
12625 "l-*-266"
12626 "l-*-264"
12627 "l-*-262"
12628 "l-*-260"
12629 "l-*-258"
12630 "l-*-257"
12631 "l-*-256"
12632 "l-*-255"
12633 "l-*-254"
12634 "l-*-252"
12635 "l-*-250"
12636 "l-*-248"
12637 "l-*-245"
12638 "l-*-243"
12639 "l-*-241"
12640 "l-*-239"
12641 "l-*-237"
12642 "l-*-235"
12643 "l-*-233"
12644 "l-*-231"
12645 "l-*-229"
12646 "l-*-227"
12647 "l-*-225"
12648 "l-*-223"
12649 "l-*-221"
12650 "l-*-219"
12651 "l-*-217"
12652 "l-*-215"
12653 "l-*-213"
12654 "l-*-211"
12655 "l-*-209"))
12656 #(ribcage
12657 (define-structure
12658 define-expansion-accessors
12659 define-expansion-constructors)
12660 ((top) (top) (top))
12661 ("l-*-47" "l-*-46" "l-*-45"))
12662 #(ribcage () () ()))
12663 (hygiene guile))
12664 mod-11903))))
12665 (values
12666 (remodulate-11880 exp-11904 mod-11905)
12667 r-11878
12668 w-11879
12669 (source-annotation-4544 exp-11904)
12670 mod-11905)))
12671 tmp-11882)
12672 (syntax-violation
12673 #f
12674 "source expression failed to match any pattern"
12675 e-11877))))))
12676 (global-extend-4548
12677 'core
12678 'if
12679 (lambda (e-12288 r-12289 w-12290 s-12291 mod-12292)
12680 (let ((tmp-12294 ($sc-dispatch e-12288 '(_ any any))))
12681 (if tmp-12294
12682 (@apply
12683 (lambda (test-12298 then-12299)
12684 (build-conditional-4518
12685 s-12291
12686 (expand-4586
12687 test-12298
12688 r-12289
12689 w-12290
12690 mod-12292)
12691 (expand-4586
12692 then-12299
12693 r-12289
12694 w-12290
12695 mod-12292)
12696 (make-struct/no-tail
12697 (vector-ref %expanded-vtables 0)
12698 #f)))
12699 tmp-12294)
12700 (let ((tmp-12548
12701 ($sc-dispatch e-12288 '(_ any any any))))
12702 (if tmp-12548
12703 (@apply
12704 (lambda (test-12552 then-12553 else-12554)
12705 (build-conditional-4518
12706 s-12291
12707 (expand-4586
12708 test-12552
12709 r-12289
12710 w-12290
12711 mod-12292)
12712 (expand-4586
12713 then-12553
12714 r-12289
12715 w-12290
12716 mod-12292)
12717 (expand-4586
12718 else-12554
12719 r-12289
12720 w-12290
12721 mod-12292)))
12722 tmp-12548)
12723 (syntax-violation
12724 #f
12725 "source expression failed to match any pattern"
12726 e-12288)))))))
12727 (global-extend-4548
12728 'core
12729 'with-fluids
12730 (lambda (e-12993 r-12994 w-12995 s-12996 mod-12997)
12731 (let ((tmp-12999
12732 ($sc-dispatch
12733 e-12993
12734 '(_ #(each (any any)) any . each-any))))
12735 (if tmp-12999
12736 (@apply
12737 (lambda (fluid-13003 val-13004 b-13005 b*-13006)
12738 (build-dynlet-4519
12739 s-12996
12740 (map (lambda (x-13095)
12741 (expand-4586 x-13095 r-12994 w-12995 mod-12997))
12742 fluid-13003)
12743 (map (lambda (x-13173)
12744 (expand-4586 x-13173 r-12994 w-12995 mod-12997))
12745 val-13004)
12746 (expand-body-4590
12747 (cons b-13005 b*-13006)
12748 (let ((x-13262
12749 (begin
12750 (if (if (pair? e-12993) s-12996 #f)
12751 (set-source-properties! e-12993 s-12996))
12752 e-12993)))
12753 (if (if (null? (car w-12995))
12754 (null? (cdr w-12995))
12755 #f)
12756 x-13262
12757 (if (if (vector? x-13262)
12758 (if (= (vector-length x-13262) 4)
12759 (eq? (vector-ref x-13262 0) 'syntax-object)
12760 #f)
12761 #f)
12762 (let ((expression-13294 (vector-ref x-13262 1))
12763 (wrap-13295
12764 (let ((w2-13303 (vector-ref x-13262 2)))
12765 (let ((m1-13304 (car w-12995))
12766 (s1-13305 (cdr w-12995)))
12767 (if (null? m1-13304)
12768 (if (null? s1-13305)
12769 w2-13303
12770 (cons (car w2-13303)
12771 (let ((m2-13320
12772 (cdr w2-13303)))
12773 (if (null? m2-13320)
12774 s1-13305
12775 (append
12776 s1-13305
12777 m2-13320)))))
12778 (cons (let ((m2-13328
12779 (car w2-13303)))
12780 (if (null? m2-13328)
12781 m1-13304
12782 (append
12783 m1-13304
12784 m2-13328)))
12785 (let ((m2-13336
12786 (cdr w2-13303)))
12787 (if (null? m2-13336)
12788 s1-13305
12789 (append
12790 s1-13305
12791 m2-13336))))))))
12792 (module-13296 (vector-ref x-13262 3)))
12793 (vector
12794 'syntax-object
12795 expression-13294
12796 wrap-13295
12797 module-13296))
12798 (if (null? x-13262)
12799 x-13262
12800 (vector
12801 'syntax-object
12802 x-13262
12803 w-12995
12804 mod-12997)))))
12805 r-12994
12806 w-12995
12807 mod-12997)))
12808 tmp-12999)
12809 (syntax-violation
12810 #f
12811 "source expression failed to match any pattern"
12812 e-12993)))))
12813 (module-define!
12814 (current-module)
12815 'begin
12816 (make-syntax-transformer 'begin 'begin '()))
12817 (module-define!
12818 (current-module)
12819 'define
12820 (make-syntax-transformer 'define 'define '()))
12821 (module-define!
12822 (current-module)
12823 'define-syntax
12824 (make-syntax-transformer
12825 'define-syntax
12826 'define-syntax
12827 '()))
12828 (module-define!
12829 (current-module)
12830 'define-syntax-parameter
12831 (make-syntax-transformer
12832 'define-syntax-parameter
12833 'define-syntax-parameter
12834 '()))
12835 (module-define!
12836 (current-module)
12837 'eval-when
12838 (make-syntax-transformer
12839 'eval-when
12840 'eval-when
12841 '()))
12842 (global-extend-4548
12843 'core
12844 'syntax-case
12845 (letrec*
12846 ((convert-pattern-13636
12847 (lambda (pattern-15258 keys-15259)
12848 (letrec*
12849 ((cvt*-15260
12850 (lambda (p*-16059 n-16060 ids-16061)
12851 (if (not (pair? p*-16059))
12852 (cvt-15262 p*-16059 n-16060 ids-16061)
12853 (call-with-values
12854 (lambda ()
12855 (cvt*-15260 (cdr p*-16059) n-16060 ids-16061))
12856 (lambda (y-16064 ids-16065)
12857 (call-with-values
12858 (lambda ()
12859 (cvt-15262 (car p*-16059) n-16060 ids-16065))
12860 (lambda (x-16068 ids-16069)
12861 (values
12862 (cons x-16068 y-16064)
12863 ids-16069))))))))
12864 (v-reverse-15261
12865 (lambda (x-16070)
12866 (letrec*
12867 ((loop-16071
12868 (lambda (r-16172 x-16173)
12869 (if (not (pair? x-16173))
12870 (values r-16172 x-16173)
12871 (loop-16071
12872 (cons (car x-16173) r-16172)
12873 (cdr x-16173))))))
12874 (loop-16071 '() x-16070))))
12875 (cvt-15262
12876 (lambda (p-15265 n-15266 ids-15267)
12877 (if (if (symbol? p-15265)
12878 #t
12879 (if (if (vector? p-15265)
12880 (if (= (vector-length p-15265) 4)
12881 (eq? (vector-ref p-15265 0) 'syntax-object)
12882 #f)
12883 #f)
12884 (symbol? (vector-ref p-15265 1))
12885 #f))
12886 (if (bound-id-member?-4578 p-15265 keys-15259)
12887 (values (vector 'free-id p-15265) ids-15267)
12888 (if (free-id=?-4574
12889 p-15265
12890 '#(syntax-object
12891 _
12892 ((top)
12893 #(ribcage () () ())
12894 #(ribcage
12895 #(p n ids)
12896 #((top) (top) (top))
12897 #("l-*-3927" "l-*-3928" "l-*-3929"))
12898 #(ribcage
12899 (cvt v-reverse cvt*)
12900 ((top) (top) (top))
12901 ("l-*-3900" "l-*-3898" "l-*-3896"))
12902 #(ribcage
12903 #(pattern keys)
12904 #((top) (top))
12905 #("l-*-3894" "l-*-3895"))
12906 #(ribcage
12907 (gen-syntax-case
12908 gen-clause
12909 build-dispatch-call
12910 convert-pattern)
12911 ((top) (top) (top) (top))
12912 ("l-*-3890"
12913 "l-*-3888"
12914 "l-*-3886"
12915 "l-*-3884"))
12916 #(ribcage
12917 (lambda-var-list
12918 gen-var
12919 strip
12920 expand-lambda-case
12921 lambda*-formals
12922 expand-simple-lambda
12923 lambda-formals
12924 ellipsis?
12925 expand-void
12926 eval-local-transformer
12927 expand-local-syntax
12928 expand-body
12929 expand-macro
12930 expand-call
12931 expand-expr
12932 expand
12933 syntax-type
12934 parse-when-list
12935 expand-install-global
12936 expand-top-sequence
12937 expand-sequence
12938 source-wrap
12939 wrap
12940 bound-id-member?
12941 distinct-bound-ids?
12942 valid-bound-ids?
12943 bound-id=?
12944 free-id=?
12945 with-transformer-environment
12946 transformer-environment
12947 resolve-identifier
12948 locally-bound-identifiers
12949 id-var-name
12950 same-marks?
12951 join-marks
12952 join-wraps
12953 smart-append
12954 make-binding-wrap
12955 extend-ribcage!
12956 make-empty-ribcage
12957 new-mark
12958 anti-mark
12959 the-anti-mark
12960 top-marked?
12961 top-wrap
12962 empty-wrap
12963 set-ribcage-labels!
12964 set-ribcage-marks!
12965 set-ribcage-symnames!
12966 ribcage-labels
12967 ribcage-marks
12968 ribcage-symnames
12969 ribcage?
12970 make-ribcage
12971 gen-labels
12972 gen-label
12973 make-rename
12974 rename-marks
12975 rename-new
12976 rename-old
12977 subst-rename?
12978 wrap-subst
12979 wrap-marks
12980 make-wrap
12981 id-sym-name&marks
12982 id-sym-name
12983 id?
12984 nonsymbol-id?
12985 global-extend
12986 macros-only-env
12987 extend-var-env
12988 extend-env
12989 null-env
12990 binding-value
12991 binding-type
12992 make-binding
12993 arg-check
12994 source-annotation
12995 no-source
12996 set-syntax-object-module!
12997 set-syntax-object-wrap!
12998 set-syntax-object-expression!
12999 syntax-object-module
13000 syntax-object-wrap
13001 syntax-object-expression
13002 syntax-object?
13003 make-syntax-object
13004 build-lexical-var
13005 build-letrec
13006 build-named-let
13007 build-let
13008 build-sequence
13009 build-data
13010 build-primref
13011 build-primcall
13012 build-lambda-case
13013 build-case-lambda
13014 build-simple-lambda
13015 build-global-definition
13016 build-global-assignment
13017 build-global-reference
13018 analyze-variable
13019 build-lexical-assignment
13020 build-lexical-reference
13021 build-dynlet
13022 build-conditional
13023 build-call
13024 build-void
13025 maybe-name-value!
13026 decorate-source
13027 get-global-definition-hook
13028 put-global-definition-hook
13029 session-id
13030 local-eval-hook
13031 top-level-eval-hook
13032 fx<
13033 fx=
13034 fx-
13035 fx+
13036 set-lambda-meta!
13037 lambda-meta
13038 lambda?
13039 make-dynlet
13040 make-letrec
13041 make-let
13042 make-lambda-case
13043 make-lambda
13044 make-seq
13045 make-primcall
13046 make-call
13047 make-conditional
13048 make-toplevel-define
13049 make-toplevel-set
13050 make-toplevel-ref
13051 make-module-set
13052 make-module-ref
13053 make-lexical-set
13054 make-lexical-ref
13055 make-primitive-ref
13056 make-const
13057 make-void)
13058 ((top)
13059 (top)
13060 (top)
13061 (top)
13062 (top)
13063 (top)
13064 (top)
13065 (top)
13066 (top)
13067 (top)
13068 (top)
13069 (top)
13070 (top)
13071 (top)
13072 (top)
13073 (top)
13074 (top)
13075 (top)
13076 (top)
13077 (top)
13078 (top)
13079 (top)
13080 (top)
13081 (top)
13082 (top)
13083 (top)
13084 (top)
13085 (top)
13086 (top)
13087 (top)
13088 (top)
13089 (top)
13090 (top)
13091 (top)
13092 (top)
13093 (top)
13094 (top)
13095 (top)
13096 (top)
13097 (top)
13098 (top)
13099 (top)
13100 (top)
13101 (top)
13102 (top)
13103 (top)
13104 (top)
13105 (top)
13106 (top)
13107 (top)
13108 (top)
13109 (top)
13110 (top)
13111 (top)
13112 (top)
13113 (top)
13114 (top)
13115 (top)
13116 (top)
13117 (top)
13118 (top)
13119 (top)
13120 (top)
13121 (top)
13122 (top)
13123 (top)
13124 (top)
13125 (top)
13126 (top)
13127 (top)
13128 (top)
13129 (top)
13130 (top)
13131 (top)
13132 (top)
13133 (top)
13134 (top)
13135 (top)
13136 (top)
13137 (top)
13138 (top)
13139 (top)
13140 (top)
13141 (top)
13142 (top)
13143 (top)
13144 (top)
13145 (top)
13146 (top)
13147 (top)
13148 (top)
13149 (top)
13150 (top)
13151 (top)
13152 (top)
13153 (top)
13154 (top)
13155 (top)
13156 (top)
13157 (top)
13158 (top)
13159 (top)
13160 (top)
13161 (top)
13162 (top)
13163 (top)
13164 (top)
13165 (top)
13166 (top)
13167 (top)
13168 (top)
13169 (top)
13170 (top)
13171 (top)
13172 (top)
13173 (top)
13174 (top)
13175 (top)
13176 (top)
13177 (top)
13178 (top)
13179 (top)
13180 (top)
13181 (top)
13182 (top)
13183 (top)
13184 (top)
13185 (top)
13186 (top)
13187 (top)
13188 (top)
13189 (top)
13190 (top)
13191 (top)
13192 (top)
13193 (top)
13194 (top)
13195 (top)
13196 (top)
13197 (top)
13198 (top))
13199 ("l-*-478"
13200 "l-*-476"
13201 "l-*-474"
13202 "l-*-472"
13203 "l-*-470"
13204 "l-*-468"
13205 "l-*-466"
13206 "l-*-464"
13207 "l-*-462"
13208 "l-*-460"
13209 "l-*-458"
13210 "l-*-456"
13211 "l-*-454"
13212 "l-*-452"
13213 "l-*-450"
13214 "l-*-448"
13215 "l-*-446"
13216 "l-*-444"
13217 "l-*-442"
13218 "l-*-440"
13219 "l-*-438"
13220 "l-*-436"
13221 "l-*-434"
13222 "l-*-432"
13223 "l-*-430"
13224 "l-*-428"
13225 "l-*-426"
13226 "l-*-424"
13227 "l-*-422"
13228 "l-*-420"
13229 "l-*-418"
13230 "l-*-416"
13231 "l-*-414"
13232 "l-*-412"
13233 "l-*-410"
13234 "l-*-408"
13235 "l-*-406"
13236 "l-*-404"
13237 "l-*-402"
13238 "l-*-401"
13239 "l-*-399"
13240 "l-*-396"
13241 "l-*-395"
13242 "l-*-394"
13243 "l-*-392"
13244 "l-*-391"
13245 "l-*-389"
13246 "l-*-387"
13247 "l-*-385"
13248 "l-*-383"
13249 "l-*-381"
13250 "l-*-379"
13251 "l-*-377"
13252 "l-*-375"
13253 "l-*-372"
13254 "l-*-370"
13255 "l-*-369"
13256 "l-*-367"
13257 "l-*-365"
13258 "l-*-363"
13259 "l-*-361"
13260 "l-*-360"
13261 "l-*-359"
13262 "l-*-358"
13263 "l-*-356"
13264 "l-*-355"
13265 "l-*-352"
13266 "l-*-350"
13267 "l-*-348"
13268 "l-*-346"
13269 "l-*-344"
13270 "l-*-342"
13271 "l-*-341"
13272 "l-*-340"
13273 "l-*-338"
13274 "l-*-336"
13275 "l-*-335"
13276 "l-*-332"
13277 "l-*-331"
13278 "l-*-329"
13279 "l-*-327"
13280 "l-*-325"
13281 "l-*-323"
13282 "l-*-321"
13283 "l-*-319"
13284 "l-*-317"
13285 "l-*-315"
13286 "l-*-313"
13287 "l-*-310"
13288 "l-*-308"
13289 "l-*-306"
13290 "l-*-304"
13291 "l-*-302"
13292 "l-*-300"
13293 "l-*-298"
13294 "l-*-296"
13295 "l-*-294"
13296 "l-*-292"
13297 "l-*-290"
13298 "l-*-288"
13299 "l-*-286"
13300 "l-*-284"
13301 "l-*-282"
13302 "l-*-280"
13303 "l-*-278"
13304 "l-*-276"
13305 "l-*-274"
13306 "l-*-272"
13307 "l-*-270"
13308 "l-*-268"
13309 "l-*-266"
13310 "l-*-264"
13311 "l-*-262"
13312 "l-*-260"
13313 "l-*-258"
13314 "l-*-257"
13315 "l-*-256"
13316 "l-*-255"
13317 "l-*-254"
13318 "l-*-252"
13319 "l-*-250"
13320 "l-*-248"
13321 "l-*-245"
13322 "l-*-243"
13323 "l-*-241"
13324 "l-*-239"
13325 "l-*-237"
13326 "l-*-235"
13327 "l-*-233"
13328 "l-*-231"
13329 "l-*-229"
13330 "l-*-227"
13331 "l-*-225"
13332 "l-*-223"
13333 "l-*-221"
13334 "l-*-219"
13335 "l-*-217"
13336 "l-*-215"
13337 "l-*-213"
13338 "l-*-211"
13339 "l-*-209"))
13340 #(ribcage
13341 (define-structure
13342 define-expansion-accessors
13343 define-expansion-constructors)
13344 ((top) (top) (top))
13345 ("l-*-47" "l-*-46" "l-*-45"))
13346 #(ribcage () () ()))
13347 (hygiene guile)))
13348 (values '_ ids-15267)
13349 (values
13350 'any
13351 (cons (cons p-15265 n-15266) ids-15267))))
13352 (let ((tmp-15399 ($sc-dispatch p-15265 '(any any))))
13353 (if (if tmp-15399
13354 (@apply
13355 (lambda (x-15403 dots-15404)
13356 (if (if (if (vector? dots-15404)
13357 (if (= (vector-length dots-15404)
13358 4)
13359 (eq? (vector-ref dots-15404 0)
13360 'syntax-object)
13361 #f)
13362 #f)
13363 (symbol? (vector-ref dots-15404 1))
13364 #f)
13365 (free-id=?-4574
13366 dots-15404
13367 '#(syntax-object
13368 ...
13369 ((top)
13370 #(ribcage () () ())
13371 #(ribcage () () ())
13372 #(ribcage
13373 #(x)
13374 #((top))
13375 #("l-*-2416"))
13376 #(ribcage
13377 (lambda-var-list
13378 gen-var
13379 strip
13380 expand-lambda-case
13381 lambda*-formals
13382 expand-simple-lambda
13383 lambda-formals
13384 ellipsis?
13385 expand-void
13386 eval-local-transformer
13387 expand-local-syntax
13388 expand-body
13389 expand-macro
13390 expand-call
13391 expand-expr
13392 expand
13393 syntax-type
13394 parse-when-list
13395 expand-install-global
13396 expand-top-sequence
13397 expand-sequence
13398 source-wrap
13399 wrap
13400 bound-id-member?
13401 distinct-bound-ids?
13402 valid-bound-ids?
13403 bound-id=?
13404 free-id=?
13405 with-transformer-environment
13406 transformer-environment
13407 resolve-identifier
13408 locally-bound-identifiers
13409 id-var-name
13410 same-marks?
13411 join-marks
13412 join-wraps
13413 smart-append
13414 make-binding-wrap
13415 extend-ribcage!
13416 make-empty-ribcage
13417 new-mark
13418 anti-mark
13419 the-anti-mark
13420 top-marked?
13421 top-wrap
13422 empty-wrap
13423 set-ribcage-labels!
13424 set-ribcage-marks!
13425 set-ribcage-symnames!
13426 ribcage-labels
13427 ribcage-marks
13428 ribcage-symnames
13429 ribcage?
13430 make-ribcage
13431 gen-labels
13432 gen-label
13433 make-rename
13434 rename-marks
13435 rename-new
13436 rename-old
13437 subst-rename?
13438 wrap-subst
13439 wrap-marks
13440 make-wrap
13441 id-sym-name&marks
13442 id-sym-name
13443 id?
13444 nonsymbol-id?
13445 global-extend
13446 macros-only-env
13447 extend-var-env
13448 extend-env
13449 null-env
13450 binding-value
13451 binding-type
13452 make-binding
13453 arg-check
13454 source-annotation
13455 no-source
13456 set-syntax-object-module!
13457 set-syntax-object-wrap!
13458 set-syntax-object-expression!
13459 syntax-object-module
13460 syntax-object-wrap
13461 syntax-object-expression
13462 syntax-object?
13463 make-syntax-object
13464 build-lexical-var
13465 build-letrec
13466 build-named-let
13467 build-let
13468 build-sequence
13469 build-data
13470 build-primref
13471 build-primcall
13472 build-lambda-case
13473 build-case-lambda
13474 build-simple-lambda
13475 build-global-definition
13476 build-global-assignment
13477 build-global-reference
13478 analyze-variable
13479 build-lexical-assignment
13480 build-lexical-reference
13481 build-dynlet
13482 build-conditional
13483 build-call
13484 build-void
13485 maybe-name-value!
13486 decorate-source
13487 get-global-definition-hook
13488 put-global-definition-hook
13489 session-id
13490 local-eval-hook
13491 top-level-eval-hook
13492 fx<
13493 fx=
13494 fx-
13495 fx+
13496 set-lambda-meta!
13497 lambda-meta
13498 lambda?
13499 make-dynlet
13500 make-letrec
13501 make-let
13502 make-lambda-case
13503 make-lambda
13504 make-seq
13505 make-primcall
13506 make-call
13507 make-conditional
13508 make-toplevel-define
13509 make-toplevel-set
13510 make-toplevel-ref
13511 make-module-set
13512 make-module-ref
13513 make-lexical-set
13514 make-lexical-ref
13515 make-primitive-ref
13516 make-const
13517 make-void)
13518 ((top)
13519 (top)
13520 (top)
13521 (top)
13522 (top)
13523 (top)
13524 (top)
13525 (top)
13526 (top)
13527 (top)
13528 (top)
13529 (top)
13530 (top)
13531 (top)
13532 (top)
13533 (top)
13534 (top)
13535 (top)
13536 (top)
13537 (top)
13538 (top)
13539 (top)
13540 (top)
13541 (top)
13542 (top)
13543 (top)
13544 (top)
13545 (top)
13546 (top)
13547 (top)
13548 (top)
13549 (top)
13550 (top)
13551 (top)
13552 (top)
13553 (top)
13554 (top)
13555 (top)
13556 (top)
13557 (top)
13558 (top)
13559 (top)
13560 (top)
13561 (top)
13562 (top)
13563 (top)
13564 (top)
13565 (top)
13566 (top)
13567 (top)
13568 (top)
13569 (top)
13570 (top)
13571 (top)
13572 (top)
13573 (top)
13574 (top)
13575 (top)
13576 (top)
13577 (top)
13578 (top)
13579 (top)
13580 (top)
13581 (top)
13582 (top)
13583 (top)
13584 (top)
13585 (top)
13586 (top)
13587 (top)
13588 (top)
13589 (top)
13590 (top)
13591 (top)
13592 (top)
13593 (top)
13594 (top)
13595 (top)
13596 (top)
13597 (top)
13598 (top)
13599 (top)
13600 (top)
13601 (top)
13602 (top)
13603 (top)
13604 (top)
13605 (top)
13606 (top)
13607 (top)
13608 (top)
13609 (top)
13610 (top)
13611 (top)
13612 (top)
13613 (top)
13614 (top)
13615 (top)
13616 (top)
13617 (top)
13618 (top)
13619 (top)
13620 (top)
13621 (top)
13622 (top)
13623 (top)
13624 (top)
13625 (top)
13626 (top)
13627 (top)
13628 (top)
13629 (top)
13630 (top)
13631 (top)
13632 (top)
13633 (top)
13634 (top)
13635 (top)
13636 (top)
13637 (top)
13638 (top)
13639 (top)
13640 (top)
13641 (top)
13642 (top)
13643 (top)
13644 (top)
13645 (top)
13646 (top)
13647 (top)
13648 (top)
13649 (top)
13650 (top)
13651 (top)
13652 (top)
13653 (top)
13654 (top)
13655 (top)
13656 (top)
13657 (top)
13658 (top))
13659 ("l-*-478"
13660 "l-*-476"
13661 "l-*-474"
13662 "l-*-472"
13663 "l-*-470"
13664 "l-*-468"
13665 "l-*-466"
13666 "l-*-464"
13667 "l-*-462"
13668 "l-*-460"
13669 "l-*-458"
13670 "l-*-456"
13671 "l-*-454"
13672 "l-*-452"
13673 "l-*-450"
13674 "l-*-448"
13675 "l-*-446"
13676 "l-*-444"
13677 "l-*-442"
13678 "l-*-440"
13679 "l-*-438"
13680 "l-*-436"
13681 "l-*-434"
13682 "l-*-432"
13683 "l-*-430"
13684 "l-*-428"
13685 "l-*-426"
13686 "l-*-424"
13687 "l-*-422"
13688 "l-*-420"
13689 "l-*-418"
13690 "l-*-416"
13691 "l-*-414"
13692 "l-*-412"
13693 "l-*-410"
13694 "l-*-408"
13695 "l-*-406"
13696 "l-*-404"
13697 "l-*-402"
13698 "l-*-401"
13699 "l-*-399"
13700 "l-*-396"
13701 "l-*-395"
13702 "l-*-394"
13703 "l-*-392"
13704 "l-*-391"
13705 "l-*-389"
13706 "l-*-387"
13707 "l-*-385"
13708 "l-*-383"
13709 "l-*-381"
13710 "l-*-379"
13711 "l-*-377"
13712 "l-*-375"
13713 "l-*-372"
13714 "l-*-370"
13715 "l-*-369"
13716 "l-*-367"
13717 "l-*-365"
13718 "l-*-363"
13719 "l-*-361"
13720 "l-*-360"
13721 "l-*-359"
13722 "l-*-358"
13723 "l-*-356"
13724 "l-*-355"
13725 "l-*-352"
13726 "l-*-350"
13727 "l-*-348"
13728 "l-*-346"
13729 "l-*-344"
13730 "l-*-342"
13731 "l-*-341"
13732 "l-*-340"
13733 "l-*-338"
13734 "l-*-336"
13735 "l-*-335"
13736 "l-*-332"
13737 "l-*-331"
13738 "l-*-329"
13739 "l-*-327"
13740 "l-*-325"
13741 "l-*-323"
13742 "l-*-321"
13743 "l-*-319"
13744 "l-*-317"
13745 "l-*-315"
13746 "l-*-313"
13747 "l-*-310"
13748 "l-*-308"
13749 "l-*-306"
13750 "l-*-304"
13751 "l-*-302"
13752 "l-*-300"
13753 "l-*-298"
13754 "l-*-296"
13755 "l-*-294"
13756 "l-*-292"
13757 "l-*-290"
13758 "l-*-288"
13759 "l-*-286"
13760 "l-*-284"
13761 "l-*-282"
13762 "l-*-280"
13763 "l-*-278"
13764 "l-*-276"
13765 "l-*-274"
13766 "l-*-272"
13767 "l-*-270"
13768 "l-*-268"
13769 "l-*-266"
13770 "l-*-264"
13771 "l-*-262"
13772 "l-*-260"
13773 "l-*-258"
13774 "l-*-257"
13775 "l-*-256"
13776 "l-*-255"
13777 "l-*-254"
13778 "l-*-252"
13779 "l-*-250"
13780 "l-*-248"
13781 "l-*-245"
13782 "l-*-243"
13783 "l-*-241"
13784 "l-*-239"
13785 "l-*-237"
13786 "l-*-235"
13787 "l-*-233"
13788 "l-*-231"
13789 "l-*-229"
13790 "l-*-227"
13791 "l-*-225"
13792 "l-*-223"
13793 "l-*-221"
13794 "l-*-219"
13795 "l-*-217"
13796 "l-*-215"
13797 "l-*-213"
13798 "l-*-211"
13799 "l-*-209"))
13800 #(ribcage
13801 (define-structure
13802 define-expansion-accessors
13803 define-expansion-constructors)
13804 ((top) (top) (top))
13805 ("l-*-47" "l-*-46" "l-*-45"))
13806 #(ribcage () () ()))
13807 (hygiene guile)))
13808 #f))
13809 tmp-15399)
13810 #f)
13811 (@apply
13812 (lambda (x-15443 dots-15444)
13813 (call-with-values
13814 (lambda ()
13815 (cvt-15262
13816 x-15443
13817 (#{1+}# n-15266)
13818 ids-15267))
13819 (lambda (p-15445 ids-15446)
13820 (values
13821 (if (eq? p-15445 'any)
13822 'each-any
13823 (vector 'each p-15445))
13824 ids-15446))))
13825 tmp-15399)
13826 (let ((tmp-15447
13827 ($sc-dispatch p-15265 '(any any . any))))
13828 (if (if tmp-15447
13829 (@apply
13830 (lambda (x-15451 dots-15452 ys-15453)
13831 (if (if (if (vector? dots-15452)
13832 (if (= (vector-length
13833 dots-15452)
13834 4)
13835 (eq? (vector-ref
13836 dots-15452
13837 0)
13838 'syntax-object)
13839 #f)
13840 #f)
13841 (symbol?
13842 (vector-ref dots-15452 1))
13843 #f)
13844 (free-id=?-4574
13845 dots-15452
13846 '#(syntax-object
13847 ...
13848 ((top)
13849 #(ribcage () () ())
13850 #(ribcage () () ())
13851 #(ribcage
13852 #(x)
13853 #((top))
13854 #("l-*-2416"))
13855 #(ribcage
13856 (lambda-var-list
13857 gen-var
13858 strip
13859 expand-lambda-case
13860 lambda*-formals
13861 expand-simple-lambda
13862 lambda-formals
13863 ellipsis?
13864 expand-void
13865 eval-local-transformer
13866 expand-local-syntax
13867 expand-body
13868 expand-macro
13869 expand-call
13870 expand-expr
13871 expand
13872 syntax-type
13873 parse-when-list
13874 expand-install-global
13875 expand-top-sequence
13876 expand-sequence
13877 source-wrap
13878 wrap
13879 bound-id-member?
13880 distinct-bound-ids?
13881 valid-bound-ids?
13882 bound-id=?
13883 free-id=?
13884 with-transformer-environment
13885 transformer-environment
13886 resolve-identifier
13887 locally-bound-identifiers
13888 id-var-name
13889 same-marks?
13890 join-marks
13891 join-wraps
13892 smart-append
13893 make-binding-wrap
13894 extend-ribcage!
13895 make-empty-ribcage
13896 new-mark
13897 anti-mark
13898 the-anti-mark
13899 top-marked?
13900 top-wrap
13901 empty-wrap
13902 set-ribcage-labels!
13903 set-ribcage-marks!
13904 set-ribcage-symnames!
13905 ribcage-labels
13906 ribcage-marks
13907 ribcage-symnames
13908 ribcage?
13909 make-ribcage
13910 gen-labels
13911 gen-label
13912 make-rename
13913 rename-marks
13914 rename-new
13915 rename-old
13916 subst-rename?
13917 wrap-subst
13918 wrap-marks
13919 make-wrap
13920 id-sym-name&marks
13921 id-sym-name
13922 id?
13923 nonsymbol-id?
13924 global-extend
13925 macros-only-env
13926 extend-var-env
13927 extend-env
13928 null-env
13929 binding-value
13930 binding-type
13931 make-binding
13932 arg-check
13933 source-annotation
13934 no-source
13935 set-syntax-object-module!
13936 set-syntax-object-wrap!
13937 set-syntax-object-expression!
13938 syntax-object-module
13939 syntax-object-wrap
13940 syntax-object-expression
13941 syntax-object?
13942 make-syntax-object
13943 build-lexical-var
13944 build-letrec
13945 build-named-let
13946 build-let
13947 build-sequence
13948 build-data
13949 build-primref
13950 build-primcall
13951 build-lambda-case
13952 build-case-lambda
13953 build-simple-lambda
13954 build-global-definition
13955 build-global-assignment
13956 build-global-reference
13957 analyze-variable
13958 build-lexical-assignment
13959 build-lexical-reference
13960 build-dynlet
13961 build-conditional
13962 build-call
13963 build-void
13964 maybe-name-value!
13965 decorate-source
13966 get-global-definition-hook
13967 put-global-definition-hook
13968 session-id
13969 local-eval-hook
13970 top-level-eval-hook
13971 fx<
13972 fx=
13973 fx-
13974 fx+
13975 set-lambda-meta!
13976 lambda-meta
13977 lambda?
13978 make-dynlet
13979 make-letrec
13980 make-let
13981 make-lambda-case
13982 make-lambda
13983 make-seq
13984 make-primcall
13985 make-call
13986 make-conditional
13987 make-toplevel-define
13988 make-toplevel-set
13989 make-toplevel-ref
13990 make-module-set
13991 make-module-ref
13992 make-lexical-set
13993 make-lexical-ref
13994 make-primitive-ref
13995 make-const
13996 make-void)
13997 ((top)
13998 (top)
13999 (top)
14000 (top)
14001 (top)
14002 (top)
14003 (top)
14004 (top)
14005 (top)
14006 (top)
14007 (top)
14008 (top)
14009 (top)
14010 (top)
14011 (top)
14012 (top)
14013 (top)
14014 (top)
14015 (top)
14016 (top)
14017 (top)
14018 (top)
14019 (top)
14020 (top)
14021 (top)
14022 (top)
14023 (top)
14024 (top)
14025 (top)
14026 (top)
14027 (top)
14028 (top)
14029 (top)
14030 (top)
14031 (top)
14032 (top)
14033 (top)
14034 (top)
14035 (top)
14036 (top)
14037 (top)
14038 (top)
14039 (top)
14040 (top)
14041 (top)
14042 (top)
14043 (top)
14044 (top)
14045 (top)
14046 (top)
14047 (top)
14048 (top)
14049 (top)
14050 (top)
14051 (top)
14052 (top)
14053 (top)
14054 (top)
14055 (top)
14056 (top)
14057 (top)
14058 (top)
14059 (top)
14060 (top)
14061 (top)
14062 (top)
14063 (top)
14064 (top)
14065 (top)
14066 (top)
14067 (top)
14068 (top)
14069 (top)
14070 (top)
14071 (top)
14072 (top)
14073 (top)
14074 (top)
14075 (top)
14076 (top)
14077 (top)
14078 (top)
14079 (top)
14080 (top)
14081 (top)
14082 (top)
14083 (top)
14084 (top)
14085 (top)
14086 (top)
14087 (top)
14088 (top)
14089 (top)
14090 (top)
14091 (top)
14092 (top)
14093 (top)
14094 (top)
14095 (top)
14096 (top)
14097 (top)
14098 (top)
14099 (top)
14100 (top)
14101 (top)
14102 (top)
14103 (top)
14104 (top)
14105 (top)
14106 (top)
14107 (top)
14108 (top)
14109 (top)
14110 (top)
14111 (top)
14112 (top)
14113 (top)
14114 (top)
14115 (top)
14116 (top)
14117 (top)
14118 (top)
14119 (top)
14120 (top)
14121 (top)
14122 (top)
14123 (top)
14124 (top)
14125 (top)
14126 (top)
14127 (top)
14128 (top)
14129 (top)
14130 (top)
14131 (top)
14132 (top)
14133 (top)
14134 (top)
14135 (top)
14136 (top)
14137 (top))
14138 ("l-*-478"
14139 "l-*-476"
14140 "l-*-474"
14141 "l-*-472"
14142 "l-*-470"
14143 "l-*-468"
14144 "l-*-466"
14145 "l-*-464"
14146 "l-*-462"
14147 "l-*-460"
14148 "l-*-458"
14149 "l-*-456"
14150 "l-*-454"
14151 "l-*-452"
14152 "l-*-450"
14153 "l-*-448"
14154 "l-*-446"
14155 "l-*-444"
14156 "l-*-442"
14157 "l-*-440"
14158 "l-*-438"
14159 "l-*-436"
14160 "l-*-434"
14161 "l-*-432"
14162 "l-*-430"
14163 "l-*-428"
14164 "l-*-426"
14165 "l-*-424"
14166 "l-*-422"
14167 "l-*-420"
14168 "l-*-418"
14169 "l-*-416"
14170 "l-*-414"
14171 "l-*-412"
14172 "l-*-410"
14173 "l-*-408"
14174 "l-*-406"
14175 "l-*-404"
14176 "l-*-402"
14177 "l-*-401"
14178 "l-*-399"
14179 "l-*-396"
14180 "l-*-395"
14181 "l-*-394"
14182 "l-*-392"
14183 "l-*-391"
14184 "l-*-389"
14185 "l-*-387"
14186 "l-*-385"
14187 "l-*-383"
14188 "l-*-381"
14189 "l-*-379"
14190 "l-*-377"
14191 "l-*-375"
14192 "l-*-372"
14193 "l-*-370"
14194 "l-*-369"
14195 "l-*-367"
14196 "l-*-365"
14197 "l-*-363"
14198 "l-*-361"
14199 "l-*-360"
14200 "l-*-359"
14201 "l-*-358"
14202 "l-*-356"
14203 "l-*-355"
14204 "l-*-352"
14205 "l-*-350"
14206 "l-*-348"
14207 "l-*-346"
14208 "l-*-344"
14209 "l-*-342"
14210 "l-*-341"
14211 "l-*-340"
14212 "l-*-338"
14213 "l-*-336"
14214 "l-*-335"
14215 "l-*-332"
14216 "l-*-331"
14217 "l-*-329"
14218 "l-*-327"
14219 "l-*-325"
14220 "l-*-323"
14221 "l-*-321"
14222 "l-*-319"
14223 "l-*-317"
14224 "l-*-315"
14225 "l-*-313"
14226 "l-*-310"
14227 "l-*-308"
14228 "l-*-306"
14229 "l-*-304"
14230 "l-*-302"
14231 "l-*-300"
14232 "l-*-298"
14233 "l-*-296"
14234 "l-*-294"
14235 "l-*-292"
14236 "l-*-290"
14237 "l-*-288"
14238 "l-*-286"
14239 "l-*-284"
14240 "l-*-282"
14241 "l-*-280"
14242 "l-*-278"
14243 "l-*-276"
14244 "l-*-274"
14245 "l-*-272"
14246 "l-*-270"
14247 "l-*-268"
14248 "l-*-266"
14249 "l-*-264"
14250 "l-*-262"
14251 "l-*-260"
14252 "l-*-258"
14253 "l-*-257"
14254 "l-*-256"
14255 "l-*-255"
14256 "l-*-254"
14257 "l-*-252"
14258 "l-*-250"
14259 "l-*-248"
14260 "l-*-245"
14261 "l-*-243"
14262 "l-*-241"
14263 "l-*-239"
14264 "l-*-237"
14265 "l-*-235"
14266 "l-*-233"
14267 "l-*-231"
14268 "l-*-229"
14269 "l-*-227"
14270 "l-*-225"
14271 "l-*-223"
14272 "l-*-221"
14273 "l-*-219"
14274 "l-*-217"
14275 "l-*-215"
14276 "l-*-213"
14277 "l-*-211"
14278 "l-*-209"))
14279 #(ribcage
14280 (define-structure
14281 define-expansion-accessors
14282 define-expansion-constructors)
14283 ((top) (top) (top))
14284 ("l-*-47" "l-*-46" "l-*-45"))
14285 #(ribcage () () ()))
14286 (hygiene guile)))
14287 #f))
14288 tmp-15447)
14289 #f)
14290 (@apply
14291 (lambda (x-15492 dots-15493 ys-15494)
14292 (call-with-values
14293 (lambda ()
14294 (cvt*-15260
14295 ys-15494
14296 n-15266
14297 ids-15267))
14298 (lambda (ys-15979 ids-15980)
14299 (call-with-values
14300 (lambda ()
14301 (cvt-15262
14302 x-15492
14303 (#{1+}# n-15266)
14304 ids-15980))
14305 (lambda (x-15981 ids-15982)
14306 (call-with-values
14307 (lambda ()
14308 (v-reverse-15261 ys-15979))
14309 (lambda (ys-16018 e-16019)
14310 (values
14311 (vector
14312 'each+
14313 x-15981
14314 ys-16018
14315 e-16019)
14316 ids-15982))))))))
14317 tmp-15447)
14318 (let ((tmp-16020
14319 ($sc-dispatch p-15265 '(any . any))))
14320 (if tmp-16020
14321 (@apply
14322 (lambda (x-16024 y-16025)
14323 (call-with-values
14324 (lambda ()
14325 (cvt-15262
14326 y-16025
14327 n-15266
14328 ids-15267))
14329 (lambda (y-16026 ids-16027)
14330 (call-with-values
14331 (lambda ()
14332 (cvt-15262
14333 x-16024
14334 n-15266
14335 ids-16027))
14336 (lambda (x-16028 ids-16029)
14337 (values
14338 (cons x-16028 y-16026)
14339 ids-16029))))))
14340 tmp-16020)
14341 (let ((tmp-16030
14342 ($sc-dispatch p-15265 '())))
14343 (if tmp-16030
14344 (@apply
14345 (lambda () (values '() ids-15267))
14346 tmp-16030)
14347 (let ((tmp-16034
14348 ($sc-dispatch
14349 p-15265
14350 '#(vector each-any))))
14351 (if tmp-16034
14352 (@apply
14353 (lambda (x-16038)
14354 (call-with-values
14355 (lambda ()
14356 (cvt-15262
14357 x-16038
14358 n-15266
14359 ids-15267))
14360 (lambda (p-16039 ids-16040)
14361 (values
14362 (vector 'vector p-16039)
14363 ids-16040))))
14364 tmp-16034)
14365 (values
14366 (vector
14367 'atom
14368 (strip-4599 p-15265 '(())))
14369 ids-15267)))))))))))))))
14370 (cvt-15262 pattern-15258 0 '()))))
14371 (build-dispatch-call-13637
14372 (lambda (pvars-16174 exp-16175 y-16176 r-16177 mod-16178)
14373 (let ((ids-16179 (map car pvars-16174)))
14374 (begin
14375 (map cdr pvars-16174)
14376 (let ((labels-16181 (gen-labels-4553 ids-16179))
14377 (new-vars-16182 (map gen-var-4600 ids-16179)))
14378 (build-primcall-4529
14379 #f
14380 'apply
14381 (list (build-simple-lambda-4526
14382 #f
14383 (map syntax->datum ids-16179)
14384 #f
14385 new-vars-16182
14386 '()
14387 (expand-4586
14388 exp-16175
14389 (extend-env-4545
14390 labels-16181
14391 (map (lambda (var-16510 level-16511)
14392 (cons 'syntax
14393 (cons var-16510 level-16511)))
14394 new-vars-16182
14395 (map cdr pvars-16174))
14396 r-16177)
14397 (make-binding-wrap-4564
14398 ids-16179
14399 labels-16181
14400 '(()))
14401 mod-16178))
14402 y-16176)))))))
14403 (gen-clause-13638
14404 (lambda (x-14842
14405 keys-14843
14406 clauses-14844
14407 r-14845
14408 pat-14846
14409 fender-14847
14410 exp-14848
14411 mod-14849)
14412 (call-with-values
14413 (lambda ()
14414 (convert-pattern-13636 pat-14846 keys-14843))
14415 (lambda (p-14987 pvars-14988)
14416 (if (not (distinct-bound-ids?-4577 (map car pvars-14988)))
14417 (syntax-violation
14418 'syntax-case
14419 "duplicate pattern variable"
14420 pat-14846)
14421 (if (not (and-map
14422 (lambda (x-15097)
14423 (not (let ((x-15101 (car x-15097)))
14424 (if (if (if (vector? x-15101)
14425 (if (= (vector-length
14426 x-15101)
14427 4)
14428 (eq? (vector-ref
14429 x-15101
14430 0)
14431 'syntax-object)
14432 #f)
14433 #f)
14434 (symbol? (vector-ref x-15101 1))
14435 #f)
14436 (free-id=?-4574
14437 x-15101
14438 '#(syntax-object
14439 ...
14440 ((top)
14441 #(ribcage () () ())
14442 #(ribcage () () ())
14443 #(ribcage
14444 #(x)
14445 #((top))
14446 #("l-*-2416"))
14447 #(ribcage
14448 (lambda-var-list
14449 gen-var
14450 strip
14451 expand-lambda-case
14452 lambda*-formals
14453 expand-simple-lambda
14454 lambda-formals
14455 ellipsis?
14456 expand-void
14457 eval-local-transformer
14458 expand-local-syntax
14459 expand-body
14460 expand-macro
14461 expand-call
14462 expand-expr
14463 expand
14464 syntax-type
14465 parse-when-list
14466 expand-install-global
14467 expand-top-sequence
14468 expand-sequence
14469 source-wrap
14470 wrap
14471 bound-id-member?
14472 distinct-bound-ids?
14473 valid-bound-ids?
14474 bound-id=?
14475 free-id=?
14476 with-transformer-environment
14477 transformer-environment
14478 resolve-identifier
14479 locally-bound-identifiers
14480 id-var-name
14481 same-marks?
14482 join-marks
14483 join-wraps
14484 smart-append
14485 make-binding-wrap
14486 extend-ribcage!
14487 make-empty-ribcage
14488 new-mark
14489 anti-mark
14490 the-anti-mark
14491 top-marked?
14492 top-wrap
14493 empty-wrap
14494 set-ribcage-labels!
14495 set-ribcage-marks!
14496 set-ribcage-symnames!
14497 ribcage-labels
14498 ribcage-marks
14499 ribcage-symnames
14500 ribcage?
14501 make-ribcage
14502 gen-labels
14503 gen-label
14504 make-rename
14505 rename-marks
14506 rename-new
14507 rename-old
14508 subst-rename?
14509 wrap-subst
14510 wrap-marks
14511 make-wrap
14512 id-sym-name&marks
14513 id-sym-name
14514 id?
14515 nonsymbol-id?
14516 global-extend
14517 macros-only-env
14518 extend-var-env
14519 extend-env
14520 null-env
14521 binding-value
14522 binding-type
14523 make-binding
14524 arg-check
14525 source-annotation
14526 no-source
14527 set-syntax-object-module!
14528 set-syntax-object-wrap!
14529 set-syntax-object-expression!
14530 syntax-object-module
14531 syntax-object-wrap
14532 syntax-object-expression
14533 syntax-object?
14534 make-syntax-object
14535 build-lexical-var
14536 build-letrec
14537 build-named-let
14538 build-let
14539 build-sequence
14540 build-data
14541 build-primref
14542 build-primcall
14543 build-lambda-case
14544 build-case-lambda
14545 build-simple-lambda
14546 build-global-definition
14547 build-global-assignment
14548 build-global-reference
14549 analyze-variable
14550 build-lexical-assignment
14551 build-lexical-reference
14552 build-dynlet
14553 build-conditional
14554 build-call
14555 build-void
14556 maybe-name-value!
14557 decorate-source
14558 get-global-definition-hook
14559 put-global-definition-hook
14560 session-id
14561 local-eval-hook
14562 top-level-eval-hook
14563 fx<
14564 fx=
14565 fx-
14566 fx+
14567 set-lambda-meta!
14568 lambda-meta
14569 lambda?
14570 make-dynlet
14571 make-letrec
14572 make-let
14573 make-lambda-case
14574 make-lambda
14575 make-seq
14576 make-primcall
14577 make-call
14578 make-conditional
14579 make-toplevel-define
14580 make-toplevel-set
14581 make-toplevel-ref
14582 make-module-set
14583 make-module-ref
14584 make-lexical-set
14585 make-lexical-ref
14586 make-primitive-ref
14587 make-const
14588 make-void)
14589 ((top)
14590 (top)
14591 (top)
14592 (top)
14593 (top)
14594 (top)
14595 (top)
14596 (top)
14597 (top)
14598 (top)
14599 (top)
14600 (top)
14601 (top)
14602 (top)
14603 (top)
14604 (top)
14605 (top)
14606 (top)
14607 (top)
14608 (top)
14609 (top)
14610 (top)
14611 (top)
14612 (top)
14613 (top)
14614 (top)
14615 (top)
14616 (top)
14617 (top)
14618 (top)
14619 (top)
14620 (top)
14621 (top)
14622 (top)
14623 (top)
14624 (top)
14625 (top)
14626 (top)
14627 (top)
14628 (top)
14629 (top)
14630 (top)
14631 (top)
14632 (top)
14633 (top)
14634 (top)
14635 (top)
14636 (top)
14637 (top)
14638 (top)
14639 (top)
14640 (top)
14641 (top)
14642 (top)
14643 (top)
14644 (top)
14645 (top)
14646 (top)
14647 (top)
14648 (top)
14649 (top)
14650 (top)
14651 (top)
14652 (top)
14653 (top)
14654 (top)
14655 (top)
14656 (top)
14657 (top)
14658 (top)
14659 (top)
14660 (top)
14661 (top)
14662 (top)
14663 (top)
14664 (top)
14665 (top)
14666 (top)
14667 (top)
14668 (top)
14669 (top)
14670 (top)
14671 (top)
14672 (top)
14673 (top)
14674 (top)
14675 (top)
14676 (top)
14677 (top)
14678 (top)
14679 (top)
14680 (top)
14681 (top)
14682 (top)
14683 (top)
14684 (top)
14685 (top)
14686 (top)
14687 (top)
14688 (top)
14689 (top)
14690 (top)
14691 (top)
14692 (top)
14693 (top)
14694 (top)
14695 (top)
14696 (top)
14697 (top)
14698 (top)
14699 (top)
14700 (top)
14701 (top)
14702 (top)
14703 (top)
14704 (top)
14705 (top)
14706 (top)
14707 (top)
14708 (top)
14709 (top)
14710 (top)
14711 (top)
14712 (top)
14713 (top)
14714 (top)
14715 (top)
14716 (top)
14717 (top)
14718 (top)
14719 (top)
14720 (top)
14721 (top)
14722 (top)
14723 (top)
14724 (top)
14725 (top)
14726 (top)
14727 (top)
14728 (top)
14729 (top))
14730 ("l-*-478"
14731 "l-*-476"
14732 "l-*-474"
14733 "l-*-472"
14734 "l-*-470"
14735 "l-*-468"
14736 "l-*-466"
14737 "l-*-464"
14738 "l-*-462"
14739 "l-*-460"
14740 "l-*-458"
14741 "l-*-456"
14742 "l-*-454"
14743 "l-*-452"
14744 "l-*-450"
14745 "l-*-448"
14746 "l-*-446"
14747 "l-*-444"
14748 "l-*-442"
14749 "l-*-440"
14750 "l-*-438"
14751 "l-*-436"
14752 "l-*-434"
14753 "l-*-432"
14754 "l-*-430"
14755 "l-*-428"
14756 "l-*-426"
14757 "l-*-424"
14758 "l-*-422"
14759 "l-*-420"
14760 "l-*-418"
14761 "l-*-416"
14762 "l-*-414"
14763 "l-*-412"
14764 "l-*-410"
14765 "l-*-408"
14766 "l-*-406"
14767 "l-*-404"
14768 "l-*-402"
14769 "l-*-401"
14770 "l-*-399"
14771 "l-*-396"
14772 "l-*-395"
14773 "l-*-394"
14774 "l-*-392"
14775 "l-*-391"
14776 "l-*-389"
14777 "l-*-387"
14778 "l-*-385"
14779 "l-*-383"
14780 "l-*-381"
14781 "l-*-379"
14782 "l-*-377"
14783 "l-*-375"
14784 "l-*-372"
14785 "l-*-370"
14786 "l-*-369"
14787 "l-*-367"
14788 "l-*-365"
14789 "l-*-363"
14790 "l-*-361"
14791 "l-*-360"
14792 "l-*-359"
14793 "l-*-358"
14794 "l-*-356"
14795 "l-*-355"
14796 "l-*-352"
14797 "l-*-350"
14798 "l-*-348"
14799 "l-*-346"
14800 "l-*-344"
14801 "l-*-342"
14802 "l-*-341"
14803 "l-*-340"
14804 "l-*-338"
14805 "l-*-336"
14806 "l-*-335"
14807 "l-*-332"
14808 "l-*-331"
14809 "l-*-329"
14810 "l-*-327"
14811 "l-*-325"
14812 "l-*-323"
14813 "l-*-321"
14814 "l-*-319"
14815 "l-*-317"
14816 "l-*-315"
14817 "l-*-313"
14818 "l-*-310"
14819 "l-*-308"
14820 "l-*-306"
14821 "l-*-304"
14822 "l-*-302"
14823 "l-*-300"
14824 "l-*-298"
14825 "l-*-296"
14826 "l-*-294"
14827 "l-*-292"
14828 "l-*-290"
14829 "l-*-288"
14830 "l-*-286"
14831 "l-*-284"
14832 "l-*-282"
14833 "l-*-280"
14834 "l-*-278"
14835 "l-*-276"
14836 "l-*-274"
14837 "l-*-272"
14838 "l-*-270"
14839 "l-*-268"
14840 "l-*-266"
14841 "l-*-264"
14842 "l-*-262"
14843 "l-*-260"
14844 "l-*-258"
14845 "l-*-257"
14846 "l-*-256"
14847 "l-*-255"
14848 "l-*-254"
14849 "l-*-252"
14850 "l-*-250"
14851 "l-*-248"
14852 "l-*-245"
14853 "l-*-243"
14854 "l-*-241"
14855 "l-*-239"
14856 "l-*-237"
14857 "l-*-235"
14858 "l-*-233"
14859 "l-*-231"
14860 "l-*-229"
14861 "l-*-227"
14862 "l-*-225"
14863 "l-*-223"
14864 "l-*-221"
14865 "l-*-219"
14866 "l-*-217"
14867 "l-*-215"
14868 "l-*-213"
14869 "l-*-211"
14870 "l-*-209"))
14871 #(ribcage
14872 (define-structure
14873 define-expansion-accessors
14874 define-expansion-constructors)
14875 ((top) (top) (top))
14876 ("l-*-47"
14877 "l-*-46"
14878 "l-*-45"))
14879 #(ribcage () () ()))
14880 (hygiene guile)))
14881 #f))))
14882 pvars-14988))
14883 (syntax-violation
14884 'syntax-case
14885 "misplaced ellipsis"
14886 pat-14846)
14887 (let ((y-15126
14888 (gensym
14889 (string-append (symbol->string 'tmp) "-"))))
14890 (let ((fun-exp-15131
14891 (let ((req-15140 (list 'tmp))
14892 (vars-15142 (list y-15126))
14893 (exp-15144
14894 (let ((y-15173
14895 (make-struct/no-tail
14896 (vector-ref
14897 %expanded-vtables
14898 3)
14899 #f
14900 'tmp
14901 y-15126)))
14902 (let ((test-exp-15177
14903 (let ((tmp-15186
14904 ($sc-dispatch
14905 fender-14847
14906 '#(atom #t))))
14907 (if tmp-15186
14908 (@apply
14909 (lambda () y-15173)
14910 tmp-15186)
14911 (let ((then-exp-15204
14912 (build-dispatch-call-13637
14913 pvars-14988
14914 fender-14847
14915 y-15173
14916 r-14845
14917 mod-14849))
14918 (else-exp-15205
14919 (make-struct/no-tail
14920 (vector-ref
14921 %expanded-vtables
14922 1)
14923 #f
14924 #f)))
14925 (make-struct/no-tail
14926 (vector-ref
14927 %expanded-vtables
14928 10)
14929 #f
14930 y-15173
14931 then-exp-15204
14932 else-exp-15205)))))
14933 (then-exp-15178
14934 (build-dispatch-call-13637
14935 pvars-14988
14936 exp-14848
14937 y-15173
14938 r-14845
14939 mod-14849))
14940 (else-exp-15179
14941 (gen-syntax-case-13639
14942 x-14842
14943 keys-14843
14944 clauses-14844
14945 r-14845
14946 mod-14849)))
14947 (make-struct/no-tail
14948 (vector-ref
14949 %expanded-vtables
14950 10)
14951 #f
14952 test-exp-15177
14953 then-exp-15178
14954 else-exp-15179)))))
14955 (let ((body-15149
14956 (make-struct/no-tail
14957 (vector-ref %expanded-vtables 15)
14958 #f
14959 req-15140
14960 #f
14961 #f
14962 #f
14963 '()
14964 vars-15142
14965 exp-15144
14966 #f)))
14967 (make-struct/no-tail
14968 (vector-ref %expanded-vtables 14)
14969 #f
14970 '()
14971 body-15149))))
14972 (arg-exps-15132
14973 (list (if (eq? p-14987 'any)
14974 (let ((args-15237 (list x-14842)))
14975 (make-struct/no-tail
14976 (vector-ref %expanded-vtables 12)
14977 #f
14978 'list
14979 args-15237))
14980 (let ((args-15246
14981 (list x-14842
14982 (make-struct/no-tail
14983 (vector-ref
14984 %expanded-vtables
14985 1)
14986 #f
14987 p-14987))))
14988 (make-struct/no-tail
14989 (vector-ref %expanded-vtables 12)
14990 #f
14991 '$sc-dispatch
14992 args-15246))))))
14993 (make-struct/no-tail
14994 (vector-ref %expanded-vtables 11)
14995 #f
14996 fun-exp-15131
14997 arg-exps-15132)))))))))
14998 (gen-syntax-case-13639
14999 (lambda (x-14343
15000 keys-14344
15001 clauses-14345
15002 r-14346
15003 mod-14347)
15004 (if (null? clauses-14345)
15005 (let ((args-14353
15006 (list (make-struct/no-tail
15007 (vector-ref %expanded-vtables 1)
15008 #f
15009 #f)
15010 (make-struct/no-tail
15011 (vector-ref %expanded-vtables 1)
15012 #f
15013 "source expression failed to match any pattern")
15014 x-14343)))
15015 (make-struct/no-tail
15016 (vector-ref %expanded-vtables 12)
15017 #f
15018 'syntax-violation
15019 args-14353))
15020 (let ((tmp-14372 (car clauses-14345)))
15021 (let ((tmp-14373 ($sc-dispatch tmp-14372 '(any any))))
15022 (if tmp-14373
15023 (@apply
15024 (lambda (pat-14375 exp-14376)
15025 (if (if (if (symbol? pat-14375)
15026 #t
15027 (if (if (vector? pat-14375)
15028 (if (= (vector-length pat-14375) 4)
15029 (eq? (vector-ref pat-14375 0)
15030 'syntax-object)
15031 #f)
15032 #f)
15033 (symbol? (vector-ref pat-14375 1))
15034 #f))
15035 (and-map
15036 (lambda (x-14403)
15037 (not (free-id=?-4574 pat-14375 x-14403)))
15038 (cons '#(syntax-object
15039 ...
15040 ((top)
15041 #(ribcage
15042 #(pat exp)
15043 #((top) (top))
15044 #("l-*-4087" "l-*-4088"))
15045 #(ribcage () () ())
15046 #(ribcage
15047 #(x keys clauses r mod)
15048 #((top) (top) (top) (top) (top))
15049 #("l-*-4077"
15050 "l-*-4078"
15051 "l-*-4079"
15052 "l-*-4080"
15053 "l-*-4081"))
15054 #(ribcage
15055 (gen-syntax-case
15056 gen-clause
15057 build-dispatch-call
15058 convert-pattern)
15059 ((top) (top) (top) (top))
15060 ("l-*-3890"
15061 "l-*-3888"
15062 "l-*-3886"
15063 "l-*-3884"))
15064 #(ribcage
15065 (lambda-var-list
15066 gen-var
15067 strip
15068 expand-lambda-case
15069 lambda*-formals
15070 expand-simple-lambda
15071 lambda-formals
15072 ellipsis?
15073 expand-void
15074 eval-local-transformer
15075 expand-local-syntax
15076 expand-body
15077 expand-macro
15078 expand-call
15079 expand-expr
15080 expand
15081 syntax-type
15082 parse-when-list
15083 expand-install-global
15084 expand-top-sequence
15085 expand-sequence
15086 source-wrap
15087 wrap
15088 bound-id-member?
15089 distinct-bound-ids?
15090 valid-bound-ids?
15091 bound-id=?
15092 free-id=?
15093 with-transformer-environment
15094 transformer-environment
15095 resolve-identifier
15096 locally-bound-identifiers
15097 id-var-name
15098 same-marks?
15099 join-marks
15100 join-wraps
15101 smart-append
15102 make-binding-wrap
15103 extend-ribcage!
15104 make-empty-ribcage
15105 new-mark
15106 anti-mark
15107 the-anti-mark
15108 top-marked?
15109 top-wrap
15110 empty-wrap
15111 set-ribcage-labels!
15112 set-ribcage-marks!
15113 set-ribcage-symnames!
15114 ribcage-labels
15115 ribcage-marks
15116 ribcage-symnames
15117 ribcage?
15118 make-ribcage
15119 gen-labels
15120 gen-label
15121 make-rename
15122 rename-marks
15123 rename-new
15124 rename-old
15125 subst-rename?
15126 wrap-subst
15127 wrap-marks
15128 make-wrap
15129 id-sym-name&marks
15130 id-sym-name
15131 id?
15132 nonsymbol-id?
15133 global-extend
15134 macros-only-env
15135 extend-var-env
15136 extend-env
15137 null-env
15138 binding-value
15139 binding-type
15140 make-binding
15141 arg-check
15142 source-annotation
15143 no-source
15144 set-syntax-object-module!
15145 set-syntax-object-wrap!
15146 set-syntax-object-expression!
15147 syntax-object-module
15148 syntax-object-wrap
15149 syntax-object-expression
15150 syntax-object?
15151 make-syntax-object
15152 build-lexical-var
15153 build-letrec
15154 build-named-let
15155 build-let
15156 build-sequence
15157 build-data
15158 build-primref
15159 build-primcall
15160 build-lambda-case
15161 build-case-lambda
15162 build-simple-lambda
15163 build-global-definition
15164 build-global-assignment
15165 build-global-reference
15166 analyze-variable
15167 build-lexical-assignment
15168 build-lexical-reference
15169 build-dynlet
15170 build-conditional
15171 build-call
15172 build-void
15173 maybe-name-value!
15174 decorate-source
15175 get-global-definition-hook
15176 put-global-definition-hook
15177 session-id
15178 local-eval-hook
15179 top-level-eval-hook
15180 fx<
15181 fx=
15182 fx-
15183 fx+
15184 set-lambda-meta!
15185 lambda-meta
15186 lambda?
15187 make-dynlet
15188 make-letrec
15189 make-let
15190 make-lambda-case
15191 make-lambda
15192 make-seq
15193 make-primcall
15194 make-call
15195 make-conditional
15196 make-toplevel-define
15197 make-toplevel-set
15198 make-toplevel-ref
15199 make-module-set
15200 make-module-ref
15201 make-lexical-set
15202 make-lexical-ref
15203 make-primitive-ref
15204 make-const
15205 make-void)
15206 ((top)
15207 (top)
15208 (top)
15209 (top)
15210 (top)
15211 (top)
15212 (top)
15213 (top)
15214 (top)
15215 (top)
15216 (top)
15217 (top)
15218 (top)
15219 (top)
15220 (top)
15221 (top)
15222 (top)
15223 (top)
15224 (top)
15225 (top)
15226 (top)
15227 (top)
15228 (top)
15229 (top)
15230 (top)
15231 (top)
15232 (top)
15233 (top)
15234 (top)
15235 (top)
15236 (top)
15237 (top)
15238 (top)
15239 (top)
15240 (top)
15241 (top)
15242 (top)
15243 (top)
15244 (top)
15245 (top)
15246 (top)
15247 (top)
15248 (top)
15249 (top)
15250 (top)
15251 (top)
15252 (top)
15253 (top)
15254 (top)
15255 (top)
15256 (top)
15257 (top)
15258 (top)
15259 (top)
15260 (top)
15261 (top)
15262 (top)
15263 (top)
15264 (top)
15265 (top)
15266 (top)
15267 (top)
15268 (top)
15269 (top)
15270 (top)
15271 (top)
15272 (top)
15273 (top)
15274 (top)
15275 (top)
15276 (top)
15277 (top)
15278 (top)
15279 (top)
15280 (top)
15281 (top)
15282 (top)
15283 (top)
15284 (top)
15285 (top)
15286 (top)
15287 (top)
15288 (top)
15289 (top)
15290 (top)
15291 (top)
15292 (top)
15293 (top)
15294 (top)
15295 (top)
15296 (top)
15297 (top)
15298 (top)
15299 (top)
15300 (top)
15301 (top)
15302 (top)
15303 (top)
15304 (top)
15305 (top)
15306 (top)
15307 (top)
15308 (top)
15309 (top)
15310 (top)
15311 (top)
15312 (top)
15313 (top)
15314 (top)
15315 (top)
15316 (top)
15317 (top)
15318 (top)
15319 (top)
15320 (top)
15321 (top)
15322 (top)
15323 (top)
15324 (top)
15325 (top)
15326 (top)
15327 (top)
15328 (top)
15329 (top)
15330 (top)
15331 (top)
15332 (top)
15333 (top)
15334 (top)
15335 (top)
15336 (top)
15337 (top)
15338 (top)
15339 (top)
15340 (top)
15341 (top)
15342 (top)
15343 (top)
15344 (top)
15345 (top)
15346 (top))
15347 ("l-*-478"
15348 "l-*-476"
15349 "l-*-474"
15350 "l-*-472"
15351 "l-*-470"
15352 "l-*-468"
15353 "l-*-466"
15354 "l-*-464"
15355 "l-*-462"
15356 "l-*-460"
15357 "l-*-458"
15358 "l-*-456"
15359 "l-*-454"
15360 "l-*-452"
15361 "l-*-450"
15362 "l-*-448"
15363 "l-*-446"
15364 "l-*-444"
15365 "l-*-442"
15366 "l-*-440"
15367 "l-*-438"
15368 "l-*-436"
15369 "l-*-434"
15370 "l-*-432"
15371 "l-*-430"
15372 "l-*-428"
15373 "l-*-426"
15374 "l-*-424"
15375 "l-*-422"
15376 "l-*-420"
15377 "l-*-418"
15378 "l-*-416"
15379 "l-*-414"
15380 "l-*-412"
15381 "l-*-410"
15382 "l-*-408"
15383 "l-*-406"
15384 "l-*-404"
15385 "l-*-402"
15386 "l-*-401"
15387 "l-*-399"
15388 "l-*-396"
15389 "l-*-395"
15390 "l-*-394"
15391 "l-*-392"
15392 "l-*-391"
15393 "l-*-389"
15394 "l-*-387"
15395 "l-*-385"
15396 "l-*-383"
15397 "l-*-381"
15398 "l-*-379"
15399 "l-*-377"
15400 "l-*-375"
15401 "l-*-372"
15402 "l-*-370"
15403 "l-*-369"
15404 "l-*-367"
15405 "l-*-365"
15406 "l-*-363"
15407 "l-*-361"
15408 "l-*-360"
15409 "l-*-359"
15410 "l-*-358"
15411 "l-*-356"
15412 "l-*-355"
15413 "l-*-352"
15414 "l-*-350"
15415 "l-*-348"
15416 "l-*-346"
15417 "l-*-344"
15418 "l-*-342"
15419 "l-*-341"
15420 "l-*-340"
15421 "l-*-338"
15422 "l-*-336"
15423 "l-*-335"
15424 "l-*-332"
15425 "l-*-331"
15426 "l-*-329"
15427 "l-*-327"
15428 "l-*-325"
15429 "l-*-323"
15430 "l-*-321"
15431 "l-*-319"
15432 "l-*-317"
15433 "l-*-315"
15434 "l-*-313"
15435 "l-*-310"
15436 "l-*-308"
15437 "l-*-306"
15438 "l-*-304"
15439 "l-*-302"
15440 "l-*-300"
15441 "l-*-298"
15442 "l-*-296"
15443 "l-*-294"
15444 "l-*-292"
15445 "l-*-290"
15446 "l-*-288"
15447 "l-*-286"
15448 "l-*-284"
15449 "l-*-282"
15450 "l-*-280"
15451 "l-*-278"
15452 "l-*-276"
15453 "l-*-274"
15454 "l-*-272"
15455 "l-*-270"
15456 "l-*-268"
15457 "l-*-266"
15458 "l-*-264"
15459 "l-*-262"
15460 "l-*-260"
15461 "l-*-258"
15462 "l-*-257"
15463 "l-*-256"
15464 "l-*-255"
15465 "l-*-254"
15466 "l-*-252"
15467 "l-*-250"
15468 "l-*-248"
15469 "l-*-245"
15470 "l-*-243"
15471 "l-*-241"
15472 "l-*-239"
15473 "l-*-237"
15474 "l-*-235"
15475 "l-*-233"
15476 "l-*-231"
15477 "l-*-229"
15478 "l-*-227"
15479 "l-*-225"
15480 "l-*-223"
15481 "l-*-221"
15482 "l-*-219"
15483 "l-*-217"
15484 "l-*-215"
15485 "l-*-213"
15486 "l-*-211"
15487 "l-*-209"))
15488 #(ribcage
15489 (define-structure
15490 define-expansion-accessors
15491 define-expansion-constructors)
15492 ((top) (top) (top))
15493 ("l-*-47" "l-*-46" "l-*-45"))
15494 #(ribcage () () ()))
15495 (hygiene guile))
15496 keys-14344))
15497 #f)
15498 (if (free-id=?-4574
15499 '#(syntax-object
15500 pad
15501 ((top)
15502 #(ribcage
15503 #(pat exp)
15504 #((top) (top))
15505 #("l-*-4087" "l-*-4088"))
15506 #(ribcage () () ())
15507 #(ribcage
15508 #(x keys clauses r mod)
15509 #((top) (top) (top) (top) (top))
15510 #("l-*-4077"
15511 "l-*-4078"
15512 "l-*-4079"
15513 "l-*-4080"
15514 "l-*-4081"))
15515 #(ribcage
15516 (gen-syntax-case
15517 gen-clause
15518 build-dispatch-call
15519 convert-pattern)
15520 ((top) (top) (top) (top))
15521 ("l-*-3890"
15522 "l-*-3888"
15523 "l-*-3886"
15524 "l-*-3884"))
15525 #(ribcage
15526 (lambda-var-list
15527 gen-var
15528 strip
15529 expand-lambda-case
15530 lambda*-formals
15531 expand-simple-lambda
15532 lambda-formals
15533 ellipsis?
15534 expand-void
15535 eval-local-transformer
15536 expand-local-syntax
15537 expand-body
15538 expand-macro
15539 expand-call
15540 expand-expr
15541 expand
15542 syntax-type
15543 parse-when-list
15544 expand-install-global
15545 expand-top-sequence
15546 expand-sequence
15547 source-wrap
15548 wrap
15549 bound-id-member?
15550 distinct-bound-ids?
15551 valid-bound-ids?
15552 bound-id=?
15553 free-id=?
15554 with-transformer-environment
15555 transformer-environment
15556 resolve-identifier
15557 locally-bound-identifiers
15558 id-var-name
15559 same-marks?
15560 join-marks
15561 join-wraps
15562 smart-append
15563 make-binding-wrap
15564 extend-ribcage!
15565 make-empty-ribcage
15566 new-mark
15567 anti-mark
15568 the-anti-mark
15569 top-marked?
15570 top-wrap
15571 empty-wrap
15572 set-ribcage-labels!
15573 set-ribcage-marks!
15574 set-ribcage-symnames!
15575 ribcage-labels
15576 ribcage-marks
15577 ribcage-symnames
15578 ribcage?
15579 make-ribcage
15580 gen-labels
15581 gen-label
15582 make-rename
15583 rename-marks
15584 rename-new
15585 rename-old
15586 subst-rename?
15587 wrap-subst
15588 wrap-marks
15589 make-wrap
15590 id-sym-name&marks
15591 id-sym-name
15592 id?
15593 nonsymbol-id?
15594 global-extend
15595 macros-only-env
15596 extend-var-env
15597 extend-env
15598 null-env
15599 binding-value
15600 binding-type
15601 make-binding
15602 arg-check
15603 source-annotation
15604 no-source
15605 set-syntax-object-module!
15606 set-syntax-object-wrap!
15607 set-syntax-object-expression!
15608 syntax-object-module
15609 syntax-object-wrap
15610 syntax-object-expression
15611 syntax-object?
15612 make-syntax-object
15613 build-lexical-var
15614 build-letrec
15615 build-named-let
15616 build-let
15617 build-sequence
15618 build-data
15619 build-primref
15620 build-primcall
15621 build-lambda-case
15622 build-case-lambda
15623 build-simple-lambda
15624 build-global-definition
15625 build-global-assignment
15626 build-global-reference
15627 analyze-variable
15628 build-lexical-assignment
15629 build-lexical-reference
15630 build-dynlet
15631 build-conditional
15632 build-call
15633 build-void
15634 maybe-name-value!
15635 decorate-source
15636 get-global-definition-hook
15637 put-global-definition-hook
15638 session-id
15639 local-eval-hook
15640 top-level-eval-hook
15641 fx<
15642 fx=
15643 fx-
15644 fx+
15645 set-lambda-meta!
15646 lambda-meta
15647 lambda?
15648 make-dynlet
15649 make-letrec
15650 make-let
15651 make-lambda-case
15652 make-lambda
15653 make-seq
15654 make-primcall
15655 make-call
15656 make-conditional
15657 make-toplevel-define
15658 make-toplevel-set
15659 make-toplevel-ref
15660 make-module-set
15661 make-module-ref
15662 make-lexical-set
15663 make-lexical-ref
15664 make-primitive-ref
15665 make-const
15666 make-void)
15667 ((top)
15668 (top)
15669 (top)
15670 (top)
15671 (top)
15672 (top)
15673 (top)
15674 (top)
15675 (top)
15676 (top)
15677 (top)
15678 (top)
15679 (top)
15680 (top)
15681 (top)
15682 (top)
15683 (top)
15684 (top)
15685 (top)
15686 (top)
15687 (top)
15688 (top)
15689 (top)
15690 (top)
15691 (top)
15692 (top)
15693 (top)
15694 (top)
15695 (top)
15696 (top)
15697 (top)
15698 (top)
15699 (top)
15700 (top)
15701 (top)
15702 (top)
15703 (top)
15704 (top)
15705 (top)
15706 (top)
15707 (top)
15708 (top)
15709 (top)
15710 (top)
15711 (top)
15712 (top)
15713 (top)
15714 (top)
15715 (top)
15716 (top)
15717 (top)
15718 (top)
15719 (top)
15720 (top)
15721 (top)
15722 (top)
15723 (top)
15724 (top)
15725 (top)
15726 (top)
15727 (top)
15728 (top)
15729 (top)
15730 (top)
15731 (top)
15732 (top)
15733 (top)
15734 (top)
15735 (top)
15736 (top)
15737 (top)
15738 (top)
15739 (top)
15740 (top)
15741 (top)
15742 (top)
15743 (top)
15744 (top)
15745 (top)
15746 (top)
15747 (top)
15748 (top)
15749 (top)
15750 (top)
15751 (top)
15752 (top)
15753 (top)
15754 (top)
15755 (top)
15756 (top)
15757 (top)
15758 (top)
15759 (top)
15760 (top)
15761 (top)
15762 (top)
15763 (top)
15764 (top)
15765 (top)
15766 (top)
15767 (top)
15768 (top)
15769 (top)
15770 (top)
15771 (top)
15772 (top)
15773 (top)
15774 (top)
15775 (top)
15776 (top)
15777 (top)
15778 (top)
15779 (top)
15780 (top)
15781 (top)
15782 (top)
15783 (top)
15784 (top)
15785 (top)
15786 (top)
15787 (top)
15788 (top)
15789 (top)
15790 (top)
15791 (top)
15792 (top)
15793 (top)
15794 (top)
15795 (top)
15796 (top)
15797 (top)
15798 (top)
15799 (top)
15800 (top)
15801 (top)
15802 (top)
15803 (top)
15804 (top)
15805 (top)
15806 (top)
15807 (top))
15808 ("l-*-478"
15809 "l-*-476"
15810 "l-*-474"
15811 "l-*-472"
15812 "l-*-470"
15813 "l-*-468"
15814 "l-*-466"
15815 "l-*-464"
15816 "l-*-462"
15817 "l-*-460"
15818 "l-*-458"
15819 "l-*-456"
15820 "l-*-454"
15821 "l-*-452"
15822 "l-*-450"
15823 "l-*-448"
15824 "l-*-446"
15825 "l-*-444"
15826 "l-*-442"
15827 "l-*-440"
15828 "l-*-438"
15829 "l-*-436"
15830 "l-*-434"
15831 "l-*-432"
15832 "l-*-430"
15833 "l-*-428"
15834 "l-*-426"
15835 "l-*-424"
15836 "l-*-422"
15837 "l-*-420"
15838 "l-*-418"
15839 "l-*-416"
15840 "l-*-414"
15841 "l-*-412"
15842 "l-*-410"
15843 "l-*-408"
15844 "l-*-406"
15845 "l-*-404"
15846 "l-*-402"
15847 "l-*-401"
15848 "l-*-399"
15849 "l-*-396"
15850 "l-*-395"
15851 "l-*-394"
15852 "l-*-392"
15853 "l-*-391"
15854 "l-*-389"
15855 "l-*-387"
15856 "l-*-385"
15857 "l-*-383"
15858 "l-*-381"
15859 "l-*-379"
15860 "l-*-377"
15861 "l-*-375"
15862 "l-*-372"
15863 "l-*-370"
15864 "l-*-369"
15865 "l-*-367"
15866 "l-*-365"
15867 "l-*-363"
15868 "l-*-361"
15869 "l-*-360"
15870 "l-*-359"
15871 "l-*-358"
15872 "l-*-356"
15873 "l-*-355"
15874 "l-*-352"
15875 "l-*-350"
15876 "l-*-348"
15877 "l-*-346"
15878 "l-*-344"
15879 "l-*-342"
15880 "l-*-341"
15881 "l-*-340"
15882 "l-*-338"
15883 "l-*-336"
15884 "l-*-335"
15885 "l-*-332"
15886 "l-*-331"
15887 "l-*-329"
15888 "l-*-327"
15889 "l-*-325"
15890 "l-*-323"
15891 "l-*-321"
15892 "l-*-319"
15893 "l-*-317"
15894 "l-*-315"
15895 "l-*-313"
15896 "l-*-310"
15897 "l-*-308"
15898 "l-*-306"
15899 "l-*-304"
15900 "l-*-302"
15901 "l-*-300"
15902 "l-*-298"
15903 "l-*-296"
15904 "l-*-294"
15905 "l-*-292"
15906 "l-*-290"
15907 "l-*-288"
15908 "l-*-286"
15909 "l-*-284"
15910 "l-*-282"
15911 "l-*-280"
15912 "l-*-278"
15913 "l-*-276"
15914 "l-*-274"
15915 "l-*-272"
15916 "l-*-270"
15917 "l-*-268"
15918 "l-*-266"
15919 "l-*-264"
15920 "l-*-262"
15921 "l-*-260"
15922 "l-*-258"
15923 "l-*-257"
15924 "l-*-256"
15925 "l-*-255"
15926 "l-*-254"
15927 "l-*-252"
15928 "l-*-250"
15929 "l-*-248"
15930 "l-*-245"
15931 "l-*-243"
15932 "l-*-241"
15933 "l-*-239"
15934 "l-*-237"
15935 "l-*-235"
15936 "l-*-233"
15937 "l-*-231"
15938 "l-*-229"
15939 "l-*-227"
15940 "l-*-225"
15941 "l-*-223"
15942 "l-*-221"
15943 "l-*-219"
15944 "l-*-217"
15945 "l-*-215"
15946 "l-*-213"
15947 "l-*-211"
15948 "l-*-209"))
15949 #(ribcage
15950 (define-structure
15951 define-expansion-accessors
15952 define-expansion-constructors)
15953 ((top) (top) (top))
15954 ("l-*-47" "l-*-46" "l-*-45"))
15955 #(ribcage () () ()))
15956 (hygiene guile))
15957 '#(syntax-object
15958 _
15959 ((top)
15960 #(ribcage
15961 #(pat exp)
15962 #((top) (top))
15963 #("l-*-4087" "l-*-4088"))
15964 #(ribcage () () ())
15965 #(ribcage
15966 #(x keys clauses r mod)
15967 #((top) (top) (top) (top) (top))
15968 #("l-*-4077"
15969 "l-*-4078"
15970 "l-*-4079"
15971 "l-*-4080"
15972 "l-*-4081"))
15973 #(ribcage
15974 (gen-syntax-case
15975 gen-clause
15976 build-dispatch-call
15977 convert-pattern)
15978 ((top) (top) (top) (top))
15979 ("l-*-3890"
15980 "l-*-3888"
15981 "l-*-3886"
15982 "l-*-3884"))
15983 #(ribcage
15984 (lambda-var-list
15985 gen-var
15986 strip
15987 expand-lambda-case
15988 lambda*-formals
15989 expand-simple-lambda
15990 lambda-formals
15991 ellipsis?
15992 expand-void
15993 eval-local-transformer
15994 expand-local-syntax
15995 expand-body
15996 expand-macro
15997 expand-call
15998 expand-expr
15999 expand
16000 syntax-type
16001 parse-when-list
16002 expand-install-global
16003 expand-top-sequence
16004 expand-sequence
16005 source-wrap
16006 wrap
16007 bound-id-member?
16008 distinct-bound-ids?
16009 valid-bound-ids?
16010 bound-id=?
16011 free-id=?
16012 with-transformer-environment
16013 transformer-environment
16014 resolve-identifier
16015 locally-bound-identifiers
16016 id-var-name
16017 same-marks?
16018 join-marks
16019 join-wraps
16020 smart-append
16021 make-binding-wrap
16022 extend-ribcage!
16023 make-empty-ribcage
16024 new-mark
16025 anti-mark
16026 the-anti-mark
16027 top-marked?
16028 top-wrap
16029 empty-wrap
16030 set-ribcage-labels!
16031 set-ribcage-marks!
16032 set-ribcage-symnames!
16033 ribcage-labels
16034 ribcage-marks
16035 ribcage-symnames
16036 ribcage?
16037 make-ribcage
16038 gen-labels
16039 gen-label
16040 make-rename
16041 rename-marks
16042 rename-new
16043 rename-old
16044 subst-rename?
16045 wrap-subst
16046 wrap-marks
16047 make-wrap
16048 id-sym-name&marks
16049 id-sym-name
16050 id?
16051 nonsymbol-id?
16052 global-extend
16053 macros-only-env
16054 extend-var-env
16055 extend-env
16056 null-env
16057 binding-value
16058 binding-type
16059 make-binding
16060 arg-check
16061 source-annotation
16062 no-source
16063 set-syntax-object-module!
16064 set-syntax-object-wrap!
16065 set-syntax-object-expression!
16066 syntax-object-module
16067 syntax-object-wrap
16068 syntax-object-expression
16069 syntax-object?
16070 make-syntax-object
16071 build-lexical-var
16072 build-letrec
16073 build-named-let
16074 build-let
16075 build-sequence
16076 build-data
16077 build-primref
16078 build-primcall
16079 build-lambda-case
16080 build-case-lambda
16081 build-simple-lambda
16082 build-global-definition
16083 build-global-assignment
16084 build-global-reference
16085 analyze-variable
16086 build-lexical-assignment
16087 build-lexical-reference
16088 build-dynlet
16089 build-conditional
16090 build-call
16091 build-void
16092 maybe-name-value!
16093 decorate-source
16094 get-global-definition-hook
16095 put-global-definition-hook
16096 session-id
16097 local-eval-hook
16098 top-level-eval-hook
16099 fx<
16100 fx=
16101 fx-
16102 fx+
16103 set-lambda-meta!
16104 lambda-meta
16105 lambda?
16106 make-dynlet
16107 make-letrec
16108 make-let
16109 make-lambda-case
16110 make-lambda
16111 make-seq
16112 make-primcall
16113 make-call
16114 make-conditional
16115 make-toplevel-define
16116 make-toplevel-set
16117 make-toplevel-ref
16118 make-module-set
16119 make-module-ref
16120 make-lexical-set
16121 make-lexical-ref
16122 make-primitive-ref
16123 make-const
16124 make-void)
16125 ((top)
16126 (top)
16127 (top)
16128 (top)
16129 (top)
16130 (top)
16131 (top)
16132 (top)
16133 (top)
16134 (top)
16135 (top)
16136 (top)
16137 (top)
16138 (top)
16139 (top)
16140 (top)
16141 (top)
16142 (top)
16143 (top)
16144 (top)
16145 (top)
16146 (top)
16147 (top)
16148 (top)
16149 (top)
16150 (top)
16151 (top)
16152 (top)
16153 (top)
16154 (top)
16155 (top)
16156 (top)
16157 (top)
16158 (top)
16159 (top)
16160 (top)
16161 (top)
16162 (top)
16163 (top)
16164 (top)
16165 (top)
16166 (top)
16167 (top)
16168 (top)
16169 (top)
16170 (top)
16171 (top)
16172 (top)
16173 (top)
16174 (top)
16175 (top)
16176 (top)
16177 (top)
16178 (top)
16179 (top)
16180 (top)
16181 (top)
16182 (top)
16183 (top)
16184 (top)
16185 (top)
16186 (top)
16187 (top)
16188 (top)
16189 (top)
16190 (top)
16191 (top)
16192 (top)
16193 (top)
16194 (top)
16195 (top)
16196 (top)
16197 (top)
16198 (top)
16199 (top)
16200 (top)
16201 (top)
16202 (top)
16203 (top)
16204 (top)
16205 (top)
16206 (top)
16207 (top)
16208 (top)
16209 (top)
16210 (top)
16211 (top)
16212 (top)
16213 (top)
16214 (top)
16215 (top)
16216 (top)
16217 (top)
16218 (top)
16219 (top)
16220 (top)
16221 (top)
16222 (top)
16223 (top)
16224 (top)
16225 (top)
16226 (top)
16227 (top)
16228 (top)
16229 (top)
16230 (top)
16231 (top)
16232 (top)
16233 (top)
16234 (top)
16235 (top)
16236 (top)
16237 (top)
16238 (top)
16239 (top)
16240 (top)
16241 (top)
16242 (top)
16243 (top)
16244 (top)
16245 (top)
16246 (top)
16247 (top)
16248 (top)
16249 (top)
16250 (top)
16251 (top)
16252 (top)
16253 (top)
16254 (top)
16255 (top)
16256 (top)
16257 (top)
16258 (top)
16259 (top)
16260 (top)
16261 (top)
16262 (top)
16263 (top)
16264 (top)
16265 (top))
16266 ("l-*-478"
16267 "l-*-476"
16268 "l-*-474"
16269 "l-*-472"
16270 "l-*-470"
16271 "l-*-468"
16272 "l-*-466"
16273 "l-*-464"
16274 "l-*-462"
16275 "l-*-460"
16276 "l-*-458"
16277 "l-*-456"
16278 "l-*-454"
16279 "l-*-452"
16280 "l-*-450"
16281 "l-*-448"
16282 "l-*-446"
16283 "l-*-444"
16284 "l-*-442"
16285 "l-*-440"
16286 "l-*-438"
16287 "l-*-436"
16288 "l-*-434"
16289 "l-*-432"
16290 "l-*-430"
16291 "l-*-428"
16292 "l-*-426"
16293 "l-*-424"
16294 "l-*-422"
16295 "l-*-420"
16296 "l-*-418"
16297 "l-*-416"
16298 "l-*-414"
16299 "l-*-412"
16300 "l-*-410"
16301 "l-*-408"
16302 "l-*-406"
16303 "l-*-404"
16304 "l-*-402"
16305 "l-*-401"
16306 "l-*-399"
16307 "l-*-396"
16308 "l-*-395"
16309 "l-*-394"
16310 "l-*-392"
16311 "l-*-391"
16312 "l-*-389"
16313 "l-*-387"
16314 "l-*-385"
16315 "l-*-383"
16316 "l-*-381"
16317 "l-*-379"
16318 "l-*-377"
16319 "l-*-375"
16320 "l-*-372"
16321 "l-*-370"
16322 "l-*-369"
16323 "l-*-367"
16324 "l-*-365"
16325 "l-*-363"
16326 "l-*-361"
16327 "l-*-360"
16328 "l-*-359"
16329 "l-*-358"
16330 "l-*-356"
16331 "l-*-355"
16332 "l-*-352"
16333 "l-*-350"
16334 "l-*-348"
16335 "l-*-346"
16336 "l-*-344"
16337 "l-*-342"
16338 "l-*-341"
16339 "l-*-340"
16340 "l-*-338"
16341 "l-*-336"
16342 "l-*-335"
16343 "l-*-332"
16344 "l-*-331"
16345 "l-*-329"
16346 "l-*-327"
16347 "l-*-325"
16348 "l-*-323"
16349 "l-*-321"
16350 "l-*-319"
16351 "l-*-317"
16352 "l-*-315"
16353 "l-*-313"
16354 "l-*-310"
16355 "l-*-308"
16356 "l-*-306"
16357 "l-*-304"
16358 "l-*-302"
16359 "l-*-300"
16360 "l-*-298"
16361 "l-*-296"
16362 "l-*-294"
16363 "l-*-292"
16364 "l-*-290"
16365 "l-*-288"
16366 "l-*-286"
16367 "l-*-284"
16368 "l-*-282"
16369 "l-*-280"
16370 "l-*-278"
16371 "l-*-276"
16372 "l-*-274"
16373 "l-*-272"
16374 "l-*-270"
16375 "l-*-268"
16376 "l-*-266"
16377 "l-*-264"
16378 "l-*-262"
16379 "l-*-260"
16380 "l-*-258"
16381 "l-*-257"
16382 "l-*-256"
16383 "l-*-255"
16384 "l-*-254"
16385 "l-*-252"
16386 "l-*-250"
16387 "l-*-248"
16388 "l-*-245"
16389 "l-*-243"
16390 "l-*-241"
16391 "l-*-239"
16392 "l-*-237"
16393 "l-*-235"
16394 "l-*-233"
16395 "l-*-231"
16396 "l-*-229"
16397 "l-*-227"
16398 "l-*-225"
16399 "l-*-223"
16400 "l-*-221"
16401 "l-*-219"
16402 "l-*-217"
16403 "l-*-215"
16404 "l-*-213"
16405 "l-*-211"
16406 "l-*-209"))
16407 #(ribcage
16408 (define-structure
16409 define-expansion-accessors
16410 define-expansion-constructors)
16411 ((top) (top) (top))
16412 ("l-*-47" "l-*-46" "l-*-45"))
16413 #(ribcage () () ()))
16414 (hygiene guile)))
16415 (expand-4586 exp-14376 r-14346 '(()) mod-14347)
16416 (let ((labels-14485
16417 (list (string-append
16418 "l-"
16419 (session-id-4511)
16420 (symbol->string (gensym "-")))))
16421 (var-14486
16422 (let ((id-14524
16423 (if (if (vector? pat-14375)
16424 (if (= (vector-length
16425 pat-14375)
16426 4)
16427 (eq? (vector-ref
16428 pat-14375
16429 0)
16430 'syntax-object)
16431 #f)
16432 #f)
16433 (vector-ref pat-14375 1)
16434 pat-14375)))
16435 (gensym
16436 (string-append
16437 (symbol->string id-14524)
16438 "-")))))
16439 (build-call-4517
16440 #f
16441 (build-simple-lambda-4526
16442 #f
16443 (list (syntax->datum pat-14375))
16444 #f
16445 (list var-14486)
16446 '()
16447 (expand-4586
16448 exp-14376
16449 (extend-env-4545
16450 labels-14485
16451 (list (cons 'syntax
16452 (cons var-14486 0)))
16453 r-14346)
16454 (make-binding-wrap-4564
16455 (list pat-14375)
16456 labels-14485
16457 '(()))
16458 mod-14347))
16459 (list x-14343))))
16460 (gen-clause-13638
16461 x-14343
16462 keys-14344
16463 (cdr clauses-14345)
16464 r-14346
16465 pat-14375
16466 #t
16467 exp-14376
16468 mod-14347)))
16469 tmp-14373)
16470 (let ((tmp-14834
16471 ($sc-dispatch tmp-14372 '(any any any))))
16472 (if tmp-14834
16473 (@apply
16474 (lambda (pat-14836 fender-14837 exp-14838)
16475 (gen-clause-13638
16476 x-14343
16477 keys-14344
16478 (cdr clauses-14345)
16479 r-14346
16480 pat-14836
16481 fender-14837
16482 exp-14838
16483 mod-14347))
16484 tmp-14834)
16485 (syntax-violation
16486 'syntax-case
16487 "invalid clause"
16488 (car clauses-14345)))))))))))
16489 (lambda (e-13640 r-13641 w-13642 s-13643 mod-13644)
16490 (let ((e-13645
16491 (let ((x-14254
16492 (begin
16493 (if (if (pair? e-13640) s-13643 #f)
16494 (set-source-properties! e-13640 s-13643))
16495 e-13640)))
16496 (if (if (null? (car w-13642))
16497 (null? (cdr w-13642))
16498 #f)
16499 x-14254
16500 (if (if (vector? x-14254)
16501 (if (= (vector-length x-14254) 4)
16502 (eq? (vector-ref x-14254 0) 'syntax-object)
16503 #f)
16504 #f)
16505 (let ((expression-14286 (vector-ref x-14254 1))
16506 (wrap-14287
16507 (let ((w2-14295 (vector-ref x-14254 2)))
16508 (let ((m1-14296 (car w-13642))
16509 (s1-14297 (cdr w-13642)))
16510 (if (null? m1-14296)
16511 (if (null? s1-14297)
16512 w2-14295
16513 (cons (car w2-14295)
16514 (let ((m2-14312
16515 (cdr w2-14295)))
16516 (if (null? m2-14312)
16517 s1-14297
16518 (append
16519 s1-14297
16520 m2-14312)))))
16521 (cons (let ((m2-14320 (car w2-14295)))
16522 (if (null? m2-14320)
16523 m1-14296
16524 (append m1-14296 m2-14320)))
16525 (let ((m2-14328 (cdr w2-14295)))
16526 (if (null? m2-14328)
16527 s1-14297
16528 (append
16529 s1-14297
16530 m2-14328))))))))
16531 (module-14288 (vector-ref x-14254 3)))
16532 (vector
16533 'syntax-object
16534 expression-14286
16535 wrap-14287
16536 module-14288))
16537 (if (null? x-14254)
16538 x-14254
16539 (vector
16540 'syntax-object
16541 x-14254
16542 w-13642
16543 mod-13644)))))))
16544 (let ((tmp-13646 e-13645))
16545 (let ((tmp-13647
16546 ($sc-dispatch
16547 tmp-13646
16548 '(_ any each-any . each-any))))
16549 (if tmp-13647
16550 (@apply
16551 (lambda (val-13695 key-13696 m-13697)
16552 (if (and-map
16553 (lambda (x-13698)
16554 (if (if (symbol? x-13698)
16555 #t
16556 (if (if (vector? x-13698)
16557 (if (= (vector-length x-13698) 4)
16558 (eq? (vector-ref x-13698 0)
16559 'syntax-object)
16560 #f)
16561 #f)
16562 (symbol? (vector-ref x-13698 1))
16563 #f))
16564 (not (if (if (if (vector? x-13698)
16565 (if (= (vector-length x-13698)
16566 4)
16567 (eq? (vector-ref x-13698 0)
16568 'syntax-object)
16569 #f)
16570 #f)
16571 (symbol? (vector-ref x-13698 1))
16572 #f)
16573 (free-id=?-4574
16574 x-13698
16575 '#(syntax-object
16576 ...
16577 ((top)
16578 #(ribcage () () ())
16579 #(ribcage () () ())
16580 #(ribcage
16581 #(x)
16582 #((top))
16583 #("l-*-2416"))
16584 #(ribcage
16585 (lambda-var-list
16586 gen-var
16587 strip
16588 expand-lambda-case
16589 lambda*-formals
16590 expand-simple-lambda
16591 lambda-formals
16592 ellipsis?
16593 expand-void
16594 eval-local-transformer
16595 expand-local-syntax
16596 expand-body
16597 expand-macro
16598 expand-call
16599 expand-expr
16600 expand
16601 syntax-type
16602 parse-when-list
16603 expand-install-global
16604 expand-top-sequence
16605 expand-sequence
16606 source-wrap
16607 wrap
16608 bound-id-member?
16609 distinct-bound-ids?
16610 valid-bound-ids?
16611 bound-id=?
16612 free-id=?
16613 with-transformer-environment
16614 transformer-environment
16615 resolve-identifier
16616 locally-bound-identifiers
16617 id-var-name
16618 same-marks?
16619 join-marks
16620 join-wraps
16621 smart-append
16622 make-binding-wrap
16623 extend-ribcage!
16624 make-empty-ribcage
16625 new-mark
16626 anti-mark
16627 the-anti-mark
16628 top-marked?
16629 top-wrap
16630 empty-wrap
16631 set-ribcage-labels!
16632 set-ribcage-marks!
16633 set-ribcage-symnames!
16634 ribcage-labels
16635 ribcage-marks
16636 ribcage-symnames
16637 ribcage?
16638 make-ribcage
16639 gen-labels
16640 gen-label
16641 make-rename
16642 rename-marks
16643 rename-new
16644 rename-old
16645 subst-rename?
16646 wrap-subst
16647 wrap-marks
16648 make-wrap
16649 id-sym-name&marks
16650 id-sym-name
16651 id?
16652 nonsymbol-id?
16653 global-extend
16654 macros-only-env
16655 extend-var-env
16656 extend-env
16657 null-env
16658 binding-value
16659 binding-type
16660 make-binding
16661 arg-check
16662 source-annotation
16663 no-source
16664 set-syntax-object-module!
16665 set-syntax-object-wrap!
16666 set-syntax-object-expression!
16667 syntax-object-module
16668 syntax-object-wrap
16669 syntax-object-expression
16670 syntax-object?
16671 make-syntax-object
16672 build-lexical-var
16673 build-letrec
16674 build-named-let
16675 build-let
16676 build-sequence
16677 build-data
16678 build-primref
16679 build-primcall
16680 build-lambda-case
16681 build-case-lambda
16682 build-simple-lambda
16683 build-global-definition
16684 build-global-assignment
16685 build-global-reference
16686 analyze-variable
16687 build-lexical-assignment
16688 build-lexical-reference
16689 build-dynlet
16690 build-conditional
16691 build-call
16692 build-void
16693 maybe-name-value!
16694 decorate-source
16695 get-global-definition-hook
16696 put-global-definition-hook
16697 session-id
16698 local-eval-hook
16699 top-level-eval-hook
16700 fx<
16701 fx=
16702 fx-
16703 fx+
16704 set-lambda-meta!
16705 lambda-meta
16706 lambda?
16707 make-dynlet
16708 make-letrec
16709 make-let
16710 make-lambda-case
16711 make-lambda
16712 make-seq
16713 make-primcall
16714 make-call
16715 make-conditional
16716 make-toplevel-define
16717 make-toplevel-set
16718 make-toplevel-ref
16719 make-module-set
16720 make-module-ref
16721 make-lexical-set
16722 make-lexical-ref
16723 make-primitive-ref
16724 make-const
16725 make-void)
16726 ((top)
16727 (top)
16728 (top)
16729 (top)
16730 (top)
16731 (top)
16732 (top)
16733 (top)
16734 (top)
16735 (top)
16736 (top)
16737 (top)
16738 (top)
16739 (top)
16740 (top)
16741 (top)
16742 (top)
16743 (top)
16744 (top)
16745 (top)
16746 (top)
16747 (top)
16748 (top)
16749 (top)
16750 (top)
16751 (top)
16752 (top)
16753 (top)
16754 (top)
16755 (top)
16756 (top)
16757 (top)
16758 (top)
16759 (top)
16760 (top)
16761 (top)
16762 (top)
16763 (top)
16764 (top)
16765 (top)
16766 (top)
16767 (top)
16768 (top)
16769 (top)
16770 (top)
16771 (top)
16772 (top)
16773 (top)
16774 (top)
16775 (top)
16776 (top)
16777 (top)
16778 (top)
16779 (top)
16780 (top)
16781 (top)
16782 (top)
16783 (top)
16784 (top)
16785 (top)
16786 (top)
16787 (top)
16788 (top)
16789 (top)
16790 (top)
16791 (top)
16792 (top)
16793 (top)
16794 (top)
16795 (top)
16796 (top)
16797 (top)
16798 (top)
16799 (top)
16800 (top)
16801 (top)
16802 (top)
16803 (top)
16804 (top)
16805 (top)
16806 (top)
16807 (top)
16808 (top)
16809 (top)
16810 (top)
16811 (top)
16812 (top)
16813 (top)
16814 (top)
16815 (top)
16816 (top)
16817 (top)
16818 (top)
16819 (top)
16820 (top)
16821 (top)
16822 (top)
16823 (top)
16824 (top)
16825 (top)
16826 (top)
16827 (top)
16828 (top)
16829 (top)
16830 (top)
16831 (top)
16832 (top)
16833 (top)
16834 (top)
16835 (top)
16836 (top)
16837 (top)
16838 (top)
16839 (top)
16840 (top)
16841 (top)
16842 (top)
16843 (top)
16844 (top)
16845 (top)
16846 (top)
16847 (top)
16848 (top)
16849 (top)
16850 (top)
16851 (top)
16852 (top)
16853 (top)
16854 (top)
16855 (top)
16856 (top)
16857 (top)
16858 (top)
16859 (top)
16860 (top)
16861 (top)
16862 (top)
16863 (top)
16864 (top)
16865 (top)
16866 (top))
16867 ("l-*-478"
16868 "l-*-476"
16869 "l-*-474"
16870 "l-*-472"
16871 "l-*-470"
16872 "l-*-468"
16873 "l-*-466"
16874 "l-*-464"
16875 "l-*-462"
16876 "l-*-460"
16877 "l-*-458"
16878 "l-*-456"
16879 "l-*-454"
16880 "l-*-452"
16881 "l-*-450"
16882 "l-*-448"
16883 "l-*-446"
16884 "l-*-444"
16885 "l-*-442"
16886 "l-*-440"
16887 "l-*-438"
16888 "l-*-436"
16889 "l-*-434"
16890 "l-*-432"
16891 "l-*-430"
16892 "l-*-428"
16893 "l-*-426"
16894 "l-*-424"
16895 "l-*-422"
16896 "l-*-420"
16897 "l-*-418"
16898 "l-*-416"
16899 "l-*-414"
16900 "l-*-412"
16901 "l-*-410"
16902 "l-*-408"
16903 "l-*-406"
16904 "l-*-404"
16905 "l-*-402"
16906 "l-*-401"
16907 "l-*-399"
16908 "l-*-396"
16909 "l-*-395"
16910 "l-*-394"
16911 "l-*-392"
16912 "l-*-391"
16913 "l-*-389"
16914 "l-*-387"
16915 "l-*-385"
16916 "l-*-383"
16917 "l-*-381"
16918 "l-*-379"
16919 "l-*-377"
16920 "l-*-375"
16921 "l-*-372"
16922 "l-*-370"
16923 "l-*-369"
16924 "l-*-367"
16925 "l-*-365"
16926 "l-*-363"
16927 "l-*-361"
16928 "l-*-360"
16929 "l-*-359"
16930 "l-*-358"
16931 "l-*-356"
16932 "l-*-355"
16933 "l-*-352"
16934 "l-*-350"
16935 "l-*-348"
16936 "l-*-346"
16937 "l-*-344"
16938 "l-*-342"
16939 "l-*-341"
16940 "l-*-340"
16941 "l-*-338"
16942 "l-*-336"
16943 "l-*-335"
16944 "l-*-332"
16945 "l-*-331"
16946 "l-*-329"
16947 "l-*-327"
16948 "l-*-325"
16949 "l-*-323"
16950 "l-*-321"
16951 "l-*-319"
16952 "l-*-317"
16953 "l-*-315"
16954 "l-*-313"
16955 "l-*-310"
16956 "l-*-308"
16957 "l-*-306"
16958 "l-*-304"
16959 "l-*-302"
16960 "l-*-300"
16961 "l-*-298"
16962 "l-*-296"
16963 "l-*-294"
16964 "l-*-292"
16965 "l-*-290"
16966 "l-*-288"
16967 "l-*-286"
16968 "l-*-284"
16969 "l-*-282"
16970 "l-*-280"
16971 "l-*-278"
16972 "l-*-276"
16973 "l-*-274"
16974 "l-*-272"
16975 "l-*-270"
16976 "l-*-268"
16977 "l-*-266"
16978 "l-*-264"
16979 "l-*-262"
16980 "l-*-260"
16981 "l-*-258"
16982 "l-*-257"
16983 "l-*-256"
16984 "l-*-255"
16985 "l-*-254"
16986 "l-*-252"
16987 "l-*-250"
16988 "l-*-248"
16989 "l-*-245"
16990 "l-*-243"
16991 "l-*-241"
16992 "l-*-239"
16993 "l-*-237"
16994 "l-*-235"
16995 "l-*-233"
16996 "l-*-231"
16997 "l-*-229"
16998 "l-*-227"
16999 "l-*-225"
17000 "l-*-223"
17001 "l-*-221"
17002 "l-*-219"
17003 "l-*-217"
17004 "l-*-215"
17005 "l-*-213"
17006 "l-*-211"
17007 "l-*-209"))
17008 #(ribcage
17009 (define-structure
17010 define-expansion-accessors
17011 define-expansion-constructors)
17012 ((top) (top) (top))
17013 ("l-*-47" "l-*-46" "l-*-45"))
17014 #(ribcage () () ()))
17015 (hygiene guile)))
17016 #f))
17017 #f))
17018 key-13696)
17019 (let ((x-13763
17020 (gensym
17021 (string-append
17022 (symbol->string 'tmp)
17023 "-"))))
17024 (build-call-4517
17025 s-13643
17026 (let ((req-13901 (list 'tmp))
17027 (vars-13903 (list x-13763))
17028 (exp-13905
17029 (gen-syntax-case-13639
17030 (make-struct/no-tail
17031 (vector-ref %expanded-vtables 3)
17032 #f
17033 'tmp
17034 x-13763)
17035 key-13696
17036 m-13697
17037 r-13641
17038 mod-13644)))
17039 (let ((body-13910
17040 (make-struct/no-tail
17041 (vector-ref %expanded-vtables 15)
17042 #f
17043 req-13901
17044 #f
17045 #f
17046 #f
17047 '()
17048 vars-13903
17049 exp-13905
17050 #f)))
17051 (make-struct/no-tail
17052 (vector-ref %expanded-vtables 14)
17053 #f
17054 '()
17055 body-13910)))
17056 (list (expand-4586
17057 val-13695
17058 r-13641
17059 '(())
17060 mod-13644))))
17061 (syntax-violation
17062 'syntax-case
17063 "invalid literals list"
17064 e-13645)))
17065 tmp-13647)
17066 (syntax-violation
17067 #f
17068 "source expression failed to match any pattern"
17069 tmp-13646))))))))
17070 (set! macroexpand
17071 (lambda*
17072 (x-16590
17073 #:optional
17074 (m-16591 'e)
17075 (esew-16592 '(eval)))
17076 (expand-top-sequence-4582
17077 (list x-16590)
17078 '()
17079 '((top))
17080 #f
17081 m-16591
17082 esew-16592
17083 (cons 'hygiene (module-name (current-module))))))
17084 (set! identifier?
17085 (lambda (x-16595)
17086 (if (if (vector? x-16595)
17087 (if (= (vector-length x-16595) 4)
17088 (eq? (vector-ref x-16595 0) 'syntax-object)
17089 #f)
17090 #f)
17091 (symbol? (vector-ref x-16595 1))
17092 #f)))
17093 (set! datum->syntax
17094 (lambda (id-16620 datum-16621)
17095 (let ((wrap-16626 (vector-ref id-16620 2))
17096 (module-16627 (vector-ref id-16620 3)))
17097 (vector
17098 'syntax-object
17099 datum-16621
17100 wrap-16626
17101 module-16627))))
17102 (set! syntax->datum
17103 (lambda (x-16634) (strip-4599 x-16634 '(()))))
17104 (set! syntax-source
17105 (lambda (x-16637)
17106 (source-annotation-4544 x-16637)))
17107 (set! generate-temporaries
17108 (lambda (ls-16821)
17109 (begin
17110 (if (not (list? ls-16821))
17111 (syntax-violation
17112 'generate-temporaries
17113 "invalid argument"
17114 ls-16821))
17115 (let ((mod-16829
17116 (cons 'hygiene (module-name (current-module)))))
17117 (map (lambda (x-16830)
17118 (let ((x-16834 (gensym "t-")))
17119 (if (if (vector? x-16834)
17120 (if (= (vector-length x-16834) 4)
17121 (eq? (vector-ref x-16834 0) 'syntax-object)
17122 #f)
17123 #f)
17124 (let ((expression-16849 (vector-ref x-16834 1))
17125 (wrap-16850
17126 (let ((w2-16858 (vector-ref x-16834 2)))
17127 (cons (let ((m2-16865 (car w2-16858)))
17128 (if (null? m2-16865)
17129 '(top)
17130 (append '(top) m2-16865)))
17131 (let ((m2-16872 (cdr w2-16858)))
17132 (if (null? m2-16872)
17133 '()
17134 (append '() m2-16872))))))
17135 (module-16851 (vector-ref x-16834 3)))
17136 (vector
17137 'syntax-object
17138 expression-16849
17139 wrap-16850
17140 module-16851))
17141 (if (null? x-16834)
17142 x-16834
17143 (vector
17144 'syntax-object
17145 x-16834
17146 '((top))
17147 mod-16829)))))
17148 ls-16821)))))
17149 (set! free-identifier=?
17150 (lambda (x-16881 y-16882)
17151 (begin
17152 (if (not (if (if (vector? x-16881)
17153 (if (= (vector-length x-16881) 4)
17154 (eq? (vector-ref x-16881 0) 'syntax-object)
17155 #f)
17156 #f)
17157 (symbol? (vector-ref x-16881 1))
17158 #f))
17159 (syntax-violation
17160 'free-identifier=?
17161 "invalid argument"
17162 x-16881))
17163 (if (not (if (if (vector? y-16882)
17164 (if (= (vector-length y-16882) 4)
17165 (eq? (vector-ref y-16882 0) 'syntax-object)
17166 #f)
17167 #f)
17168 (symbol? (vector-ref y-16882 1))
17169 #f))
17170 (syntax-violation
17171 'free-identifier=?
17172 "invalid argument"
17173 y-16882))
17174 (free-id=?-4574 x-16881 y-16882))))
17175 (set! bound-identifier=?
17176 (lambda (x-16957 y-16958)
17177 (begin
17178 (if (not (if (if (vector? x-16957)
17179 (if (= (vector-length x-16957) 4)
17180 (eq? (vector-ref x-16957 0) 'syntax-object)
17181 #f)
17182 #f)
17183 (symbol? (vector-ref x-16957 1))
17184 #f))
17185 (syntax-violation
17186 'bound-identifier=?
17187 "invalid argument"
17188 x-16957))
17189 (if (not (if (if (vector? y-16958)
17190 (if (= (vector-length y-16958) 4)
17191 (eq? (vector-ref y-16958 0) 'syntax-object)
17192 #f)
17193 #f)
17194 (symbol? (vector-ref y-16958 1))
17195 #f))
17196 (syntax-violation
17197 'bound-identifier=?
17198 "invalid argument"
17199 y-16958))
17200 (bound-id=?-4575 x-16957 y-16958))))
17201 (set! syntax-violation
17202 (lambda*
17203 (who-17124
17204 message-17125
17205 form-17126
17206 #:optional
17207 (subform-17127 #f))
17208 (begin
17209 (if (not (if (not who-17124)
17210 (not who-17124)
17211 (let ((t-17145 (string? who-17124)))
17212 (if t-17145 t-17145 (symbol? who-17124)))))
17213 (syntax-violation
17214 'syntax-violation
17215 "invalid argument"
17216 who-17124))
17217 (if (not (string? message-17125))
17218 (syntax-violation
17219 'syntax-violation
17220 "invalid argument"
17221 message-17125))
17222 (throw 'syntax-error
17223 who-17124
17224 message-17125
17225 (source-annotation-4544
17226 (if form-17126 form-17126 subform-17127))
17227 (strip-4599 form-17126 '(()))
17228 (if subform-17127
17229 (strip-4599 subform-17127 '(()))
17230 #f)))))
17231 (letrec*
17232 ((syntax-local-binding-17377
17233 (lambda (id-17517)
17234 (begin
17235 (if (not (if (if (vector? id-17517)
17236 (if (= (vector-length id-17517) 4)
17237 (eq? (vector-ref id-17517 0) 'syntax-object)
17238 #f)
17239 #f)
17240 (symbol? (vector-ref id-17517 1))
17241 #f))
17242 (syntax-violation
17243 'syntax-local-binding
17244 "invalid argument"
17245 id-17517))
17246 ((fluid-ref transformer-environment-4572)
17247 (lambda (e-17557
17248 r-17558
17249 w-17559
17250 s-17560
17251 rib-17561
17252 mod-17562)
17253 (call-with-values
17254 (lambda ()
17255 (resolve-identifier-4571
17256 (vector-ref id-17517 1)
17257 (let ((w-17569 (vector-ref id-17517 2)))
17258 (let ((ms-17570 (car w-17569))
17259 (s-17571 (cdr w-17569)))
17260 (if (if (pair? ms-17570)
17261 (eq? (car ms-17570) #f)
17262 #f)
17263 (cons (cdr ms-17570)
17264 (if rib-17561
17265 (cons rib-17561 (cdr s-17571))
17266 (cdr s-17571)))
17267 (cons ms-17570
17268 (if rib-17561
17269 (cons rib-17561 s-17571)
17270 s-17571)))))
17271 r-17558
17272 (vector-ref id-17517 3)
17273 #t))
17274 (lambda (type-17578 value-17579 mod-17580)
17275 (if (eqv? type-17578 'lexical)
17276 (values 'lexical value-17579)
17277 (if (eqv? type-17578 'macro)
17278 (values 'macro value-17579)
17279 (if (eqv? type-17578 'syntax)
17280 (values 'pattern-variable value-17579)
17281 (if (eqv? type-17578 'displaced-lexical)
17282 (values 'displaced-lexical #f)
17283 (if (eqv? type-17578 'global)
17284 (values
17285 'global
17286 (cons value-17579 (cdr mod-17580)))
17287 (values 'other #f)))))))))))))
17288 (syntax-locally-bound-identifiers-17378
17289 (lambda (id-17591)
17290 (begin
17291 (if (not (if (if (vector? id-17591)
17292 (if (= (vector-length id-17591) 4)
17293 (eq? (vector-ref id-17591 0) 'syntax-object)
17294 #f)
17295 #f)
17296 (symbol? (vector-ref id-17591 1))
17297 #f))
17298 (syntax-violation
17299 'syntax-locally-bound-identifiers
17300 "invalid argument"
17301 id-17591))
17302 (locally-bound-identifiers-4570
17303 (vector-ref id-17591 2)
17304 (vector-ref id-17591 3))))))
17305 (begin
17306 (define!
17307 'syntax-module
17308 (lambda (id-17380)
17309 (begin
17310 (if (not (if (if (vector? id-17380)
17311 (if (= (vector-length id-17380) 4)
17312 (eq? (vector-ref id-17380 0) 'syntax-object)
17313 #f)
17314 #f)
17315 (symbol? (vector-ref id-17380 1))
17316 #f))
17317 (syntax-violation
17318 'syntax-module
17319 "invalid argument"
17320 id-17380))
17321 (cdr (vector-ref id-17380 3)))))
17322 (define!
17323 'syntax-local-binding
17324 syntax-local-binding-17377)
17325 (define!
17326 'syntax-locally-bound-identifiers
17327 syntax-locally-bound-identifiers-17378)))
17328 (letrec*
17329 ((match-each-17708
17330 (lambda (e-18587 p-18588 w-18589 mod-18590)
17331 (if (pair? e-18587)
17332 (let ((first-18591
17333 (match-17714
17334 (car e-18587)
17335 p-18588
17336 w-18589
17337 '()
17338 mod-18590)))
17339 (if first-18591
17340 (let ((rest-18594
17341 (match-each-17708
17342 (cdr e-18587)
17343 p-18588
17344 w-18589
17345 mod-18590)))
17346 (if rest-18594 (cons first-18591 rest-18594) #f))
17347 #f))
17348 (if (null? e-18587)
17349 '()
17350 (if (if (vector? e-18587)
17351 (if (= (vector-length e-18587) 4)
17352 (eq? (vector-ref e-18587 0) 'syntax-object)
17353 #f)
17354 #f)
17355 (match-each-17708
17356 (vector-ref e-18587 1)
17357 p-18588
17358 (let ((w2-18616 (vector-ref e-18587 2)))
17359 (let ((m1-18617 (car w-18589))
17360 (s1-18618 (cdr w-18589)))
17361 (if (null? m1-18617)
17362 (if (null? s1-18618)
17363 w2-18616
17364 (cons (car w2-18616)
17365 (let ((m2-18629 (cdr w2-18616)))
17366 (if (null? m2-18629)
17367 s1-18618
17368 (append s1-18618 m2-18629)))))
17369 (cons (let ((m2-18637 (car w2-18616)))
17370 (if (null? m2-18637)
17371 m1-18617
17372 (append m1-18617 m2-18637)))
17373 (let ((m2-18645 (cdr w2-18616)))
17374 (if (null? m2-18645)
17375 s1-18618
17376 (append s1-18618 m2-18645)))))))
17377 (vector-ref e-18587 3))
17378 #f)))))
17379 (match-each-any-17710
17380 (lambda (e-18654 w-18655 mod-18656)
17381 (if (pair? e-18654)
17382 (let ((l-18657
17383 (match-each-any-17710
17384 (cdr e-18654)
17385 w-18655
17386 mod-18656)))
17387 (if l-18657
17388 (cons (let ((x-18662 (car e-18654)))
17389 (if (if (null? (car w-18655))
17390 (null? (cdr w-18655))
17391 #f)
17392 x-18662
17393 (if (if (vector? x-18662)
17394 (if (= (vector-length x-18662) 4)
17395 (eq? (vector-ref x-18662 0)
17396 'syntax-object)
17397 #f)
17398 #f)
17399 (let ((expression-18680 (vector-ref x-18662 1))
17400 (wrap-18681
17401 (let ((w2-18689 (vector-ref x-18662 2)))
17402 (let ((m1-18690 (car w-18655))
17403 (s1-18691 (cdr w-18655)))
17404 (if (null? m1-18690)
17405 (if (null? s1-18691)
17406 w2-18689
17407 (cons (car w2-18689)
17408 (let ((m2-18706
17409 (cdr w2-18689)))
17410 (if (null? m2-18706)
17411 s1-18691
17412 (append
17413 s1-18691
17414 m2-18706)))))
17415 (cons (let ((m2-18714
17416 (car w2-18689)))
17417 (if (null? m2-18714)
17418 m1-18690
17419 (append
17420 m1-18690
17421 m2-18714)))
17422 (let ((m2-18722
17423 (cdr w2-18689)))
17424 (if (null? m2-18722)
17425 s1-18691
17426 (append
17427 s1-18691
17428 m2-18722))))))))
17429 (module-18682 (vector-ref x-18662 3)))
17430 (vector
17431 'syntax-object
17432 expression-18680
17433 wrap-18681
17434 module-18682))
17435 (if (null? x-18662)
17436 x-18662
17437 (vector
17438 'syntax-object
17439 x-18662
17440 w-18655
17441 mod-18656)))))
17442 l-18657)
17443 #f))
17444 (if (null? e-18654)
17445 '()
17446 (if (if (vector? e-18654)
17447 (if (= (vector-length e-18654) 4)
17448 (eq? (vector-ref e-18654 0) 'syntax-object)
17449 #f)
17450 #f)
17451 (match-each-any-17710
17452 (vector-ref e-18654 1)
17453 (let ((w2-18755 (vector-ref e-18654 2)))
17454 (let ((m1-18756 (car w-18655))
17455 (s1-18757 (cdr w-18655)))
17456 (if (null? m1-18756)
17457 (if (null? s1-18757)
17458 w2-18755
17459 (cons (car w2-18755)
17460 (let ((m2-18768 (cdr w2-18755)))
17461 (if (null? m2-18768)
17462 s1-18757
17463 (append s1-18757 m2-18768)))))
17464 (cons (let ((m2-18776 (car w2-18755)))
17465 (if (null? m2-18776)
17466 m1-18756
17467 (append m1-18756 m2-18776)))
17468 (let ((m2-18784 (cdr w2-18755)))
17469 (if (null? m2-18784)
17470 s1-18757
17471 (append s1-18757 m2-18784)))))))
17472 mod-18656)
17473 #f)))))
17474 (match-empty-17711
17475 (lambda (p-18789 r-18790)
17476 (if (null? p-18789)
17477 r-18790
17478 (if (eq? p-18789 '_)
17479 r-18790
17480 (if (eq? p-18789 'any)
17481 (cons '() r-18790)
17482 (if (pair? p-18789)
17483 (match-empty-17711
17484 (car p-18789)
17485 (match-empty-17711 (cdr p-18789) r-18790))
17486 (if (eq? p-18789 'each-any)
17487 (cons '() r-18790)
17488 (let ((atom-key-18791 (vector-ref p-18789 0)))
17489 (if (eqv? atom-key-18791 'each)
17490 (match-empty-17711
17491 (vector-ref p-18789 1)
17492 r-18790)
17493 (if (eqv? atom-key-18791 'each+)
17494 (match-empty-17711
17495 (vector-ref p-18789 1)
17496 (match-empty-17711
17497 (reverse (vector-ref p-18789 2))
17498 (match-empty-17711
17499 (vector-ref p-18789 3)
17500 r-18790)))
17501 (if (if (eqv? atom-key-18791 'free-id)
17502 #t
17503 (eqv? atom-key-18791 'atom))
17504 r-18790
17505 (if (eqv? atom-key-18791 'vector)
17506 (match-empty-17711
17507 (vector-ref p-18789 1)
17508 r-18790)))))))))))))
17509 (combine-17712
17510 (lambda (r*-18810 r-18811)
17511 (if (null? (car r*-18810))
17512 r-18811
17513 (cons (map car r*-18810)
17514 (combine-17712 (map cdr r*-18810) r-18811)))))
17515 (match*-17713
17516 (lambda (e-17743 p-17744 w-17745 r-17746 mod-17747)
17517 (if (null? p-17744)
17518 (if (null? e-17743) r-17746 #f)
17519 (if (pair? p-17744)
17520 (if (pair? e-17743)
17521 (match-17714
17522 (car e-17743)
17523 (car p-17744)
17524 w-17745
17525 (match-17714
17526 (cdr e-17743)
17527 (cdr p-17744)
17528 w-17745
17529 r-17746
17530 mod-17747)
17531 mod-17747)
17532 #f)
17533 (if (eq? p-17744 'each-any)
17534 (let ((l-17752
17535 (match-each-any-17710 e-17743 w-17745 mod-17747)))
17536 (if l-17752 (cons l-17752 r-17746) #f))
17537 (let ((atom-key-17757 (vector-ref p-17744 0)))
17538 (if (eqv? atom-key-17757 'each)
17539 (if (null? e-17743)
17540 (match-empty-17711
17541 (vector-ref p-17744 1)
17542 r-17746)
17543 (let ((l-17764
17544 (match-each-17708
17545 e-17743
17546 (vector-ref p-17744 1)
17547 w-17745
17548 mod-17747)))
17549 (if l-17764
17550 (letrec*
17551 ((collect-17767
17552 (lambda (l-17824)
17553 (if (null? (car l-17824))
17554 r-17746
17555 (cons (map car l-17824)
17556 (collect-17767
17557 (map cdr l-17824)))))))
17558 (collect-17767 l-17764))
17559 #f)))
17560 (if (eqv? atom-key-17757 'each+)
17561 (call-with-values
17562 (lambda ()
17563 (let ((x-pat-17833 (vector-ref p-17744 1))
17564 (y-pat-17834 (vector-ref p-17744 2))
17565 (z-pat-17835 (vector-ref p-17744 3)))
17566 (letrec*
17567 ((f-17839
17568 (lambda (e-17841 w-17842)
17569 (if (pair? e-17841)
17570 (call-with-values
17571 (lambda ()
17572 (f-17839 (cdr e-17841) w-17842))
17573 (lambda (xr*-17843
17574 y-pat-17844
17575 r-17845)
17576 (if r-17845
17577 (if (null? y-pat-17844)
17578 (let ((xr-17846
17579 (match-17714
17580 (car e-17841)
17581 x-pat-17833
17582 w-17842
17583 '()
17584 mod-17747)))
17585 (if xr-17846
17586 (values
17587 (cons xr-17846 xr*-17843)
17588 y-pat-17844
17589 r-17845)
17590 (values #f #f #f)))
17591 (values
17592 '()
17593 (cdr y-pat-17844)
17594 (match-17714
17595 (car e-17841)
17596 (car y-pat-17844)
17597 w-17842
17598 r-17845
17599 mod-17747)))
17600 (values #f #f #f))))
17601 (if (if (vector? e-17841)
17602 (if (= (vector-length e-17841) 4)
17603 (eq? (vector-ref e-17841 0)
17604 'syntax-object)
17605 #f)
17606 #f)
17607 (f-17839
17608 (vector-ref e-17841 1)
17609 (let ((m1-17872 (car w-17842))
17610 (s1-17873 (cdr w-17842)))
17611 (if (null? m1-17872)
17612 (if (null? s1-17873)
17613 e-17841
17614 (cons (car e-17841)
17615 (let ((m2-17885
17616 (cdr e-17841)))
17617 (if (null? m2-17885)
17618 s1-17873
17619 (append
17620 s1-17873
17621 m2-17885)))))
17622 (cons (let ((m2-17895
17623 (car e-17841)))
17624 (if (null? m2-17895)
17625 m1-17872
17626 (append
17627 m1-17872
17628 m2-17895)))
17629 (let ((m2-17905
17630 (cdr e-17841)))
17631 (if (null? m2-17905)
17632 s1-17873
17633 (append
17634 s1-17873
17635 m2-17905)))))))
17636 (values
17637 '()
17638 y-pat-17834
17639 (match-17714
17640 e-17841
17641 z-pat-17835
17642 w-17842
17643 r-17746
17644 mod-17747)))))))
17645 (f-17839 e-17743 w-17745))))
17646 (lambda (xr*-17915 y-pat-17916 r-17917)
17647 (if r-17917
17648 (if (null? y-pat-17916)
17649 (if (null? xr*-17915)
17650 (match-empty-17711
17651 (vector-ref p-17744 1)
17652 r-17917)
17653 (combine-17712 xr*-17915 r-17917))
17654 #f)
17655 #f)))
17656 (if (eqv? atom-key-17757 'free-id)
17657 (if (if (symbol? e-17743)
17658 #t
17659 (if (if (vector? e-17743)
17660 (if (= (vector-length e-17743) 4)
17661 (eq? (vector-ref e-17743 0)
17662 'syntax-object)
17663 #f)
17664 #f)
17665 (symbol? (vector-ref e-17743 1))
17666 #f))
17667 (if (free-id=?-4574
17668 (if (if (null? (car w-17745))
17669 (null? (cdr w-17745))
17670 #f)
17671 e-17743
17672 (if (if (vector? e-17743)
17673 (if (= (vector-length e-17743) 4)
17674 (eq? (vector-ref e-17743 0)
17675 'syntax-object)
17676 #f)
17677 #f)
17678 (let ((expression-18345
17679 (vector-ref e-17743 1))
17680 (wrap-18346
17681 (let ((w2-18356
17682 (vector-ref e-17743 2)))
17683 (let ((m1-18357 (car w-17745))
17684 (s1-18358
17685 (cdr w-17745)))
17686 (if (null? m1-18357)
17687 (if (null? s1-18358)
17688 w2-18356
17689 (cons (car w2-18356)
17690 (let ((m2-18375
17691 (cdr w2-18356)))
17692 (if (null? m2-18375)
17693 s1-18358
17694 (append
17695 s1-18358
17696 m2-18375)))))
17697 (cons (let ((m2-18383
17698 (car w2-18356)))
17699 (if (null? m2-18383)
17700 m1-18357
17701 (append
17702 m1-18357
17703 m2-18383)))
17704 (let ((m2-18391
17705 (cdr w2-18356)))
17706 (if (null? m2-18391)
17707 s1-18358
17708 (append
17709 s1-18358
17710 m2-18391))))))))
17711 (module-18347
17712 (vector-ref e-17743 3)))
17713 (vector
17714 'syntax-object
17715 expression-18345
17716 wrap-18346
17717 module-18347))
17718 (if (null? e-17743)
17719 e-17743
17720 (vector
17721 'syntax-object
17722 e-17743
17723 w-17745
17724 mod-17747))))
17725 (vector-ref p-17744 1))
17726 r-17746
17727 #f)
17728 #f)
17729 (if (eqv? atom-key-17757 'atom)
17730 (if (equal?
17731 (vector-ref p-17744 1)
17732 (strip-4599 e-17743 w-17745))
17733 r-17746
17734 #f)
17735 (if (eqv? atom-key-17757 'vector)
17736 (if (vector? e-17743)
17737 (match-17714
17738 (vector->list e-17743)
17739 (vector-ref p-17744 1)
17740 w-17745
17741 r-17746
17742 mod-17747)
17743 #f))))))))))))
17744 (match-17714
17745 (lambda (e-18424 p-18425 w-18426 r-18427 mod-18428)
17746 (if (not r-18427)
17747 #f
17748 (if (eq? p-18425 '_)
17749 r-18427
17750 (if (eq? p-18425 'any)
17751 (cons (if (if (null? (car w-18426))
17752 (null? (cdr w-18426))
17753 #f)
17754 e-18424
17755 (if (if (vector? e-18424)
17756 (if (= (vector-length e-18424) 4)
17757 (eq? (vector-ref e-18424 0) 'syntax-object)
17758 #f)
17759 #f)
17760 (let ((expression-18458 (vector-ref e-18424 1))
17761 (wrap-18459
17762 (let ((w2-18469 (vector-ref e-18424 2)))
17763 (let ((m1-18470 (car w-18426))
17764 (s1-18471 (cdr w-18426)))
17765 (if (null? m1-18470)
17766 (if (null? s1-18471)
17767 w2-18469
17768 (cons (car w2-18469)
17769 (let ((m2-18488
17770 (cdr w2-18469)))
17771 (if (null? m2-18488)
17772 s1-18471
17773 (append
17774 s1-18471
17775 m2-18488)))))
17776 (cons (let ((m2-18496
17777 (car w2-18469)))
17778 (if (null? m2-18496)
17779 m1-18470
17780 (append
17781 m1-18470
17782 m2-18496)))
17783 (let ((m2-18504
17784 (cdr w2-18469)))
17785 (if (null? m2-18504)
17786 s1-18471
17787 (append
17788 s1-18471
17789 m2-18504))))))))
17790 (module-18460 (vector-ref e-18424 3)))
17791 (vector
17792 'syntax-object
17793 expression-18458
17794 wrap-18459
17795 module-18460))
17796 (if (null? e-18424)
17797 e-18424
17798 (vector
17799 'syntax-object
17800 e-18424
17801 w-18426
17802 mod-18428))))
17803 r-18427)
17804 (if (if (vector? e-18424)
17805 (if (= (vector-length e-18424) 4)
17806 (eq? (vector-ref e-18424 0) 'syntax-object)
17807 #f)
17808 #f)
17809 (match*-17713
17810 (vector-ref e-18424 1)
17811 p-18425
17812 (let ((w2-18547 (vector-ref e-18424 2)))
17813 (let ((m1-18548 (car w-18426))
17814 (s1-18549 (cdr w-18426)))
17815 (if (null? m1-18548)
17816 (if (null? s1-18549)
17817 w2-18547
17818 (cons (car w2-18547)
17819 (let ((m2-18560 (cdr w2-18547)))
17820 (if (null? m2-18560)
17821 s1-18549
17822 (append s1-18549 m2-18560)))))
17823 (cons (let ((m2-18568 (car w2-18547)))
17824 (if (null? m2-18568)
17825 m1-18548
17826 (append m1-18548 m2-18568)))
17827 (let ((m2-18576 (cdr w2-18547)))
17828 (if (null? m2-18576)
17829 s1-18549
17830 (append s1-18549 m2-18576)))))))
17831 r-18427
17832 (vector-ref e-18424 3))
17833 (match*-17713
17834 e-18424
17835 p-18425
17836 w-18426
17837 r-18427
17838 mod-18428))))))))
17839 (set! $sc-dispatch
17840 (lambda (e-17715 p-17716)
17841 (if (eq? p-17716 'any)
17842 (list e-17715)
17843 (if (eq? p-17716 '_)
17844 '()
17845 (if (if (vector? e-17715)
17846 (if (= (vector-length e-17715) 4)
17847 (eq? (vector-ref e-17715 0) 'syntax-object)
17848 #f)
17849 #f)
17850 (match*-17713
17851 (vector-ref e-17715 1)
17852 p-17716
17853 (vector-ref e-17715 2)
17854 '()
17855 (vector-ref e-17715 3))
17856 (match*-17713 e-17715 p-17716 '(()) '() #f))))))))))
17857
17858 (define with-syntax
17859 (make-syntax-transformer
17860 'with-syntax
17861 'macro
17862 (lambda (x-37252)
17863 (let ((tmp-37254
17864 ($sc-dispatch x-37252 '(_ () any . each-any))))
17865 (if tmp-37254
17866 (@apply
17867 (lambda (e1-37258 e2-37259)
17868 (cons '#(syntax-object
17869 let
17870 ((top)
17871 #(ribcage
17872 #(e1 e2)
17873 #((top) (top))
17874 #("l-*-37225" "l-*-37226"))
17875 #(ribcage () () ())
17876 #(ribcage #(x) #((top)) #("l-*-37222"))
17877 #(ribcage
17878 (with-syntax)
17879 ((top))
17880 (((hygiene guile)
17881 .
17882 #(syntax-object
17883 with-syntax
17884 ((top))
17885 (hygiene guile))))))
17886 (hygiene guile))
17887 (cons '() (cons e1-37258 e2-37259))))
17888 tmp-37254)
17889 (let ((tmp-37260
17890 ($sc-dispatch
17891 x-37252
17892 '(_ ((any any)) any . each-any))))
17893 (if tmp-37260
17894 (@apply
17895 (lambda (out-37264 in-37265 e1-37266 e2-37267)
17896 (list '#(syntax-object
17897 syntax-case
17898 ((top)
17899 #(ribcage
17900 #(out in e1 e2)
17901 #((top) (top) (top) (top))
17902 #("l-*-37231"
17903 "l-*-37232"
17904 "l-*-37233"
17905 "l-*-37234"))
17906 #(ribcage () () ())
17907 #(ribcage #(x) #((top)) #("l-*-37222"))
17908 #(ribcage
17909 (with-syntax)
17910 ((top))
17911 (((hygiene guile)
17912 .
17913 #(syntax-object
17914 with-syntax
17915 ((top))
17916 (hygiene guile))))))
17917 (hygiene guile))
17918 in-37265
17919 '()
17920 (list out-37264
17921 (cons '#(syntax-object
17922 let
17923 ((top)
17924 #(ribcage
17925 #(out in e1 e2)
17926 #((top) (top) (top) (top))
17927 #("l-*-37231"
17928 "l-*-37232"
17929 "l-*-37233"
17930 "l-*-37234"))
17931 #(ribcage () () ())
17932 #(ribcage #(x) #((top)) #("l-*-37222"))
17933 #(ribcage
17934 (with-syntax)
17935 ((top))
17936 (((hygiene guile)
17937 .
17938 #(syntax-object
17939 with-syntax
17940 ((top))
17941 (hygiene guile))))))
17942 (hygiene guile))
17943 (cons '() (cons e1-37266 e2-37267))))))
17944 tmp-37260)
17945 (let ((tmp-37268
17946 ($sc-dispatch
17947 x-37252
17948 '(_ #(each (any any)) any . each-any))))
17949 (if tmp-37268
17950 (@apply
17951 (lambda (out-37272 in-37273 e1-37274 e2-37275)
17952 (list '#(syntax-object
17953 syntax-case
17954 ((top)
17955 #(ribcage
17956 #(out in e1 e2)
17957 #((top) (top) (top) (top))
17958 #("l-*-37241"
17959 "l-*-37242"
17960 "l-*-37243"
17961 "l-*-37244"))
17962 #(ribcage () () ())
17963 #(ribcage #(x) #((top)) #("l-*-37222"))
17964 #(ribcage
17965 (with-syntax)
17966 ((top))
17967 (((hygiene guile)
17968 .
17969 #(syntax-object
17970 with-syntax
17971 ((top))
17972 (hygiene guile))))))
17973 (hygiene guile))
17974 (cons '#(syntax-object
17975 list
17976 ((top)
17977 #(ribcage
17978 #(out in e1 e2)
17979 #((top) (top) (top) (top))
17980 #("l-*-37241"
17981 "l-*-37242"
17982 "l-*-37243"
17983 "l-*-37244"))
17984 #(ribcage () () ())
17985 #(ribcage #(x) #((top)) #("l-*-37222"))
17986 #(ribcage
17987 (with-syntax)
17988 ((top))
17989 (((hygiene guile)
17990 .
17991 #(syntax-object
17992 with-syntax
17993 ((top))
17994 (hygiene guile))))))
17995 (hygiene guile))
17996 in-37273)
17997 '()
17998 (list out-37272
17999 (cons '#(syntax-object
18000 let
18001 ((top)
18002 #(ribcage
18003 #(out in e1 e2)
18004 #((top) (top) (top) (top))
18005 #("l-*-37241"
18006 "l-*-37242"
18007 "l-*-37243"
18008 "l-*-37244"))
18009 #(ribcage () () ())
18010 #(ribcage
18011 #(x)
18012 #((top))
18013 #("l-*-37222"))
18014 #(ribcage
18015 (with-syntax)
18016 ((top))
18017 (((hygiene guile)
18018 .
18019 #(syntax-object
18020 with-syntax
18021 ((top))
18022 (hygiene guile))))))
18023 (hygiene guile))
18024 (cons '() (cons e1-37274 e2-37275))))))
18025 tmp-37268)
18026 (syntax-violation
18027 #f
18028 "source expression failed to match any pattern"
18029 x-37252))))))))))
18030
18031 (define syntax-rules
18032 (make-syntax-transformer
18033 'syntax-rules
18034 'macro
18035 (lambda (x-37330)
18036 (let ((tmp-37332
18037 ($sc-dispatch
18038 x-37330
18039 '(_ each-any . #(each ((any . any) any))))))
18040 (if tmp-37332
18041 (@apply
18042 (lambda (k-37336
18043 keyword-37337
18044 pattern-37338
18045 template-37339)
18046 (list '#(syntax-object
18047 lambda
18048 ((top)
18049 #(ribcage
18050 #(k keyword pattern template)
18051 #((top) (top) (top) (top))
18052 #("l-*-37293"
18053 "l-*-37294"
18054 "l-*-37295"
18055 "l-*-37296"))
18056 #(ribcage () () ())
18057 #(ribcage #(x) #((top)) #("l-*-37290"))
18058 #(ribcage
18059 (syntax-rules)
18060 ((top))
18061 (((hygiene guile)
18062 .
18063 #(syntax-object
18064 syntax-rules
18065 ((top))
18066 (hygiene guile))))))
18067 (hygiene guile))
18068 '(#(syntax-object
18069 x
18070 ((top)
18071 #(ribcage
18072 #(k keyword pattern template)
18073 #((top) (top) (top) (top))
18074 #("l-*-37293"
18075 "l-*-37294"
18076 "l-*-37295"
18077 "l-*-37296"))
18078 #(ribcage () () ())
18079 #(ribcage #(x) #((top)) #("l-*-37290"))
18080 #(ribcage
18081 (syntax-rules)
18082 ((top))
18083 (((hygiene guile)
18084 .
18085 #(syntax-object
18086 syntax-rules
18087 ((top))
18088 (hygiene guile))))))
18089 (hygiene guile)))
18090 (vector
18091 '(#(syntax-object
18092 macro-type
18093 ((top)
18094 #(ribcage
18095 #(k keyword pattern template)
18096 #((top) (top) (top) (top))
18097 #("l-*-37293"
18098 "l-*-37294"
18099 "l-*-37295"
18100 "l-*-37296"))
18101 #(ribcage () () ())
18102 #(ribcage #(x) #((top)) #("l-*-37290"))
18103 #(ribcage
18104 (syntax-rules)
18105 ((top))
18106 (((hygiene guile)
18107 .
18108 #(syntax-object
18109 syntax-rules
18110 ((top))
18111 (hygiene guile))))))
18112 (hygiene guile))
18113 .
18114 #(syntax-object
18115 syntax-rules
18116 ((top)
18117 #(ribcage
18118 #(k keyword pattern template)
18119 #((top) (top) (top) (top))
18120 #("l-*-37293"
18121 "l-*-37294"
18122 "l-*-37295"
18123 "l-*-37296"))
18124 #(ribcage () () ())
18125 #(ribcage #(x) #((top)) #("l-*-37290"))
18126 #(ribcage
18127 (syntax-rules)
18128 ((top))
18129 (((hygiene guile)
18130 .
18131 #(syntax-object
18132 syntax-rules
18133 ((top))
18134 (hygiene guile))))))
18135 (hygiene guile)))
18136 (cons '#(syntax-object
18137 patterns
18138 ((top)
18139 #(ribcage
18140 #(k keyword pattern template)
18141 #((top) (top) (top) (top))
18142 #("l-*-37293"
18143 "l-*-37294"
18144 "l-*-37295"
18145 "l-*-37296"))
18146 #(ribcage () () ())
18147 #(ribcage #(x) #((top)) #("l-*-37290"))
18148 #(ribcage
18149 (syntax-rules)
18150 ((top))
18151 (((hygiene guile)
18152 .
18153 #(syntax-object
18154 syntax-rules
18155 ((top))
18156 (hygiene guile))))))
18157 (hygiene guile))
18158 pattern-37338))
18159 (cons '#(syntax-object
18160 syntax-case
18161 ((top)
18162 #(ribcage
18163 #(k keyword pattern template)
18164 #((top) (top) (top) (top))
18165 #("l-*-37293"
18166 "l-*-37294"
18167 "l-*-37295"
18168 "l-*-37296"))
18169 #(ribcage () () ())
18170 #(ribcage #(x) #((top)) #("l-*-37290"))
18171 #(ribcage
18172 (syntax-rules)
18173 ((top))
18174 (((hygiene guile)
18175 .
18176 #(syntax-object
18177 syntax-rules
18178 ((top))
18179 (hygiene guile))))))
18180 (hygiene guile))
18181 (cons '#(syntax-object
18182 x
18183 ((top)
18184 #(ribcage
18185 #(k keyword pattern template)
18186 #((top) (top) (top) (top))
18187 #("l-*-37293"
18188 "l-*-37294"
18189 "l-*-37295"
18190 "l-*-37296"))
18191 #(ribcage () () ())
18192 #(ribcage #(x) #((top)) #("l-*-37290"))
18193 #(ribcage
18194 (syntax-rules)
18195 ((top))
18196 (((hygiene guile)
18197 .
18198 #(syntax-object
18199 syntax-rules
18200 ((top))
18201 (hygiene guile))))))
18202 (hygiene guile))
18203 (cons k-37336
18204 (map (lambda (tmp-37304-37340
18205 tmp-37303-37341)
18206 (list (cons '#(syntax-object
18207 _
18208 ((top)
18209 #(ribcage
18210 #(k
18211 keyword
18212 pattern
18213 template)
18214 #((top)
18215 (top)
18216 (top)
18217 (top))
18218 #("l-*-37293"
18219 "l-*-37294"
18220 "l-*-37295"
18221 "l-*-37296"))
18222 #(ribcage
18223 ()
18224 ()
18225 ())
18226 #(ribcage
18227 #(x)
18228 #((top))
18229 #("l-*-37290"))
18230 #(ribcage
18231 (syntax-rules)
18232 ((top))
18233 (((hygiene
18234 guile)
18235 .
18236 #(syntax-object
18237 syntax-rules
18238 ((top))
18239 (hygiene
18240 guile))))))
18241 (hygiene guile))
18242 tmp-37303-37341)
18243 (list '#(syntax-object
18244 syntax
18245 ((top)
18246 #(ribcage
18247 #(k
18248 keyword
18249 pattern
18250 template)
18251 #((top)
18252 (top)
18253 (top)
18254 (top))
18255 #("l-*-37293"
18256 "l-*-37294"
18257 "l-*-37295"
18258 "l-*-37296"))
18259 #(ribcage
18260 ()
18261 ()
18262 ())
18263 #(ribcage
18264 #(x)
18265 #((top))
18266 #("l-*-37290"))
18267 #(ribcage
18268 (syntax-rules)
18269 ((top))
18270 (((hygiene
18271 guile)
18272 .
18273 #(syntax-object
18274 syntax-rules
18275 ((top))
18276 (hygiene
18277 guile))))))
18278 (hygiene guile))
18279 tmp-37304-37340)))
18280 template-37339
18281 pattern-37338))))))
18282 tmp-37332)
18283 (let ((tmp-37342
18284 ($sc-dispatch
18285 x-37330
18286 '(_ each-any any . #(each ((any . any) any))))))
18287 (if (if tmp-37342
18288 (@apply
18289 (lambda (k-37346
18290 docstring-37347
18291 keyword-37348
18292 pattern-37349
18293 template-37350)
18294 (string? (syntax->datum docstring-37347)))
18295 tmp-37342)
18296 #f)
18297 (@apply
18298 (lambda (k-37351
18299 docstring-37352
18300 keyword-37353
18301 pattern-37354
18302 template-37355)
18303 (list '#(syntax-object
18304 lambda
18305 ((top)
18306 #(ribcage
18307 #(k docstring keyword pattern template)
18308 #((top) (top) (top) (top) (top))
18309 #("l-*-37316"
18310 "l-*-37317"
18311 "l-*-37318"
18312 "l-*-37319"
18313 "l-*-37320"))
18314 #(ribcage () () ())
18315 #(ribcage #(x) #((top)) #("l-*-37290"))
18316 #(ribcage
18317 (syntax-rules)
18318 ((top))
18319 (((hygiene guile)
18320 .
18321 #(syntax-object
18322 syntax-rules
18323 ((top))
18324 (hygiene guile))))))
18325 (hygiene guile))
18326 '(#(syntax-object
18327 x
18328 ((top)
18329 #(ribcage
18330 #(k docstring keyword pattern template)
18331 #((top) (top) (top) (top) (top))
18332 #("l-*-37316"
18333 "l-*-37317"
18334 "l-*-37318"
18335 "l-*-37319"
18336 "l-*-37320"))
18337 #(ribcage () () ())
18338 #(ribcage #(x) #((top)) #("l-*-37290"))
18339 #(ribcage
18340 (syntax-rules)
18341 ((top))
18342 (((hygiene guile)
18343 .
18344 #(syntax-object
18345 syntax-rules
18346 ((top))
18347 (hygiene guile))))))
18348 (hygiene guile)))
18349 docstring-37352
18350 (vector
18351 '(#(syntax-object
18352 macro-type
18353 ((top)
18354 #(ribcage
18355 #(k docstring keyword pattern template)
18356 #((top) (top) (top) (top) (top))
18357 #("l-*-37316"
18358 "l-*-37317"
18359 "l-*-37318"
18360 "l-*-37319"
18361 "l-*-37320"))
18362 #(ribcage () () ())
18363 #(ribcage #(x) #((top)) #("l-*-37290"))
18364 #(ribcage
18365 (syntax-rules)
18366 ((top))
18367 (((hygiene guile)
18368 .
18369 #(syntax-object
18370 syntax-rules
18371 ((top))
18372 (hygiene guile))))))
18373 (hygiene guile))
18374 .
18375 #(syntax-object
18376 syntax-rules
18377 ((top)
18378 #(ribcage
18379 #(k docstring keyword pattern template)
18380 #((top) (top) (top) (top) (top))
18381 #("l-*-37316"
18382 "l-*-37317"
18383 "l-*-37318"
18384 "l-*-37319"
18385 "l-*-37320"))
18386 #(ribcage () () ())
18387 #(ribcage #(x) #((top)) #("l-*-37290"))
18388 #(ribcage
18389 (syntax-rules)
18390 ((top))
18391 (((hygiene guile)
18392 .
18393 #(syntax-object
18394 syntax-rules
18395 ((top))
18396 (hygiene guile))))))
18397 (hygiene guile)))
18398 (cons '#(syntax-object
18399 patterns
18400 ((top)
18401 #(ribcage
18402 #(k docstring keyword pattern template)
18403 #((top) (top) (top) (top) (top))
18404 #("l-*-37316"
18405 "l-*-37317"
18406 "l-*-37318"
18407 "l-*-37319"
18408 "l-*-37320"))
18409 #(ribcage () () ())
18410 #(ribcage #(x) #((top)) #("l-*-37290"))
18411 #(ribcage
18412 (syntax-rules)
18413 ((top))
18414 (((hygiene guile)
18415 .
18416 #(syntax-object
18417 syntax-rules
18418 ((top))
18419 (hygiene guile))))))
18420 (hygiene guile))
18421 pattern-37354))
18422 (cons '#(syntax-object
18423 syntax-case
18424 ((top)
18425 #(ribcage
18426 #(k docstring keyword pattern template)
18427 #((top) (top) (top) (top) (top))
18428 #("l-*-37316"
18429 "l-*-37317"
18430 "l-*-37318"
18431 "l-*-37319"
18432 "l-*-37320"))
18433 #(ribcage () () ())
18434 #(ribcage #(x) #((top)) #("l-*-37290"))
18435 #(ribcage
18436 (syntax-rules)
18437 ((top))
18438 (((hygiene guile)
18439 .
18440 #(syntax-object
18441 syntax-rules
18442 ((top))
18443 (hygiene guile))))))
18444 (hygiene guile))
18445 (cons '#(syntax-object
18446 x
18447 ((top)
18448 #(ribcage
18449 #(k
18450 docstring
18451 keyword
18452 pattern
18453 template)
18454 #((top) (top) (top) (top) (top))
18455 #("l-*-37316"
18456 "l-*-37317"
18457 "l-*-37318"
18458 "l-*-37319"
18459 "l-*-37320"))
18460 #(ribcage () () ())
18461 #(ribcage #(x) #((top)) #("l-*-37290"))
18462 #(ribcage
18463 (syntax-rules)
18464 ((top))
18465 (((hygiene guile)
18466 .
18467 #(syntax-object
18468 syntax-rules
18469 ((top))
18470 (hygiene guile))))))
18471 (hygiene guile))
18472 (cons k-37351
18473 (map (lambda (tmp-37329-37356
18474 tmp-37328-37357)
18475 (list (cons '#(syntax-object
18476 _
18477 ((top)
18478 #(ribcage
18479 #(k
18480 docstring
18481 keyword
18482 pattern
18483 template)
18484 #((top)
18485 (top)
18486 (top)
18487 (top)
18488 (top))
18489 #("l-*-37316"
18490 "l-*-37317"
18491 "l-*-37318"
18492 "l-*-37319"
18493 "l-*-37320"))
18494 #(ribcage
18495 ()
18496 ()
18497 ())
18498 #(ribcage
18499 #(x)
18500 #((top))
18501 #("l-*-37290"))
18502 #(ribcage
18503 (syntax-rules)
18504 ((top))
18505 (((hygiene
18506 guile)
18507 .
18508 #(syntax-object
18509 syntax-rules
18510 ((top))
18511 (hygiene
18512 guile))))))
18513 (hygiene
18514 guile))
18515 tmp-37328-37357)
18516 (list '#(syntax-object
18517 syntax
18518 ((top)
18519 #(ribcage
18520 #(k
18521 docstring
18522 keyword
18523 pattern
18524 template)
18525 #((top)
18526 (top)
18527 (top)
18528 (top)
18529 (top))
18530 #("l-*-37316"
18531 "l-*-37317"
18532 "l-*-37318"
18533 "l-*-37319"
18534 "l-*-37320"))
18535 #(ribcage
18536 ()
18537 ()
18538 ())
18539 #(ribcage
18540 #(x)
18541 #((top))
18542 #("l-*-37290"))
18543 #(ribcage
18544 (syntax-rules)
18545 ((top))
18546 (((hygiene
18547 guile)
18548 .
18549 #(syntax-object
18550 syntax-rules
18551 ((top))
18552 (hygiene
18553 guile))))))
18554 (hygiene
18555 guile))
18556 tmp-37329-37356)))
18557 template-37355
18558 pattern-37354))))))
18559 tmp-37342)
18560 (syntax-violation
18561 #f
18562 "source expression failed to match any pattern"
18563 x-37330))))))))
18564
18565 (define define-syntax-rule
18566 (make-syntax-transformer
18567 'define-syntax-rule
18568 'macro
18569 (lambda (x-37395)
18570 (let ((tmp-37397
18571 ($sc-dispatch x-37395 '(_ (any . any) any))))
18572 (if tmp-37397
18573 (@apply
18574 (lambda (name-37401 pattern-37402 template-37403)
18575 (list '#(syntax-object
18576 define-syntax
18577 ((top)
18578 #(ribcage
18579 #(name pattern template)
18580 #((top) (top) (top))
18581 #("l-*-37372" "l-*-37373" "l-*-37374"))
18582 #(ribcage () () ())
18583 #(ribcage #(x) #((top)) #("l-*-37369"))
18584 #(ribcage
18585 (define-syntax-rule)
18586 ((top))
18587 (((hygiene guile)
18588 .
18589 #(syntax-object
18590 define-syntax-rule
18591 ((top))
18592 (hygiene guile))))))
18593 (hygiene guile))
18594 name-37401
18595 (list '#(syntax-object
18596 syntax-rules
18597 ((top)
18598 #(ribcage
18599 #(name pattern template)
18600 #((top) (top) (top))
18601 #("l-*-37372" "l-*-37373" "l-*-37374"))
18602 #(ribcage () () ())
18603 #(ribcage #(x) #((top)) #("l-*-37369"))
18604 #(ribcage
18605 (define-syntax-rule)
18606 ((top))
18607 (((hygiene guile)
18608 .
18609 #(syntax-object
18610 define-syntax-rule
18611 ((top))
18612 (hygiene guile))))))
18613 (hygiene guile))
18614 '()
18615 (list (cons '#(syntax-object
18616 _
18617 ((top)
18618 #(ribcage
18619 #(name pattern template)
18620 #((top) (top) (top))
18621 #("l-*-37372"
18622 "l-*-37373"
18623 "l-*-37374"))
18624 #(ribcage () () ())
18625 #(ribcage
18626 #(x)
18627 #((top))
18628 #("l-*-37369"))
18629 #(ribcage
18630 (define-syntax-rule)
18631 ((top))
18632 (((hygiene guile)
18633 .
18634 #(syntax-object
18635 define-syntax-rule
18636 ((top))
18637 (hygiene guile))))))
18638 (hygiene guile))
18639 pattern-37402)
18640 template-37403))))
18641 tmp-37397)
18642 (let ((tmp-37404
18643 ($sc-dispatch x-37395 '(_ (any . any) any any))))
18644 (if (if tmp-37404
18645 (@apply
18646 (lambda (name-37408
18647 pattern-37409
18648 docstring-37410
18649 template-37411)
18650 (string? (syntax->datum docstring-37410)))
18651 tmp-37404)
18652 #f)
18653 (@apply
18654 (lambda (name-37412
18655 pattern-37413
18656 docstring-37414
18657 template-37415)
18658 (list '#(syntax-object
18659 define-syntax
18660 ((top)
18661 #(ribcage
18662 #(name pattern docstring template)
18663 #((top) (top) (top) (top))
18664 #("l-*-37387"
18665 "l-*-37388"
18666 "l-*-37389"
18667 "l-*-37390"))
18668 #(ribcage () () ())
18669 #(ribcage #(x) #((top)) #("l-*-37369"))
18670 #(ribcage
18671 (define-syntax-rule)
18672 ((top))
18673 (((hygiene guile)
18674 .
18675 #(syntax-object
18676 define-syntax-rule
18677 ((top))
18678 (hygiene guile))))))
18679 (hygiene guile))
18680 name-37412
18681 (list '#(syntax-object
18682 syntax-rules
18683 ((top)
18684 #(ribcage
18685 #(name pattern docstring template)
18686 #((top) (top) (top) (top))
18687 #("l-*-37387"
18688 "l-*-37388"
18689 "l-*-37389"
18690 "l-*-37390"))
18691 #(ribcage () () ())
18692 #(ribcage #(x) #((top)) #("l-*-37369"))
18693 #(ribcage
18694 (define-syntax-rule)
18695 ((top))
18696 (((hygiene guile)
18697 .
18698 #(syntax-object
18699 define-syntax-rule
18700 ((top))
18701 (hygiene guile))))))
18702 (hygiene guile))
18703 '()
18704 docstring-37414
18705 (list (cons '#(syntax-object
18706 _
18707 ((top)
18708 #(ribcage
18709 #(name
18710 pattern
18711 docstring
18712 template)
18713 #((top) (top) (top) (top))
18714 #("l-*-37387"
18715 "l-*-37388"
18716 "l-*-37389"
18717 "l-*-37390"))
18718 #(ribcage () () ())
18719 #(ribcage
18720 #(x)
18721 #((top))
18722 #("l-*-37369"))
18723 #(ribcage
18724 (define-syntax-rule)
18725 ((top))
18726 (((hygiene guile)
18727 .
18728 #(syntax-object
18729 define-syntax-rule
18730 ((top))
18731 (hygiene guile))))))
18732 (hygiene guile))
18733 pattern-37413)
18734 template-37415))))
18735 tmp-37404)
18736 (syntax-violation
18737 #f
18738 "source expression failed to match any pattern"
18739 x-37395))))))))
18740
18741 (define let*
18742 (make-syntax-transformer
18743 'let*
18744 'macro
18745 (lambda (x-37465)
18746 (let ((tmp-37467
18747 ($sc-dispatch
18748 x-37465
18749 '(any #(each (any any)) any . each-any))))
18750 (if (if tmp-37467
18751 (@apply
18752 (lambda (let*-37471 x-37472 v-37473 e1-37474 e2-37475)
18753 (and-map identifier? x-37472))
18754 tmp-37467)
18755 #f)
18756 (@apply
18757 (lambda (let*-37476 x-37477 v-37478 e1-37479 e2-37480)
18758 (letrec*
18759 ((f-37481
18760 (lambda (bindings-37484)
18761 (if (null? bindings-37484)
18762 (cons '#(syntax-object
18763 let
18764 ((top)
18765 #(ribcage () () ())
18766 #(ribcage
18767 #(f bindings)
18768 #((top) (top))
18769 #("l-*-37451" "l-*-37452"))
18770 #(ribcage
18771 #(let* x v e1 e2)
18772 #((top) (top) (top) (top) (top))
18773 #("l-*-37441"
18774 "l-*-37442"
18775 "l-*-37443"
18776 "l-*-37444"
18777 "l-*-37445"))
18778 #(ribcage () () ())
18779 #(ribcage #(x) #((top)) #("l-*-37427"))
18780 #(ribcage
18781 (let*)
18782 ((top))
18783 (((hygiene guile)
18784 .
18785 #(syntax-object
18786 let*
18787 ((top))
18788 (hygiene guile))))))
18789 (hygiene guile))
18790 (cons '() (cons e1-37479 e2-37480)))
18791 (let ((tmp-37485
18792 (list (f-37481 (cdr bindings-37484))
18793 (car bindings-37484))))
18794 (let ((tmp-37486 ($sc-dispatch tmp-37485 '(any any))))
18795 (if tmp-37486
18796 (@apply
18797 (lambda (body-37488 binding-37489)
18798 (list '#(syntax-object
18799 let
18800 ((top)
18801 #(ribcage () () ())
18802 #(ribcage
18803 #(body binding)
18804 #((top) (top))
18805 #("l-*-37461" "l-*-37462"))
18806 #(ribcage () () ())
18807 #(ribcage
18808 #(f bindings)
18809 #((top) (top))
18810 #("l-*-37451" "l-*-37452"))
18811 #(ribcage
18812 #(let* x v e1 e2)
18813 #((top) (top) (top) (top) (top))
18814 #("l-*-37441"
18815 "l-*-37442"
18816 "l-*-37443"
18817 "l-*-37444"
18818 "l-*-37445"))
18819 #(ribcage () () ())
18820 #(ribcage
18821 #(x)
18822 #((top))
18823 #("l-*-37427"))
18824 #(ribcage
18825 (let*)
18826 ((top))
18827 (((hygiene guile)
18828 .
18829 #(syntax-object
18830 let*
18831 ((top))
18832 (hygiene guile))))))
18833 (hygiene guile))
18834 (list binding-37489)
18835 body-37488))
18836 tmp-37486)
18837 (syntax-violation
18838 #f
18839 "source expression failed to match any pattern"
18840 tmp-37485))))))))
18841 (f-37481 (map list x-37477 v-37478))))
18842 tmp-37467)
18843 (syntax-violation
18844 #f
18845 "source expression failed to match any pattern"
18846 x-37465))))))
18847
18848 (define do
18849 (make-syntax-transformer
18850 'do
18851 'macro
18852 (lambda (orig-x-37548)
18853 (let ((tmp-37550
18854 ($sc-dispatch
18855 orig-x-37548
18856 '(_ #(each (any any . any))
18857 (any . each-any)
18858 .
18859 each-any))))
18860 (if tmp-37550
18861 (@apply
18862 (lambda (var-37554
18863 init-37555
18864 step-37556
18865 e0-37557
18866 e1-37558
18867 c-37559)
18868 (let ((tmp-37560
18869 (map (lambda (v-37563 s-37564)
18870 (let ((tmp-37566 ($sc-dispatch s-37564 '())))
18871 (if tmp-37566
18872 (@apply (lambda () v-37563) tmp-37566)
18873 (let ((tmp-37569
18874 ($sc-dispatch s-37564 '(any))))
18875 (if tmp-37569
18876 (@apply
18877 (lambda (e-37572) e-37572)
18878 tmp-37569)
18879 (syntax-violation
18880 'do
18881 "bad step expression"
18882 orig-x-37548
18883 s-37564))))))
18884 var-37554
18885 step-37556)))
18886 (let ((tmp-37561 ($sc-dispatch tmp-37560 'each-any)))
18887 (if tmp-37561
18888 (@apply
18889 (lambda (step-37578)
18890 (let ((tmp-37580 ($sc-dispatch e1-37558 '())))
18891 (if tmp-37580
18892 (@apply
18893 (lambda ()
18894 (list '#(syntax-object
18895 let
18896 ((top)
18897 #(ribcage () () ())
18898 #(ribcage
18899 #(step)
18900 #((top))
18901 #("l-*-37516"))
18902 #(ribcage
18903 #(var init step e0 e1 c)
18904 #((top)
18905 (top)
18906 (top)
18907 (top)
18908 (top)
18909 (top))
18910 #("l-*-37501"
18911 "l-*-37502"
18912 "l-*-37503"
18913 "l-*-37504"
18914 "l-*-37505"
18915 "l-*-37506"))
18916 #(ribcage () () ())
18917 #(ribcage
18918 #(orig-x)
18919 #((top))
18920 #("l-*-37498"))
18921 #(ribcage
18922 (do)
18923 ((top))
18924 (((hygiene guile)
18925 .
18926 #(syntax-object
18927 do
18928 ((top))
18929 (hygiene guile))))))
18930 (hygiene guile))
18931 '#(syntax-object
18932 doloop
18933 ((top)
18934 #(ribcage () () ())
18935 #(ribcage
18936 #(step)
18937 #((top))
18938 #("l-*-37516"))
18939 #(ribcage
18940 #(var init step e0 e1 c)
18941 #((top)
18942 (top)
18943 (top)
18944 (top)
18945 (top)
18946 (top))
18947 #("l-*-37501"
18948 "l-*-37502"
18949 "l-*-37503"
18950 "l-*-37504"
18951 "l-*-37505"
18952 "l-*-37506"))
18953 #(ribcage () () ())
18954 #(ribcage
18955 #(orig-x)
18956 #((top))
18957 #("l-*-37498"))
18958 #(ribcage
18959 (do)
18960 ((top))
18961 (((hygiene guile)
18962 .
18963 #(syntax-object
18964 do
18965 ((top))
18966 (hygiene guile))))))
18967 (hygiene guile))
18968 (map list var-37554 init-37555)
18969 (list '#(syntax-object
18970 if
18971 ((top)
18972 #(ribcage () () ())
18973 #(ribcage
18974 #(step)
18975 #((top))
18976 #("l-*-37516"))
18977 #(ribcage
18978 #(var init step e0 e1 c)
18979 #((top)
18980 (top)
18981 (top)
18982 (top)
18983 (top)
18984 (top))
18985 #("l-*-37501"
18986 "l-*-37502"
18987 "l-*-37503"
18988 "l-*-37504"
18989 "l-*-37505"
18990 "l-*-37506"))
18991 #(ribcage () () ())
18992 #(ribcage
18993 #(orig-x)
18994 #((top))
18995 #("l-*-37498"))
18996 #(ribcage
18997 (do)
18998 ((top))
18999 (((hygiene guile)
19000 .
19001 #(syntax-object
19002 do
19003 ((top))
19004 (hygiene guile))))))
19005 (hygiene guile))
19006 (list '#(syntax-object
19007 not
19008 ((top)
19009 #(ribcage () () ())
19010 #(ribcage
19011 #(step)
19012 #((top))
19013 #("l-*-37516"))
19014 #(ribcage
19015 #(var
19016 init
19017 step
19018 e0
19019 e1
19020 c)
19021 #((top)
19022 (top)
19023 (top)
19024 (top)
19025 (top)
19026 (top))
19027 #("l-*-37501"
19028 "l-*-37502"
19029 "l-*-37503"
19030 "l-*-37504"
19031 "l-*-37505"
19032 "l-*-37506"))
19033 #(ribcage () () ())
19034 #(ribcage
19035 #(orig-x)
19036 #((top))
19037 #("l-*-37498"))
19038 #(ribcage
19039 (do)
19040 ((top))
19041 (((hygiene guile)
19042 .
19043 #(syntax-object
19044 do
19045 ((top))
19046 (hygiene
19047 guile))))))
19048 (hygiene guile))
19049 e0-37557)
19050 (cons '#(syntax-object
19051 begin
19052 ((top)
19053 #(ribcage () () ())
19054 #(ribcage
19055 #(step)
19056 #((top))
19057 #("l-*-37516"))
19058 #(ribcage
19059 #(var
19060 init
19061 step
19062 e0
19063 e1
19064 c)
19065 #((top)
19066 (top)
19067 (top)
19068 (top)
19069 (top)
19070 (top))
19071 #("l-*-37501"
19072 "l-*-37502"
19073 "l-*-37503"
19074 "l-*-37504"
19075 "l-*-37505"
19076 "l-*-37506"))
19077 #(ribcage () () ())
19078 #(ribcage
19079 #(orig-x)
19080 #((top))
19081 #("l-*-37498"))
19082 #(ribcage
19083 (do)
19084 ((top))
19085 (((hygiene guile)
19086 .
19087 #(syntax-object
19088 do
19089 ((top))
19090 (hygiene
19091 guile))))))
19092 (hygiene guile))
19093 (append
19094 c-37559
19095 (list (cons '#(syntax-object
19096 doloop
19097 ((top)
19098 #(ribcage
19099 ()
19100 ()
19101 ())
19102 #(ribcage
19103 #(step)
19104 #((top))
19105 #("l-*-37516"))
19106 #(ribcage
19107 #(var
19108 init
19109 step
19110 e0
19111 e1
19112 c)
19113 #((top)
19114 (top)
19115 (top)
19116 (top)
19117 (top)
19118 (top))
19119 #("l-*-37501"
19120 "l-*-37502"
19121 "l-*-37503"
19122 "l-*-37504"
19123 "l-*-37505"
19124 "l-*-37506"))
19125 #(ribcage
19126 ()
19127 ()
19128 ())
19129 #(ribcage
19130 #(orig-x)
19131 #((top))
19132 #("l-*-37498"))
19133 #(ribcage
19134 (do)
19135 ((top))
19136 (((hygiene
19137 guile)
19138 .
19139 #(syntax-object
19140 do
19141 ((top))
19142 (hygiene
19143 guile))))))
19144 (hygiene
19145 guile))
19146 step-37578)))))))
19147 tmp-37580)
19148 (let ((tmp-37584
19149 ($sc-dispatch e1-37558 '(any . each-any))))
19150 (if tmp-37584
19151 (@apply
19152 (lambda (e1-37588 e2-37589)
19153 (list '#(syntax-object
19154 let
19155 ((top)
19156 #(ribcage
19157 #(e1 e2)
19158 #((top) (top))
19159 #("l-*-37525" "l-*-37526"))
19160 #(ribcage () () ())
19161 #(ribcage
19162 #(step)
19163 #((top))
19164 #("l-*-37516"))
19165 #(ribcage
19166 #(var init step e0 e1 c)
19167 #((top)
19168 (top)
19169 (top)
19170 (top)
19171 (top)
19172 (top))
19173 #("l-*-37501"
19174 "l-*-37502"
19175 "l-*-37503"
19176 "l-*-37504"
19177 "l-*-37505"
19178 "l-*-37506"))
19179 #(ribcage () () ())
19180 #(ribcage
19181 #(orig-x)
19182 #((top))
19183 #("l-*-37498"))
19184 #(ribcage
19185 (do)
19186 ((top))
19187 (((hygiene guile)
19188 .
19189 #(syntax-object
19190 do
19191 ((top))
19192 (hygiene guile))))))
19193 (hygiene guile))
19194 '#(syntax-object
19195 doloop
19196 ((top)
19197 #(ribcage
19198 #(e1 e2)
19199 #((top) (top))
19200 #("l-*-37525" "l-*-37526"))
19201 #(ribcage () () ())
19202 #(ribcage
19203 #(step)
19204 #((top))
19205 #("l-*-37516"))
19206 #(ribcage
19207 #(var init step e0 e1 c)
19208 #((top)
19209 (top)
19210 (top)
19211 (top)
19212 (top)
19213 (top))
19214 #("l-*-37501"
19215 "l-*-37502"
19216 "l-*-37503"
19217 "l-*-37504"
19218 "l-*-37505"
19219 "l-*-37506"))
19220 #(ribcage () () ())
19221 #(ribcage
19222 #(orig-x)
19223 #((top))
19224 #("l-*-37498"))
19225 #(ribcage
19226 (do)
19227 ((top))
19228 (((hygiene guile)
19229 .
19230 #(syntax-object
19231 do
19232 ((top))
19233 (hygiene guile))))))
19234 (hygiene guile))
19235 (map list var-37554 init-37555)
19236 (list '#(syntax-object
19237 if
19238 ((top)
19239 #(ribcage
19240 #(e1 e2)
19241 #((top) (top))
19242 #("l-*-37525"
19243 "l-*-37526"))
19244 #(ribcage () () ())
19245 #(ribcage
19246 #(step)
19247 #((top))
19248 #("l-*-37516"))
19249 #(ribcage
19250 #(var init step e0 e1 c)
19251 #((top)
19252 (top)
19253 (top)
19254 (top)
19255 (top)
19256 (top))
19257 #("l-*-37501"
19258 "l-*-37502"
19259 "l-*-37503"
19260 "l-*-37504"
19261 "l-*-37505"
19262 "l-*-37506"))
19263 #(ribcage () () ())
19264 #(ribcage
19265 #(orig-x)
19266 #((top))
19267 #("l-*-37498"))
19268 #(ribcage
19269 (do)
19270 ((top))
19271 (((hygiene guile)
19272 .
19273 #(syntax-object
19274 do
19275 ((top))
19276 (hygiene guile))))))
19277 (hygiene guile))
19278 e0-37557
19279 (cons '#(syntax-object
19280 begin
19281 ((top)
19282 #(ribcage
19283 #(e1 e2)
19284 #((top) (top))
19285 #("l-*-37525"
19286 "l-*-37526"))
19287 #(ribcage () () ())
19288 #(ribcage
19289 #(step)
19290 #((top))
19291 #("l-*-37516"))
19292 #(ribcage
19293 #(var
19294 init
19295 step
19296 e0
19297 e1
19298 c)
19299 #((top)
19300 (top)
19301 (top)
19302 (top)
19303 (top)
19304 (top))
19305 #("l-*-37501"
19306 "l-*-37502"
19307 "l-*-37503"
19308 "l-*-37504"
19309 "l-*-37505"
19310 "l-*-37506"))
19311 #(ribcage () () ())
19312 #(ribcage
19313 #(orig-x)
19314 #((top))
19315 #("l-*-37498"))
19316 #(ribcage
19317 (do)
19318 ((top))
19319 (((hygiene guile)
19320 .
19321 #(syntax-object
19322 do
19323 ((top))
19324 (hygiene
19325 guile))))))
19326 (hygiene guile))
19327 (cons e1-37588 e2-37589))
19328 (cons '#(syntax-object
19329 begin
19330 ((top)
19331 #(ribcage
19332 #(e1 e2)
19333 #((top) (top))
19334 #("l-*-37525"
19335 "l-*-37526"))
19336 #(ribcage () () ())
19337 #(ribcage
19338 #(step)
19339 #((top))
19340 #("l-*-37516"))
19341 #(ribcage
19342 #(var
19343 init
19344 step
19345 e0
19346 e1
19347 c)
19348 #((top)
19349 (top)
19350 (top)
19351 (top)
19352 (top)
19353 (top))
19354 #("l-*-37501"
19355 "l-*-37502"
19356 "l-*-37503"
19357 "l-*-37504"
19358 "l-*-37505"
19359 "l-*-37506"))
19360 #(ribcage () () ())
19361 #(ribcage
19362 #(orig-x)
19363 #((top))
19364 #("l-*-37498"))
19365 #(ribcage
19366 (do)
19367 ((top))
19368 (((hygiene guile)
19369 .
19370 #(syntax-object
19371 do
19372 ((top))
19373 (hygiene
19374 guile))))))
19375 (hygiene guile))
19376 (append
19377 c-37559
19378 (list (cons '#(syntax-object
19379 doloop
19380 ((top)
19381 #(ribcage
19382 #(e1
19383 e2)
19384 #((top)
19385 (top))
19386 #("l-*-37525"
19387 "l-*-37526"))
19388 #(ribcage
19389 ()
19390 ()
19391 ())
19392 #(ribcage
19393 #(step)
19394 #((top))
19395 #("l-*-37516"))
19396 #(ribcage
19397 #(var
19398 init
19399 step
19400 e0
19401 e1
19402 c)
19403 #((top)
19404 (top)
19405 (top)
19406 (top)
19407 (top)
19408 (top))
19409 #("l-*-37501"
19410 "l-*-37502"
19411 "l-*-37503"
19412 "l-*-37504"
19413 "l-*-37505"
19414 "l-*-37506"))
19415 #(ribcage
19416 ()
19417 ()
19418 ())
19419 #(ribcage
19420 #(orig-x)
19421 #((top))
19422 #("l-*-37498"))
19423 #(ribcage
19424 (do)
19425 ((top))
19426 (((hygiene
19427 guile)
19428 .
19429 #(syntax-object
19430 do
19431 ((top))
19432 (hygiene
19433 guile))))))
19434 (hygiene
19435 guile))
19436 step-37578)))))))
19437 tmp-37584)
19438 (syntax-violation
19439 #f
19440 "source expression failed to match any pattern"
19441 e1-37558))))))
19442 tmp-37561)
19443 (syntax-violation
19444 #f
19445 "source expression failed to match any pattern"
19446 tmp-37560)))))
19447 tmp-37550)
19448 (syntax-violation
19449 #f
19450 "source expression failed to match any pattern"
19451 orig-x-37548))))))
19452
19453 (define quasiquote
19454 (make-syntax-transformer
19455 'quasiquote
19456 'macro
19457 (letrec*
19458 ((quasi-37876
19459 (lambda (p-37900 lev-37901)
19460 (let ((tmp-37903
19461 ($sc-dispatch
19462 p-37900
19463 '(#(free-id
19464 #(syntax-object
19465 unquote
19466 ((top)
19467 #(ribcage () () ())
19468 #(ribcage
19469 #(p lev)
19470 #((top) (top))
19471 #("l-*-37622" "l-*-37623"))
19472 #(ribcage
19473 (emit quasivector
19474 quasilist*
19475 quasiappend
19476 quasicons
19477 vquasi
19478 quasi)
19479 ((top) (top) (top) (top) (top) (top) (top))
19480 ("l-*-37618"
19481 "l-*-37616"
19482 "l-*-37614"
19483 "l-*-37612"
19484 "l-*-37610"
19485 "l-*-37608"
19486 "l-*-37606"))
19487 #(ribcage
19488 (quasiquote)
19489 ((top))
19490 (((hygiene guile)
19491 .
19492 #(syntax-object
19493 quasiquote
19494 ((top))
19495 (hygiene guile))))))
19496 (hygiene guile)))
19497 any))))
19498 (if tmp-37903
19499 (@apply
19500 (lambda (p-37907)
19501 (if (= lev-37901 0)
19502 (list '#(syntax-object
19503 "value"
19504 ((top)
19505 #(ribcage #(p) #((top)) #("l-*-37626"))
19506 #(ribcage () () ())
19507 #(ribcage
19508 #(p lev)
19509 #((top) (top))
19510 #("l-*-37622" "l-*-37623"))
19511 #(ribcage
19512 (emit quasivector
19513 quasilist*
19514 quasiappend
19515 quasicons
19516 vquasi
19517 quasi)
19518 ((top) (top) (top) (top) (top) (top) (top))
19519 ("l-*-37618"
19520 "l-*-37616"
19521 "l-*-37614"
19522 "l-*-37612"
19523 "l-*-37610"
19524 "l-*-37608"
19525 "l-*-37606"))
19526 #(ribcage
19527 (quasiquote)
19528 ((top))
19529 (((hygiene guile)
19530 .
19531 #(syntax-object
19532 quasiquote
19533 ((top))
19534 (hygiene guile))))))
19535 (hygiene guile))
19536 p-37907)
19537 (quasicons-37878
19538 '(#(syntax-object
19539 "quote"
19540 ((top)
19541 #(ribcage #(p) #((top)) #("l-*-37626"))
19542 #(ribcage () () ())
19543 #(ribcage
19544 #(p lev)
19545 #((top) (top))
19546 #("l-*-37622" "l-*-37623"))
19547 #(ribcage
19548 (emit quasivector
19549 quasilist*
19550 quasiappend
19551 quasicons
19552 vquasi
19553 quasi)
19554 ((top) (top) (top) (top) (top) (top) (top))
19555 ("l-*-37618"
19556 "l-*-37616"
19557 "l-*-37614"
19558 "l-*-37612"
19559 "l-*-37610"
19560 "l-*-37608"
19561 "l-*-37606"))
19562 #(ribcage
19563 (quasiquote)
19564 ((top))
19565 (((hygiene guile)
19566 .
19567 #(syntax-object
19568 quasiquote
19569 ((top))
19570 (hygiene guile))))))
19571 (hygiene guile))
19572 #(syntax-object
19573 unquote
19574 ((top)
19575 #(ribcage #(p) #((top)) #("l-*-37626"))
19576 #(ribcage () () ())
19577 #(ribcage
19578 #(p lev)
19579 #((top) (top))
19580 #("l-*-37622" "l-*-37623"))
19581 #(ribcage
19582 (emit quasivector
19583 quasilist*
19584 quasiappend
19585 quasicons
19586 vquasi
19587 quasi)
19588 ((top) (top) (top) (top) (top) (top) (top))
19589 ("l-*-37618"
19590 "l-*-37616"
19591 "l-*-37614"
19592 "l-*-37612"
19593 "l-*-37610"
19594 "l-*-37608"
19595 "l-*-37606"))
19596 #(ribcage
19597 (quasiquote)
19598 ((top))
19599 (((hygiene guile)
19600 .
19601 #(syntax-object
19602 quasiquote
19603 ((top))
19604 (hygiene guile))))))
19605 (hygiene guile)))
19606 (quasi-37876 (list p-37907) (#{1-}# lev-37901)))))
19607 tmp-37903)
19608 (let ((tmp-37910
19609 ($sc-dispatch
19610 p-37900
19611 '(#(free-id
19612 #(syntax-object
19613 quasiquote
19614 ((top)
19615 #(ribcage () () ())
19616 #(ribcage
19617 #(p lev)
19618 #((top) (top))
19619 #("l-*-37622" "l-*-37623"))
19620 #(ribcage
19621 (emit quasivector
19622 quasilist*
19623 quasiappend
19624 quasicons
19625 vquasi
19626 quasi)
19627 ((top) (top) (top) (top) (top) (top) (top))
19628 ("l-*-37618"
19629 "l-*-37616"
19630 "l-*-37614"
19631 "l-*-37612"
19632 "l-*-37610"
19633 "l-*-37608"
19634 "l-*-37606"))
19635 #(ribcage
19636 (quasiquote)
19637 ((top))
19638 (((hygiene guile)
19639 .
19640 #(syntax-object
19641 quasiquote
19642 ((top))
19643 (hygiene guile))))))
19644 (hygiene guile)))
19645 any))))
19646 (if tmp-37910
19647 (@apply
19648 (lambda (p-37914)
19649 (quasicons-37878
19650 '(#(syntax-object
19651 "quote"
19652 ((top)
19653 #(ribcage #(p) #((top)) #("l-*-37629"))
19654 #(ribcage () () ())
19655 #(ribcage
19656 #(p lev)
19657 #((top) (top))
19658 #("l-*-37622" "l-*-37623"))
19659 #(ribcage
19660 (emit quasivector
19661 quasilist*
19662 quasiappend
19663 quasicons
19664 vquasi
19665 quasi)
19666 ((top) (top) (top) (top) (top) (top) (top))
19667 ("l-*-37618"
19668 "l-*-37616"
19669 "l-*-37614"
19670 "l-*-37612"
19671 "l-*-37610"
19672 "l-*-37608"
19673 "l-*-37606"))
19674 #(ribcage
19675 (quasiquote)
19676 ((top))
19677 (((hygiene guile)
19678 .
19679 #(syntax-object
19680 quasiquote
19681 ((top))
19682 (hygiene guile))))))
19683 (hygiene guile))
19684 #(syntax-object
19685 quasiquote
19686 ((top)
19687 #(ribcage #(p) #((top)) #("l-*-37629"))
19688 #(ribcage () () ())
19689 #(ribcage
19690 #(p lev)
19691 #((top) (top))
19692 #("l-*-37622" "l-*-37623"))
19693 #(ribcage
19694 (emit quasivector
19695 quasilist*
19696 quasiappend
19697 quasicons
19698 vquasi
19699 quasi)
19700 ((top) (top) (top) (top) (top) (top) (top))
19701 ("l-*-37618"
19702 "l-*-37616"
19703 "l-*-37614"
19704 "l-*-37612"
19705 "l-*-37610"
19706 "l-*-37608"
19707 "l-*-37606"))
19708 #(ribcage
19709 (quasiquote)
19710 ((top))
19711 (((hygiene guile)
19712 .
19713 #(syntax-object
19714 quasiquote
19715 ((top))
19716 (hygiene guile))))))
19717 (hygiene guile)))
19718 (quasi-37876 (list p-37914) (#{1+}# lev-37901))))
19719 tmp-37910)
19720 (let ((tmp-37917 ($sc-dispatch p-37900 '(any . any))))
19721 (if tmp-37917
19722 (@apply
19723 (lambda (p-37921 q-37922)
19724 (let ((tmp-37924
19725 ($sc-dispatch
19726 p-37921
19727 '(#(free-id
19728 #(syntax-object
19729 unquote
19730 ((top)
19731 #(ribcage
19732 #(p q)
19733 #((top) (top))
19734 #("l-*-37632" "l-*-37633"))
19735 #(ribcage () () ())
19736 #(ribcage
19737 #(p lev)
19738 #((top) (top))
19739 #("l-*-37622" "l-*-37623"))
19740 #(ribcage
19741 (emit quasivector
19742 quasilist*
19743 quasiappend
19744 quasicons
19745 vquasi
19746 quasi)
19747 ((top)
19748 (top)
19749 (top)
19750 (top)
19751 (top)
19752 (top)
19753 (top))
19754 ("l-*-37618"
19755 "l-*-37616"
19756 "l-*-37614"
19757 "l-*-37612"
19758 "l-*-37610"
19759 "l-*-37608"
19760 "l-*-37606"))
19761 #(ribcage
19762 (quasiquote)
19763 ((top))
19764 (((hygiene guile)
19765 .
19766 #(syntax-object
19767 quasiquote
19768 ((top))
19769 (hygiene guile))))))
19770 (hygiene guile)))
19771 .
19772 each-any))))
19773 (if tmp-37924
19774 (@apply
19775 (lambda (p-37928)
19776 (if (= lev-37901 0)
19777 (quasilist*-37880
19778 (map (lambda (tmp-37640-37967)
19779 (list '#(syntax-object
19780 "value"
19781 ((top)
19782 #(ribcage
19783 #(p)
19784 #((top))
19785 #("l-*-37638"))
19786 #(ribcage
19787 #(p q)
19788 #((top) (top))
19789 #("l-*-37632"
19790 "l-*-37633"))
19791 #(ribcage () () ())
19792 #(ribcage
19793 #(p lev)
19794 #((top) (top))
19795 #("l-*-37622"
19796 "l-*-37623"))
19797 #(ribcage
19798 (emit quasivector
19799 quasilist*
19800 quasiappend
19801 quasicons
19802 vquasi
19803 quasi)
19804 ((top)
19805 (top)
19806 (top)
19807 (top)
19808 (top)
19809 (top)
19810 (top))
19811 ("l-*-37618"
19812 "l-*-37616"
19813 "l-*-37614"
19814 "l-*-37612"
19815 "l-*-37610"
19816 "l-*-37608"
19817 "l-*-37606"))
19818 #(ribcage
19819 (quasiquote)
19820 ((top))
19821 (((hygiene guile)
19822 .
19823 #(syntax-object
19824 quasiquote
19825 ((top))
19826 (hygiene
19827 guile))))))
19828 (hygiene guile))
19829 tmp-37640-37967))
19830 p-37928)
19831 (quasi-37876 q-37922 lev-37901))
19832 (quasicons-37878
19833 (quasicons-37878
19834 '(#(syntax-object
19835 "quote"
19836 ((top)
19837 #(ribcage
19838 #(p)
19839 #((top))
19840 #("l-*-37638"))
19841 #(ribcage
19842 #(p q)
19843 #((top) (top))
19844 #("l-*-37632" "l-*-37633"))
19845 #(ribcage () () ())
19846 #(ribcage
19847 #(p lev)
19848 #((top) (top))
19849 #("l-*-37622" "l-*-37623"))
19850 #(ribcage
19851 (emit quasivector
19852 quasilist*
19853 quasiappend
19854 quasicons
19855 vquasi
19856 quasi)
19857 ((top)
19858 (top)
19859 (top)
19860 (top)
19861 (top)
19862 (top)
19863 (top))
19864 ("l-*-37618"
19865 "l-*-37616"
19866 "l-*-37614"
19867 "l-*-37612"
19868 "l-*-37610"
19869 "l-*-37608"
19870 "l-*-37606"))
19871 #(ribcage
19872 (quasiquote)
19873 ((top))
19874 (((hygiene guile)
19875 .
19876 #(syntax-object
19877 quasiquote
19878 ((top))
19879 (hygiene guile))))))
19880 (hygiene guile))
19881 #(syntax-object
19882 unquote
19883 ((top)
19884 #(ribcage
19885 #(p)
19886 #((top))
19887 #("l-*-37638"))
19888 #(ribcage
19889 #(p q)
19890 #((top) (top))
19891 #("l-*-37632" "l-*-37633"))
19892 #(ribcage () () ())
19893 #(ribcage
19894 #(p lev)
19895 #((top) (top))
19896 #("l-*-37622" "l-*-37623"))
19897 #(ribcage
19898 (emit quasivector
19899 quasilist*
19900 quasiappend
19901 quasicons
19902 vquasi
19903 quasi)
19904 ((top)
19905 (top)
19906 (top)
19907 (top)
19908 (top)
19909 (top)
19910 (top))
19911 ("l-*-37618"
19912 "l-*-37616"
19913 "l-*-37614"
19914 "l-*-37612"
19915 "l-*-37610"
19916 "l-*-37608"
19917 "l-*-37606"))
19918 #(ribcage
19919 (quasiquote)
19920 ((top))
19921 (((hygiene guile)
19922 .
19923 #(syntax-object
19924 quasiquote
19925 ((top))
19926 (hygiene guile))))))
19927 (hygiene guile)))
19928 (quasi-37876
19929 p-37928
19930 (#{1-}# lev-37901)))
19931 (quasi-37876 q-37922 lev-37901))))
19932 tmp-37924)
19933 (let ((tmp-37972
19934 ($sc-dispatch
19935 p-37921
19936 '(#(free-id
19937 #(syntax-object
19938 unquote-splicing
19939 ((top)
19940 #(ribcage
19941 #(p q)
19942 #((top) (top))
19943 #("l-*-37632" "l-*-37633"))
19944 #(ribcage () () ())
19945 #(ribcage
19946 #(p lev)
19947 #((top) (top))
19948 #("l-*-37622" "l-*-37623"))
19949 #(ribcage
19950 (emit quasivector
19951 quasilist*
19952 quasiappend
19953 quasicons
19954 vquasi
19955 quasi)
19956 ((top)
19957 (top)
19958 (top)
19959 (top)
19960 (top)
19961 (top)
19962 (top))
19963 ("l-*-37618"
19964 "l-*-37616"
19965 "l-*-37614"
19966 "l-*-37612"
19967 "l-*-37610"
19968 "l-*-37608"
19969 "l-*-37606"))
19970 #(ribcage
19971 (quasiquote)
19972 ((top))
19973 (((hygiene guile)
19974 .
19975 #(syntax-object
19976 quasiquote
19977 ((top))
19978 (hygiene guile))))))
19979 (hygiene guile)))
19980 .
19981 each-any))))
19982 (if tmp-37972
19983 (@apply
19984 (lambda (p-37976)
19985 (if (= lev-37901 0)
19986 (quasiappend-37879
19987 (map (lambda (tmp-37645-37979)
19988 (list '#(syntax-object
19989 "value"
19990 ((top)
19991 #(ribcage
19992 #(p)
19993 #((top))
19994 #("l-*-37643"))
19995 #(ribcage
19996 #(p q)
19997 #((top) (top))
19998 #("l-*-37632"
19999 "l-*-37633"))
20000 #(ribcage () () ())
20001 #(ribcage
20002 #(p lev)
20003 #((top) (top))
20004 #("l-*-37622"
20005 "l-*-37623"))
20006 #(ribcage
20007 (emit quasivector
20008 quasilist*
20009 quasiappend
20010 quasicons
20011 vquasi
20012 quasi)
20013 ((top)
20014 (top)
20015 (top)
20016 (top)
20017 (top)
20018 (top)
20019 (top))
20020 ("l-*-37618"
20021 "l-*-37616"
20022 "l-*-37614"
20023 "l-*-37612"
20024 "l-*-37610"
20025 "l-*-37608"
20026 "l-*-37606"))
20027 #(ribcage
20028 (quasiquote)
20029 ((top))
20030 (((hygiene guile)
20031 .
20032 #(syntax-object
20033 quasiquote
20034 ((top))
20035 (hygiene
20036 guile))))))
20037 (hygiene guile))
20038 tmp-37645-37979))
20039 p-37976)
20040 (quasi-37876 q-37922 lev-37901))
20041 (quasicons-37878
20042 (quasicons-37878
20043 '(#(syntax-object
20044 "quote"
20045 ((top)
20046 #(ribcage
20047 #(p)
20048 #((top))
20049 #("l-*-37643"))
20050 #(ribcage
20051 #(p q)
20052 #((top) (top))
20053 #("l-*-37632" "l-*-37633"))
20054 #(ribcage () () ())
20055 #(ribcage
20056 #(p lev)
20057 #((top) (top))
20058 #("l-*-37622" "l-*-37623"))
20059 #(ribcage
20060 (emit quasivector
20061 quasilist*
20062 quasiappend
20063 quasicons
20064 vquasi
20065 quasi)
20066 ((top)
20067 (top)
20068 (top)
20069 (top)
20070 (top)
20071 (top)
20072 (top))
20073 ("l-*-37618"
20074 "l-*-37616"
20075 "l-*-37614"
20076 "l-*-37612"
20077 "l-*-37610"
20078 "l-*-37608"
20079 "l-*-37606"))
20080 #(ribcage
20081 (quasiquote)
20082 ((top))
20083 (((hygiene guile)
20084 .
20085 #(syntax-object
20086 quasiquote
20087 ((top))
20088 (hygiene guile))))))
20089 (hygiene guile))
20090 #(syntax-object
20091 unquote-splicing
20092 ((top)
20093 #(ribcage
20094 #(p)
20095 #((top))
20096 #("l-*-37643"))
20097 #(ribcage
20098 #(p q)
20099 #((top) (top))
20100 #("l-*-37632" "l-*-37633"))
20101 #(ribcage () () ())
20102 #(ribcage
20103 #(p lev)
20104 #((top) (top))
20105 #("l-*-37622" "l-*-37623"))
20106 #(ribcage
20107 (emit quasivector
20108 quasilist*
20109 quasiappend
20110 quasicons
20111 vquasi
20112 quasi)
20113 ((top)
20114 (top)
20115 (top)
20116 (top)
20117 (top)
20118 (top)
20119 (top))
20120 ("l-*-37618"
20121 "l-*-37616"
20122 "l-*-37614"
20123 "l-*-37612"
20124 "l-*-37610"
20125 "l-*-37608"
20126 "l-*-37606"))
20127 #(ribcage
20128 (quasiquote)
20129 ((top))
20130 (((hygiene guile)
20131 .
20132 #(syntax-object
20133 quasiquote
20134 ((top))
20135 (hygiene guile))))))
20136 (hygiene guile)))
20137 (quasi-37876
20138 p-37976
20139 (#{1-}# lev-37901)))
20140 (quasi-37876 q-37922 lev-37901))))
20141 tmp-37972)
20142 (quasicons-37878
20143 (quasi-37876 p-37921 lev-37901)
20144 (quasi-37876 q-37922 lev-37901)))))))
20145 tmp-37917)
20146 (let ((tmp-37993
20147 ($sc-dispatch p-37900 '#(vector each-any))))
20148 (if tmp-37993
20149 (@apply
20150 (lambda (x-37997)
20151 (let ((x-38000
20152 (vquasi-37877 x-37997 lev-37901)))
20153 (let ((tmp-38002
20154 ($sc-dispatch
20155 x-38000
20156 '(#(atom "quote") each-any))))
20157 (if tmp-38002
20158 (@apply
20159 (lambda (x-38006)
20160 (list '#(syntax-object
20161 "quote"
20162 ((top)
20163 #(ribcage
20164 #(x)
20165 #((top))
20166 #("l-*-37750"))
20167 #(ribcage () () ())
20168 #(ribcage
20169 #(x)
20170 #((top))
20171 #("l-*-37747"))
20172 #(ribcage
20173 (emit quasivector
20174 quasilist*
20175 quasiappend
20176 quasicons
20177 vquasi
20178 quasi)
20179 ((top)
20180 (top)
20181 (top)
20182 (top)
20183 (top)
20184 (top)
20185 (top))
20186 ("l-*-37618"
20187 "l-*-37616"
20188 "l-*-37614"
20189 "l-*-37612"
20190 "l-*-37610"
20191 "l-*-37608"
20192 "l-*-37606"))
20193 #(ribcage
20194 (quasiquote)
20195 ((top))
20196 (((hygiene guile)
20197 .
20198 #(syntax-object
20199 quasiquote
20200 ((top))
20201 (hygiene guile))))))
20202 (hygiene guile))
20203 (list->vector x-38006)))
20204 tmp-38002)
20205 (letrec*
20206 ((f-38008
20207 (lambda (y-38020 k-38021)
20208 (let ((tmp-38023
20209 ($sc-dispatch
20210 y-38020
20211 '(#(atom "quote")
20212 each-any))))
20213 (if tmp-38023
20214 (@apply
20215 (lambda (y-38026)
20216 (k-38021
20217 (map (lambda (tmp-37775-38027)
20218 (list '#(syntax-object
20219 "quote"
20220 ((top)
20221 #(ribcage
20222 #(y)
20223 #((top))
20224 #("l-*-37773"))
20225 #(ribcage
20226 ()
20227 ()
20228 ())
20229 #(ribcage
20230 #(f
20231 y
20232 k)
20233 #((top)
20234 (top)
20235 (top))
20236 #("l-*-37755"
20237 "l-*-37756"
20238 "l-*-37757"))
20239 #(ribcage
20240 #(_)
20241 #((top))
20242 #("l-*-37753"))
20243 #(ribcage
20244 ()
20245 ()
20246 ())
20247 #(ribcage
20248 #(x)
20249 #((top))
20250 #("l-*-37747"))
20251 #(ribcage
20252 (emit quasivector
20253 quasilist*
20254 quasiappend
20255 quasicons
20256 vquasi
20257 quasi)
20258 ((top)
20259 (top)
20260 (top)
20261 (top)
20262 (top)
20263 (top)
20264 (top))
20265 ("l-*-37618"
20266 "l-*-37616"
20267 "l-*-37614"
20268 "l-*-37612"
20269 "l-*-37610"
20270 "l-*-37608"
20271 "l-*-37606"))
20272 #(ribcage
20273 (quasiquote)
20274 ((top))
20275 (((hygiene
20276 guile)
20277 .
20278 #(syntax-object
20279 quasiquote
20280 ((top))
20281 (hygiene
20282 guile))))))
20283 (hygiene
20284 guile))
20285 tmp-37775-38027))
20286 y-38026)))
20287 tmp-38023)
20288 (let ((tmp-38028
20289 ($sc-dispatch
20290 y-38020
20291 '(#(atom "list")
20292 .
20293 each-any))))
20294 (if tmp-38028
20295 (@apply
20296 (lambda (y-38031)
20297 (k-38021 y-38031))
20298 tmp-38028)
20299 (let ((tmp-38032
20300 ($sc-dispatch
20301 y-38020
20302 '(#(atom "list*")
20303 .
20304 #(each+
20305 any
20306 (any)
20307 ())))))
20308 (if tmp-38032
20309 (@apply
20310 (lambda (y-38035
20311 z-38036)
20312 (f-38008
20313 z-38036
20314 (lambda (ls-38037)
20315 (k-38021
20316 (append
20317 y-38035
20318 ls-38037)))))
20319 tmp-38032)
20320 (list '#(syntax-object
20321 "list->vector"
20322 ((top)
20323 #(ribcage
20324 ()
20325 ()
20326 ())
20327 #(ribcage
20328 #(t-37790)
20329 #((m-*-37791
20330 top))
20331 #("l-*-37794"))
20332 #(ribcage
20333 #(else)
20334 #((top))
20335 #("l-*-37788"))
20336 #(ribcage
20337 ()
20338 ()
20339 ())
20340 #(ribcage
20341 #(f y k)
20342 #((top)
20343 (top)
20344 (top))
20345 #("l-*-37755"
20346 "l-*-37756"
20347 "l-*-37757"))
20348 #(ribcage
20349 #(_)
20350 #((top))
20351 #("l-*-37753"))
20352 #(ribcage
20353 ()
20354 ()
20355 ())
20356 #(ribcage
20357 #(x)
20358 #((top))
20359 #("l-*-37747"))
20360 #(ribcage
20361 (emit quasivector
20362 quasilist*
20363 quasiappend
20364 quasicons
20365 vquasi
20366 quasi)
20367 ((top)
20368 (top)
20369 (top)
20370 (top)
20371 (top)
20372 (top)
20373 (top))
20374 ("l-*-37618"
20375 "l-*-37616"
20376 "l-*-37614"
20377 "l-*-37612"
20378 "l-*-37610"
20379 "l-*-37608"
20380 "l-*-37606"))
20381 #(ribcage
20382 (quasiquote)
20383 ((top))
20384 (((hygiene
20385 guile)
20386 .
20387 #(syntax-object
20388 quasiquote
20389 ((top))
20390 (hygiene
20391 guile))))))
20392 (hygiene
20393 guile))
20394 x-38000))))))))))
20395 (f-38008
20396 x-38000
20397 (lambda (ls-38010)
20398 (let ((tmp-38012
20399 ($sc-dispatch
20400 ls-38010
20401 'each-any)))
20402 (if tmp-38012
20403 (@apply
20404 (lambda (t-37763-38015)
20405 (cons '#(syntax-object
20406 "vector"
20407 ((top)
20408 #(ribcage
20409 ()
20410 ()
20411 ())
20412 #(ribcage
20413 #(t-37763)
20414 #((m-*-37764
20415 top))
20416 #("l-*-37768"))
20417 #(ribcage
20418 ()
20419 ()
20420 ())
20421 #(ribcage
20422 ()
20423 ()
20424 ())
20425 #(ribcage
20426 ()
20427 ()
20428 ())
20429 #(ribcage
20430 #(ls)
20431 #((top))
20432 #("l-*-37762"))
20433 #(ribcage
20434 #(_)
20435 #((top))
20436 #("l-*-37753"))
20437 #(ribcage
20438 ()
20439 ()
20440 ())
20441 #(ribcage
20442 #(x)
20443 #((top))
20444 #("l-*-37747"))
20445 #(ribcage
20446 (emit quasivector
20447 quasilist*
20448 quasiappend
20449 quasicons
20450 vquasi
20451 quasi)
20452 ((top)
20453 (top)
20454 (top)
20455 (top)
20456 (top)
20457 (top)
20458 (top))
20459 ("l-*-37618"
20460 "l-*-37616"
20461 "l-*-37614"
20462 "l-*-37612"
20463 "l-*-37610"
20464 "l-*-37608"
20465 "l-*-37606"))
20466 #(ribcage
20467 (quasiquote)
20468 ((top))
20469 (((hygiene
20470 guile)
20471 .
20472 #(syntax-object
20473 quasiquote
20474 ((top))
20475 (hygiene
20476 guile))))))
20477 (hygiene guile))
20478 t-37763-38015))
20479 tmp-38012)
20480 (syntax-violation
20481 #f
20482 "source expression failed to match any pattern"
20483 ls-38010))))))))))
20484 tmp-37993)
20485 (list '#(syntax-object
20486 "quote"
20487 ((top)
20488 #(ribcage #(p) #((top)) #("l-*-37653"))
20489 #(ribcage () () ())
20490 #(ribcage
20491 #(p lev)
20492 #((top) (top))
20493 #("l-*-37622" "l-*-37623"))
20494 #(ribcage
20495 (emit quasivector
20496 quasilist*
20497 quasiappend
20498 quasicons
20499 vquasi
20500 quasi)
20501 ((top)
20502 (top)
20503 (top)
20504 (top)
20505 (top)
20506 (top)
20507 (top))
20508 ("l-*-37618"
20509 "l-*-37616"
20510 "l-*-37614"
20511 "l-*-37612"
20512 "l-*-37610"
20513 "l-*-37608"
20514 "l-*-37606"))
20515 #(ribcage
20516 (quasiquote)
20517 ((top))
20518 (((hygiene guile)
20519 .
20520 #(syntax-object
20521 quasiquote
20522 ((top))
20523 (hygiene guile))))))
20524 (hygiene guile))
20525 p-37900)))))))))))
20526 (vquasi-37877
20527 (lambda (p-38065 lev-38066)
20528 (let ((tmp-38068 ($sc-dispatch p-38065 '(any . any))))
20529 (if tmp-38068
20530 (@apply
20531 (lambda (p-38072 q-38073)
20532 (let ((tmp-38075
20533 ($sc-dispatch
20534 p-38072
20535 '(#(free-id
20536 #(syntax-object
20537 unquote
20538 ((top)
20539 #(ribcage
20540 #(p q)
20541 #((top) (top))
20542 #("l-*-37661" "l-*-37662"))
20543 #(ribcage () () ())
20544 #(ribcage
20545 #(p lev)
20546 #((top) (top))
20547 #("l-*-37657" "l-*-37658"))
20548 #(ribcage
20549 (emit quasivector
20550 quasilist*
20551 quasiappend
20552 quasicons
20553 vquasi
20554 quasi)
20555 ((top)
20556 (top)
20557 (top)
20558 (top)
20559 (top)
20560 (top)
20561 (top))
20562 ("l-*-37618"
20563 "l-*-37616"
20564 "l-*-37614"
20565 "l-*-37612"
20566 "l-*-37610"
20567 "l-*-37608"
20568 "l-*-37606"))
20569 #(ribcage
20570 (quasiquote)
20571 ((top))
20572 (((hygiene guile)
20573 .
20574 #(syntax-object
20575 quasiquote
20576 ((top))
20577 (hygiene guile))))))
20578 (hygiene guile)))
20579 .
20580 each-any))))
20581 (if tmp-38075
20582 (@apply
20583 (lambda (p-38079)
20584 (if (= lev-38066 0)
20585 (quasilist*-37880
20586 (map (lambda (tmp-37669-38118)
20587 (list '#(syntax-object
20588 "value"
20589 ((top)
20590 #(ribcage
20591 #(p)
20592 #((top))
20593 #("l-*-37667"))
20594 #(ribcage
20595 #(p q)
20596 #((top) (top))
20597 #("l-*-37661" "l-*-37662"))
20598 #(ribcage () () ())
20599 #(ribcage
20600 #(p lev)
20601 #((top) (top))
20602 #("l-*-37657" "l-*-37658"))
20603 #(ribcage
20604 (emit quasivector
20605 quasilist*
20606 quasiappend
20607 quasicons
20608 vquasi
20609 quasi)
20610 ((top)
20611 (top)
20612 (top)
20613 (top)
20614 (top)
20615 (top)
20616 (top))
20617 ("l-*-37618"
20618 "l-*-37616"
20619 "l-*-37614"
20620 "l-*-37612"
20621 "l-*-37610"
20622 "l-*-37608"
20623 "l-*-37606"))
20624 #(ribcage
20625 (quasiquote)
20626 ((top))
20627 (((hygiene guile)
20628 .
20629 #(syntax-object
20630 quasiquote
20631 ((top))
20632 (hygiene guile))))))
20633 (hygiene guile))
20634 tmp-37669-38118))
20635 p-38079)
20636 (vquasi-37877 q-38073 lev-38066))
20637 (quasicons-37878
20638 (quasicons-37878
20639 '(#(syntax-object
20640 "quote"
20641 ((top)
20642 #(ribcage #(p) #((top)) #("l-*-37667"))
20643 #(ribcage
20644 #(p q)
20645 #((top) (top))
20646 #("l-*-37661" "l-*-37662"))
20647 #(ribcage () () ())
20648 #(ribcage
20649 #(p lev)
20650 #((top) (top))
20651 #("l-*-37657" "l-*-37658"))
20652 #(ribcage
20653 (emit quasivector
20654 quasilist*
20655 quasiappend
20656 quasicons
20657 vquasi
20658 quasi)
20659 ((top)
20660 (top)
20661 (top)
20662 (top)
20663 (top)
20664 (top)
20665 (top))
20666 ("l-*-37618"
20667 "l-*-37616"
20668 "l-*-37614"
20669 "l-*-37612"
20670 "l-*-37610"
20671 "l-*-37608"
20672 "l-*-37606"))
20673 #(ribcage
20674 (quasiquote)
20675 ((top))
20676 (((hygiene guile)
20677 .
20678 #(syntax-object
20679 quasiquote
20680 ((top))
20681 (hygiene guile))))))
20682 (hygiene guile))
20683 #(syntax-object
20684 unquote
20685 ((top)
20686 #(ribcage #(p) #((top)) #("l-*-37667"))
20687 #(ribcage
20688 #(p q)
20689 #((top) (top))
20690 #("l-*-37661" "l-*-37662"))
20691 #(ribcage () () ())
20692 #(ribcage
20693 #(p lev)
20694 #((top) (top))
20695 #("l-*-37657" "l-*-37658"))
20696 #(ribcage
20697 (emit quasivector
20698 quasilist*
20699 quasiappend
20700 quasicons
20701 vquasi
20702 quasi)
20703 ((top)
20704 (top)
20705 (top)
20706 (top)
20707 (top)
20708 (top)
20709 (top))
20710 ("l-*-37618"
20711 "l-*-37616"
20712 "l-*-37614"
20713 "l-*-37612"
20714 "l-*-37610"
20715 "l-*-37608"
20716 "l-*-37606"))
20717 #(ribcage
20718 (quasiquote)
20719 ((top))
20720 (((hygiene guile)
20721 .
20722 #(syntax-object
20723 quasiquote
20724 ((top))
20725 (hygiene guile))))))
20726 (hygiene guile)))
20727 (quasi-37876 p-38079 (#{1-}# lev-38066)))
20728 (vquasi-37877 q-38073 lev-38066))))
20729 tmp-38075)
20730 (let ((tmp-38125
20731 ($sc-dispatch
20732 p-38072
20733 '(#(free-id
20734 #(syntax-object
20735 unquote-splicing
20736 ((top)
20737 #(ribcage
20738 #(p q)
20739 #((top) (top))
20740 #("l-*-37661" "l-*-37662"))
20741 #(ribcage () () ())
20742 #(ribcage
20743 #(p lev)
20744 #((top) (top))
20745 #("l-*-37657" "l-*-37658"))
20746 #(ribcage
20747 (emit quasivector
20748 quasilist*
20749 quasiappend
20750 quasicons
20751 vquasi
20752 quasi)
20753 ((top)
20754 (top)
20755 (top)
20756 (top)
20757 (top)
20758 (top)
20759 (top))
20760 ("l-*-37618"
20761 "l-*-37616"
20762 "l-*-37614"
20763 "l-*-37612"
20764 "l-*-37610"
20765 "l-*-37608"
20766 "l-*-37606"))
20767 #(ribcage
20768 (quasiquote)
20769 ((top))
20770 (((hygiene guile)
20771 .
20772 #(syntax-object
20773 quasiquote
20774 ((top))
20775 (hygiene guile))))))
20776 (hygiene guile)))
20777 .
20778 each-any))))
20779 (if tmp-38125
20780 (@apply
20781 (lambda (p-38129)
20782 (if (= lev-38066 0)
20783 (quasiappend-37879
20784 (map (lambda (tmp-37674-38132)
20785 (list '#(syntax-object
20786 "value"
20787 ((top)
20788 #(ribcage
20789 #(p)
20790 #((top))
20791 #("l-*-37672"))
20792 #(ribcage
20793 #(p q)
20794 #((top) (top))
20795 #("l-*-37661"
20796 "l-*-37662"))
20797 #(ribcage () () ())
20798 #(ribcage
20799 #(p lev)
20800 #((top) (top))
20801 #("l-*-37657"
20802 "l-*-37658"))
20803 #(ribcage
20804 (emit quasivector
20805 quasilist*
20806 quasiappend
20807 quasicons
20808 vquasi
20809 quasi)
20810 ((top)
20811 (top)
20812 (top)
20813 (top)
20814 (top)
20815 (top)
20816 (top))
20817 ("l-*-37618"
20818 "l-*-37616"
20819 "l-*-37614"
20820 "l-*-37612"
20821 "l-*-37610"
20822 "l-*-37608"
20823 "l-*-37606"))
20824 #(ribcage
20825 (quasiquote)
20826 ((top))
20827 (((hygiene guile)
20828 .
20829 #(syntax-object
20830 quasiquote
20831 ((top))
20832 (hygiene guile))))))
20833 (hygiene guile))
20834 tmp-37674-38132))
20835 p-38129)
20836 (vquasi-37877 q-38073 lev-38066))
20837 (quasicons-37878
20838 (quasicons-37878
20839 '(#(syntax-object
20840 "quote"
20841 ((top)
20842 #(ribcage
20843 #(p)
20844 #((top))
20845 #("l-*-37672"))
20846 #(ribcage
20847 #(p q)
20848 #((top) (top))
20849 #("l-*-37661" "l-*-37662"))
20850 #(ribcage () () ())
20851 #(ribcage
20852 #(p lev)
20853 #((top) (top))
20854 #("l-*-37657" "l-*-37658"))
20855 #(ribcage
20856 (emit quasivector
20857 quasilist*
20858 quasiappend
20859 quasicons
20860 vquasi
20861 quasi)
20862 ((top)
20863 (top)
20864 (top)
20865 (top)
20866 (top)
20867 (top)
20868 (top))
20869 ("l-*-37618"
20870 "l-*-37616"
20871 "l-*-37614"
20872 "l-*-37612"
20873 "l-*-37610"
20874 "l-*-37608"
20875 "l-*-37606"))
20876 #(ribcage
20877 (quasiquote)
20878 ((top))
20879 (((hygiene guile)
20880 .
20881 #(syntax-object
20882 quasiquote
20883 ((top))
20884 (hygiene guile))))))
20885 (hygiene guile))
20886 #(syntax-object
20887 unquote-splicing
20888 ((top)
20889 #(ribcage
20890 #(p)
20891 #((top))
20892 #("l-*-37672"))
20893 #(ribcage
20894 #(p q)
20895 #((top) (top))
20896 #("l-*-37661" "l-*-37662"))
20897 #(ribcage () () ())
20898 #(ribcage
20899 #(p lev)
20900 #((top) (top))
20901 #("l-*-37657" "l-*-37658"))
20902 #(ribcage
20903 (emit quasivector
20904 quasilist*
20905 quasiappend
20906 quasicons
20907 vquasi
20908 quasi)
20909 ((top)
20910 (top)
20911 (top)
20912 (top)
20913 (top)
20914 (top)
20915 (top))
20916 ("l-*-37618"
20917 "l-*-37616"
20918 "l-*-37614"
20919 "l-*-37612"
20920 "l-*-37610"
20921 "l-*-37608"
20922 "l-*-37606"))
20923 #(ribcage
20924 (quasiquote)
20925 ((top))
20926 (((hygiene guile)
20927 .
20928 #(syntax-object
20929 quasiquote
20930 ((top))
20931 (hygiene guile))))))
20932 (hygiene guile)))
20933 (quasi-37876 p-38129 (#{1-}# lev-38066)))
20934 (vquasi-37877 q-38073 lev-38066))))
20935 tmp-38125)
20936 (quasicons-37878
20937 (quasi-37876 p-38072 lev-38066)
20938 (vquasi-37877 q-38073 lev-38066)))))))
20939 tmp-38068)
20940 (let ((tmp-38150 ($sc-dispatch p-38065 '())))
20941 (if tmp-38150
20942 (@apply
20943 (lambda ()
20944 '(#(syntax-object
20945 "quote"
20946 ((top)
20947 #(ribcage () () ())
20948 #(ribcage
20949 #(p lev)
20950 #((top) (top))
20951 #("l-*-37657" "l-*-37658"))
20952 #(ribcage
20953 (emit quasivector
20954 quasilist*
20955 quasiappend
20956 quasicons
20957 vquasi
20958 quasi)
20959 ((top) (top) (top) (top) (top) (top) (top))
20960 ("l-*-37618"
20961 "l-*-37616"
20962 "l-*-37614"
20963 "l-*-37612"
20964 "l-*-37610"
20965 "l-*-37608"
20966 "l-*-37606"))
20967 #(ribcage
20968 (quasiquote)
20969 ((top))
20970 (((hygiene guile)
20971 .
20972 #(syntax-object
20973 quasiquote
20974 ((top))
20975 (hygiene guile))))))
20976 (hygiene guile))
20977 ()))
20978 tmp-38150)
20979 (syntax-violation
20980 #f
20981 "source expression failed to match any pattern"
20982 p-38065)))))))
20983 (quasicons-37878
20984 (lambda (x-38163 y-38164)
20985 (let ((tmp-38165 (list x-38163 y-38164)))
20986 (let ((tmp-38166 ($sc-dispatch tmp-38165 '(any any))))
20987 (if tmp-38166
20988 (@apply
20989 (lambda (x-38168 y-38169)
20990 (let ((tmp-38171
20991 ($sc-dispatch y-38169 '(#(atom "quote") any))))
20992 (if tmp-38171
20993 (@apply
20994 (lambda (dy-38175)
20995 (let ((tmp-38177
20996 ($sc-dispatch
20997 x-38168
20998 '(#(atom "quote") any))))
20999 (if tmp-38177
21000 (@apply
21001 (lambda (dx-38181)
21002 (list '#(syntax-object
21003 "quote"
21004 ((top)
21005 #(ribcage
21006 #(dx)
21007 #((top))
21008 #("l-*-37696"))
21009 #(ribcage
21010 #(dy)
21011 #((top))
21012 #("l-*-37692"))
21013 #(ribcage () () ())
21014 #(ribcage
21015 #(x y)
21016 #((top) (top))
21017 #("l-*-37686" "l-*-37687"))
21018 #(ribcage () () ())
21019 #(ribcage () () ())
21020 #(ribcage
21021 #(x y)
21022 #((top) (top))
21023 #("l-*-37681" "l-*-37682"))
21024 #(ribcage
21025 (emit quasivector
21026 quasilist*
21027 quasiappend
21028 quasicons
21029 vquasi
21030 quasi)
21031 ((top)
21032 (top)
21033 (top)
21034 (top)
21035 (top)
21036 (top)
21037 (top))
21038 ("l-*-37618"
21039 "l-*-37616"
21040 "l-*-37614"
21041 "l-*-37612"
21042 "l-*-37610"
21043 "l-*-37608"
21044 "l-*-37606"))
21045 #(ribcage
21046 (quasiquote)
21047 ((top))
21048 (((hygiene guile)
21049 .
21050 #(syntax-object
21051 quasiquote
21052 ((top))
21053 (hygiene guile))))))
21054 (hygiene guile))
21055 (cons dx-38181 dy-38175)))
21056 tmp-38177)
21057 (if (null? dy-38175)
21058 (list '#(syntax-object
21059 "list"
21060 ((top)
21061 #(ribcage
21062 #(_)
21063 #((top))
21064 #("l-*-37698"))
21065 #(ribcage
21066 #(dy)
21067 #((top))
21068 #("l-*-37692"))
21069 #(ribcage () () ())
21070 #(ribcage
21071 #(x y)
21072 #((top) (top))
21073 #("l-*-37686" "l-*-37687"))
21074 #(ribcage () () ())
21075 #(ribcage () () ())
21076 #(ribcage
21077 #(x y)
21078 #((top) (top))
21079 #("l-*-37681" "l-*-37682"))
21080 #(ribcage
21081 (emit quasivector
21082 quasilist*
21083 quasiappend
21084 quasicons
21085 vquasi
21086 quasi)
21087 ((top)
21088 (top)
21089 (top)
21090 (top)
21091 (top)
21092 (top)
21093 (top))
21094 ("l-*-37618"
21095 "l-*-37616"
21096 "l-*-37614"
21097 "l-*-37612"
21098 "l-*-37610"
21099 "l-*-37608"
21100 "l-*-37606"))
21101 #(ribcage
21102 (quasiquote)
21103 ((top))
21104 (((hygiene guile)
21105 .
21106 #(syntax-object
21107 quasiquote
21108 ((top))
21109 (hygiene guile))))))
21110 (hygiene guile))
21111 x-38168)
21112 (list '#(syntax-object
21113 "list*"
21114 ((top)
21115 #(ribcage
21116 #(_)
21117 #((top))
21118 #("l-*-37698"))
21119 #(ribcage
21120 #(dy)
21121 #((top))
21122 #("l-*-37692"))
21123 #(ribcage () () ())
21124 #(ribcage
21125 #(x y)
21126 #((top) (top))
21127 #("l-*-37686" "l-*-37687"))
21128 #(ribcage () () ())
21129 #(ribcage () () ())
21130 #(ribcage
21131 #(x y)
21132 #((top) (top))
21133 #("l-*-37681" "l-*-37682"))
21134 #(ribcage
21135 (emit quasivector
21136 quasilist*
21137 quasiappend
21138 quasicons
21139 vquasi
21140 quasi)
21141 ((top)
21142 (top)
21143 (top)
21144 (top)
21145 (top)
21146 (top)
21147 (top))
21148 ("l-*-37618"
21149 "l-*-37616"
21150 "l-*-37614"
21151 "l-*-37612"
21152 "l-*-37610"
21153 "l-*-37608"
21154 "l-*-37606"))
21155 #(ribcage
21156 (quasiquote)
21157 ((top))
21158 (((hygiene guile)
21159 .
21160 #(syntax-object
21161 quasiquote
21162 ((top))
21163 (hygiene guile))))))
21164 (hygiene guile))
21165 x-38168
21166 y-38169)))))
21167 tmp-38171)
21168 (let ((tmp-38186
21169 ($sc-dispatch
21170 y-38169
21171 '(#(atom "list") . any))))
21172 (if tmp-38186
21173 (@apply
21174 (lambda (stuff-38190)
21175 (cons '#(syntax-object
21176 "list"
21177 ((top)
21178 #(ribcage
21179 #(stuff)
21180 #((top))
21181 #("l-*-37701"))
21182 #(ribcage () () ())
21183 #(ribcage
21184 #(x y)
21185 #((top) (top))
21186 #("l-*-37686" "l-*-37687"))
21187 #(ribcage () () ())
21188 #(ribcage () () ())
21189 #(ribcage
21190 #(x y)
21191 #((top) (top))
21192 #("l-*-37681" "l-*-37682"))
21193 #(ribcage
21194 (emit quasivector
21195 quasilist*
21196 quasiappend
21197 quasicons
21198 vquasi
21199 quasi)
21200 ((top)
21201 (top)
21202 (top)
21203 (top)
21204 (top)
21205 (top)
21206 (top))
21207 ("l-*-37618"
21208 "l-*-37616"
21209 "l-*-37614"
21210 "l-*-37612"
21211 "l-*-37610"
21212 "l-*-37608"
21213 "l-*-37606"))
21214 #(ribcage
21215 (quasiquote)
21216 ((top))
21217 (((hygiene guile)
21218 .
21219 #(syntax-object
21220 quasiquote
21221 ((top))
21222 (hygiene guile))))))
21223 (hygiene guile))
21224 (cons x-38168 stuff-38190)))
21225 tmp-38186)
21226 (let ((tmp-38191
21227 ($sc-dispatch
21228 y-38169
21229 '(#(atom "list*") . any))))
21230 (if tmp-38191
21231 (@apply
21232 (lambda (stuff-38195)
21233 (cons '#(syntax-object
21234 "list*"
21235 ((top)
21236 #(ribcage
21237 #(stuff)
21238 #((top))
21239 #("l-*-37704"))
21240 #(ribcage () () ())
21241 #(ribcage
21242 #(x y)
21243 #((top) (top))
21244 #("l-*-37686" "l-*-37687"))
21245 #(ribcage () () ())
21246 #(ribcage () () ())
21247 #(ribcage
21248 #(x y)
21249 #((top) (top))
21250 #("l-*-37681" "l-*-37682"))
21251 #(ribcage
21252 (emit quasivector
21253 quasilist*
21254 quasiappend
21255 quasicons
21256 vquasi
21257 quasi)
21258 ((top)
21259 (top)
21260 (top)
21261 (top)
21262 (top)
21263 (top)
21264 (top))
21265 ("l-*-37618"
21266 "l-*-37616"
21267 "l-*-37614"
21268 "l-*-37612"
21269 "l-*-37610"
21270 "l-*-37608"
21271 "l-*-37606"))
21272 #(ribcage
21273 (quasiquote)
21274 ((top))
21275 (((hygiene guile)
21276 .
21277 #(syntax-object
21278 quasiquote
21279 ((top))
21280 (hygiene guile))))))
21281 (hygiene guile))
21282 (cons x-38168 stuff-38195)))
21283 tmp-38191)
21284 (list '#(syntax-object
21285 "list*"
21286 ((top)
21287 #(ribcage
21288 #(_)
21289 #((top))
21290 #("l-*-37706"))
21291 #(ribcage () () ())
21292 #(ribcage
21293 #(x y)
21294 #((top) (top))
21295 #("l-*-37686" "l-*-37687"))
21296 #(ribcage () () ())
21297 #(ribcage () () ())
21298 #(ribcage
21299 #(x y)
21300 #((top) (top))
21301 #("l-*-37681" "l-*-37682"))
21302 #(ribcage
21303 (emit quasivector
21304 quasilist*
21305 quasiappend
21306 quasicons
21307 vquasi
21308 quasi)
21309 ((top)
21310 (top)
21311 (top)
21312 (top)
21313 (top)
21314 (top)
21315 (top))
21316 ("l-*-37618"
21317 "l-*-37616"
21318 "l-*-37614"
21319 "l-*-37612"
21320 "l-*-37610"
21321 "l-*-37608"
21322 "l-*-37606"))
21323 #(ribcage
21324 (quasiquote)
21325 ((top))
21326 (((hygiene guile)
21327 .
21328 #(syntax-object
21329 quasiquote
21330 ((top))
21331 (hygiene guile))))))
21332 (hygiene guile))
21333 x-38168
21334 y-38169))))))))
21335 tmp-38166)
21336 (syntax-violation
21337 #f
21338 "source expression failed to match any pattern"
21339 tmp-38165))))))
21340 (quasiappend-37879
21341 (lambda (x-38206 y-38207)
21342 (let ((tmp-38209
21343 ($sc-dispatch y-38207 '(#(atom "quote") ()))))
21344 (if tmp-38209
21345 (@apply
21346 (lambda ()
21347 (if (null? x-38206)
21348 '(#(syntax-object
21349 "quote"
21350 ((top)
21351 #(ribcage () () ())
21352 #(ribcage
21353 #(x y)
21354 #((top) (top))
21355 #("l-*-37710" "l-*-37711"))
21356 #(ribcage
21357 (emit quasivector
21358 quasilist*
21359 quasiappend
21360 quasicons
21361 vquasi
21362 quasi)
21363 ((top) (top) (top) (top) (top) (top) (top))
21364 ("l-*-37618"
21365 "l-*-37616"
21366 "l-*-37614"
21367 "l-*-37612"
21368 "l-*-37610"
21369 "l-*-37608"
21370 "l-*-37606"))
21371 #(ribcage
21372 (quasiquote)
21373 ((top))
21374 (((hygiene guile)
21375 .
21376 #(syntax-object
21377 quasiquote
21378 ((top))
21379 (hygiene guile))))))
21380 (hygiene guile))
21381 ())
21382 (if (null? (cdr x-38206))
21383 (car x-38206)
21384 (let ((tmp-38214 ($sc-dispatch x-38206 'each-any)))
21385 (if tmp-38214
21386 (@apply
21387 (lambda (p-38218)
21388 (cons '#(syntax-object
21389 "append"
21390 ((top)
21391 #(ribcage () () ())
21392 #(ribcage
21393 #(p)
21394 #((top))
21395 #("l-*-37722"))
21396 #(ribcage () () ())
21397 #(ribcage
21398 #(x y)
21399 #((top) (top))
21400 #("l-*-37710" "l-*-37711"))
21401 #(ribcage
21402 (emit quasivector
21403 quasilist*
21404 quasiappend
21405 quasicons
21406 vquasi
21407 quasi)
21408 ((top)
21409 (top)
21410 (top)
21411 (top)
21412 (top)
21413 (top)
21414 (top))
21415 ("l-*-37618"
21416 "l-*-37616"
21417 "l-*-37614"
21418 "l-*-37612"
21419 "l-*-37610"
21420 "l-*-37608"
21421 "l-*-37606"))
21422 #(ribcage
21423 (quasiquote)
21424 ((top))
21425 (((hygiene guile)
21426 .
21427 #(syntax-object
21428 quasiquote
21429 ((top))
21430 (hygiene guile))))))
21431 (hygiene guile))
21432 p-38218))
21433 tmp-38214)
21434 (syntax-violation
21435 #f
21436 "source expression failed to match any pattern"
21437 x-38206))))))
21438 tmp-38209)
21439 (if (null? x-38206)
21440 y-38207
21441 (let ((tmp-38226 (list x-38206 y-38207)))
21442 (let ((tmp-38227
21443 ($sc-dispatch tmp-38226 '(each-any any))))
21444 (if tmp-38227
21445 (@apply
21446 (lambda (p-38229 y-38230)
21447 (cons '#(syntax-object
21448 "append"
21449 ((top)
21450 #(ribcage () () ())
21451 #(ribcage
21452 #(p y)
21453 #((top) (top))
21454 #("l-*-37733" "l-*-37734"))
21455 #(ribcage #(_) #((top)) #("l-*-37725"))
21456 #(ribcage () () ())
21457 #(ribcage
21458 #(x y)
21459 #((top) (top))
21460 #("l-*-37710" "l-*-37711"))
21461 #(ribcage
21462 (emit quasivector
21463 quasilist*
21464 quasiappend
21465 quasicons
21466 vquasi
21467 quasi)
21468 ((top)
21469 (top)
21470 (top)
21471 (top)
21472 (top)
21473 (top)
21474 (top))
21475 ("l-*-37618"
21476 "l-*-37616"
21477 "l-*-37614"
21478 "l-*-37612"
21479 "l-*-37610"
21480 "l-*-37608"
21481 "l-*-37606"))
21482 #(ribcage
21483 (quasiquote)
21484 ((top))
21485 (((hygiene guile)
21486 .
21487 #(syntax-object
21488 quasiquote
21489 ((top))
21490 (hygiene guile))))))
21491 (hygiene guile))
21492 (append p-38229 (list y-38230))))
21493 tmp-38227)
21494 (syntax-violation
21495 #f
21496 "source expression failed to match any pattern"
21497 tmp-38226)))))))))
21498 (quasilist*-37880
21499 (lambda (x-38234 y-38235)
21500 (letrec*
21501 ((f-38236
21502 (lambda (x-38340)
21503 (if (null? x-38340)
21504 y-38235
21505 (quasicons-37878
21506 (car x-38340)
21507 (f-38236 (cdr x-38340)))))))
21508 (f-38236 x-38234))))
21509 (emit-37882
21510 (lambda (x-38343)
21511 (let ((tmp-38345
21512 ($sc-dispatch x-38343 '(#(atom "quote") any))))
21513 (if tmp-38345
21514 (@apply
21515 (lambda (x-38349)
21516 (list '#(syntax-object
21517 quote
21518 ((top)
21519 #(ribcage #(x) #((top)) #("l-*-37800"))
21520 #(ribcage () () ())
21521 #(ribcage #(x) #((top)) #("l-*-37797"))
21522 #(ribcage
21523 (emit quasivector
21524 quasilist*
21525 quasiappend
21526 quasicons
21527 vquasi
21528 quasi)
21529 ((top) (top) (top) (top) (top) (top) (top))
21530 ("l-*-37618"
21531 "l-*-37616"
21532 "l-*-37614"
21533 "l-*-37612"
21534 "l-*-37610"
21535 "l-*-37608"
21536 "l-*-37606"))
21537 #(ribcage
21538 (quasiquote)
21539 ((top))
21540 (((hygiene guile)
21541 .
21542 #(syntax-object
21543 quasiquote
21544 ((top))
21545 (hygiene guile))))))
21546 (hygiene guile))
21547 x-38349))
21548 tmp-38345)
21549 (let ((tmp-38350
21550 ($sc-dispatch
21551 x-38343
21552 '(#(atom "list") . each-any))))
21553 (if tmp-38350
21554 (@apply
21555 (lambda (x-38354)
21556 (let ((tmp-38355 (map emit-37882 x-38354)))
21557 (let ((tmp-38356 ($sc-dispatch tmp-38355 'each-any)))
21558 (if tmp-38356
21559 (@apply
21560 (lambda (t-37805-38358)
21561 (cons '#(syntax-object
21562 list
21563 ((top)
21564 #(ribcage () () ())
21565 #(ribcage
21566 #(t-37805)
21567 #((m-*-37806 top))
21568 #("l-*-37810"))
21569 #(ribcage
21570 #(x)
21571 #((top))
21572 #("l-*-37803"))
21573 #(ribcage () () ())
21574 #(ribcage
21575 #(x)
21576 #((top))
21577 #("l-*-37797"))
21578 #(ribcage
21579 (emit quasivector
21580 quasilist*
21581 quasiappend
21582 quasicons
21583 vquasi
21584 quasi)
21585 ((top)
21586 (top)
21587 (top)
21588 (top)
21589 (top)
21590 (top)
21591 (top))
21592 ("l-*-37618"
21593 "l-*-37616"
21594 "l-*-37614"
21595 "l-*-37612"
21596 "l-*-37610"
21597 "l-*-37608"
21598 "l-*-37606"))
21599 #(ribcage
21600 (quasiquote)
21601 ((top))
21602 (((hygiene guile)
21603 .
21604 #(syntax-object
21605 quasiquote
21606 ((top))
21607 (hygiene guile))))))
21608 (hygiene guile))
21609 t-37805-38358))
21610 tmp-38356)
21611 (syntax-violation
21612 #f
21613 "source expression failed to match any pattern"
21614 tmp-38355)))))
21615 tmp-38350)
21616 (let ((tmp-38359
21617 ($sc-dispatch
21618 x-38343
21619 '(#(atom "list*") . #(each+ any (any) ())))))
21620 (if tmp-38359
21621 (@apply
21622 (lambda (x-38363 y-38364)
21623 (letrec*
21624 ((f-38365
21625 (lambda (x*-38368)
21626 (if (null? x*-38368)
21627 (emit-37882 y-38364)
21628 (let ((tmp-38369
21629 (list (emit-37882 (car x*-38368))
21630 (f-38365 (cdr x*-38368)))))
21631 (let ((tmp-38370
21632 ($sc-dispatch
21633 tmp-38369
21634 '(any any))))
21635 (if tmp-38370
21636 (@apply
21637 (lambda (t-37825-38372
21638 t-37824-38373)
21639 (list '#(syntax-object
21640 cons
21641 ((top)
21642 #(ribcage () () ())
21643 #(ribcage
21644 #(t-37825 t-37824)
21645 #((m-*-37826 top)
21646 (m-*-37826 top))
21647 #("l-*-37830"
21648 "l-*-37831"))
21649 #(ribcage () () ())
21650 #(ribcage
21651 #(f x*)
21652 #((top) (top))
21653 #("l-*-37819"
21654 "l-*-37820"))
21655 #(ribcage
21656 #(x y)
21657 #((top) (top))
21658 #("l-*-37815"
21659 "l-*-37816"))
21660 #(ribcage () () ())
21661 #(ribcage
21662 #(x)
21663 #((top))
21664 #("l-*-37797"))
21665 #(ribcage
21666 (emit quasivector
21667 quasilist*
21668 quasiappend
21669 quasicons
21670 vquasi
21671 quasi)
21672 ((top)
21673 (top)
21674 (top)
21675 (top)
21676 (top)
21677 (top)
21678 (top))
21679 ("l-*-37618"
21680 "l-*-37616"
21681 "l-*-37614"
21682 "l-*-37612"
21683 "l-*-37610"
21684 "l-*-37608"
21685 "l-*-37606"))
21686 #(ribcage
21687 (quasiquote)
21688 ((top))
21689 (((hygiene guile)
21690 .
21691 #(syntax-object
21692 quasiquote
21693 ((top))
21694 (hygiene
21695 guile))))))
21696 (hygiene guile))
21697 t-37825-38372
21698 t-37824-38373))
21699 tmp-38370)
21700 (syntax-violation
21701 #f
21702 "source expression failed to match any pattern"
21703 tmp-38369))))))))
21704 (f-38365 x-38363)))
21705 tmp-38359)
21706 (let ((tmp-38374
21707 ($sc-dispatch
21708 x-38343
21709 '(#(atom "append") . each-any))))
21710 (if tmp-38374
21711 (@apply
21712 (lambda (x-38378)
21713 (let ((tmp-38379 (map emit-37882 x-38378)))
21714 (let ((tmp-38380
21715 ($sc-dispatch tmp-38379 'each-any)))
21716 (if tmp-38380
21717 (@apply
21718 (lambda (t-37837-38382)
21719 (cons '#(syntax-object
21720 append
21721 ((top)
21722 #(ribcage () () ())
21723 #(ribcage
21724 #(t-37837)
21725 #((m-*-37838 top))
21726 #("l-*-37842"))
21727 #(ribcage
21728 #(x)
21729 #((top))
21730 #("l-*-37835"))
21731 #(ribcage () () ())
21732 #(ribcage
21733 #(x)
21734 #((top))
21735 #("l-*-37797"))
21736 #(ribcage
21737 (emit quasivector
21738 quasilist*
21739 quasiappend
21740 quasicons
21741 vquasi
21742 quasi)
21743 ((top)
21744 (top)
21745 (top)
21746 (top)
21747 (top)
21748 (top)
21749 (top))
21750 ("l-*-37618"
21751 "l-*-37616"
21752 "l-*-37614"
21753 "l-*-37612"
21754 "l-*-37610"
21755 "l-*-37608"
21756 "l-*-37606"))
21757 #(ribcage
21758 (quasiquote)
21759 ((top))
21760 (((hygiene guile)
21761 .
21762 #(syntax-object
21763 quasiquote
21764 ((top))
21765 (hygiene guile))))))
21766 (hygiene guile))
21767 t-37837-38382))
21768 tmp-38380)
21769 (syntax-violation
21770 #f
21771 "source expression failed to match any pattern"
21772 tmp-38379)))))
21773 tmp-38374)
21774 (let ((tmp-38383
21775 ($sc-dispatch
21776 x-38343
21777 '(#(atom "vector") . each-any))))
21778 (if tmp-38383
21779 (@apply
21780 (lambda (x-38387)
21781 (let ((tmp-38388 (map emit-37882 x-38387)))
21782 (let ((tmp-38389
21783 ($sc-dispatch
21784 tmp-38388
21785 'each-any)))
21786 (if tmp-38389
21787 (@apply
21788 (lambda (t-37849-38391)
21789 (cons '#(syntax-object
21790 vector
21791 ((top)
21792 #(ribcage () () ())
21793 #(ribcage
21794 #(t-37849)
21795 #((m-*-37850 top))
21796 #("l-*-37854"))
21797 #(ribcage
21798 #(x)
21799 #((top))
21800 #("l-*-37847"))
21801 #(ribcage () () ())
21802 #(ribcage
21803 #(x)
21804 #((top))
21805 #("l-*-37797"))
21806 #(ribcage
21807 (emit quasivector
21808 quasilist*
21809 quasiappend
21810 quasicons
21811 vquasi
21812 quasi)
21813 ((top)
21814 (top)
21815 (top)
21816 (top)
21817 (top)
21818 (top)
21819 (top))
21820 ("l-*-37618"
21821 "l-*-37616"
21822 "l-*-37614"
21823 "l-*-37612"
21824 "l-*-37610"
21825 "l-*-37608"
21826 "l-*-37606"))
21827 #(ribcage
21828 (quasiquote)
21829 ((top))
21830 (((hygiene guile)
21831 .
21832 #(syntax-object
21833 quasiquote
21834 ((top))
21835 (hygiene
21836 guile))))))
21837 (hygiene guile))
21838 t-37849-38391))
21839 tmp-38389)
21840 (syntax-violation
21841 #f
21842 "source expression failed to match any pattern"
21843 tmp-38388)))))
21844 tmp-38383)
21845 (let ((tmp-38392
21846 ($sc-dispatch
21847 x-38343
21848 '(#(atom "list->vector") any))))
21849 (if tmp-38392
21850 (@apply
21851 (lambda (x-38396)
21852 (let ((tmp-38397 (emit-37882 x-38396)))
21853 (list '#(syntax-object
21854 list->vector
21855 ((top)
21856 #(ribcage () () ())
21857 #(ribcage
21858 #(t-37861)
21859 #((m-*-37862 top))
21860 #("l-*-37865"))
21861 #(ribcage
21862 #(x)
21863 #((top))
21864 #("l-*-37859"))
21865 #(ribcage () () ())
21866 #(ribcage
21867 #(x)
21868 #((top))
21869 #("l-*-37797"))
21870 #(ribcage
21871 (emit quasivector
21872 quasilist*
21873 quasiappend
21874 quasicons
21875 vquasi
21876 quasi)
21877 ((top)
21878 (top)
21879 (top)
21880 (top)
21881 (top)
21882 (top)
21883 (top))
21884 ("l-*-37618"
21885 "l-*-37616"
21886 "l-*-37614"
21887 "l-*-37612"
21888 "l-*-37610"
21889 "l-*-37608"
21890 "l-*-37606"))
21891 #(ribcage
21892 (quasiquote)
21893 ((top))
21894 (((hygiene guile)
21895 .
21896 #(syntax-object
21897 quasiquote
21898 ((top))
21899 (hygiene guile))))))
21900 (hygiene guile))
21901 tmp-38397)))
21902 tmp-38392)
21903 (let ((tmp-38400
21904 ($sc-dispatch
21905 x-38343
21906 '(#(atom "value") any))))
21907 (if tmp-38400
21908 (@apply
21909 (lambda (x-38404) x-38404)
21910 tmp-38400)
21911 (syntax-violation
21912 #f
21913 "source expression failed to match any pattern"
21914 x-38343))))))))))))))))))
21915 (lambda (x-37883)
21916 (let ((tmp-37885 ($sc-dispatch x-37883 '(_ any))))
21917 (if tmp-37885
21918 (@apply
21919 (lambda (e-37889)
21920 (emit-37882 (quasi-37876 e-37889 0)))
21921 tmp-37885)
21922 (syntax-violation
21923 #f
21924 "source expression failed to match any pattern"
21925 x-37883)))))))
21926
21927 (define include
21928 (make-syntax-transformer
21929 'include
21930 'macro
21931 (lambda (x-38460)
21932 (letrec*
21933 ((read-file-38461
21934 (lambda (fn-38570 k-38571)
21935 (let ((p-38572 (open-input-file fn-38570)))
21936 (letrec*
21937 ((f-38573
21938 (lambda (x-38627 result-38628)
21939 (if (eof-object? x-38627)
21940 (begin
21941 (close-input-port p-38572)
21942 (reverse result-38628))
21943 (f-38573
21944 (read p-38572)
21945 (cons (datum->syntax k-38571 x-38627)
21946 result-38628))))))
21947 (f-38573 (read p-38572) '()))))))
21948 (let ((tmp-38463 ($sc-dispatch x-38460 '(any any))))
21949 (if tmp-38463
21950 (@apply
21951 (lambda (k-38467 filename-38468)
21952 (let ((fn-38469 (syntax->datum filename-38468)))
21953 (let ((tmp-38470
21954 (read-file-38461 fn-38469 filename-38468)))
21955 (let ((tmp-38471 ($sc-dispatch tmp-38470 'each-any)))
21956 (if tmp-38471
21957 (@apply
21958 (lambda (exp-38489)
21959 (cons '#(syntax-object
21960 begin
21961 ((top)
21962 #(ribcage () () ())
21963 #(ribcage #(exp) #((top)) #("l-*-38457"))
21964 #(ribcage () () ())
21965 #(ribcage () () ())
21966 #(ribcage #(fn) #((top)) #("l-*-38452"))
21967 #(ribcage
21968 #(k filename)
21969 #((top) (top))
21970 #("l-*-38448" "l-*-38449"))
21971 #(ribcage
21972 (read-file)
21973 ((top))
21974 ("l-*-38432"))
21975 #(ribcage #(x) #((top)) #("l-*-38431"))
21976 #(ribcage
21977 (include)
21978 ((top))
21979 (((hygiene guile)
21980 .
21981 #(syntax-object
21982 include
21983 ((top))
21984 (hygiene guile))))))
21985 (hygiene guile))
21986 exp-38489))
21987 tmp-38471)
21988 (syntax-violation
21989 #f
21990 "source expression failed to match any pattern"
21991 tmp-38470))))))
21992 tmp-38463)
21993 (syntax-violation
21994 #f
21995 "source expression failed to match any pattern"
21996 x-38460)))))))
21997
21998 (define include-from-path
21999 (make-syntax-transformer
22000 'include-from-path
22001 'macro
22002 (lambda (x-38648)
22003 (let ((tmp-38650 ($sc-dispatch x-38648 '(any any))))
22004 (if tmp-38650
22005 (@apply
22006 (lambda (k-38654 filename-38655)
22007 (let ((fn-38656 (syntax->datum filename-38655)))
22008 (let ((tmp-38657
22009 (datum->syntax
22010 filename-38655
22011 (let ((t-38660 (%search-load-path fn-38656)))
22012 (if t-38660
22013 t-38660
22014 (syntax-violation
22015 'include-from-path
22016 "file not found in path"
22017 x-38648
22018 filename-38655))))))
22019 (list '#(syntax-object
22020 include
22021 ((top)
22022 #(ribcage () () ())
22023 #(ribcage #(fn) #((top)) #("l-*-38642"))
22024 #(ribcage () () ())
22025 #(ribcage () () ())
22026 #(ribcage #(fn) #((top)) #("l-*-38638"))
22027 #(ribcage
22028 #(k filename)
22029 #((top) (top))
22030 #("l-*-38634" "l-*-38635"))
22031 #(ribcage () () ())
22032 #(ribcage #(x) #((top)) #("l-*-38631"))
22033 #(ribcage
22034 (include-from-path)
22035 ((top))
22036 (((hygiene guile)
22037 .
22038 #(syntax-object
22039 include-from-path
22040 ((top))
22041 (hygiene guile))))))
22042 (hygiene guile))
22043 tmp-38657))))
22044 tmp-38650)
22045 (syntax-violation
22046 #f
22047 "source expression failed to match any pattern"
22048 x-38648))))))
22049
22050 (define unquote
22051 (make-syntax-transformer
22052 'unquote
22053 'macro
22054 (lambda (x-38670)
22055 (syntax-violation
22056 'unquote
22057 "expression not valid outside of quasiquote"
22058 x-38670))))
22059
22060 (define unquote-splicing
22061 (make-syntax-transformer
22062 'unquote-splicing
22063 'macro
22064 (lambda (x-38674)
22065 (syntax-violation
22066 'unquote-splicing
22067 "expression not valid outside of quasiquote"
22068 x-38674))))
22069
22070 (define case
22071 (make-syntax-transformer
22072 'case
22073 'macro
22074 (lambda (x-38731)
22075 (let ((tmp-38733
22076 ($sc-dispatch x-38731 '(_ any any . each-any))))
22077 (if tmp-38733
22078 (@apply
22079 (lambda (e-38737 m1-38738 m2-38739)
22080 (let ((tmp-38740
22081 (letrec*
22082 ((f-38794
22083 (lambda (clause-38797 clauses-38798)
22084 (if (null? clauses-38798)
22085 (let ((tmp-38800
22086 ($sc-dispatch
22087 clause-38797
22088 '(#(free-id
22089 #(syntax-object
22090 else
22091 ((top)
22092 #(ribcage () () ())
22093 #(ribcage
22094 #(f clause clauses)
22095 #((top) (top) (top))
22096 #("l-*-38690"
22097 "l-*-38691"
22098 "l-*-38692"))
22099 #(ribcage
22100 #(e m1 m2)
22101 #((top) (top) (top))
22102 #("l-*-38680"
22103 "l-*-38681"
22104 "l-*-38682"))
22105 #(ribcage () () ())
22106 #(ribcage
22107 #(x)
22108 #((top))
22109 #("l-*-38677"))
22110 #(ribcage
22111 (case)
22112 ((top))
22113 (((hygiene guile)
22114 .
22115 #(syntax-object
22116 case
22117 ((top))
22118 (hygiene guile))))))
22119 (hygiene guile)))
22120 any
22121 .
22122 each-any))))
22123 (if tmp-38800
22124 (@apply
22125 (lambda (e1-38804 e2-38805)
22126 (cons '#(syntax-object
22127 begin
22128 ((top)
22129 #(ribcage
22130 #(e1 e2)
22131 #((top) (top))
22132 #("l-*-38699" "l-*-38700"))
22133 #(ribcage () () ())
22134 #(ribcage
22135 #(f clause clauses)
22136 #((top) (top) (top))
22137 #("l-*-38690"
22138 "l-*-38691"
22139 "l-*-38692"))
22140 #(ribcage
22141 #(e m1 m2)
22142 #((top) (top) (top))
22143 #("l-*-38680"
22144 "l-*-38681"
22145 "l-*-38682"))
22146 #(ribcage () () ())
22147 #(ribcage
22148 #(x)
22149 #((top))
22150 #("l-*-38677"))
22151 #(ribcage
22152 (case)
22153 ((top))
22154 (((hygiene guile)
22155 .
22156 #(syntax-object
22157 case
22158 ((top))
22159 (hygiene guile))))))
22160 (hygiene guile))
22161 (cons e1-38804 e2-38805)))
22162 tmp-38800)
22163 (let ((tmp-38806
22164 ($sc-dispatch
22165 clause-38797
22166 '(each-any any . each-any))))
22167 (if tmp-38806
22168 (@apply
22169 (lambda (k-38810 e1-38811 e2-38812)
22170 (list '#(syntax-object
22171 if
22172 ((top)
22173 #(ribcage
22174 #(k e1 e2)
22175 #((top) (top) (top))
22176 #("l-*-38705"
22177 "l-*-38706"
22178 "l-*-38707"))
22179 #(ribcage () () ())
22180 #(ribcage
22181 #(f clause clauses)
22182 #((top) (top) (top))
22183 #("l-*-38690"
22184 "l-*-38691"
22185 "l-*-38692"))
22186 #(ribcage
22187 #(e m1 m2)
22188 #((top) (top) (top))
22189 #("l-*-38680"
22190 "l-*-38681"
22191 "l-*-38682"))
22192 #(ribcage () () ())
22193 #(ribcage
22194 #(x)
22195 #((top))
22196 #("l-*-38677"))
22197 #(ribcage
22198 (case)
22199 ((top))
22200 (((hygiene guile)
22201 .
22202 #(syntax-object
22203 case
22204 ((top))
22205 (hygiene guile))))))
22206 (hygiene guile))
22207 (list '#(syntax-object
22208 memv
22209 ((top)
22210 #(ribcage
22211 #(k e1 e2)
22212 #((top)
22213 (top)
22214 (top))
22215 #("l-*-38705"
22216 "l-*-38706"
22217 "l-*-38707"))
22218 #(ribcage () () ())
22219 #(ribcage
22220 #(f
22221 clause
22222 clauses)
22223 #((top)
22224 (top)
22225 (top))
22226 #("l-*-38690"
22227 "l-*-38691"
22228 "l-*-38692"))
22229 #(ribcage
22230 #(e m1 m2)
22231 #((top)
22232 (top)
22233 (top))
22234 #("l-*-38680"
22235 "l-*-38681"
22236 "l-*-38682"))
22237 #(ribcage () () ())
22238 #(ribcage
22239 #(x)
22240 #((top))
22241 #("l-*-38677"))
22242 #(ribcage
22243 (case)
22244 ((top))
22245 (((hygiene guile)
22246 .
22247 #(syntax-object
22248 case
22249 ((top))
22250 (hygiene
22251 guile))))))
22252 (hygiene guile))
22253 '#(syntax-object
22254 t
22255 ((top)
22256 #(ribcage
22257 #(k e1 e2)
22258 #((top)
22259 (top)
22260 (top))
22261 #("l-*-38705"
22262 "l-*-38706"
22263 "l-*-38707"))
22264 #(ribcage () () ())
22265 #(ribcage
22266 #(f
22267 clause
22268 clauses)
22269 #((top)
22270 (top)
22271 (top))
22272 #("l-*-38690"
22273 "l-*-38691"
22274 "l-*-38692"))
22275 #(ribcage
22276 #(e m1 m2)
22277 #((top)
22278 (top)
22279 (top))
22280 #("l-*-38680"
22281 "l-*-38681"
22282 "l-*-38682"))
22283 #(ribcage () () ())
22284 #(ribcage
22285 #(x)
22286 #((top))
22287 #("l-*-38677"))
22288 #(ribcage
22289 (case)
22290 ((top))
22291 (((hygiene guile)
22292 .
22293 #(syntax-object
22294 case
22295 ((top))
22296 (hygiene
22297 guile))))))
22298 (hygiene guile))
22299 (list '#(syntax-object
22300 quote
22301 ((top)
22302 #(ribcage
22303 #(k e1 e2)
22304 #((top)
22305 (top)
22306 (top))
22307 #("l-*-38705"
22308 "l-*-38706"
22309 "l-*-38707"))
22310 #(ribcage
22311 ()
22312 ()
22313 ())
22314 #(ribcage
22315 #(f
22316 clause
22317 clauses)
22318 #((top)
22319 (top)
22320 (top))
22321 #("l-*-38690"
22322 "l-*-38691"
22323 "l-*-38692"))
22324 #(ribcage
22325 #(e m1 m2)
22326 #((top)
22327 (top)
22328 (top))
22329 #("l-*-38680"
22330 "l-*-38681"
22331 "l-*-38682"))
22332 #(ribcage
22333 ()
22334 ()
22335 ())
22336 #(ribcage
22337 #(x)
22338 #((top))
22339 #("l-*-38677"))
22340 #(ribcage
22341 (case)
22342 ((top))
22343 (((hygiene
22344 guile)
22345 .
22346 #(syntax-object
22347 case
22348 ((top))
22349 (hygiene
22350 guile))))))
22351 (hygiene
22352 guile))
22353 k-38810))
22354 (cons '#(syntax-object
22355 begin
22356 ((top)
22357 #(ribcage
22358 #(k e1 e2)
22359 #((top)
22360 (top)
22361 (top))
22362 #("l-*-38705"
22363 "l-*-38706"
22364 "l-*-38707"))
22365 #(ribcage () () ())
22366 #(ribcage
22367 #(f
22368 clause
22369 clauses)
22370 #((top)
22371 (top)
22372 (top))
22373 #("l-*-38690"
22374 "l-*-38691"
22375 "l-*-38692"))
22376 #(ribcage
22377 #(e m1 m2)
22378 #((top)
22379 (top)
22380 (top))
22381 #("l-*-38680"
22382 "l-*-38681"
22383 "l-*-38682"))
22384 #(ribcage () () ())
22385 #(ribcage
22386 #(x)
22387 #((top))
22388 #("l-*-38677"))
22389 #(ribcage
22390 (case)
22391 ((top))
22392 (((hygiene guile)
22393 .
22394 #(syntax-object
22395 case
22396 ((top))
22397 (hygiene
22398 guile))))))
22399 (hygiene guile))
22400 (cons e1-38811
22401 e2-38812))))
22402 tmp-38806)
22403 (syntax-violation
22404 'case
22405 "bad clause"
22406 x-38731
22407 clause-38797)))))
22408 (let ((tmp-38820
22409 (f-38794
22410 (car clauses-38798)
22411 (cdr clauses-38798))))
22412 (let ((tmp-38823
22413 ($sc-dispatch
22414 clause-38797
22415 '(each-any any . each-any))))
22416 (if tmp-38823
22417 (@apply
22418 (lambda (k-38827 e1-38828 e2-38829)
22419 (list '#(syntax-object
22420 if
22421 ((top)
22422 #(ribcage
22423 #(k e1 e2)
22424 #((top) (top) (top))
22425 #("l-*-38721"
22426 "l-*-38722"
22427 "l-*-38723"))
22428 #(ribcage () () ())
22429 #(ribcage
22430 #(rest)
22431 #((top))
22432 #("l-*-38717"))
22433 #(ribcage () () ())
22434 #(ribcage
22435 #(f clause clauses)
22436 #((top) (top) (top))
22437 #("l-*-38690"
22438 "l-*-38691"
22439 "l-*-38692"))
22440 #(ribcage
22441 #(e m1 m2)
22442 #((top) (top) (top))
22443 #("l-*-38680"
22444 "l-*-38681"
22445 "l-*-38682"))
22446 #(ribcage () () ())
22447 #(ribcage
22448 #(x)
22449 #((top))
22450 #("l-*-38677"))
22451 #(ribcage
22452 (case)
22453 ((top))
22454 (((hygiene guile)
22455 .
22456 #(syntax-object
22457 case
22458 ((top))
22459 (hygiene guile))))))
22460 (hygiene guile))
22461 (list '#(syntax-object
22462 memv
22463 ((top)
22464 #(ribcage
22465 #(k e1 e2)
22466 #((top) (top) (top))
22467 #("l-*-38721"
22468 "l-*-38722"
22469 "l-*-38723"))
22470 #(ribcage () () ())
22471 #(ribcage
22472 #(rest)
22473 #((top))
22474 #("l-*-38717"))
22475 #(ribcage () () ())
22476 #(ribcage
22477 #(f clause clauses)
22478 #((top) (top) (top))
22479 #("l-*-38690"
22480 "l-*-38691"
22481 "l-*-38692"))
22482 #(ribcage
22483 #(e m1 m2)
22484 #((top) (top) (top))
22485 #("l-*-38680"
22486 "l-*-38681"
22487 "l-*-38682"))
22488 #(ribcage () () ())
22489 #(ribcage
22490 #(x)
22491 #((top))
22492 #("l-*-38677"))
22493 #(ribcage
22494 (case)
22495 ((top))
22496 (((hygiene guile)
22497 .
22498 #(syntax-object
22499 case
22500 ((top))
22501 (hygiene
22502 guile))))))
22503 (hygiene guile))
22504 '#(syntax-object
22505 t
22506 ((top)
22507 #(ribcage
22508 #(k e1 e2)
22509 #((top) (top) (top))
22510 #("l-*-38721"
22511 "l-*-38722"
22512 "l-*-38723"))
22513 #(ribcage () () ())
22514 #(ribcage
22515 #(rest)
22516 #((top))
22517 #("l-*-38717"))
22518 #(ribcage () () ())
22519 #(ribcage
22520 #(f clause clauses)
22521 #((top) (top) (top))
22522 #("l-*-38690"
22523 "l-*-38691"
22524 "l-*-38692"))
22525 #(ribcage
22526 #(e m1 m2)
22527 #((top) (top) (top))
22528 #("l-*-38680"
22529 "l-*-38681"
22530 "l-*-38682"))
22531 #(ribcage () () ())
22532 #(ribcage
22533 #(x)
22534 #((top))
22535 #("l-*-38677"))
22536 #(ribcage
22537 (case)
22538 ((top))
22539 (((hygiene guile)
22540 .
22541 #(syntax-object
22542 case
22543 ((top))
22544 (hygiene
22545 guile))))))
22546 (hygiene guile))
22547 (list '#(syntax-object
22548 quote
22549 ((top)
22550 #(ribcage
22551 #(k e1 e2)
22552 #((top)
22553 (top)
22554 (top))
22555 #("l-*-38721"
22556 "l-*-38722"
22557 "l-*-38723"))
22558 #(ribcage
22559 ()
22560 ()
22561 ())
22562 #(ribcage
22563 #(rest)
22564 #((top))
22565 #("l-*-38717"))
22566 #(ribcage
22567 ()
22568 ()
22569 ())
22570 #(ribcage
22571 #(f
22572 clause
22573 clauses)
22574 #((top)
22575 (top)
22576 (top))
22577 #("l-*-38690"
22578 "l-*-38691"
22579 "l-*-38692"))
22580 #(ribcage
22581 #(e m1 m2)
22582 #((top)
22583 (top)
22584 (top))
22585 #("l-*-38680"
22586 "l-*-38681"
22587 "l-*-38682"))
22588 #(ribcage
22589 ()
22590 ()
22591 ())
22592 #(ribcage
22593 #(x)
22594 #((top))
22595 #("l-*-38677"))
22596 #(ribcage
22597 (case)
22598 ((top))
22599 (((hygiene
22600 guile)
22601 .
22602 #(syntax-object
22603 case
22604 ((top))
22605 (hygiene
22606 guile))))))
22607 (hygiene guile))
22608 k-38827))
22609 (cons '#(syntax-object
22610 begin
22611 ((top)
22612 #(ribcage
22613 #(k e1 e2)
22614 #((top) (top) (top))
22615 #("l-*-38721"
22616 "l-*-38722"
22617 "l-*-38723"))
22618 #(ribcage () () ())
22619 #(ribcage
22620 #(rest)
22621 #((top))
22622 #("l-*-38717"))
22623 #(ribcage () () ())
22624 #(ribcage
22625 #(f clause clauses)
22626 #((top) (top) (top))
22627 #("l-*-38690"
22628 "l-*-38691"
22629 "l-*-38692"))
22630 #(ribcage
22631 #(e m1 m2)
22632 #((top) (top) (top))
22633 #("l-*-38680"
22634 "l-*-38681"
22635 "l-*-38682"))
22636 #(ribcage () () ())
22637 #(ribcage
22638 #(x)
22639 #((top))
22640 #("l-*-38677"))
22641 #(ribcage
22642 (case)
22643 ((top))
22644 (((hygiene guile)
22645 .
22646 #(syntax-object
22647 case
22648 ((top))
22649 (hygiene
22650 guile))))))
22651 (hygiene guile))
22652 (cons e1-38828 e2-38829))
22653 tmp-38820))
22654 tmp-38823)
22655 (syntax-violation
22656 'case
22657 "bad clause"
22658 x-38731
22659 clause-38797))))))))
22660 (f-38794 m1-38738 m2-38739))))
22661 (let ((body-38741 tmp-38740))
22662 (list '#(syntax-object
22663 let
22664 ((top)
22665 #(ribcage () () ())
22666 #(ribcage #(body) #((top)) #("l-*-38688"))
22667 #(ribcage
22668 #(e m1 m2)
22669 #((top) (top) (top))
22670 #("l-*-38680" "l-*-38681" "l-*-38682"))
22671 #(ribcage () () ())
22672 #(ribcage #(x) #((top)) #("l-*-38677"))
22673 #(ribcage
22674 (case)
22675 ((top))
22676 (((hygiene guile)
22677 .
22678 #(syntax-object
22679 case
22680 ((top))
22681 (hygiene guile))))))
22682 (hygiene guile))
22683 (list (list '#(syntax-object
22684 t
22685 ((top)
22686 #(ribcage () () ())
22687 #(ribcage
22688 #(body)
22689 #((top))
22690 #("l-*-38688"))
22691 #(ribcage
22692 #(e m1 m2)
22693 #((top) (top) (top))
22694 #("l-*-38680"
22695 "l-*-38681"
22696 "l-*-38682"))
22697 #(ribcage () () ())
22698 #(ribcage #(x) #((top)) #("l-*-38677"))
22699 #(ribcage
22700 (case)
22701 ((top))
22702 (((hygiene guile)
22703 .
22704 #(syntax-object
22705 case
22706 ((top))
22707 (hygiene guile))))))
22708 (hygiene guile))
22709 e-38737))
22710 body-38741))))
22711 tmp-38733)
22712 (syntax-violation
22713 #f
22714 "source expression failed to match any pattern"
22715 x-38731))))))
22716
22717 (define make-variable-transformer
22718 (lambda (proc-38848)
22719 (if (procedure? proc-38848)
22720 (letrec*
22721 ((trans-38849
22722 (lambda (x-38851) (proc-38848 x-38851))))
22723 (begin
22724 (set-procedure-property!
22725 trans-38849
22726 'variable-transformer
22727 #t)
22728 trans-38849))
22729 (error "variable transformer not a procedure"
22730 proc-38848))))
22731
22732 (define identifier-syntax
22733 (make-syntax-transformer
22734 'identifier-syntax
22735 'macro
22736 (lambda (x-38888)
22737 (let ((tmp-38890 ($sc-dispatch x-38888 '(_ any))))
22738 (if tmp-38890
22739 (@apply
22740 (lambda (e-38894)
22741 (list '#(syntax-object
22742 lambda
22743 ((top)
22744 #(ribcage #(e) #((top)) #("l-*-38863"))
22745 #(ribcage () () ())
22746 #(ribcage #(x) #((top)) #("l-*-38860"))
22747 #(ribcage
22748 (identifier-syntax)
22749 ((top))
22750 (((hygiene guile)
22751 .
22752 #(syntax-object
22753 identifier-syntax
22754 ((top))
22755 (hygiene guile))))))
22756 (hygiene guile))
22757 '(#(syntax-object
22758 x
22759 ((top)
22760 #(ribcage #(e) #((top)) #("l-*-38863"))
22761 #(ribcage () () ())
22762 #(ribcage #(x) #((top)) #("l-*-38860"))
22763 #(ribcage
22764 (identifier-syntax)
22765 ((top))
22766 (((hygiene guile)
22767 .
22768 #(syntax-object
22769 identifier-syntax
22770 ((top))
22771 (hygiene guile))))))
22772 (hygiene guile)))
22773 '#((#(syntax-object
22774 macro-type
22775 ((top)
22776 #(ribcage #(e) #((top)) #("l-*-38863"))
22777 #(ribcage () () ())
22778 #(ribcage #(x) #((top)) #("l-*-38860"))
22779 #(ribcage
22780 (identifier-syntax)
22781 ((top))
22782 (((hygiene guile)
22783 .
22784 #(syntax-object
22785 identifier-syntax
22786 ((top))
22787 (hygiene guile))))))
22788 (hygiene guile))
22789 .
22790 #(syntax-object
22791 identifier-syntax
22792 ((top)
22793 #(ribcage #(e) #((top)) #("l-*-38863"))
22794 #(ribcage () () ())
22795 #(ribcage #(x) #((top)) #("l-*-38860"))
22796 #(ribcage
22797 (identifier-syntax)
22798 ((top))
22799 (((hygiene guile)
22800 .
22801 #(syntax-object
22802 identifier-syntax
22803 ((top))
22804 (hygiene guile))))))
22805 (hygiene guile))))
22806 (list '#(syntax-object
22807 syntax-case
22808 ((top)
22809 #(ribcage #(e) #((top)) #("l-*-38863"))
22810 #(ribcage () () ())
22811 #(ribcage #(x) #((top)) #("l-*-38860"))
22812 #(ribcage
22813 (identifier-syntax)
22814 ((top))
22815 (((hygiene guile)
22816 .
22817 #(syntax-object
22818 identifier-syntax
22819 ((top))
22820 (hygiene guile))))))
22821 (hygiene guile))
22822 '#(syntax-object
22823 x
22824 ((top)
22825 #(ribcage #(e) #((top)) #("l-*-38863"))
22826 #(ribcage () () ())
22827 #(ribcage #(x) #((top)) #("l-*-38860"))
22828 #(ribcage
22829 (identifier-syntax)
22830 ((top))
22831 (((hygiene guile)
22832 .
22833 #(syntax-object
22834 identifier-syntax
22835 ((top))
22836 (hygiene guile))))))
22837 (hygiene guile))
22838 '()
22839 (list '#(syntax-object
22840 id
22841 ((top)
22842 #(ribcage #(e) #((top)) #("l-*-38863"))
22843 #(ribcage () () ())
22844 #(ribcage #(x) #((top)) #("l-*-38860"))
22845 #(ribcage
22846 (identifier-syntax)
22847 ((top))
22848 (((hygiene guile)
22849 .
22850 #(syntax-object
22851 identifier-syntax
22852 ((top))
22853 (hygiene guile))))))
22854 (hygiene guile))
22855 '(#(syntax-object
22856 identifier?
22857 ((top)
22858 #(ribcage #(e) #((top)) #("l-*-38863"))
22859 #(ribcage () () ())
22860 #(ribcage #(x) #((top)) #("l-*-38860"))
22861 #(ribcage
22862 (identifier-syntax)
22863 ((top))
22864 (((hygiene guile)
22865 .
22866 #(syntax-object
22867 identifier-syntax
22868 ((top))
22869 (hygiene guile))))))
22870 (hygiene guile))
22871 (#(syntax-object
22872 syntax
22873 ((top)
22874 #(ribcage #(e) #((top)) #("l-*-38863"))
22875 #(ribcage () () ())
22876 #(ribcage #(x) #((top)) #("l-*-38860"))
22877 #(ribcage
22878 (identifier-syntax)
22879 ((top))
22880 (((hygiene guile)
22881 .
22882 #(syntax-object
22883 identifier-syntax
22884 ((top))
22885 (hygiene guile))))))
22886 (hygiene guile))
22887 #(syntax-object
22888 id
22889 ((top)
22890 #(ribcage #(e) #((top)) #("l-*-38863"))
22891 #(ribcage () () ())
22892 #(ribcage #(x) #((top)) #("l-*-38860"))
22893 #(ribcage
22894 (identifier-syntax)
22895 ((top))
22896 (((hygiene guile)
22897 .
22898 #(syntax-object
22899 identifier-syntax
22900 ((top))
22901 (hygiene guile))))))
22902 (hygiene guile))))
22903 (list '#(syntax-object
22904 syntax
22905 ((top)
22906 #(ribcage
22907 #(e)
22908 #((top))
22909 #("l-*-38863"))
22910 #(ribcage () () ())
22911 #(ribcage
22912 #(x)
22913 #((top))
22914 #("l-*-38860"))
22915 #(ribcage
22916 (identifier-syntax)
22917 ((top))
22918 (((hygiene guile)
22919 .
22920 #(syntax-object
22921 identifier-syntax
22922 ((top))
22923 (hygiene guile))))))
22924 (hygiene guile))
22925 e-38894))
22926 (list '(#(syntax-object
22927 _
22928 ((top)
22929 #(ribcage #(e) #((top)) #("l-*-38863"))
22930 #(ribcage () () ())
22931 #(ribcage #(x) #((top)) #("l-*-38860"))
22932 #(ribcage
22933 (identifier-syntax)
22934 ((top))
22935 (((hygiene guile)
22936 .
22937 #(syntax-object
22938 identifier-syntax
22939 ((top))
22940 (hygiene guile))))))
22941 (hygiene guile))
22942 #(syntax-object
22943 x
22944 ((top)
22945 #(ribcage #(e) #((top)) #("l-*-38863"))
22946 #(ribcage () () ())
22947 #(ribcage #(x) #((top)) #("l-*-38860"))
22948 #(ribcage
22949 (identifier-syntax)
22950 ((top))
22951 (((hygiene guile)
22952 .
22953 #(syntax-object
22954 identifier-syntax
22955 ((top))
22956 (hygiene guile))))))
22957 (hygiene guile))
22958 #(syntax-object
22959 ...
22960 ((top)
22961 #(ribcage #(e) #((top)) #("l-*-38863"))
22962 #(ribcage () () ())
22963 #(ribcage #(x) #((top)) #("l-*-38860"))
22964 #(ribcage
22965 (identifier-syntax)
22966 ((top))
22967 (((hygiene guile)
22968 .
22969 #(syntax-object
22970 identifier-syntax
22971 ((top))
22972 (hygiene guile))))))
22973 (hygiene guile)))
22974 (list '#(syntax-object
22975 syntax
22976 ((top)
22977 #(ribcage
22978 #(e)
22979 #((top))
22980 #("l-*-38863"))
22981 #(ribcage () () ())
22982 #(ribcage
22983 #(x)
22984 #((top))
22985 #("l-*-38860"))
22986 #(ribcage
22987 (identifier-syntax)
22988 ((top))
22989 (((hygiene guile)
22990 .
22991 #(syntax-object
22992 identifier-syntax
22993 ((top))
22994 (hygiene guile))))))
22995 (hygiene guile))
22996 (cons e-38894
22997 '(#(syntax-object
22998 x
22999 ((top)
23000 #(ribcage
23001 #(e)
23002 #((top))
23003 #("l-*-38863"))
23004 #(ribcage () () ())
23005 #(ribcage
23006 #(x)
23007 #((top))
23008 #("l-*-38860"))
23009 #(ribcage
23010 (identifier-syntax)
23011 ((top))
23012 (((hygiene guile)
23013 .
23014 #(syntax-object
23015 identifier-syntax
23016 ((top))
23017 (hygiene guile))))))
23018 (hygiene guile))
23019 #(syntax-object
23020 ...
23021 ((top)
23022 #(ribcage
23023 #(e)
23024 #((top))
23025 #("l-*-38863"))
23026 #(ribcage () () ())
23027 #(ribcage
23028 #(x)
23029 #((top))
23030 #("l-*-38860"))
23031 #(ribcage
23032 (identifier-syntax)
23033 ((top))
23034 (((hygiene guile)
23035 .
23036 #(syntax-object
23037 identifier-syntax
23038 ((top))
23039 (hygiene guile))))))
23040 (hygiene guile)))))))))
23041 tmp-38890)
23042 (let ((tmp-38895
23043 ($sc-dispatch
23044 x-38888
23045 '(_ (any any)
23046 ((#(free-id
23047 #(syntax-object
23048 set!
23049 ((top)
23050 #(ribcage () () ())
23051 #(ribcage #(x) #((top)) #("l-*-38860"))
23052 #(ribcage
23053 (identifier-syntax)
23054 ((top))
23055 (((hygiene guile)
23056 .
23057 #(syntax-object
23058 identifier-syntax
23059 ((top))
23060 (hygiene guile))))))
23061 (hygiene guile)))
23062 any
23063 any)
23064 any)))))
23065 (if (if tmp-38895
23066 (@apply
23067 (lambda (id-38899
23068 exp1-38900
23069 var-38901
23070 val-38902
23071 exp2-38903)
23072 (if (identifier? id-38899)
23073 (identifier? var-38901)
23074 #f))
23075 tmp-38895)
23076 #f)
23077 (@apply
23078 (lambda (id-38904
23079 exp1-38905
23080 var-38906
23081 val-38907
23082 exp2-38908)
23083 (list '#(syntax-object
23084 make-variable-transformer
23085 ((top)
23086 #(ribcage
23087 #(id exp1 var val exp2)
23088 #((top) (top) (top) (top) (top))
23089 #("l-*-38878"
23090 "l-*-38879"
23091 "l-*-38880"
23092 "l-*-38881"
23093 "l-*-38882"))
23094 #(ribcage () () ())
23095 #(ribcage #(x) #((top)) #("l-*-38860"))
23096 #(ribcage
23097 (identifier-syntax)
23098 ((top))
23099 (((hygiene guile)
23100 .
23101 #(syntax-object
23102 identifier-syntax
23103 ((top))
23104 (hygiene guile))))))
23105 (hygiene guile))
23106 (list '#(syntax-object
23107 lambda
23108 ((top)
23109 #(ribcage
23110 #(id exp1 var val exp2)
23111 #((top) (top) (top) (top) (top))
23112 #("l-*-38878"
23113 "l-*-38879"
23114 "l-*-38880"
23115 "l-*-38881"
23116 "l-*-38882"))
23117 #(ribcage () () ())
23118 #(ribcage #(x) #((top)) #("l-*-38860"))
23119 #(ribcage
23120 (identifier-syntax)
23121 ((top))
23122 (((hygiene guile)
23123 .
23124 #(syntax-object
23125 identifier-syntax
23126 ((top))
23127 (hygiene guile))))))
23128 (hygiene guile))
23129 '(#(syntax-object
23130 x
23131 ((top)
23132 #(ribcage
23133 #(id exp1 var val exp2)
23134 #((top) (top) (top) (top) (top))
23135 #("l-*-38878"
23136 "l-*-38879"
23137 "l-*-38880"
23138 "l-*-38881"
23139 "l-*-38882"))
23140 #(ribcage () () ())
23141 #(ribcage #(x) #((top)) #("l-*-38860"))
23142 #(ribcage
23143 (identifier-syntax)
23144 ((top))
23145 (((hygiene guile)
23146 .
23147 #(syntax-object
23148 identifier-syntax
23149 ((top))
23150 (hygiene guile))))))
23151 (hygiene guile)))
23152 '#((#(syntax-object
23153 macro-type
23154 ((top)
23155 #(ribcage
23156 #(id exp1 var val exp2)
23157 #((top) (top) (top) (top) (top))
23158 #("l-*-38878"
23159 "l-*-38879"
23160 "l-*-38880"
23161 "l-*-38881"
23162 "l-*-38882"))
23163 #(ribcage () () ())
23164 #(ribcage #(x) #((top)) #("l-*-38860"))
23165 #(ribcage
23166 (identifier-syntax)
23167 ((top))
23168 (((hygiene guile)
23169 .
23170 #(syntax-object
23171 identifier-syntax
23172 ((top))
23173 (hygiene guile))))))
23174 (hygiene guile))
23175 .
23176 #(syntax-object
23177 variable-transformer
23178 ((top)
23179 #(ribcage
23180 #(id exp1 var val exp2)
23181 #((top) (top) (top) (top) (top))
23182 #("l-*-38878"
23183 "l-*-38879"
23184 "l-*-38880"
23185 "l-*-38881"
23186 "l-*-38882"))
23187 #(ribcage () () ())
23188 #(ribcage #(x) #((top)) #("l-*-38860"))
23189 #(ribcage
23190 (identifier-syntax)
23191 ((top))
23192 (((hygiene guile)
23193 .
23194 #(syntax-object
23195 identifier-syntax
23196 ((top))
23197 (hygiene guile))))))
23198 (hygiene guile))))
23199 (list '#(syntax-object
23200 syntax-case
23201 ((top)
23202 #(ribcage
23203 #(id exp1 var val exp2)
23204 #((top) (top) (top) (top) (top))
23205 #("l-*-38878"
23206 "l-*-38879"
23207 "l-*-38880"
23208 "l-*-38881"
23209 "l-*-38882"))
23210 #(ribcage () () ())
23211 #(ribcage #(x) #((top)) #("l-*-38860"))
23212 #(ribcage
23213 (identifier-syntax)
23214 ((top))
23215 (((hygiene guile)
23216 .
23217 #(syntax-object
23218 identifier-syntax
23219 ((top))
23220 (hygiene guile))))))
23221 (hygiene guile))
23222 '#(syntax-object
23223 x
23224 ((top)
23225 #(ribcage
23226 #(id exp1 var val exp2)
23227 #((top) (top) (top) (top) (top))
23228 #("l-*-38878"
23229 "l-*-38879"
23230 "l-*-38880"
23231 "l-*-38881"
23232 "l-*-38882"))
23233 #(ribcage () () ())
23234 #(ribcage #(x) #((top)) #("l-*-38860"))
23235 #(ribcage
23236 (identifier-syntax)
23237 ((top))
23238 (((hygiene guile)
23239 .
23240 #(syntax-object
23241 identifier-syntax
23242 ((top))
23243 (hygiene guile))))))
23244 (hygiene guile))
23245 '(#(syntax-object
23246 set!
23247 ((top)
23248 #(ribcage
23249 #(id exp1 var val exp2)
23250 #((top) (top) (top) (top) (top))
23251 #("l-*-38878"
23252 "l-*-38879"
23253 "l-*-38880"
23254 "l-*-38881"
23255 "l-*-38882"))
23256 #(ribcage () () ())
23257 #(ribcage
23258 #(x)
23259 #((top))
23260 #("l-*-38860"))
23261 #(ribcage
23262 (identifier-syntax)
23263 ((top))
23264 (((hygiene guile)
23265 .
23266 #(syntax-object
23267 identifier-syntax
23268 ((top))
23269 (hygiene guile))))))
23270 (hygiene guile)))
23271 (list (list '#(syntax-object
23272 set!
23273 ((top)
23274 #(ribcage
23275 #(id exp1 var val exp2)
23276 #((top)
23277 (top)
23278 (top)
23279 (top)
23280 (top))
23281 #("l-*-38878"
23282 "l-*-38879"
23283 "l-*-38880"
23284 "l-*-38881"
23285 "l-*-38882"))
23286 #(ribcage () () ())
23287 #(ribcage
23288 #(x)
23289 #((top))
23290 #("l-*-38860"))
23291 #(ribcage
23292 (identifier-syntax)
23293 ((top))
23294 (((hygiene guile)
23295 .
23296 #(syntax-object
23297 identifier-syntax
23298 ((top))
23299 (hygiene guile))))))
23300 (hygiene guile))
23301 var-38906
23302 val-38907)
23303 (list '#(syntax-object
23304 syntax
23305 ((top)
23306 #(ribcage
23307 #(id exp1 var val exp2)
23308 #((top)
23309 (top)
23310 (top)
23311 (top)
23312 (top))
23313 #("l-*-38878"
23314 "l-*-38879"
23315 "l-*-38880"
23316 "l-*-38881"
23317 "l-*-38882"))
23318 #(ribcage () () ())
23319 #(ribcage
23320 #(x)
23321 #((top))
23322 #("l-*-38860"))
23323 #(ribcage
23324 (identifier-syntax)
23325 ((top))
23326 (((hygiene guile)
23327 .
23328 #(syntax-object
23329 identifier-syntax
23330 ((top))
23331 (hygiene guile))))))
23332 (hygiene guile))
23333 exp2-38908))
23334 (list (cons id-38904
23335 '(#(syntax-object
23336 x
23337 ((top)
23338 #(ribcage
23339 #(id exp1 var val exp2)
23340 #((top)
23341 (top)
23342 (top)
23343 (top)
23344 (top))
23345 #("l-*-38878"
23346 "l-*-38879"
23347 "l-*-38880"
23348 "l-*-38881"
23349 "l-*-38882"))
23350 #(ribcage () () ())
23351 #(ribcage
23352 #(x)
23353 #((top))
23354 #("l-*-38860"))
23355 #(ribcage
23356 (identifier-syntax)
23357 ((top))
23358 (((hygiene guile)
23359 .
23360 #(syntax-object
23361 identifier-syntax
23362 ((top))
23363 (hygiene guile))))))
23364 (hygiene guile))
23365 #(syntax-object
23366 ...
23367 ((top)
23368 #(ribcage
23369 #(id exp1 var val exp2)
23370 #((top)
23371 (top)
23372 (top)
23373 (top)
23374 (top))
23375 #("l-*-38878"
23376 "l-*-38879"
23377 "l-*-38880"
23378 "l-*-38881"
23379 "l-*-38882"))
23380 #(ribcage () () ())
23381 #(ribcage
23382 #(x)
23383 #((top))
23384 #("l-*-38860"))
23385 #(ribcage
23386 (identifier-syntax)
23387 ((top))
23388 (((hygiene guile)
23389 .
23390 #(syntax-object
23391 identifier-syntax
23392 ((top))
23393 (hygiene guile))))))
23394 (hygiene guile))))
23395 (list '#(syntax-object
23396 syntax
23397 ((top)
23398 #(ribcage
23399 #(id exp1 var val exp2)
23400 #((top)
23401 (top)
23402 (top)
23403 (top)
23404 (top))
23405 #("l-*-38878"
23406 "l-*-38879"
23407 "l-*-38880"
23408 "l-*-38881"
23409 "l-*-38882"))
23410 #(ribcage () () ())
23411 #(ribcage
23412 #(x)
23413 #((top))
23414 #("l-*-38860"))
23415 #(ribcage
23416 (identifier-syntax)
23417 ((top))
23418 (((hygiene guile)
23419 .
23420 #(syntax-object
23421 identifier-syntax
23422 ((top))
23423 (hygiene guile))))))
23424 (hygiene guile))
23425 (cons exp1-38905
23426 '(#(syntax-object
23427 x
23428 ((top)
23429 #(ribcage
23430 #(id
23431 exp1
23432 var
23433 val
23434 exp2)
23435 #((top)
23436 (top)
23437 (top)
23438 (top)
23439 (top))
23440 #("l-*-38878"
23441 "l-*-38879"
23442 "l-*-38880"
23443 "l-*-38881"
23444 "l-*-38882"))
23445 #(ribcage () () ())
23446 #(ribcage
23447 #(x)
23448 #((top))
23449 #("l-*-38860"))
23450 #(ribcage
23451 (identifier-syntax)
23452 ((top))
23453 (((hygiene guile)
23454 .
23455 #(syntax-object
23456 identifier-syntax
23457 ((top))
23458 (hygiene
23459 guile))))))
23460 (hygiene guile))
23461 #(syntax-object
23462 ...
23463 ((top)
23464 #(ribcage
23465 #(id
23466 exp1
23467 var
23468 val
23469 exp2)
23470 #((top)
23471 (top)
23472 (top)
23473 (top)
23474 (top))
23475 #("l-*-38878"
23476 "l-*-38879"
23477 "l-*-38880"
23478 "l-*-38881"
23479 "l-*-38882"))
23480 #(ribcage () () ())
23481 #(ribcage
23482 #(x)
23483 #((top))
23484 #("l-*-38860"))
23485 #(ribcage
23486 (identifier-syntax)
23487 ((top))
23488 (((hygiene guile)
23489 .
23490 #(syntax-object
23491 identifier-syntax
23492 ((top))
23493 (hygiene
23494 guile))))))
23495 (hygiene guile))))))
23496 (list id-38904
23497 (list '#(syntax-object
23498 identifier?
23499 ((top)
23500 #(ribcage
23501 #(id exp1 var val exp2)
23502 #((top)
23503 (top)
23504 (top)
23505 (top)
23506 (top))
23507 #("l-*-38878"
23508 "l-*-38879"
23509 "l-*-38880"
23510 "l-*-38881"
23511 "l-*-38882"))
23512 #(ribcage () () ())
23513 #(ribcage
23514 #(x)
23515 #((top))
23516 #("l-*-38860"))
23517 #(ribcage
23518 (identifier-syntax)
23519 ((top))
23520 (((hygiene guile)
23521 .
23522 #(syntax-object
23523 identifier-syntax
23524 ((top))
23525 (hygiene guile))))))
23526 (hygiene guile))
23527 (list '#(syntax-object
23528 syntax
23529 ((top)
23530 #(ribcage
23531 #(id
23532 exp1
23533 var
23534 val
23535 exp2)
23536 #((top)
23537 (top)
23538 (top)
23539 (top)
23540 (top))
23541 #("l-*-38878"
23542 "l-*-38879"
23543 "l-*-38880"
23544 "l-*-38881"
23545 "l-*-38882"))
23546 #(ribcage () () ())
23547 #(ribcage
23548 #(x)
23549 #((top))
23550 #("l-*-38860"))
23551 #(ribcage
23552 (identifier-syntax)
23553 ((top))
23554 (((hygiene guile)
23555 .
23556 #(syntax-object
23557 identifier-syntax
23558 ((top))
23559 (hygiene
23560 guile))))))
23561 (hygiene guile))
23562 id-38904))
23563 (list '#(syntax-object
23564 syntax
23565 ((top)
23566 #(ribcage
23567 #(id exp1 var val exp2)
23568 #((top)
23569 (top)
23570 (top)
23571 (top)
23572 (top))
23573 #("l-*-38878"
23574 "l-*-38879"
23575 "l-*-38880"
23576 "l-*-38881"
23577 "l-*-38882"))
23578 #(ribcage () () ())
23579 #(ribcage
23580 #(x)
23581 #((top))
23582 #("l-*-38860"))
23583 #(ribcage
23584 (identifier-syntax)
23585 ((top))
23586 (((hygiene guile)
23587 .
23588 #(syntax-object
23589 identifier-syntax
23590 ((top))
23591 (hygiene guile))))))
23592 (hygiene guile))
23593 exp1-38905))))))
23594 tmp-38895)
23595 (syntax-violation
23596 #f
23597 "source expression failed to match any pattern"
23598 x-38888))))))))
23599
23600 (define define*
23601 (make-syntax-transformer
23602 'define*
23603 'macro
23604 (lambda (x-38941)
23605 (let ((tmp-38943
23606 ($sc-dispatch
23607 x-38941
23608 '(_ (any . any) any . each-any))))
23609 (if tmp-38943
23610 (@apply
23611 (lambda (id-38947 args-38948 b0-38949 b1-38950)
23612 (list '#(syntax-object
23613 define
23614 ((top)
23615 #(ribcage
23616 #(id args b0 b1)
23617 #((top) (top) (top) (top))
23618 #("l-*-38923"
23619 "l-*-38924"
23620 "l-*-38925"
23621 "l-*-38926"))
23622 #(ribcage () () ())
23623 #(ribcage #(x) #((top)) #("l-*-38920"))
23624 #(ribcage
23625 (define*)
23626 ((top))
23627 (((hygiene guile)
23628 .
23629 #(syntax-object
23630 define*
23631 ((top))
23632 (hygiene guile))))))
23633 (hygiene guile))
23634 id-38947
23635 (cons '#(syntax-object
23636 lambda*
23637 ((top)
23638 #(ribcage
23639 #(id args b0 b1)
23640 #((top) (top) (top) (top))
23641 #("l-*-38923"
23642 "l-*-38924"
23643 "l-*-38925"
23644 "l-*-38926"))
23645 #(ribcage () () ())
23646 #(ribcage #(x) #((top)) #("l-*-38920"))
23647 #(ribcage
23648 (define*)
23649 ((top))
23650 (((hygiene guile)
23651 .
23652 #(syntax-object
23653 define*
23654 ((top))
23655 (hygiene guile))))))
23656 (hygiene guile))
23657 (cons args-38948 (cons b0-38949 b1-38950)))))
23658 tmp-38943)
23659 (let ((tmp-38951 ($sc-dispatch x-38941 '(_ any any))))
23660 (if (if tmp-38951
23661 (@apply
23662 (lambda (id-38955 val-38956)
23663 (identifier?
23664 '#(syntax-object
23665 x
23666 ((top)
23667 #(ribcage
23668 #(id val)
23669 #((top) (top))
23670 #("l-*-38933" "l-*-38934"))
23671 #(ribcage () () ())
23672 #(ribcage #(x) #((top)) #("l-*-38920"))
23673 #(ribcage
23674 (define*)
23675 ((top))
23676 (((hygiene guile)
23677 .
23678 #(syntax-object
23679 define*
23680 ((top))
23681 (hygiene guile))))))
23682 (hygiene guile))))
23683 tmp-38951)
23684 #f)
23685 (@apply
23686 (lambda (id-38957 val-38958)
23687 (list '#(syntax-object
23688 define
23689 ((top)
23690 #(ribcage
23691 #(id val)
23692 #((top) (top))
23693 #("l-*-38937" "l-*-38938"))
23694 #(ribcage () () ())
23695 #(ribcage #(x) #((top)) #("l-*-38920"))
23696 #(ribcage
23697 (define*)
23698 ((top))
23699 (((hygiene guile)
23700 .
23701 #(syntax-object
23702 define*
23703 ((top))
23704 (hygiene guile))))))
23705 (hygiene guile))
23706 id-38957
23707 val-38958))
23708 tmp-38951)
23709 (syntax-violation
23710 #f
23711 "source expression failed to match any pattern"
23712 x-38941))))))))
23713