delimcc-suite

Thu Apr 24 16:11:43+0200 2025

Creative Commons LicenseCreative Commons LicenseCreative Commons License

This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License

Table of contents
  1. The resetcc macro
  2. The letcc/shift macro
  3. test/delimcc/basic: pass
  4. test/delimcc/tutorial/discard: pass
  5. test/delimcc/tutorial/discard/prod: pass
  6. test/delimcc/tutorial/extract: pass
  7. test/delimcc/tutorial/extract/appender: pass
  8. test/delimcc/yield: pass
  9. test/delimcc/yield/extract: pass
  10. test/delimcc/yield§: pass
  11. test/delimcc/tutorial/yield§/walk: pass
  12. test/delimcc/tutorial/either: pass
  13. test/delimcc/tutorial/either/tensor: pass
  14. test/delimcc/tutorial/τ: pass
  15. test/delimcc/tutorial/λ: pass
  16. test/letcc/delimcc+monad: pass

Tests summary

scheme code
((ran 14) (failed 0))

In this page we describe two fundamental macros, resetcc and letcc/shift respectively, that support all the other forms stressed in the tests that follows. Moreover, we show how to discard, extract, preserve, and wrap delimited continuations, accordingly to the tutorial [1] by Kenichi Asai and Oleg Kiselyov. The former author [2] recorded a talk [3] that given in the workshop [4], slides [5] are also available.

1. The resetcc macro

Continuations are delimited by the resetcc syntax as in the following generic expression

scheme code
(resetcc body ...)
where the expressions body ... execute in a delimited context; for the sake of clarity, it expands to
scheme code
(callcc (delimcc-reset (τ body ...)))

2. The letcc/shift macro

The expression

scheme code
(letcc/shift k body ...)

  1. clears the current continuation
  2. binds the cleared continuation to k
  3. and executes body ...
For the sake of clarity, it expands to
scheme code
(callcc (delimcc-shift (lambda (k) body ...)))

3. test/delimcc/basic: pass

This test case introduces basic expressions to get introduced to delimited continuations.

scheme code
(define (test/delimcc/basic _)
  (⊦= 10 (letcc/shift k 10))
  (⊦= '(1 2 10) (cons 1 (cons 2 (letcc/shift k (k (k '(10)))))))
  (⊦= '(1 2 2 10) (cons 1 (resetcc (cons 2 (letcc/shift k (k (k '(10))))))))
  (⊦= 41 (+ 1 (resetcc (* 2 (letcc/shift k (k (k 10)))))))
  (⊦= 15 (+ 10 (resetcc (+ 2 3))))
  (⊦= 13 (+ 10 (resetcc (+ 2 (letcc/shift k 3)))))
  (⊦= '(10 3) (cons 10 (resetcc (cons 2 (letcc/shift k '(3))))))
  (⊦= 15 (+ 10 (resetcc (+ 2 (letcc/shift k (k 3))))))
  (⊦= '(10 2 3) (cons 10 (resetcc (cons 2 (letcc/shift k (k '(3)))))))
  (⊦= 115 (+ 10 (resetcc (+ 2 (letcc/shift k (+ 100 (k 3)))))))
  (⊦= '(10 100 2 3)
        (cons 10 (resetcc (cons 2 (letcc/shift k (cons 100 (k '(3))))))))
  (⊦= 117 (+ 10 (resetcc (+ 2 (letcc/shift k (+ 100 (k (k 3))))))))
  (⊦= '(10 100 2 2 3)
        (cons 10 (resetcc (cons 2 (letcc/shift k (cons 100 (k (k '(3)))))))))
  (⊦= 117 (resetcc (+ 10 (resetcc (+ 2 (letcc/shift k (+ 100 (k (k 3)))))))))
  (⊦= '(10 100 2 2 3)
        (resetcc
          (cons 10
                (resetcc (cons 2 (letcc/shift k (cons 100 (k (k '(3)))))))))))

4. test/delimcc/tutorial/discard: pass

scheme code
(define (test/delimcc/tutorial/discard _)
  (⊦= 10 (resetcc (sub1 (+ 3 (letcc/shift k (* 5 2))))))
  (⊦= '(10) (resetcc (cdr (cons 3 (letcc/shift k (list (* 5 2)))))))
  (⊦= 9 (sub1 (resetcc (+ 3 (letcc/shift k (* 5 2))))))
  (⊦= '() (cdr (resetcc (cons 3 (letcc/shift k (list (* 5 2)))))))
  (⊦= 'hello (resetcc (sub1 (+ 3 (letcc/shift k 'hello))))))

5. test/delimcc/tutorial/discard/prod: pass

scheme code
(define (test/delimcc/tutorial/discard/prod _)
  (define (prod lst)
    (cond ((null? lst) 1)
          ((zero? (car lst)) (delimcc-discard 'zero))
          (else (* (car lst) (prod (cdr lst))))))
  (⊦= 'zero (resetcc (prod '(2 3 0 5)))))

6. test/delimcc/tutorial/extract: pass

scheme code
(define (test/delimcc/tutorial/extract _)
  (define-resetcc f (sub1 (+ 3 (letcc/shift k k))))
  (⊦= (sub1 (+ 3 10)) (f 10))
  (define-resetcc g (sub1 (+ 3 (delimcc-extract))))
  (⊦= 12 (g 10)))

7. test/delimcc/tutorial/extract/appender: pass

scheme code
(define (test/delimcc/tutorial/extract/appender _)
  (define (appender lst)
    (cond ((null? lst) (delimcc-extract))
          (else (cons (car lst) (appender (cdr lst))))))
  (define-resetcc A (appender '(1 2 3)))
  (⊦= '(1 2 3 4 5 6) (A '(4 5 6))))

8. test/delimcc/yield: pass

scheme code
(define (test/delimcc/yield _)
  (⊦= '(1) (resetcc+null (yield 1)))
  (⊦= '(1 2) (resetcc+null (yield 1) (yield 2))))

9. test/delimcc/yield/extract: pass

scheme code
(define (test/delimcc/yield/extract _)
  (⊦= '((a 1) (a 2))
        (map/yielded
          (λ (v) (list 'a v))
          (resetcc+null (yield/extract 1) (yield/extract 2))))
  (⊦= 3
        (foldr/yielded
          +
          (resetcc+null (yield/extract 1) (yield/extract 2))
          0)))

10. test/delimcc/yield§: pass

scheme code
(define (test/delimcc/yield§ _)
  (⊦= '(1) (§->list (resetcc+null (yield§ 1))))
  (⊦= '(1) (§->list (take§ 1 (resetcc+null (yield§ 1) (yield§ 2)))))
  (⊦= '(1 2) (§->list (resetcc+null (yield§ 1) (yield§ 2)))))

11. test/delimcc/tutorial/yield§/walk: pass

scheme code
(define (test/delimcc/tutorial/yield§/walk _)
  (define (walk f tree)
    (cond ((null? tree) (void))
          (else (walk f (car tree)) (f (cadr tree)) (walk f (caddr tree)))))
  (⊦= '(1 2 3)
        (§->list (resetcc+null (walk yield§/a '((() 1 ()) 2 (() 3 ()))))))
  (⊦= 600
        (delimcc-foldr
          100
          ((each prod) (* each prod))
          (walk delimcc-cons '((() 1 ()) 2 (() 3 ()))))))

12. test/delimcc/tutorial/either: pass

scheme code
(define (test/delimcc/tutorial/either _)
  (⊦= '(1 3 3) (resetcc (delimcc-either `(1 ,(add1 2) 3)))))

13. test/delimcc/tutorial/either/tensor: pass

scheme code
(define (test/delimcc/tutorial/either/tensor _)
  (⊦= '(((p #t) (q #f)))
        (let1 (sols '())
              (resetcc
                (let ((p (delimcc-either '(#t #f)))
                      (q (delimcc-either '(#t #f))))
                  (when (and (or p q) (or p (not q)) (or (not p) (not q)))
                        (push! `((p ,p) (q ,q)) sols))))
              sols))
  (⊦= '((((p #t) (q #t) no) ((p #t) (q #f) yes))
          (((p #f) (q #t) no) ((p #f) (q #f) no)))
        (resetcc
          (let ((p (delimcc-either '(#t #f))) (q (delimcc-either '(#t #f))))
            `((p ,p)
              (q ,q)
              ,(if (and (or p q) (or p (not q)) (or (not p) (not q)))
                 'yes
                 'no))))))

14. test/delimcc/tutorial/τ: pass

scheme code
(define (test/delimcc/tutorial/τ _)
  (define-resetcc a (append (delimcc-τ '(hello)) '(world)))
  (⊦= '(hello world) (a)))

15. test/delimcc/tutorial/λ: pass

scheme code
(define (test/delimcc/tutorial/λ _)
  (define-resetcc p (append '(hello) (delimcc-lambda (x) (list x)) '(world)))
  (⊦= '(hello 4 world) (p 4)))

16. test/letcc/delimcc+monad: pass

scheme code
(define (test/letcc/delimcc+monad _)
  (define (reflect meaning) (letcc/shift k (extend k meaning)))
  (define (reify* t) (resetcc (eta (t))))
  (define (eta x) (list x))
  (define (extend f l) (apply append (map f l)))
  (define-syntax
    reify
    (syntax-rules () ((reify body ...) (reify* (τ body ...)))))
  (define-syntax
    amb
    (syntax-rules () ((amb v ...) (reflect (append (reify v) ...)))))
  (⊦= '(1 2 3) (reify (amb 1 2 3)))
  (⊦= '((1 3 4) (1 3 5) (2 3 4) (2 3 5))
        (reify (list (amb 1 2) 3 (amb 4 5))))
  (⊦= '((1 10 3) (1 10 1 4))
        (reify (cons 1 (letcc k (cons 10 (amb '(3) (k '(4))))))))
  (define (www)
    (define (f x) (append x (list (amb 6 4 2 8) (amb 2 4 5 4 1))))
    (reify (f (f (amb '(0) '(2) '(3) '(4) '(5) '(32))))))
  (⊦= '((0 6 2 6 2)
          (0 6 2 6 4)
          (0 6 2 6 5)
          (0 6 2 6 4)
          (0 6 2 6 1)
          (0 6 2 4 2)
          (0 6 2 4 4)
          (0 6 2 4 5)
          (0 6 2 4 4)
          (0 6 2 4 1)
          (0 6 2 2 2)
          (0 6 2 2 4)
          (0 6 2 2 5)
          (0 6 2 2 4)
          (0 6 2 2 1)
          (0 6 2 8 2)
          (0 6 2 8 4)
          (0 6 2 8 5)
          (0 6 2 8 4)
          (0 6 2 8 1)
          (0 6 4 6 2)
          (0 6 4 6 4)
          (0 6 4 6 5)
          (0 6 4 6 4)
          (0 6 4 6 1)
          (0 6 4 4 2)
          (0 6 4 4 4)
          (0 6 4 4 5)
          (0 6 4 4 4)
          (0 6 4 4 1)
          (0 6 4 2 2)
          (0 6 4 2 4)
          (0 6 4 2 5)
          (0 6 4 2 4)
          (0 6 4 2 1)
          (0 6 4 8 2)
          (0 6 4 8 4)
          (0 6 4 8 5)
          (0 6 4 8 4)
          (0 6 4 8 1)
          (0 6 5 6 2)
          (0 6 5 6 4)
          (0 6 5 6 5)
          (0 6 5 6 4)
          (0 6 5 6 1)
          (0 6 5 4 2)
          (0 6 5 4 4)
          (0 6 5 4 5)
          (0 6 5 4 4)
          (0 6 5 4 1)
          (0 6 5 2 2)
          (0 6 5 2 4)
          (0 6 5 2 5)
          (0 6 5 2 4)
          (0 6 5 2 1)
          (0 6 5 8 2)
          (0 6 5 8 4)
          (0 6 5 8 5)
          (0 6 5 8 4)
          (0 6 5 8 1)
          (0 6 4 6 2)
          (0 6 4 6 4)
          (0 6 4 6 5)
          (0 6 4 6 4)
          (0 6 4 6 1)
          (0 6 4 4 2)
          (0 6 4 4 4)
          (0 6 4 4 5)
          (0 6 4 4 4)
          (0 6 4 4 1)
          (0 6 4 2 2)
          (0 6 4 2 4)
          (0 6 4 2 5)
          (0 6 4 2 4)
          (0 6 4 2 1)
          (0 6 4 8 2)
          (0 6 4 8 4)
          (0 6 4 8 5)
          (0 6 4 8 4)
          (0 6 4 8 1)
          (0 6 1 6 2)
          (0 6 1 6 4)
          (0 6 1 6 5)
          (0 6 1 6 4)
          (0 6 1 6 1)
          (0 6 1 4 2)
          (0 6 1 4 4)
          (0 6 1 4 5)
          (0 6 1 4 4)
          (0 6 1 4 1)
          (0 6 1 2 2)
          (0 6 1 2 4)
          (0 6 1 2 5)
          (0 6 1 2 4)
          (0 6 1 2 1)
          (0 6 1 8 2)
          (0 6 1 8 4)
          (0 6 1 8 5)
          (0 6 1 8 4)
          (0 6 1 8 1)
          (0 4 2 6 2)
          (0 4 2 6 4)
          (0 4 2 6 5)
          (0 4 2 6 4)
          (0 4 2 6 1)
          (0 4 2 4 2)
          (0 4 2 4 4)
          (0 4 2 4 5)
          (0 4 2 4 4)
          (0 4 2 4 1)
          (0 4 2 2 2)
          (0 4 2 2 4)
          (0 4 2 2 5)
          (0 4 2 2 4)
          (0 4 2 2 1)
          (0 4 2 8 2)
          (0 4 2 8 4)
          (0 4 2 8 5)
          (0 4 2 8 4)
          (0 4 2 8 1)
          (0 4 4 6 2)
          (0 4 4 6 4)
          (0 4 4 6 5)
          (0 4 4 6 4)
          (0 4 4 6 1)
          (0 4 4 4 2)
          (0 4 4 4 4)
          (0 4 4 4 5)
          (0 4 4 4 4)
          (0 4 4 4 1)
          (0 4 4 2 2)
          (0 4 4 2 4)
          (0 4 4 2 5)
          (0 4 4 2 4)
          (0 4 4 2 1)
          (0 4 4 8 2)
          (0 4 4 8 4)
          (0 4 4 8 5)
          (0 4 4 8 4)
          (0 4 4 8 1)
          (0 4 5 6 2)
          (0 4 5 6 4)
          (0 4 5 6 5)
          (0 4 5 6 4)
          (0 4 5 6 1)
          (0 4 5 4 2)
          (0 4 5 4 4)
          (0 4 5 4 5)
          (0 4 5 4 4)
          (0 4 5 4 1)
          (0 4 5 2 2)
          (0 4 5 2 4)
          (0 4 5 2 5)
          (0 4 5 2 4)
          (0 4 5 2 1)
          (0 4 5 8 2)
          (0 4 5 8 4)
          (0 4 5 8 5)
          (0 4 5 8 4)
          (0 4 5 8 1)
          (0 4 4 6 2)
          (0 4 4 6 4)
          (0 4 4 6 5)
          (0 4 4 6 4)
          (0 4 4 6 1)
          (0 4 4 4 2)
          (0 4 4 4 4)
          (0 4 4 4 5)
          (0 4 4 4 4)
          (0 4 4 4 1)
          (0 4 4 2 2)
          (0 4 4 2 4)
          (0 4 4 2 5)
          (0 4 4 2 4)
          (0 4 4 2 1)
          (0 4 4 8 2)
          (0 4 4 8 4)
          (0 4 4 8 5)
          (0 4 4 8 4)
          (0 4 4 8 1)
          (0 4 1 6 2)
          (0 4 1 6 4)
          (0 4 1 6 5)
          (0 4 1 6 4)
          (0 4 1 6 1)
          (0 4 1 4 2)
          (0 4 1 4 4)
          (0 4 1 4 5)
          (0 4 1 4 4)
          (0 4 1 4 1)
          (0 4 1 2 2)
          (0 4 1 2 4)
          (0 4 1 2 5)
          (0 4 1 2 4)
          (0 4 1 2 1)
          (0 4 1 8 2)
          (0 4 1 8 4)
          (0 4 1 8 5)
          (0 4 1 8 4)
          (0 4 1 8 1)
          (0 2 2 6 2)
          (0 2 2 6 4)
          (0 2 2 6 5)
          (0 2 2 6 4)
          (0 2 2 6 1)
          (0 2 2 4 2)
          (0 2 2 4 4)
          (0 2 2 4 5)
          (0 2 2 4 4)
          (0 2 2 4 1)
          (0 2 2 2 2)
          (0 2 2 2 4)
          (0 2 2 2 5)
          (0 2 2 2 4)
          (0 2 2 2 1)
          (0 2 2 8 2)
          (0 2 2 8 4)
          (0 2 2 8 5)
          (0 2 2 8 4)
          (0 2 2 8 1)
          (0 2 4 6 2)
          (0 2 4 6 4)
          (0 2 4 6 5)
          (0 2 4 6 4)
          (0 2 4 6 1)
          (0 2 4 4 2)
          (0 2 4 4 4)
          (0 2 4 4 5)
          (0 2 4 4 4)
          (0 2 4 4 1)
          (0 2 4 2 2)
          (0 2 4 2 4)
          (0 2 4 2 5)
          (0 2 4 2 4)
          (0 2 4 2 1)
          (0 2 4 8 2)
          (0 2 4 8 4)
          (0 2 4 8 5)
          (0 2 4 8 4)
          (0 2 4 8 1)
          (0 2 5 6 2)
          (0 2 5 6 4)
          (0 2 5 6 5)
          (0 2 5 6 4)
          (0 2 5 6 1)
          (0 2 5 4 2)
          (0 2 5 4 4)
          (0 2 5 4 5)
          (0 2 5 4 4)
          (0 2 5 4 1)
          (0 2 5 2 2)
          (0 2 5 2 4)
          (0 2 5 2 5)
          (0 2 5 2 4)
          (0 2 5 2 1)
          (0 2 5 8 2)
          (0 2 5 8 4)
          (0 2 5 8 5)
          (0 2 5 8 4)
          (0 2 5 8 1)
          (0 2 4 6 2)
          (0 2 4 6 4)
          (0 2 4 6 5)
          (0 2 4 6 4)
          (0 2 4 6 1)
          (0 2 4 4 2)
          (0 2 4 4 4)
          (0 2 4 4 5)
          (0 2 4 4 4)
          (0 2 4 4 1)
          (0 2 4 2 2)
          (0 2 4 2 4)
          (0 2 4 2 5)
          (0 2 4 2 4)
          (0 2 4 2 1)
          (0 2 4 8 2)
          (0 2 4 8 4)
          (0 2 4 8 5)
          (0 2 4 8 4)
          (0 2 4 8 1)
          (0 2 1 6 2)
          (0 2 1 6 4)
          (0 2 1 6 5)
          (0 2 1 6 4)
          (0 2 1 6 1)
          (0 2 1 4 2)
          (0 2 1 4 4)
          (0 2 1 4 5)
          (0 2 1 4 4)
          (0 2 1 4 1)
          (0 2 1 2 2)
          (0 2 1 2 4)
          (0 2 1 2 5)
          (0 2 1 2 4)
          (0 2 1 2 1)
          (0 2 1 8 2)
          (0 2 1 8 4)
          (0 2 1 8 5)
          (0 2 1 8 4)
          (0 2 1 8 1)
          (0 8 2 6 2)
          (0 8 2 6 4)
          (0 8 2 6 5)
          (0 8 2 6 4)
          (0 8 2 6 1)
          (0 8 2 4 2)
          (0 8 2 4 4)
          (0 8 2 4 5)
          (0 8 2 4 4)
          (0 8 2 4 1)
          (0 8 2 2 2)
          (0 8 2 2 4)
          (0 8 2 2 5)
          (0 8 2 2 4)
          (0 8 2 2 1)
          (0 8 2 8 2)
          (0 8 2 8 4)
          (0 8 2 8 5)
          (0 8 2 8 4)
          (0 8 2 8 1)
          (0 8 4 6 2)
          (0 8 4 6 4)
          (0 8 4 6 5)
          (0 8 4 6 4)
          (0 8 4 6 1)
          (0 8 4 4 2)
          (0 8 4 4 4)
          (0 8 4 4 5)
          (0 8 4 4 4)
          (0 8 4 4 1)
          (0 8 4 2 2)
          (0 8 4 2 4)
          (0 8 4 2 5)
          (0 8 4 2 4)
          (0 8 4 2 1)
          (0 8 4 8 2)
          (0 8 4 8 4)
          (0 8 4 8 5)
          (0 8 4 8 4)
          (0 8 4 8 1)
          (0 8 5 6 2)
          (0 8 5 6 4)
          (0 8 5 6 5)
          (0 8 5 6 4)
          (0 8 5 6 1)
          (0 8 5 4 2)
          (0 8 5 4 4)
          (0 8 5 4 5)
          (0 8 5 4 4)
          (0 8 5 4 1)
          (0 8 5 2 2)
          (0 8 5 2 4)
          (0 8 5 2 5)
          (0 8 5 2 4)
          (0 8 5 2 1)
          (0 8 5 8 2)
          (0 8 5 8 4)
          (0 8 5 8 5)
          (0 8 5 8 4)
          (0 8 5 8 1)
          (0 8 4 6 2)
          (0 8 4 6 4)
          (0 8 4 6 5)
          (0 8 4 6 4)
          (0 8 4 6 1)
          (0 8 4 4 2)
          (0 8 4 4 4)
          (0 8 4 4 5)
          (0 8 4 4 4)
          (0 8 4 4 1)
          (0 8 4 2 2)
          (0 8 4 2 4)
          (0 8 4 2 5)
          (0 8 4 2 4)
          (0 8 4 2 1)
          (0 8 4 8 2)
          (0 8 4 8 4)
          (0 8 4 8 5)
          (0 8 4 8 4)
          (0 8 4 8 1)
          (0 8 1 6 2)
          (0 8 1 6 4)
          (0 8 1 6 5)
          (0 8 1 6 4)
          (0 8 1 6 1)
          (0 8 1 4 2)
          (0 8 1 4 4)
          (0 8 1 4 5)
          (0 8 1 4 4)
          (0 8 1 4 1)
          (0 8 1 2 2)
          (0 8 1 2 4)
          (0 8 1 2 5)
          (0 8 1 2 4)
          (0 8 1 2 1)
          (0 8 1 8 2)
          (0 8 1 8 4)
          (0 8 1 8 5)
          (0 8 1 8 4)
          (0 8 1 8 1)
          (2 6 2 6 2)
          (2 6 2 6 4)
          (2 6 2 6 5)
          (2 6 2 6 4)
          (2 6 2 6 1)
          (2 6 2 4 2)
          (2 6 2 4 4)
          (2 6 2 4 5)
          (2 6 2 4 4)
          (2 6 2 4 1)
          (2 6 2 2 2)
          (2 6 2 2 4)
          (2 6 2 2 5)
          (2 6 2 2 4)
          (2 6 2 2 1)
          (2 6 2 8 2)
          (2 6 2 8 4)
          (2 6 2 8 5)
          (2 6 2 8 4)
          (2 6 2 8 1)
          (2 6 4 6 2)
          (2 6 4 6 4)
          (2 6 4 6 5)
          (2 6 4 6 4)
          (2 6 4 6 1)
          (2 6 4 4 2)
          (2 6 4 4 4)
          (2 6 4 4 5)
          (2 6 4 4 4)
          (2 6 4 4 1)
          (2 6 4 2 2)
          (2 6 4 2 4)
          (2 6 4 2 5)
          (2 6 4 2 4)
          (2 6 4 2 1)
          (2 6 4 8 2)
          (2 6 4 8 4)
          (2 6 4 8 5)
          (2 6 4 8 4)
          (2 6 4 8 1)
          (2 6 5 6 2)
          (2 6 5 6 4)
          (2 6 5 6 5)
          (2 6 5 6 4)
          (2 6 5 6 1)
          (2 6 5 4 2)
          (2 6 5 4 4)
          (2 6 5 4 5)
          (2 6 5 4 4)
          (2 6 5 4 1)
          (2 6 5 2 2)
          (2 6 5 2 4)
          (2 6 5 2 5)
          (2 6 5 2 4)
          (2 6 5 2 1)
          (2 6 5 8 2)
          (2 6 5 8 4)
          (2 6 5 8 5)
          (2 6 5 8 4)
          (2 6 5 8 1)
          (2 6 4 6 2)
          (2 6 4 6 4)
          (2 6 4 6 5)
          (2 6 4 6 4)
          (2 6 4 6 1)
          (2 6 4 4 2)
          (2 6 4 4 4)
          (2 6 4 4 5)
          (2 6 4 4 4)
          (2 6 4 4 1)
          (2 6 4 2 2)
          (2 6 4 2 4)
          (2 6 4 2 5)
          (2 6 4 2 4)
          (2 6 4 2 1)
          (2 6 4 8 2)
          (2 6 4 8 4)
          (2 6 4 8 5)
          (2 6 4 8 4)
          (2 6 4 8 1)
          (2 6 1 6 2)
          (2 6 1 6 4)
          (2 6 1 6 5)
          (2 6 1 6 4)
          (2 6 1 6 1)
          (2 6 1 4 2)
          (2 6 1 4 4)
          (2 6 1 4 5)
          (2 6 1 4 4)
          (2 6 1 4 1)
          (2 6 1 2 2)
          (2 6 1 2 4)
          (2 6 1 2 5)
          (2 6 1 2 4)
          (2 6 1 2 1)
          (2 6 1 8 2)
          (2 6 1 8 4)
          (2 6 1 8 5)
          (2 6 1 8 4)
          (2 6 1 8 1)
          (2 4 2 6 2)
          (2 4 2 6 4)
          (2 4 2 6 5)
          (2 4 2 6 4)
          (2 4 2 6 1)
          (2 4 2 4 2)
          (2 4 2 4 4)
          (2 4 2 4 5)
          (2 4 2 4 4)
          (2 4 2 4 1)
          (2 4 2 2 2)
          (2 4 2 2 4)
          (2 4 2 2 5)
          (2 4 2 2 4)
          (2 4 2 2 1)
          (2 4 2 8 2)
          (2 4 2 8 4)
          (2 4 2 8 5)
          (2 4 2 8 4)
          (2 4 2 8 1)
          (2 4 4 6 2)
          (2 4 4 6 4)
          (2 4 4 6 5)
          (2 4 4 6 4)
          (2 4 4 6 1)
          (2 4 4 4 2)
          (2 4 4 4 4)
          (2 4 4 4 5)
          (2 4 4 4 4)
          (2 4 4 4 1)
          (2 4 4 2 2)
          (2 4 4 2 4)
          (2 4 4 2 5)
          (2 4 4 2 4)
          (2 4 4 2 1)
          (2 4 4 8 2)
          (2 4 4 8 4)
          (2 4 4 8 5)
          (2 4 4 8 4)
          (2 4 4 8 1)
          (2 4 5 6 2)
          (2 4 5 6 4)
          (2 4 5 6 5)
          (2 4 5 6 4)
          (2 4 5 6 1)
          (2 4 5 4 2)
          (2 4 5 4 4)
          (2 4 5 4 5)
          (2 4 5 4 4)
          (2 4 5 4 1)
          (2 4 5 2 2)
          (2 4 5 2 4)
          (2 4 5 2 5)
          (2 4 5 2 4)
          (2 4 5 2 1)
          (2 4 5 8 2)
          (2 4 5 8 4)
          (2 4 5 8 5)
          (2 4 5 8 4)
          (2 4 5 8 1)
          (2 4 4 6 2)
          (2 4 4 6 4)
          (2 4 4 6 5)
          (2 4 4 6 4)
          (2 4 4 6 1)
          (2 4 4 4 2)
          (2 4 4 4 4)
          (2 4 4 4 5)
          (2 4 4 4 4)
          (2 4 4 4 1)
          (2 4 4 2 2)
          (2 4 4 2 4)
          (2 4 4 2 5)
          (2 4 4 2 4)
          (2 4 4 2 1)
          (2 4 4 8 2)
          (2 4 4 8 4)
          (2 4 4 8 5)
          (2 4 4 8 4)
          (2 4 4 8 1)
          (2 4 1 6 2)
          (2 4 1 6 4)
          (2 4 1 6 5)
          (2 4 1 6 4)
          (2 4 1 6 1)
          (2 4 1 4 2)
          (2 4 1 4 4)
          (2 4 1 4 5)
          (2 4 1 4 4)
          (2 4 1 4 1)
          (2 4 1 2 2)
          (2 4 1 2 4)
          (2 4 1 2 5)
          (2 4 1 2 4)
          (2 4 1 2 1)
          (2 4 1 8 2)
          (2 4 1 8 4)
          (2 4 1 8 5)
          (2 4 1 8 4)
          (2 4 1 8 1)
          (2 2 2 6 2)
          (2 2 2 6 4)
          (2 2 2 6 5)
          (2 2 2 6 4)
          (2 2 2 6 1)
          (2 2 2 4 2)
          (2 2 2 4 4)
          (2 2 2 4 5)
          (2 2 2 4 4)
          (2 2 2 4 1)
          (2 2 2 2 2)
          (2 2 2 2 4)
          (2 2 2 2 5)
          (2 2 2 2 4)
          (2 2 2 2 1)
          (2 2 2 8 2)
          (2 2 2 8 4)
          (2 2 2 8 5)
          (2 2 2 8 4)
          (2 2 2 8 1)
          (2 2 4 6 2)
          (2 2 4 6 4)
          (2 2 4 6 5)
          (2 2 4 6 4)
          (2 2 4 6 1)
          (2 2 4 4 2)
          (2 2 4 4 4)
          (2 2 4 4 5)
          (2 2 4 4 4)
          (2 2 4 4 1)
          (2 2 4 2 2)
          (2 2 4 2 4)
          (2 2 4 2 5)
          (2 2 4 2 4)
          (2 2 4 2 1)
          (2 2 4 8 2)
          (2 2 4 8 4)
          (2 2 4 8 5)
          (2 2 4 8 4)
          (2 2 4 8 1)
          (2 2 5 6 2)
          (2 2 5 6 4)
          (2 2 5 6 5)
          (2 2 5 6 4)
          (2 2 5 6 1)
          (2 2 5 4 2)
          (2 2 5 4 4)
          (2 2 5 4 5)
          (2 2 5 4 4)
          (2 2 5 4 1)
          (2 2 5 2 2)
          (2 2 5 2 4)
          (2 2 5 2 5)
          (2 2 5 2 4)
          (2 2 5 2 1)
          (2 2 5 8 2)
          (2 2 5 8 4)
          (2 2 5 8 5)
          (2 2 5 8 4)
          (2 2 5 8 1)
          (2 2 4 6 2)
          (2 2 4 6 4)
          (2 2 4 6 5)
          (2 2 4 6 4)
          (2 2 4 6 1)
          (2 2 4 4 2)
          (2 2 4 4 4)
          (2 2 4 4 5)
          (2 2 4 4 4)
          (2 2 4 4 1)
          (2 2 4 2 2)
          (2 2 4 2 4)
          (2 2 4 2 5)
          (2 2 4 2 4)
          (2 2 4 2 1)
          (2 2 4 8 2)
          (2 2 4 8 4)
          (2 2 4 8 5)
          (2 2 4 8 4)
          (2 2 4 8 1)
          (2 2 1 6 2)
          (2 2 1 6 4)
          (2 2 1 6 5)
          (2 2 1 6 4)
          (2 2 1 6 1)
          (2 2 1 4 2)
          (2 2 1 4 4)
          (2 2 1 4 5)
          (2 2 1 4 4)
          (2 2 1 4 1)
          (2 2 1 2 2)
          (2 2 1 2 4)
          (2 2 1 2 5)
          (2 2 1 2 4)
          (2 2 1 2 1)
          (2 2 1 8 2)
          (2 2 1 8 4)
          (2 2 1 8 5)
          (2 2 1 8 4)
          (2 2 1 8 1)
          (2 8 2 6 2)
          (2 8 2 6 4)
          (2 8 2 6 5)
          (2 8 2 6 4)
          (2 8 2 6 1)
          (2 8 2 4 2)
          (2 8 2 4 4)
          (2 8 2 4 5)
          (2 8 2 4 4)
          (2 8 2 4 1)
          (2 8 2 2 2)
          (2 8 2 2 4)
          (2 8 2 2 5)
          (2 8 2 2 4)
          (2 8 2 2 1)
          (2 8 2 8 2)
          (2 8 2 8 4)
          (2 8 2 8 5)
          (2 8 2 8 4)
          (2 8 2 8 1)
          (2 8 4 6 2)
          (2 8 4 6 4)
          (2 8 4 6 5)
          (2 8 4 6 4)
          (2 8 4 6 1)
          (2 8 4 4 2)
          (2 8 4 4 4)
          (2 8 4 4 5)
          (2 8 4 4 4)
          (2 8 4 4 1)
          (2 8 4 2 2)
          (2 8 4 2 4)
          (2 8 4 2 5)
          (2 8 4 2 4)
          (2 8 4 2 1)
          (2 8 4 8 2)
          (2 8 4 8 4)
          (2 8 4 8 5)
          (2 8 4 8 4)
          (2 8 4 8 1)
          (2 8 5 6 2)
          (2 8 5 6 4)
          (2 8 5 6 5)
          (2 8 5 6 4)
          (2 8 5 6 1)
          (2 8 5 4 2)
          (2 8 5 4 4)
          (2 8 5 4 5)
          (2 8 5 4 4)
          (2 8 5 4 1)
          (2 8 5 2 2)
          (2 8 5 2 4)
          (2 8 5 2 5)
          (2 8 5 2 4)
          (2 8 5 2 1)
          (2 8 5 8 2)
          (2 8 5 8 4)
          (2 8 5 8 5)
          (2 8 5 8 4)
          (2 8 5 8 1)
          (2 8 4 6 2)
          (2 8 4 6 4)
          (2 8 4 6 5)
          (2 8 4 6 4)
          (2 8 4 6 1)
          (2 8 4 4 2)
          (2 8 4 4 4)
          (2 8 4 4 5)
          (2 8 4 4 4)
          (2 8 4 4 1)
          (2 8 4 2 2)
          (2 8 4 2 4)
          (2 8 4 2 5)
          (2 8 4 2 4)
          (2 8 4 2 1)
          (2 8 4 8 2)
          (2 8 4 8 4)
          (2 8 4 8 5)
          (2 8 4 8 4)
          (2 8 4 8 1)
          (2 8 1 6 2)
          (2 8 1 6 4)
          (2 8 1 6 5)
          (2 8 1 6 4)
          (2 8 1 6 1)
          (2 8 1 4 2)
          (2 8 1 4 4)
          (2 8 1 4 5)
          (2 8 1 4 4)
          (2 8 1 4 1)
          (2 8 1 2 2)
          (2 8 1 2 4)
          (2 8 1 2 5)
          (2 8 1 2 4)
          (2 8 1 2 1)
          (2 8 1 8 2)
          (2 8 1 8 4)
          (2 8 1 8 5)
          (2 8 1 8 4)
          (2 8 1 8 1)
          (3 6 2 6 2)
          (3 6 2 6 4)
          (3 6 2 6 5)
          (3 6 2 6 4)
          (3 6 2 6 1)
          (3 6 2 4 2)
          (3 6 2 4 4)
          (3 6 2 4 5)
          (3 6 2 4 4)
          (3 6 2 4 1)
          (3 6 2 2 2)
          (3 6 2 2 4)
          (3 6 2 2 5)
          (3 6 2 2 4)
          (3 6 2 2 1)
          (3 6 2 8 2)
          (3 6 2 8 4)
          (3 6 2 8 5)
          (3 6 2 8 4)
          (3 6 2 8 1)
          (3 6 4 6 2)
          (3 6 4 6 4)
          (3 6 4 6 5)
          (3 6 4 6 4)
          (3 6 4 6 1)
          (3 6 4 4 2)
          (3 6 4 4 4)
          (3 6 4 4 5)
          (3 6 4 4 4)
          (3 6 4 4 1)
          (3 6 4 2 2)
          (3 6 4 2 4)
          (3 6 4 2 5)
          (3 6 4 2 4)
          (3 6 4 2 1)
          (3 6 4 8 2)
          (3 6 4 8 4)
          (3 6 4 8 5)
          (3 6 4 8 4)
          (3 6 4 8 1)
          (3 6 5 6 2)
          (3 6 5 6 4)
          (3 6 5 6 5)
          (3 6 5 6 4)
          (3 6 5 6 1)
          (3 6 5 4 2)
          (3 6 5 4 4)
          (3 6 5 4 5)
          (3 6 5 4 4)
          (3 6 5 4 1)
          (3 6 5 2 2)
          (3 6 5 2 4)
          (3 6 5 2 5)
          (3 6 5 2 4)
          (3 6 5 2 1)
          (3 6 5 8 2)
          (3 6 5 8 4)
          (3 6 5 8 5)
          (3 6 5 8 4)
          (3 6 5 8 1)
          (3 6 4 6 2)
          (3 6 4 6 4)
          (3 6 4 6 5)
          (3 6 4 6 4)
          (3 6 4 6 1)
          (3 6 4 4 2)
          (3 6 4 4 4)
          (3 6 4 4 5)
          (3 6 4 4 4)
          (3 6 4 4 1)
          (3 6 4 2 2)
          (3 6 4 2 4)
          (3 6 4 2 5)
          (3 6 4 2 4)
          (3 6 4 2 1)
          (3 6 4 8 2)
          (3 6 4 8 4)
          (3 6 4 8 5)
          (3 6 4 8 4)
          (3 6 4 8 1)
          (3 6 1 6 2)
          (3 6 1 6 4)
          (3 6 1 6 5)
          (3 6 1 6 4)
          (3 6 1 6 1)
          (3 6 1 4 2)
          (3 6 1 4 4)
          (3 6 1 4 5)
          (3 6 1 4 4)
          (3 6 1 4 1)
          (3 6 1 2 2)
          (3 6 1 2 4)
          (3 6 1 2 5)
          (3 6 1 2 4)
          (3 6 1 2 1)
          (3 6 1 8 2)
          (3 6 1 8 4)
          (3 6 1 8 5)
          (3 6 1 8 4)
          (3 6 1 8 1)
          (3 4 2 6 2)
          (3 4 2 6 4)
          (3 4 2 6 5)
          (3 4 2 6 4)
          (3 4 2 6 1)
          (3 4 2 4 2)
          (3 4 2 4 4)
          (3 4 2 4 5)
          (3 4 2 4 4)
          (3 4 2 4 1)
          (3 4 2 2 2)
          (3 4 2 2 4)
          (3 4 2 2 5)
          (3 4 2 2 4)
          (3 4 2 2 1)
          (3 4 2 8 2)
          (3 4 2 8 4)
          (3 4 2 8 5)
          (3 4 2 8 4)
          (3 4 2 8 1)
          (3 4 4 6 2)
          (3 4 4 6 4)
          (3 4 4 6 5)
          (3 4 4 6 4)
          (3 4 4 6 1)
          (3 4 4 4 2)
          (3 4 4 4 4)
          (3 4 4 4 5)
          (3 4 4 4 4)
          (3 4 4 4 1)
          (3 4 4 2 2)
          (3 4 4 2 4)
          (3 4 4 2 5)
          (3 4 4 2 4)
          (3 4 4 2 1)
          (3 4 4 8 2)
          (3 4 4 8 4)
          (3 4 4 8 5)
          (3 4 4 8 4)
          (3 4 4 8 1)
          (3 4 5 6 2)
          (3 4 5 6 4)
          (3 4 5 6 5)
          (3 4 5 6 4)
          (3 4 5 6 1)
          (3 4 5 4 2)
          (3 4 5 4 4)
          (3 4 5 4 5)
          (3 4 5 4 4)
          (3 4 5 4 1)
          (3 4 5 2 2)
          (3 4 5 2 4)
          (3 4 5 2 5)
          (3 4 5 2 4)
          (3 4 5 2 1)
          (3 4 5 8 2)
          (3 4 5 8 4)
          (3 4 5 8 5)
          (3 4 5 8 4)
          (3 4 5 8 1)
          (3 4 4 6 2)
          (3 4 4 6 4)
          (3 4 4 6 5)
          (3 4 4 6 4)
          (3 4 4 6 1)
          (3 4 4 4 2)
          (3 4 4 4 4)
          (3 4 4 4 5)
          (3 4 4 4 4)
          (3 4 4 4 1)
          (3 4 4 2 2)
          (3 4 4 2 4)
          (3 4 4 2 5)
          (3 4 4 2 4)
          (3 4 4 2 1)
          (3 4 4 8 2)
          (3 4 4 8 4)
          (3 4 4 8 5)
          (3 4 4 8 4)
          (3 4 4 8 1)
          (3 4 1 6 2)
          (3 4 1 6 4)
          (3 4 1 6 5)
          (3 4 1 6 4)
          (3 4 1 6 1)
          (3 4 1 4 2)
          (3 4 1 4 4)
          (3 4 1 4 5)
          (3 4 1 4 4)
          (3 4 1 4 1)
          (3 4 1 2 2)
          (3 4 1 2 4)
          (3 4 1 2 5)
          (3 4 1 2 4)
          (3 4 1 2 1)
          (3 4 1 8 2)
          (3 4 1 8 4)
          (3 4 1 8 5)
          (3 4 1 8 4)
          (3 4 1 8 1)
          (3 2 2 6 2)
          (3 2 2 6 4)
          (3 2 2 6 5)
          (3 2 2 6 4)
          (3 2 2 6 1)
          (3 2 2 4 2)
          (3 2 2 4 4)
          (3 2 2 4 5)
          (3 2 2 4 4)
          (3 2 2 4 1)
          (3 2 2 2 2)
          (3 2 2 2 4)
          (3 2 2 2 5)
          (3 2 2 2 4)
          (3 2 2 2 1)
          (3 2 2 8 2)
          (3 2 2 8 4)
          (3 2 2 8 5)
          (3 2 2 8 4)
          (3 2 2 8 1)
          (3 2 4 6 2)
          (3 2 4 6 4)
          (3 2 4 6 5)
          (3 2 4 6 4)
          (3 2 4 6 1)
          (3 2 4 4 2)
          (3 2 4 4 4)
          (3 2 4 4 5)
          (3 2 4 4 4)
          (3 2 4 4 1)
          (3 2 4 2 2)
          (3 2 4 2 4)
          (3 2 4 2 5)
          (3 2 4 2 4)
          (3 2 4 2 1)
          (3 2 4 8 2)
          (3 2 4 8 4)
          (3 2 4 8 5)
          (3 2 4 8 4)
          (3 2 4 8 1)
          (3 2 5 6 2)
          (3 2 5 6 4)
          (3 2 5 6 5)
          (3 2 5 6 4)
          (3 2 5 6 1)
          (3 2 5 4 2)
          (3 2 5 4 4)
          (3 2 5 4 5)
          (3 2 5 4 4)
          (3 2 5 4 1)
          (3 2 5 2 2)
          (3 2 5 2 4)
          (3 2 5 2 5)
          (3 2 5 2 4)
          (3 2 5 2 1)
          (3 2 5 8 2)
          (3 2 5 8 4)
          (3 2 5 8 5)
          (3 2 5 8 4)
          (3 2 5 8 1)
          (3 2 4 6 2)
          (3 2 4 6 4)
          (3 2 4 6 5)
          (3 2 4 6 4)
          (3 2 4 6 1)
          (3 2 4 4 2)
          (3 2 4 4 4)
          (3 2 4 4 5)
          (3 2 4 4 4)
          (3 2 4 4 1)
          (3 2 4 2 2)
          (3 2 4 2 4)
          (3 2 4 2 5)
          (3 2 4 2 4)
          (3 2 4 2 1)
          (3 2 4 8 2)
          (3 2 4 8 4)
          (3 2 4 8 5)
          (3 2 4 8 4)
          (3 2 4 8 1)
          (3 2 1 6 2)
          (3 2 1 6 4)
          (3 2 1 6 5)
          (3 2 1 6 4)
          (3 2 1 6 1)
          (3 2 1 4 2)
          (3 2 1 4 4)
          (3 2 1 4 5)
          (3 2 1 4 4)
          (3 2 1 4 1)
          (3 2 1 2 2)
          (3 2 1 2 4)
          (3 2 1 2 5)
          (3 2 1 2 4)
          (3 2 1 2 1)
          (3 2 1 8 2)
          (3 2 1 8 4)
          (3 2 1 8 5)
          (3 2 1 8 4)
          (3 2 1 8 1)
          (3 8 2 6 2)
          (3 8 2 6 4)
          (3 8 2 6 5)
          (3 8 2 6 4)
          (3 8 2 6 1)
          (3 8 2 4 2)
          (3 8 2 4 4)
          (3 8 2 4 5)
          (3 8 2 4 4)
          (3 8 2 4 1)
          (3 8 2 2 2)
          (3 8 2 2 4)
          (3 8 2 2 5)
          (3 8 2 2 4)
          (3 8 2 2 1)
          (3 8 2 8 2)
          (3 8 2 8 4)
          (3 8 2 8 5)
          (3 8 2 8 4)
          (3 8 2 8 1)
          (3 8 4 6 2)
          (3 8 4 6 4)
          (3 8 4 6 5)
          (3 8 4 6 4)
          (3 8 4 6 1)
          (3 8 4 4 2)
          (3 8 4 4 4)
          (3 8 4 4 5)
          (3 8 4 4 4)
          (3 8 4 4 1)
          (3 8 4 2 2)
          (3 8 4 2 4)
          (3 8 4 2 5)
          (3 8 4 2 4)
          (3 8 4 2 1)
          (3 8 4 8 2)
          (3 8 4 8 4)
          (3 8 4 8 5)
          (3 8 4 8 4)
          (3 8 4 8 1)
          (3 8 5 6 2)
          (3 8 5 6 4)
          (3 8 5 6 5)
          (3 8 5 6 4)
          (3 8 5 6 1)
          (3 8 5 4 2)
          (3 8 5 4 4)
          (3 8 5 4 5)
          (3 8 5 4 4)
          (3 8 5 4 1)
          (3 8 5 2 2)
          (3 8 5 2 4)
          (3 8 5 2 5)
          (3 8 5 2 4)
          (3 8 5 2 1)
          (3 8 5 8 2)
          (3 8 5 8 4)
          (3 8 5 8 5)
          (3 8 5 8 4)
          (3 8 5 8 1)
          (3 8 4 6 2)
          (3 8 4 6 4)
          (3 8 4 6 5)
          (3 8 4 6 4)
          (3 8 4 6 1)
          (3 8 4 4 2)
          (3 8 4 4 4)
          (3 8 4 4 5)
          (3 8 4 4 4)
          (3 8 4 4 1)
          (3 8 4 2 2)
          (3 8 4 2 4)
          (3 8 4 2 5)
          (3 8 4 2 4)
          (3 8 4 2 1)
          (3 8 4 8 2)
          (3 8 4 8 4)
          (3 8 4 8 5)
          (3 8 4 8 4)
          (3 8 4 8 1)
          (3 8 1 6 2)
          (3 8 1 6 4)
          (3 8 1 6 5)
          (3 8 1 6 4)
          (3 8 1 6 1)
          (3 8 1 4 2)
          (3 8 1 4 4)
          (3 8 1 4 5)
          (3 8 1 4 4)
          (3 8 1 4 1)
          (3 8 1 2 2)
          (3 8 1 2 4)
          (3 8 1 2 5)
          (3 8 1 2 4)
          (3 8 1 2 1)
          (3 8 1 8 2)
          (3 8 1 8 4)
          (3 8 1 8 5)
          (3 8 1 8 4)
          (3 8 1 8 1)
          (4 6 2 6 2)
          (4 6 2 6 4)
          (4 6 2 6 5)
          (4 6 2 6 4)
          (4 6 2 6 1)
          (4 6 2 4 2)
          (4 6 2 4 4)
          (4 6 2 4 5)
          (4 6 2 4 4)
          (4 6 2 4 1)
          (4 6 2 2 2)
          (4 6 2 2 4)
          (4 6 2 2 5)
          (4 6 2 2 4)
          (4 6 2 2 1)
          (4 6 2 8 2)
          (4 6 2 8 4)
          (4 6 2 8 5)
          (4 6 2 8 4)
          (4 6 2 8 1)
          (4 6 4 6 2)
          (4 6 4 6 4)
          (4 6 4 6 5)
          (4 6 4 6 4)
          (4 6 4 6 1)
          (4 6 4 4 2)
          (4 6 4 4 4)
          (4 6 4 4 5)
          (4 6 4 4 4)
          (4 6 4 4 1)
          (4 6 4 2 2)
          (4 6 4 2 4)
          (4 6 4 2 5)
          (4 6 4 2 4)
          (4 6 4 2 1)
          (4 6 4 8 2)
          (4 6 4 8 4)
          (4 6 4 8 5)
          (4 6 4 8 4)
          (4 6 4 8 1)
          (4 6 5 6 2)
          (4 6 5 6 4)
          (4 6 5 6 5)
          (4 6 5 6 4)
          (4 6 5 6 1)
          (4 6 5 4 2)
          (4 6 5 4 4)
          (4 6 5 4 5)
          (4 6 5 4 4)
          (4 6 5 4 1)
          (4 6 5 2 2)
          (4 6 5 2 4)
          (4 6 5 2 5)
          (4 6 5 2 4)
          (4 6 5 2 1)
          (4 6 5 8 2)
          (4 6 5 8 4)
          (4 6 5 8 5)
          (4 6 5 8 4)
          (4 6 5 8 1)
          (4 6 4 6 2)
          (4 6 4 6 4)
          (4 6 4 6 5)
          (4 6 4 6 4)
          (4 6 4 6 1)
          (4 6 4 4 2)
          (4 6 4 4 4)
          (4 6 4 4 5)
          (4 6 4 4 4)
          (4 6 4 4 1)
          (4 6 4 2 2)
          (4 6 4 2 4)
          (4 6 4 2 5)
          (4 6 4 2 4)
          (4 6 4 2 1)
          (4 6 4 8 2)
          (4 6 4 8 4)
          (4 6 4 8 5)
          (4 6 4 8 4)
          (4 6 4 8 1)
          (4 6 1 6 2)
          (4 6 1 6 4)
          (4 6 1 6 5)
          (4 6 1 6 4)
          (4 6 1 6 1)
          (4 6 1 4 2)
          (4 6 1 4 4)
          (4 6 1 4 5)
          (4 6 1 4 4)
          (4 6 1 4 1)
          (4 6 1 2 2)
          (4 6 1 2 4)
          (4 6 1 2 5)
          (4 6 1 2 4)
          (4 6 1 2 1)
          (4 6 1 8 2)
          (4 6 1 8 4)
          (4 6 1 8 5)
          (4 6 1 8 4)
          (4 6 1 8 1)
          (4 4 2 6 2)
          (4 4 2 6 4)
          (4 4 2 6 5)
          (4 4 2 6 4)
          (4 4 2 6 1)
          (4 4 2 4 2)
          (4 4 2 4 4)
          (4 4 2 4 5)
          (4 4 2 4 4)
          (4 4 2 4 1)
          (4 4 2 2 2)
          (4 4 2 2 4)
          (4 4 2 2 5)
          (4 4 2 2 4)
          (4 4 2 2 1)
          (4 4 2 8 2)
          (4 4 2 8 4)
          (4 4 2 8 5)
          (4 4 2 8 4)
          (4 4 2 8 1)
          (4 4 4 6 2)
          (4 4 4 6 4)
          (4 4 4 6 5)
          (4 4 4 6 4)
          (4 4 4 6 1)
          (4 4 4 4 2)
          (4 4 4 4 4)
          (4 4 4 4 5)
          (4 4 4 4 4)
          (4 4 4 4 1)
          (4 4 4 2 2)
          (4 4 4 2 4)
          (4 4 4 2 5)
          (4 4 4 2 4)
          (4 4 4 2 1)
          (4 4 4 8 2)
          (4 4 4 8 4)
          (4 4 4 8 5)
          (4 4 4 8 4)
          (4 4 4 8 1)
          (4 4 5 6 2)
          (4 4 5 6 4)
          (4 4 5 6 5)
          (4 4 5 6 4)
          (4 4 5 6 1)
          (4 4 5 4 2)
          (4 4 5 4 4)
          (4 4 5 4 5)
          (4 4 5 4 4)
          (4 4 5 4 1)
          (4 4 5 2 2)
          (4 4 5 2 4)
          (4 4 5 2 5)
          (4 4 5 2 4)
          (4 4 5 2 1)
          (4 4 5 8 2)
          (4 4 5 8 4)
          (4 4 5 8 5)
          (4 4 5 8 4)
          (4 4 5 8 1)
          (4 4 4 6 2)
          (4 4 4 6 4)
          (4 4 4 6 5)
          (4 4 4 6 4)
          (4 4 4 6 1)
          (4 4 4 4 2)
          (4 4 4 4 4)
          (4 4 4 4 5)
          (4 4 4 4 4)
          (4 4 4 4 1)
          (4 4 4 2 2)
          (4 4 4 2 4)
          (4 4 4 2 5)
          (4 4 4 2 4)
          (4 4 4 2 1)
          (4 4 4 8 2)
          (4 4 4 8 4)
          (4 4 4 8 5)
          (4 4 4 8 4)
          (4 4 4 8 1)
          (4 4 1 6 2)
          (4 4 1 6 4)
          (4 4 1 6 5)
          (4 4 1 6 4)
          (4 4 1 6 1)
          (4 4 1 4 2)
          (4 4 1 4 4)
          (4 4 1 4 5)
          (4 4 1 4 4)
          (4 4 1 4 1)
          (4 4 1 2 2)
          (4 4 1 2 4)
          (4 4 1 2 5)
          (4 4 1 2 4)
          (4 4 1 2 1)
          (4 4 1 8 2)
          (4 4 1 8 4)
          (4 4 1 8 5)
          (4 4 1 8 4)
          (4 4 1 8 1)
          (4 2 2 6 2)
          (4 2 2 6 4)
          (4 2 2 6 5)
          (4 2 2 6 4)
          (4 2 2 6 1)
          (4 2 2 4 2)
          (4 2 2 4 4)
          (4 2 2 4 5)
          (4 2 2 4 4)
          (4 2 2 4 1)
          (4 2 2 2 2)
          (4 2 2 2 4)
          (4 2 2 2 5)
          (4 2 2 2 4)
          (4 2 2 2 1)
          (4 2 2 8 2)
          (4 2 2 8 4)
          (4 2 2 8 5)
          (4 2 2 8 4)
          (4 2 2 8 1)
          (4 2 4 6 2)
          (4 2 4 6 4)
          (4 2 4 6 5)
          (4 2 4 6 4)
          (4 2 4 6 1)
          (4 2 4 4 2)
          (4 2 4 4 4)
          (4 2 4 4 5)
          (4 2 4 4 4)
          (4 2 4 4 1)
          (4 2 4 2 2)
          (4 2 4 2 4)
          (4 2 4 2 5)
          (4 2 4 2 4)
          (4 2 4 2 1)
          (4 2 4 8 2)
          (4 2 4 8 4)
          (4 2 4 8 5)
          (4 2 4 8 4)
          (4 2 4 8 1)
          (4 2 5 6 2)
          (4 2 5 6 4)
          (4 2 5 6 5)
          (4 2 5 6 4)
          (4 2 5 6 1)
          (4 2 5 4 2)
          (4 2 5 4 4)
          (4 2 5 4 5)
          (4 2 5 4 4)
          (4 2 5 4 1)
          (4 2 5 2 2)
          (4 2 5 2 4)
          (4 2 5 2 5)
          (4 2 5 2 4)
          (4 2 5 2 1)
          (4 2 5 8 2)
          (4 2 5 8 4)
          (4 2 5 8 5)
          (4 2 5 8 4)
          (4 2 5 8 1)
          (4 2 4 6 2)
          (4 2 4 6 4)
          (4 2 4 6 5)
          (4 2 4 6 4)
          (4 2 4 6 1)
          (4 2 4 4 2)
          (4 2 4 4 4)
          (4 2 4 4 5)
          (4 2 4 4 4)
          (4 2 4 4 1)
          (4 2 4 2 2)
          (4 2 4 2 4)
          (4 2 4 2 5)
          (4 2 4 2 4)
          (4 2 4 2 1)
          (4 2 4 8 2)
          (4 2 4 8 4)
          (4 2 4 8 5)
          (4 2 4 8 4)
          (4 2 4 8 1)
          (4 2 1 6 2)
          (4 2 1 6 4)
          (4 2 1 6 5)
          (4 2 1 6 4)
          (4 2 1 6 1)
          (4 2 1 4 2)
          (4 2 1 4 4)
          (4 2 1 4 5)
          (4 2 1 4 4)
          (4 2 1 4 1)
          (4 2 1 2 2)
          (4 2 1 2 4)
          (4 2 1 2 5)
          (4 2 1 2 4)
          (4 2 1 2 1)
          (4 2 1 8 2)
          (4 2 1 8 4)
          (4 2 1 8 5)
          (4 2 1 8 4)
          (4 2 1 8 1)
          (4 8 2 6 2)
          (4 8 2 6 4)
          (4 8 2 6 5)
          (4 8 2 6 4)
          (4 8 2 6 1)
          (4 8 2 4 2)
          (4 8 2 4 4)
          (4 8 2 4 5)
          (4 8 2 4 4)
          (4 8 2 4 1)
          (4 8 2 2 2)
          (4 8 2 2 4)
          (4 8 2 2 5)
          (4 8 2 2 4)
          (4 8 2 2 1)
          (4 8 2 8 2)
          (4 8 2 8 4)
          (4 8 2 8 5)
          (4 8 2 8 4)
          (4 8 2 8 1)
          (4 8 4 6 2)
          (4 8 4 6 4)
          (4 8 4 6 5)
          (4 8 4 6 4)
          (4 8 4 6 1)
          (4 8 4 4 2)
          (4 8 4 4 4)
          (4 8 4 4 5)
          (4 8 4 4 4)
          (4 8 4 4 1)
          (4 8 4 2 2)
          (4 8 4 2 4)
          (4 8 4 2 5)
          (4 8 4 2 4)
          (4 8 4 2 1)
          (4 8 4 8 2)
          (4 8 4 8 4)
          (4 8 4 8 5)
          (4 8 4 8 4)
          (4 8 4 8 1)
          (4 8 5 6 2)
          (4 8 5 6 4)
          (4 8 5 6 5)
          (4 8 5 6 4)
          (4 8 5 6 1)
          (4 8 5 4 2)
          (4 8 5 4 4)
          (4 8 5 4 5)
          (4 8 5 4 4)
          (4 8 5 4 1)
          (4 8 5 2 2)
          (4 8 5 2 4)
          (4 8 5 2 5)
          (4 8 5 2 4)
          (4 8 5 2 1)
          (4 8 5 8 2)
          (4 8 5 8 4)
          (4 8 5 8 5)
          (4 8 5 8 4)
          (4 8 5 8 1)
          (4 8 4 6 2)
          (4 8 4 6 4)
          (4 8 4 6 5)
          (4 8 4 6 4)
          (4 8 4 6 1)
          (4 8 4 4 2)
          (4 8 4 4 4)
          (4 8 4 4 5)
          (4 8 4 4 4)
          (4 8 4 4 1)
          (4 8 4 2 2)
          (4 8 4 2 4)
          (4 8 4 2 5)
          (4 8 4 2 4)
          (4 8 4 2 1)
          (4 8 4 8 2)
          (4 8 4 8 4)
          (4 8 4 8 5)
          (4 8 4 8 4)
          (4 8 4 8 1)
          (4 8 1 6 2)
          (4 8 1 6 4)
          (4 8 1 6 5)
          (4 8 1 6 4)
          (4 8 1 6 1)
          (4 8 1 4 2)
          (4 8 1 4 4)
          (4 8 1 4 5)
          (4 8 1 4 4)
          (4 8 1 4 1)
          (4 8 1 2 2)
          (4 8 1 2 4)
          (4 8 1 2 5)
          (4 8 1 2 4)
          (4 8 1 2 1)
          (4 8 1 8 2)
          (4 8 1 8 4)
          (4 8 1 8 5)
          (4 8 1 8 4)
          (4 8 1 8 1)
          (5 6 2 6 2)
          (5 6 2 6 4)
          (5 6 2 6 5)
          (5 6 2 6 4)
          (5 6 2 6 1)
          (5 6 2 4 2)
          (5 6 2 4 4)
          (5 6 2 4 5)
          (5 6 2 4 4)
          (5 6 2 4 1)
          (5 6 2 2 2)
          (5 6 2 2 4)
          (5 6 2 2 5)
          (5 6 2 2 4)
          (5 6 2 2 1)
          (5 6 2 8 2)
          (5 6 2 8 4)
          (5 6 2 8 5)
          (5 6 2 8 4)
          (5 6 2 8 1)
          (5 6 4 6 2)
          (5 6 4 6 4)
          (5 6 4 6 5)
          (5 6 4 6 4)
          (5 6 4 6 1)
          (5 6 4 4 2)
          (5 6 4 4 4)
          (5 6 4 4 5)
          (5 6 4 4 4)
          (5 6 4 4 1)
          (5 6 4 2 2)
          (5 6 4 2 4)
          (5 6 4 2 5)
          (5 6 4 2 4)
          (5 6 4 2 1)
          (5 6 4 8 2)
          (5 6 4 8 4)
          (5 6 4 8 5)
          (5 6 4 8 4)
          (5 6 4 8 1)
          (5 6 5 6 2)
          (5 6 5 6 4)
          (5 6 5 6 5)
          (5 6 5 6 4)
          (5 6 5 6 1)
          (5 6 5 4 2)
          (5 6 5 4 4)
          (5 6 5 4 5)
          (5 6 5 4 4)
          (5 6 5 4 1)
          (5 6 5 2 2)
          (5 6 5 2 4)
          (5 6 5 2 5)
          (5 6 5 2 4)
          (5 6 5 2 1)
          (5 6 5 8 2)
          (5 6 5 8 4)
          (5 6 5 8 5)
          (5 6 5 8 4)
          (5 6 5 8 1)
          (5 6 4 6 2)
          (5 6 4 6 4)
          (5 6 4 6 5)
          (5 6 4 6 4)
          (5 6 4 6 1)
          (5 6 4 4 2)
          (5 6 4 4 4)
          (5 6 4 4 5)
          (5 6 4 4 4)
          (5 6 4 4 1)
          (5 6 4 2 2)
          (5 6 4 2 4)
          (5 6 4 2 5)
          (5 6 4 2 4)
          (5 6 4 2 1)
          (5 6 4 8 2)
          (5 6 4 8 4)
          (5 6 4 8 5)
          (5 6 4 8 4)
          (5 6 4 8 1)
          (5 6 1 6 2)
          (5 6 1 6 4)
          (5 6 1 6 5)
          (5 6 1 6 4)
          (5 6 1 6 1)
          (5 6 1 4 2)
          (5 6 1 4 4)
          (5 6 1 4 5)
          (5 6 1 4 4)
          (5 6 1 4 1)
          (5 6 1 2 2)
          (5 6 1 2 4)
          (5 6 1 2 5)
          (5 6 1 2 4)
          (5 6 1 2 1)
          (5 6 1 8 2)
          (5 6 1 8 4)
          (5 6 1 8 5)
          (5 6 1 8 4)
          (5 6 1 8 1)
          (5 4 2 6 2)
          (5 4 2 6 4)
          (5 4 2 6 5)
          (5 4 2 6 4)
          (5 4 2 6 1)
          (5 4 2 4 2)
          (5 4 2 4 4)
          (5 4 2 4 5)
          (5 4 2 4 4)
          (5 4 2 4 1)
          (5 4 2 2 2)
          (5 4 2 2 4)
          (5 4 2 2 5)
          (5 4 2 2 4)
          (5 4 2 2 1)
          (5 4 2 8 2)
          (5 4 2 8 4)
          (5 4 2 8 5)
          (5 4 2 8 4)
          (5 4 2 8 1)
          (5 4 4 6 2)
          (5 4 4 6 4)
          (5 4 4 6 5)
          (5 4 4 6 4)
          (5 4 4 6 1)
          (5 4 4 4 2)
          (5 4 4 4 4)
          (5 4 4 4 5)
          (5 4 4 4 4)
          (5 4 4 4 1)
          (5 4 4 2 2)
          (5 4 4 2 4)
          (5 4 4 2 5)
          (5 4 4 2 4)
          (5 4 4 2 1)
          (5 4 4 8 2)
          (5 4 4 8 4)
          (5 4 4 8 5)
          (5 4 4 8 4)
          (5 4 4 8 1)
          (5 4 5 6 2)
          (5 4 5 6 4)
          (5 4 5 6 5)
          (5 4 5 6 4)
          (5 4 5 6 1)
          (5 4 5 4 2)
          (5 4 5 4 4)
          (5 4 5 4 5)
          (5 4 5 4 4)
          (5 4 5 4 1)
          (5 4 5 2 2)
          (5 4 5 2 4)
          (5 4 5 2 5)
          (5 4 5 2 4)
          (5 4 5 2 1)
          (5 4 5 8 2)
          (5 4 5 8 4)
          (5 4 5 8 5)
          (5 4 5 8 4)
          (5 4 5 8 1)
          (5 4 4 6 2)
          (5 4 4 6 4)
          (5 4 4 6 5)
          (5 4 4 6 4)
          (5 4 4 6 1)
          (5 4 4 4 2)
          (5 4 4 4 4)
          (5 4 4 4 5)
          (5 4 4 4 4)
          (5 4 4 4 1)
          (5 4 4 2 2)
          (5 4 4 2 4)
          (5 4 4 2 5)
          (5 4 4 2 4)
          (5 4 4 2 1)
          (5 4 4 8 2)
          (5 4 4 8 4)
          (5 4 4 8 5)
          (5 4 4 8 4)
          (5 4 4 8 1)
          (5 4 1 6 2)
          (5 4 1 6 4)
          (5 4 1 6 5)
          (5 4 1 6 4)
          (5 4 1 6 1)
          (5 4 1 4 2)
          (5 4 1 4 4)
          (5 4 1 4 5)
          (5 4 1 4 4)
          (5 4 1 4 1)
          (5 4 1 2 2)
          (5 4 1 2 4)
          (5 4 1 2 5)
          (5 4 1 2 4)
          (5 4 1 2 1)
          (5 4 1 8 2)
          (5 4 1 8 4)
          (5 4 1 8 5)
          (5 4 1 8 4)
          (5 4 1 8 1)
          (5 2 2 6 2)
          (5 2 2 6 4)
          (5 2 2 6 5)
          (5 2 2 6 4)
          (5 2 2 6 1)
          (5 2 2 4 2)
          (5 2 2 4 4)
          (5 2 2 4 5)
          (5 2 2 4 4)
          (5 2 2 4 1)
          (5 2 2 2 2)
          (5 2 2 2 4)
          (5 2 2 2 5)
          (5 2 2 2 4)
          (5 2 2 2 1)
          (5 2 2 8 2)
          (5 2 2 8 4)
          (5 2 2 8 5)
          (5 2 2 8 4)
          (5 2 2 8 1)
          (5 2 4 6 2)
          (5 2 4 6 4)
          (5 2 4 6 5)
          (5 2 4 6 4)
          (5 2 4 6 1)
          (5 2 4 4 2)
          (5 2 4 4 4)
          (5 2 4 4 5)
          (5 2 4 4 4)
          (5 2 4 4 1)
          (5 2 4 2 2)
          (5 2 4 2 4)
          (5 2 4 2 5)
          (5 2 4 2 4)
          (5 2 4 2 1)
          (5 2 4 8 2)
          (5 2 4 8 4)
          (5 2 4 8 5)
          (5 2 4 8 4)
          (5 2 4 8 1)
          (5 2 5 6 2)
          (5 2 5 6 4)
          (5 2 5 6 5)
          (5 2 5 6 4)
          (5 2 5 6 1)
          (5 2 5 4 2)
          (5 2 5 4 4)
          (5 2 5 4 5)
          (5 2 5 4 4)
          (5 2 5 4 1)
          (5 2 5 2 2)
          (5 2 5 2 4)
          (5 2 5 2 5)
          (5 2 5 2 4)
          (5 2 5 2 1)
          (5 2 5 8 2)
          (5 2 5 8 4)
          (5 2 5 8 5)
          (5 2 5 8 4)
          (5 2 5 8 1)
          (5 2 4 6 2)
          (5 2 4 6 4)
          (5 2 4 6 5)
          (5 2 4 6 4)
          (5 2 4 6 1)
          (5 2 4 4 2)
          (5 2 4 4 4)
          (5 2 4 4 5)
          (5 2 4 4 4)
          (5 2 4 4 1)
          (5 2 4 2 2)
          (5 2 4 2 4)
          (5 2 4 2 5)
          (5 2 4 2 4)
          (5 2 4 2 1)
          (5 2 4 8 2)
          (5 2 4 8 4)
          (5 2 4 8 5)
          (5 2 4 8 4)
          (5 2 4 8 1)
          (5 2 1 6 2)
          (5 2 1 6 4)
          (5 2 1 6 5)
          (5 2 1 6 4)
          (5 2 1 6 1)
          (5 2 1 4 2)
          (5 2 1 4 4)
          (5 2 1 4 5)
          (5 2 1 4 4)
          (5 2 1 4 1)
          (5 2 1 2 2)
          (5 2 1 2 4)
          (5 2 1 2 5)
          (5 2 1 2 4)
          (5 2 1 2 1)
          (5 2 1 8 2)
          (5 2 1 8 4)
          (5 2 1 8 5)
          (5 2 1 8 4)
          (5 2 1 8 1)
          (5 8 2 6 2)
          (5 8 2 6 4)
          (5 8 2 6 5)
          (5 8 2 6 4)
          (5 8 2 6 1)
          (5 8 2 4 2)
          (5 8 2 4 4)
          (5 8 2 4 5)
          (5 8 2 4 4)
          (5 8 2 4 1)
          (5 8 2 2 2)
          (5 8 2 2 4)
          (5 8 2 2 5)
          (5 8 2 2 4)
          (5 8 2 2 1)
          (5 8 2 8 2)
          (5 8 2 8 4)
          (5 8 2 8 5)
          (5 8 2 8 4)
          (5 8 2 8 1)
          (5 8 4 6 2)
          (5 8 4 6 4)
          (5 8 4 6 5)
          (5 8 4 6 4)
          (5 8 4 6 1)
          (5 8 4 4 2)
          (5 8 4 4 4)
          (5 8 4 4 5)
          (5 8 4 4 4)
          (5 8 4 4 1)
          (5 8 4 2 2)
          (5 8 4 2 4)
          (5 8 4 2 5)
          (5 8 4 2 4)
          (5 8 4 2 1)
          (5 8 4 8 2)
          (5 8 4 8 4)
          (5 8 4 8 5)
          (5 8 4 8 4)
          (5 8 4 8 1)
          (5 8 5 6 2)
          (5 8 5 6 4)
          (5 8 5 6 5)
          (5 8 5 6 4)
          (5 8 5 6 1)
          (5 8 5 4 2)
          (5 8 5 4 4)
          (5 8 5 4 5)
          (5 8 5 4 4)
          (5 8 5 4 1)
          (5 8 5 2 2)
          (5 8 5 2 4)
          (5 8 5 2 5)
          (5 8 5 2 4)
          (5 8 5 2 1)
          (5 8 5 8 2)
          (5 8 5 8 4)
          (5 8 5 8 5)
          (5 8 5 8 4)
          (5 8 5 8 1)
          (5 8 4 6 2)
          (5 8 4 6 4)
          (5 8 4 6 5)
          (5 8 4 6 4)
          (5 8 4 6 1)
          (5 8 4 4 2)
          (5 8 4 4 4)
          (5 8 4 4 5)
          (5 8 4 4 4)
          (5 8 4 4 1)
          (5 8 4 2 2)
          (5 8 4 2 4)
          (5 8 4 2 5)
          (5 8 4 2 4)
          (5 8 4 2 1)
          (5 8 4 8 2)
          (5 8 4 8 4)
          (5 8 4 8 5)
          (5 8 4 8 4)
          (5 8 4 8 1)
          (5 8 1 6 2)
          (5 8 1 6 4)
          (5 8 1 6 5)
          (5 8 1 6 4)
          (5 8 1 6 1)
          (5 8 1 4 2)
          (5 8 1 4 4)
          (5 8 1 4 5)
          (5 8 1 4 4)
          (5 8 1 4 1)
          (5 8 1 2 2)
          (5 8 1 2 4)
          (5 8 1 2 5)
          (5 8 1 2 4)
          (5 8 1 2 1)
          (5 8 1 8 2)
          (5 8 1 8 4)
          (5 8 1 8 5)
          (5 8 1 8 4)
          (5 8 1 8 1)
          (32 6 2 6 2)
          (32 6 2 6 4)
          (32 6 2 6 5)
          (32 6 2 6 4)
          (32 6 2 6 1)
          (32 6 2 4 2)
          (32 6 2 4 4)
          (32 6 2 4 5)
          (32 6 2 4 4)
          (32 6 2 4 1)
          (32 6 2 2 2)
          (32 6 2 2 4)
          (32 6 2 2 5)
          (32 6 2 2 4)
          (32 6 2 2 1)
          (32 6 2 8 2)
          (32 6 2 8 4)
          (32 6 2 8 5)
          (32 6 2 8 4)
          (32 6 2 8 1)
          (32 6 4 6 2)
          (32 6 4 6 4)
          (32 6 4 6 5)
          (32 6 4 6 4)
          (32 6 4 6 1)
          (32 6 4 4 2)
          (32 6 4 4 4)
          (32 6 4 4 5)
          (32 6 4 4 4)
          (32 6 4 4 1)
          (32 6 4 2 2)
          (32 6 4 2 4)
          (32 6 4 2 5)
          (32 6 4 2 4)
          (32 6 4 2 1)
          (32 6 4 8 2)
          (32 6 4 8 4)
          (32 6 4 8 5)
          (32 6 4 8 4)
          (32 6 4 8 1)
          (32 6 5 6 2)
          (32 6 5 6 4)
          (32 6 5 6 5)
          (32 6 5 6 4)
          (32 6 5 6 1)
          (32 6 5 4 2)
          (32 6 5 4 4)
          (32 6 5 4 5)
          (32 6 5 4 4)
          (32 6 5 4 1)
          (32 6 5 2 2)
          (32 6 5 2 4)
          (32 6 5 2 5)
          (32 6 5 2 4)
          (32 6 5 2 1)
          (32 6 5 8 2)
          (32 6 5 8 4)
          (32 6 5 8 5)
          (32 6 5 8 4)
          (32 6 5 8 1)
          (32 6 4 6 2)
          (32 6 4 6 4)
          (32 6 4 6 5)
          (32 6 4 6 4)
          (32 6 4 6 1)
          (32 6 4 4 2)
          (32 6 4 4 4)
          (32 6 4 4 5)
          (32 6 4 4 4)
          (32 6 4 4 1)
          (32 6 4 2 2)
          (32 6 4 2 4)
          (32 6 4 2 5)
          (32 6 4 2 4)
          (32 6 4 2 1)
          (32 6 4 8 2)
          (32 6 4 8 4)
          (32 6 4 8 5)
          (32 6 4 8 4)
          (32 6 4 8 1)
          (32 6 1 6 2)
          (32 6 1 6 4)
          (32 6 1 6 5)
          (32 6 1 6 4)
          (32 6 1 6 1)
          (32 6 1 4 2)
          (32 6 1 4 4)
          (32 6 1 4 5)
          (32 6 1 4 4)
          (32 6 1 4 1)
          (32 6 1 2 2)
          (32 6 1 2 4)
          (32 6 1 2 5)
          (32 6 1 2 4)
          (32 6 1 2 1)
          (32 6 1 8 2)
          (32 6 1 8 4)
          (32 6 1 8 5)
          (32 6 1 8 4)
          (32 6 1 8 1)
          (32 4 2 6 2)
          (32 4 2 6 4)
          (32 4 2 6 5)
          (32 4 2 6 4)
          (32 4 2 6 1)
          (32 4 2 4 2)
          (32 4 2 4 4)
          (32 4 2 4 5)
          (32 4 2 4 4)
          (32 4 2 4 1)
          (32 4 2 2 2)
          (32 4 2 2 4)
          (32 4 2 2 5)
          (32 4 2 2 4)
          (32 4 2 2 1)
          (32 4 2 8 2)
          (32 4 2 8 4)
          (32 4 2 8 5)
          (32 4 2 8 4)
          (32 4 2 8 1)
          (32 4 4 6 2)
          (32 4 4 6 4)
          (32 4 4 6 5)
          (32 4 4 6 4)
          (32 4 4 6 1)
          (32 4 4 4 2)
          (32 4 4 4 4)
          (32 4 4 4 5)
          (32 4 4 4 4)
          (32 4 4 4 1)
          (32 4 4 2 2)
          (32 4 4 2 4)
          (32 4 4 2 5)
          (32 4 4 2 4)
          (32 4 4 2 1)
          (32 4 4 8 2)
          (32 4 4 8 4)
          (32 4 4 8 5)
          (32 4 4 8 4)
          (32 4 4 8 1)
          (32 4 5 6 2)
          (32 4 5 6 4)
          (32 4 5 6 5)
          (32 4 5 6 4)
          (32 4 5 6 1)
          (32 4 5 4 2)
          (32 4 5 4 4)
          (32 4 5 4 5)
          (32 4 5 4 4)
          (32 4 5 4 1)
          (32 4 5 2 2)
          (32 4 5 2 4)
          (32 4 5 2 5)
          (32 4 5 2 4)
          (32 4 5 2 1)
          (32 4 5 8 2)
          (32 4 5 8 4)
          (32 4 5 8 5)
          (32 4 5 8 4)
          (32 4 5 8 1)
          (32 4 4 6 2)
          (32 4 4 6 4)
          (32 4 4 6 5)
          (32 4 4 6 4)
          (32 4 4 6 1)
          (32 4 4 4 2)
          (32 4 4 4 4)
          (32 4 4 4 5)
          (32 4 4 4 4)
          (32 4 4 4 1)
          (32 4 4 2 2)
          (32 4 4 2 4)
          (32 4 4 2 5)
          (32 4 4 2 4)
          (32 4 4 2 1)
          (32 4 4 8 2)
          (32 4 4 8 4)
          (32 4 4 8 5)
          (32 4 4 8 4)
          (32 4 4 8 1)
          (32 4 1 6 2)
          (32 4 1 6 4)
          (32 4 1 6 5)
          (32 4 1 6 4)
          (32 4 1 6 1)
          (32 4 1 4 2)
          (32 4 1 4 4)
          (32 4 1 4 5)
          (32 4 1 4 4)
          (32 4 1 4 1)
          (32 4 1 2 2)
          (32 4 1 2 4)
          (32 4 1 2 5)
          (32 4 1 2 4)
          (32 4 1 2 1)
          (32 4 1 8 2)
          (32 4 1 8 4)
          (32 4 1 8 5)
          (32 4 1 8 4)
          (32 4 1 8 1)
          (32 2 2 6 2)
          (32 2 2 6 4)
          (32 2 2 6 5)
          (32 2 2 6 4)
          (32 2 2 6 1)
          (32 2 2 4 2)
          (32 2 2 4 4)
          (32 2 2 4 5)
          (32 2 2 4 4)
          (32 2 2 4 1)
          (32 2 2 2 2)
          (32 2 2 2 4)
          (32 2 2 2 5)
          (32 2 2 2 4)
          (32 2 2 2 1)
          (32 2 2 8 2)
          (32 2 2 8 4)
          (32 2 2 8 5)
          (32 2 2 8 4)
          (32 2 2 8 1)
          (32 2 4 6 2)
          (32 2 4 6 4)
          (32 2 4 6 5)
          (32 2 4 6 4)
          (32 2 4 6 1)
          (32 2 4 4 2)
          (32 2 4 4 4)
          (32 2 4 4 5)
          (32 2 4 4 4)
          (32 2 4 4 1)
          (32 2 4 2 2)
          (32 2 4 2 4)
          (32 2 4 2 5)
          (32 2 4 2 4)
          (32 2 4 2 1)
          (32 2 4 8 2)
          (32 2 4 8 4)
          (32 2 4 8 5)
          (32 2 4 8 4)
          (32 2 4 8 1)
          (32 2 5 6 2)
          (32 2 5 6 4)
          (32 2 5 6 5)
          (32 2 5 6 4)
          (32 2 5 6 1)
          (32 2 5 4 2)
          (32 2 5 4 4)
          (32 2 5 4 5)
          (32 2 5 4 4)
          (32 2 5 4 1)
          (32 2 5 2 2)
          (32 2 5 2 4)
          (32 2 5 2 5)
          (32 2 5 2 4)
          (32 2 5 2 1)
          (32 2 5 8 2)
          (32 2 5 8 4)
          (32 2 5 8 5)
          (32 2 5 8 4)
          (32 2 5 8 1)
          (32 2 4 6 2)
          (32 2 4 6 4)
          (32 2 4 6 5)
          (32 2 4 6 4)
          (32 2 4 6 1)
          (32 2 4 4 2)
          (32 2 4 4 4)
          (32 2 4 4 5)
          (32 2 4 4 4)
          (32 2 4 4 1)
          (32 2 4 2 2)
          (32 2 4 2 4)
          (32 2 4 2 5)
          (32 2 4 2 4)
          (32 2 4 2 1)
          (32 2 4 8 2)
          (32 2 4 8 4)
          (32 2 4 8 5)
          (32 2 4 8 4)
          (32 2 4 8 1)
          (32 2 1 6 2)
          (32 2 1 6 4)
          (32 2 1 6 5)
          (32 2 1 6 4)
          (32 2 1 6 1)
          (32 2 1 4 2)
          (32 2 1 4 4)
          (32 2 1 4 5)
          (32 2 1 4 4)
          (32 2 1 4 1)
          (32 2 1 2 2)
          (32 2 1 2 4)
          (32 2 1 2 5)
          (32 2 1 2 4)
          (32 2 1 2 1)
          (32 2 1 8 2)
          (32 2 1 8 4)
          (32 2 1 8 5)
          (32 2 1 8 4)
          (32 2 1 8 1)
          (32 8 2 6 2)
          (32 8 2 6 4)
          (32 8 2 6 5)
          (32 8 2 6 4)
          (32 8 2 6 1)
          (32 8 2 4 2)
          (32 8 2 4 4)
          (32 8 2 4 5)
          (32 8 2 4 4)
          (32 8 2 4 1)
          (32 8 2 2 2)
          (32 8 2 2 4)
          (32 8 2 2 5)
          (32 8 2 2 4)
          (32 8 2 2 1)
          (32 8 2 8 2)
          (32 8 2 8 4)
          (32 8 2 8 5)
          (32 8 2 8 4)
          (32 8 2 8 1)
          (32 8 4 6 2)
          (32 8 4 6 4)
          (32 8 4 6 5)
          (32 8 4 6 4)
          (32 8 4 6 1)
          (32 8 4 4 2)
          (32 8 4 4 4)
          (32 8 4 4 5)
          (32 8 4 4 4)
          (32 8 4 4 1)
          (32 8 4 2 2)
          (32 8 4 2 4)
          (32 8 4 2 5)
          (32 8 4 2 4)
          (32 8 4 2 1)
          (32 8 4 8 2)
          (32 8 4 8 4)
          (32 8 4 8 5)
          (32 8 4 8 4)
          (32 8 4 8 1)
          (32 8 5 6 2)
          (32 8 5 6 4)
          (32 8 5 6 5)
          (32 8 5 6 4)
          (32 8 5 6 1)
          (32 8 5 4 2)
          (32 8 5 4 4)
          (32 8 5 4 5)
          (32 8 5 4 4)
          (32 8 5 4 1)
          (32 8 5 2 2)
          (32 8 5 2 4)
          (32 8 5 2 5)
          (32 8 5 2 4)
          (32 8 5 2 1)
          (32 8 5 8 2)
          (32 8 5 8 4)
          (32 8 5 8 5)
          (32 8 5 8 4)
          (32 8 5 8 1)
          (32 8 4 6 2)
          (32 8 4 6 4)
          (32 8 4 6 5)
          (32 8 4 6 4)
          (32 8 4 6 1)
          (32 8 4 4 2)
          (32 8 4 4 4)
          (32 8 4 4 5)
          (32 8 4 4 4)
          (32 8 4 4 1)
          (32 8 4 2 2)
          (32 8 4 2 4)
          (32 8 4 2 5)
          (32 8 4 2 4)
          (32 8 4 2 1)
          (32 8 4 8 2)
          (32 8 4 8 4)
          (32 8 4 8 5)
          (32 8 4 8 4)
          (32 8 4 8 1)
          (32 8 1 6 2)
          (32 8 1 6 4)
          (32 8 1 6 5)
          (32 8 1 6 4)
          (32 8 1 6 1)
          (32 8 1 4 2)
          (32 8 1 4 4)
          (32 8 1 4 5)
          (32 8 1 4 4)
          (32 8 1 4 1)
          (32 8 1 2 2)
          (32 8 1 2 4)
          (32 8 1 2 5)
          (32 8 1 2 4)
          (32 8 1 2 1)
          (32 8 1 8 2)
          (32 8 1 8 4)
          (32 8 1 8 5)
          (32 8 1 8 4)
          (32 8 1 8 1))
        (www))
  (define (wwww)
    (define (f x) (+ x (amb 6 4 2 8) (amb 2 4 5 4 1)))
    (reify (f (f (f (amb 0 2 3 4 5 32))))))
  (⊦= 48000 (length (wwww))))

References
[1] Introduction to Programming with Shift and Reset
[2] Kenichi Asai
[3] Delimited Continuations for Everyone by Kenichi Asai
[4] CW 2011 Tutorial: home page
[5] CW 2011 Tutorial: slides