abstract class C {
    fun test(x: Int) {
        if (x == 0) return
        if (this is D) {
            val d: D = this
            d.test(x - 1)
        }
    }
}

class D: C()

fun box(): String {
    D().test(10)
    return "OK"
}
