damian
interface Foo<T : Foo<T>> { fun copy(): T } data class Bar(val i: Int) : Foo<Bar> // Class "Bar" must be declared abstract or implement abstract member...