import java.util.ArrayList class MyCollection : Collection>> { override fun iterator() = null!! override fun size(): Int = null!! override fun isEmpty(): Boolean = null!! override fun contains(o: Any?): Boolean = null!! override fun containsAll(c: Collection): Boolean = null!! } fun box(): String { val c = MyCollection() as MutableCollection>> try { c.add(ArrayList()) return "Fail" } catch (e: UnsupportedOperationException) { return "OK" } }