///| priv struct List[A](@list.List[A]) ///| priv struct Tsil[A](@list.List[A]) ///| struct T[A]((List[A], Tsil[A]))