So far, the best I could come up with was the following ``` cpp // Printable t, List t interface PrintableList<T: (Printable, Foo)> { virtual printList(List<T>): Void virtual printNumericList(List<T: (Numeric)>): Void } ```