class MyMap: Map { override val size: Int get() = 0 override val isEmpty: Boolean get() = true override fun containsKey(key: Any?): Boolean = false override fun containsValue(value: Any?): Boolean = false override fun get(key: Any?): V? = null override fun keySet(): Set = throw UnsupportedOperationException() override fun values(): Collection = throw UnsupportedOperationException() override fun entrySet(): Set> = throw UnsupportedOperationException() public fun put(key: K, value: V): V? = null public fun remove(key: Any?): V? = null public fun putAll(m: Map) {} public fun clear() {} } fun box(): String { val myMap = MyMap() val map = myMap as java.util.Map map.put("", 1) map.remove("") map.putAll(myMap) map.clear() return "OK" }