(letrec (walk (fn (cell)
                  (if (zero? (hd cell))
	              (yield (tl cell))
	              ((fn (seq) 
	                   (for right (walk (tl cell)) (yield right)))
		       (for left (walk (hd cell)) (yield left))))))
 ((fn (tree)
    (for n (walk tree) (print n)))
  (cons (cons (cons 0 1) (cons 0 2))
        (cons (cons 0 3) (cons (cons 0 4) (cons 0 5)))))
 )
