(let ((mom-path (let ((mom-path (let ((mom-path (cond (#t #f) (else (if (eq? (ft-eye-color 'unknown) 'blue) '() (let ((mom-path (path-to-blue-eyes (ft-mom 'unknown))) (dad-path (path-to-blue-eyes (ft-dad 'unknown)))) (cond ((and mom-path dad-path) (cons 'mom mom-path)) ((and mom-path (not dad-path)) (cons 'mom mom-path)) ((and dad-path (not mom-path)) (cons 'dad dad-path)) (else #f))))))) (dad-path (path-to-blue-eyes (ft-dad (make-ft 'emily 'brown 'unknown 'unknown))))) (cond ((and mom-path dad-path) (cons 'mom mom-path)) ((and mom-path (not dad-path)) (cons 'mom mom-path)) ((and dad-path (not mom-path)) (cons 'dad dad-path)) (else #f)))) (dad-path (path-to-blue-eyes (ft-dad (make-ft 'alice 'green (make-ft 'emily 'brown 'unknown 'unknown) (make-ft 'bruce 'blue 'unknown 'unknown)))))) (cond ((and mom-path dad-path) (cons 'mom mom-path)) ((and mom-path (not dad-path)) (cons 'mom mom-path)) ((and dad-path (not mom-path)) (cons 'dad dad-path)) (else #f)))) (dad-path (path-to-blue-eyes (ft-dad (make-ft 'robby 'hazel (make-ft 'alice 'green (make-ft 'emily 'brown 'unknown 'unknown) (make-ft 'bruce 'blue 'unknown 'unknown)) (make-ft 'bill 'brown 'unknown 'unknown)))))) (cond ((and mom-path dad-path) (cons 'mom mom-path)) ((and mom-path (not dad-path)) (cons 'mom mom-path)) ((and dad-path (not mom-path)) (cons 'dad dad-path)) (else #f)))