enum class ABCD {
    A, B, C, D
}

fun test(x: ABCD, y: ABCD, ok: String): String =
    when (x) {
        ABCD.A, ABCD.B ->
            when (y) {
                ABCD.A, ABCD.B -> ok
                ABCD.C, ABCD.D -> y.toString()
            }
        ABCD.C, ABCD.D ->
            x.toString()
    }

fun box(): String =
    test(ABCD.B, ABCD.A, "O") + test(ABCD.A, ABCD.B, "K")

// CHECK_BYTECODE_TEXT
// 2 (TABLE|LOOKUP)SWITCH
