-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmce2mce2.scm
69 lines (58 loc) · 24.4 KB
/
mce2mce2.scm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
;;;;
;;;; Meta-Circular Evaluator on Meta-Circular Evaluator
;;;; derived from mce2.scm
;;;;
((lambda (EV AY AP AL AQ EA CS LN L1 S)
(EV (S CS) (quote ()) AY AP AL AQ EA CS LN L1))
((lambda (U) (U U)) ;;;; EV: eval
(lambda (U)
(lambda (S E AY AP AL AQ EA CS LN L1)
(if (procedure? S)
(if (eq? (L1 S) (quote quote)) (L1 (LN S))
(if (eq? (L1 S) (quote if))
(if ((U U) (L1 (LN S)) E AY AP AL AQ EA CS LN L1)
((U U) (L1 (LN (LN S))) E AY AP AL AQ EA CS LN L1)
((U U) (L1 (LN (LN (LN S)))) E AY AP AL AQ EA CS LN L1))
(if (eq? (L1 S) (quote lambda))
(AP S (CS E (quote ())) CS LN L1)
(AY ((U U) (L1 S) E AY AP AL AQ EA CS LN L1)
(EA (LN S) E U AY AP AL AQ EA CS LN L1)
U AY AP AL AQ EA CS LN L1))))
(if (eq? S (quote eq?)) (quote eq?)
(if (eq? S (quote procedure?)) (quote procedure?)
(LN (AQ S E LN L1))))))))
(lambda (F A U AY AP AL AQ EA CS LN L1) ;;;; AY: apply
(if (procedure? F)
((U U) (L1 (LN (LN F)))
(AP (AL (L1 (LN F)) A CS LN L1) (L1 (LN (LN (LN F)))) CS LN L1)
AY AP AL AQ EA CS LN L1)
(if (eq? F (quote eq?)) (eq? (L1 A) (L1 (LN A))) (procedure? (L1 A)))))
((lambda (U) (U U)) ;;;; AP: append equivalent
(lambda (U)
(lambda (A B CS LN L1)
(if (eq? A (quote ())) B
(CS (L1 A) ((U U) (LN A) B CS LN L1))))))
((lambda (U) (U U)) ;;;; AL: make alist
(lambda (U)
(lambda (A B CS LN L1)
(if (eq? A (quote ())) (quote ())
(if (eq? B (quote ())) (quote ())
(CS (CS (L1 A) (L1 B)) ((U U) (LN A) (LN B) CS LN L1)))))))
((lambda (U) (U U)) ;;;; AQ: assq equivalent
(lambda (U)
(lambda (K V LN L1)
(if (eq? V (quote ())) (quote ())
(if (eq? K (L1 (L1 V))) (L1 V)
((U U) K (LN V) LN L1))))))
((lambda (M) (M M)) ;;;; EA: eval args
(lambda (M)
(lambda (A E U AY AP AL AQ EA CS LN L1)
(if (eq? A (quote ())) (quote ())
(CS ((U U) (L1 A) E AY AP AL AQ EA CS LN L1)
((M M) (LN A) E U AY AP AL AQ EA CS LN L1))))))
(lambda (X Y) (lambda (F) (F X Y))) ;;;; CS: cons
(lambda (C) (C (lambda (X Y) Y))) ;;;; LN: cdr
(lambda (C) (C (lambda (X Y) X))) ;;;; L1: car
(lambda (CS) ;;;; S: sample code by closures
(CS (CS (quote lambda) (CS (CS (quote EV) (CS (quote AY) (CS (quote AP) (CS (quote AL) (CS (quote AQ) (CS (quote EA) (CS (quote CS) (CS (quote LN) (CS (quote L1) (CS (quote S) (quote ()))))))))))) (CS (CS (quote EV) (CS (CS (quote S) (CS (quote CS) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (CS (quote AY) (CS (quote AP) (CS (quote AL) (CS (quote AQ) (CS (quote EA) (CS (quote CS) (CS (quote LN) (CS (quote L1) (quote ())))))))))))) (quote ())))) (CS (CS (CS (quote lambda) (CS (CS (quote U) (quote ())) (CS (CS (quote U) (CS (quote U) (quote ()))) (quote ())))) (CS (CS (quote lambda) (CS (CS (quote U) (quote ())) (CS (CS (quote lambda) (CS (CS (quote S) (CS (quote E) (CS (quote AY) (CS (quote AP) (CS (quote AL) (CS (quote AQ) (CS (quote EA) (CS (quote CS) (CS (quote LN) (CS (quote L1) (quote ()))))))))))) (CS (CS (quote if) (CS (CS (quote procedure?) (CS (quote S) (quote ()))) (CS (CS (quote if) (CS (CS (quote eq?) (CS (CS (quote L1) (CS (quote S) (quote ()))) (CS (CS (quote quote) (CS (quote quote) (quote ()))) (quote ())))) (CS (CS (quote L1) (CS (CS (quote LN) (CS (quote S) (quote ()))) (quote ()))) (CS (CS (quote if) (CS (CS (quote eq?) (CS (CS (quote L1) (CS (quote S) (quote ()))) (CS (CS (quote quote) (CS (quote if) (quote ()))) (quote ())))) (CS (CS (quote if) (CS (CS (CS (quote U) (CS (quote U) (quote ()))) (CS (CS (quote L1) (CS (CS (quote LN) (CS (quote S) (quote ()))) (quote ()))) (CS (quote E) (CS (quote AY) (CS (quote AP) (CS (quote AL) (CS (quote AQ) (CS (quote EA) (CS (quote CS) (CS (quote LN) (CS (quote L1) (quote ())))))))))))) (CS (CS (CS (quote U) (CS (quote U) (quote ()))) (CS (CS (quote L1) (CS (CS (quote LN) (CS (CS (quote LN) (CS (quote S) (quote ()))) (quote ()))) (quote ()))) (CS (quote E) (CS (quote AY) (CS (quote AP) (CS (quote AL) (CS (quote AQ) (CS (quote EA) (CS (quote CS) (CS (quote LN) (CS (quote L1) (quote ())))))))))))) (CS (CS (CS (quote U) (CS (quote U) (quote ()))) (CS (CS (quote L1) (CS (CS (quote LN) (CS (CS (quote LN) (CS (CS (quote LN) (CS (quote S) (quote ()))) (quote ()))) (quote ()))) (quote ()))) (CS (quote E) (CS (quote AY) (CS (quote AP) (CS (quote AL) (CS (quote AQ) (CS (quote EA) (CS (quote CS) (CS (quote LN) (CS (quote L1) (quote ())))))))))))) (quote ()))))) (CS (CS (quote if) (CS (CS (quote eq?) (CS (CS (quote L1) (CS (quote S) (quote ()))) (CS (CS (quote quote) (CS (quote lambda) (quote ()))) (quote ())))) (CS (CS (quote AP) (CS (quote S) (CS (CS (quote CS) (CS (quote E) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (CS (quote CS) (CS (quote LN) (CS (quote L1) (quote ()))))))) (CS (CS (quote AY) (CS (CS (CS (quote U) (CS (quote U) (quote ()))) (CS (CS (quote L1) (CS (quote S) (quote ()))) (CS (quote E) (CS (quote AY) (CS (quote AP) (CS (quote AL) (CS (quote AQ) (CS (quote EA) (CS (quote CS) (CS (quote LN) (CS (quote L1) (quote ())))))))))))) (CS (CS (quote EA) (CS (CS (quote LN) (CS (quote S) (quote ()))) (CS (quote E) (CS (quote U) (CS (quote AY) (CS (quote AP) (CS (quote AL) (CS (quote AQ) (CS (quote EA) (CS (quote CS) (CS (quote LN) (CS (quote L1) (quote ()))))))))))))) (CS (quote U) (CS (quote AY) (CS (quote AP) (CS (quote AL) (CS (quote AQ) (CS (quote EA) (CS (quote CS) (CS (quote LN) (CS (quote L1) (quote ()))))))))))))) (quote ()))))) (quote ()))))) (quote ()))))) (CS (CS (quote if) (CS (CS (quote eq?) (CS (quote S) (CS (CS (quote quote) (CS (quote eq?) (quote ()))) (quote ())))) (CS (CS (quote quote) (CS (quote eq?) (quote ()))) (CS (CS (quote if) (CS (CS (quote eq?) (CS (quote S) (CS (CS (quote quote) (CS (quote procedure?) (quote ()))) (quote ())))) (CS (CS (quote quote) (CS (quote procedure?) (quote ()))) (CS (CS (quote LN) (CS (CS (quote AQ) (CS (quote S) (CS (quote E) (CS (quote LN) (CS (quote L1) (quote ())))))) (quote ()))) (quote ()))))) (quote ()))))) (quote ()))))) (quote ())))) (quote ())))) (quote ()))) (CS (CS (quote lambda) (CS (CS (quote F) (CS (quote A) (CS (quote U) (CS (quote AY) (CS (quote AP) (CS (quote AL) (CS (quote AQ) (CS (quote EA) (CS (quote CS) (CS (quote LN) (CS (quote L1) (quote ())))))))))))) (CS (CS (quote if) (CS (CS (quote procedure?) (CS (quote F) (quote ()))) (CS (CS (CS (quote U) (CS (quote U) (quote ()))) (CS (CS (quote L1) (CS (CS (quote LN) (CS (CS (quote LN) (CS (quote F) (quote ()))) (quote ()))) (quote ()))) (CS (CS (quote AP) (CS (CS (quote AL) (CS (CS (quote L1) (CS (CS (quote LN) (CS (quote F) (quote ()))) (quote ()))) (CS (quote A) (CS (quote CS) (CS (quote LN) (CS (quote L1) (quote ()))))))) (CS (CS (quote L1) (CS (CS (quote LN) (CS (CS (quote LN) (CS (CS (quote LN) (CS (quote F) (quote ()))) (quote ()))) (quote ()))) (quote ()))) (CS (quote CS) (CS (quote LN) (CS (quote L1) (quote ()))))))) (CS (quote AY) (CS (quote AP) (CS (quote AL) (CS (quote AQ) (CS (quote EA) (CS (quote CS) (CS (quote LN) (CS (quote L1) (quote ())))))))))))) (CS (CS (quote if) (CS (CS (quote eq?) (CS (quote F) (CS (CS (quote quote) (CS (quote eq?) (quote ()))) (quote ())))) (CS (CS (quote eq?) (CS (CS (quote L1) (CS (quote A) (quote ()))) (CS (CS (quote L1) (CS (CS (quote LN) (CS (quote A) (quote ()))) (quote ()))) (quote ())))) (CS (CS (quote procedure?) (CS (CS (quote L1) (CS (quote A) (quote ()))) (quote ()))) (quote ()))))) (quote ()))))) (quote ())))) (CS (CS (CS (quote lambda) (CS (CS (quote U) (quote ())) (CS (CS (quote U) (CS (quote U) (quote ()))) (quote ())))) (CS (CS (quote lambda) (CS (CS (quote U) (quote ())) (CS (CS (quote lambda) (CS (CS (quote A) (CS (quote B) (CS (quote CS) (CS (quote LN) (CS (quote L1) (quote ())))))) (CS (CS (quote if) (CS (CS (quote eq?) (CS (quote A) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (CS (quote B) (CS (CS (quote CS) (CS (CS (quote L1) (CS (quote A) (quote ()))) (CS (CS (CS (quote U) (CS (quote U) (quote ()))) (CS (CS (quote LN) (CS (quote A) (quote ()))) (CS (quote B) (CS (quote CS) (CS (quote LN) (CS (quote L1) (quote ()))))))) (quote ())))) (quote ()))))) (quote ())))) (quote ())))) (quote ()))) (CS (CS (CS (quote lambda) (CS (CS (quote U) (quote ())) (CS (CS (quote U) (CS (quote U) (quote ()))) (quote ())))) (CS (CS (quote lambda) (CS (CS (quote U) (quote ())) (CS (CS (quote lambda) (CS (CS (quote A) (CS (quote B) (CS (quote CS) (CS (quote LN) (CS (quote L1) (quote ())))))) (CS (CS (quote if) (CS (CS (quote eq?) (CS (quote A) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (CS (CS (quote if) (CS (CS (quote eq?) (CS (quote B) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote L1) (CS (quote A) (quote ()))) (CS (CS (quote L1) (CS (quote B) (quote ()))) (quote ())))) (CS (CS (CS (quote U) (CS (quote U) (quote ()))) (CS (CS (quote LN) (CS (quote A) (quote ()))) (CS (CS (quote LN) (CS (quote B) (quote ()))) (CS (quote CS) (CS (quote LN) (CS (quote L1) (quote ()))))))) (quote ())))) (quote ()))))) (quote ()))))) (quote ())))) (quote ())))) (quote ()))) (CS (CS (CS (quote lambda) (CS (CS (quote U) (quote ())) (CS (CS (quote U) (CS (quote U) (quote ()))) (quote ())))) (CS (CS (quote lambda) (CS (CS (quote U) (quote ())) (CS (CS (quote lambda) (CS (CS (quote K) (CS (quote V) (CS (quote LN) (CS (quote L1) (quote ()))))) (CS (CS (quote if) (CS (CS (quote eq?) (CS (quote V) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (CS (CS (quote if) (CS (CS (quote eq?) (CS (quote K) (CS (CS (quote L1) (CS (CS (quote L1) (CS (quote V) (quote ()))) (quote ()))) (quote ())))) (CS (CS (quote L1) (CS (quote V) (quote ()))) (CS (CS (CS (quote U) (CS (quote U) (quote ()))) (CS (quote K) (CS (CS (quote LN) (CS (quote V) (quote ()))) (CS (quote LN) (CS (quote L1) (quote ())))))) (quote ()))))) (quote ()))))) (quote ())))) (quote ())))) (quote ()))) (CS (CS (CS (quote lambda) (CS (CS (quote M) (quote ())) (CS (CS (quote M) (CS (quote M) (quote ()))) (quote ())))) (CS (CS (quote lambda) (CS (CS (quote M) (quote ())) (CS (CS (quote lambda) (CS (CS (quote A) (CS (quote E) (CS (quote U) (CS (quote AY) (CS (quote AP) (CS (quote AL) (CS (quote AQ) (CS (quote EA) (CS (quote CS) (CS (quote LN) (CS (quote L1) (quote ())))))))))))) (CS (CS (quote if) (CS (CS (quote eq?) (CS (quote A) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (CS (CS (quote CS) (CS (CS (CS (quote U) (CS (quote U) (quote ()))) (CS (CS (quote L1) (CS (quote A) (quote ()))) (CS (quote E) (CS (quote AY) (CS (quote AP) (CS (quote AL) (CS (quote AQ) (CS (quote EA) (CS (quote CS) (CS (quote LN) (CS (quote L1) (quote ())))))))))))) (CS (CS (CS (quote M) (CS (quote M) (quote ()))) (CS (CS (quote LN) (CS (quote A) (quote ()))) (CS (quote E) (CS (quote U) (CS (quote AY) (CS (quote AP) (CS (quote AL) (CS (quote AQ) (CS (quote EA) (CS (quote CS) (CS (quote LN) (CS (quote L1) (quote ()))))))))))))) (quote ())))) (quote ()))))) (quote ())))) (quote ())))) (quote ()))) (CS (CS (quote lambda) (CS (CS (quote X) (CS (quote Y) (quote ()))) (CS (CS (quote lambda) (CS (CS (quote F) (quote ())) (CS (CS (quote F) (CS (quote X) (CS (quote Y) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote lambda) (CS (CS (quote C) (quote ())) (CS (CS (quote C) (CS (CS (quote lambda) (CS (CS (quote X) (CS (quote Y) (quote ()))) (CS (quote Y) (quote ())))) (quote ()))) (quote ())))) (CS (CS (quote lambda) (CS (CS (quote C) (quote ())) (CS (CS (quote C) (CS (CS (quote lambda) (CS (CS (quote X) (CS (quote Y) (quote ()))) (CS (quote X) (quote ())))) (quote ()))) (quote ())))) (CS (CS (quote lambda) (CS (CS (quote CS) (quote ())) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote lambda) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote ASSQ) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote CONS) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote CAR) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote CDR) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote C3) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote CDR) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote ASSQ) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote quote) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote C) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote C3) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote CONS) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote quote) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote A) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote quote) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote X) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote CONS) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote quote) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote B) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote quote) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote Y) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote CONS) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote quote) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote C) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote quote) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote Z) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote CONS) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote CAR) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote CDR) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote CONS) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote lambda) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote U) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote U) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote U) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote lambda) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote U) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote lambda) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote K) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote V) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote CAR) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote CDR) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote CONS) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote if) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote eq?) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote V) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote quote) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote quote) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote if) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote eq?) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote K) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote CAR) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote CAR) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote V) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote CAR) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote V) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote U) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote U) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote K) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote CDR) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote V) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote CAR) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote CDR) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote CONS) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote lambda) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote X) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote Y) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote lambda) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote F) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote F) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote X) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote Y) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote lambda) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote C) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote C) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote lambda) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote X) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote Y) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote X) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote lambda) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote C) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote C) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote lambda) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote X) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote Y) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote Y) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote lambda) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote A) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote B) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote C) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote CONS) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote CONS) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote A) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote CONS) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote B) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote CONS) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote C) (quote ()))) (CS (CS (quote CS) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote quote) (quote ()))) (CS (CS (quote CS) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (CS (CS (quote quote) (CS (quote ()) (quote ()))) (quote ())))) (quote ())))) (quote ())))) (quote ())))) (quote ())))) (quote ())))) (quote ())))) (quote ()))))))))))))
))