#lang typed/scheme (: foo : Any -> (U 'x 'y)) (define (foo x) (ann (if (member x '(x y)) x 'x) (U 'x 'y)) (ann (if (memv x '(x y)) x 'x) (U 'x 'y)) (if (memq x '(x y)) x 'x))