public class Seq { public Seq() {} public Seq(T x, Seq xs) { } static Seq nil () { return new Seq (); } static Seq cons (V x, Seq xs) { return new Seq (x, xs); } static void foo() { (Seq)nil(); } }