import kotlin.test.assertEquals enum class Season { WINTER SPRING SUMMER AUTUMN } fun foo1(x : Season?) : String { when(x) { Season.AUTUMN, Season.SPRING -> return "autumn_or_spring"; Season.SUMMER, null -> return "summer_or_null" } return "other" } fun foo2(x : Season?) : String { when(x) { Season.AUTUMN, Season.SPRING -> return "autumn_or_spring"; Season.SUMMER -> return "summer" } return "other" } fun box() : String { assertEquals("autumn_or_spring", foo1(Season.AUTUMN)) assertEquals("autumn_or_spring", foo1(Season.SPRING)) assertEquals("summer_or_null", foo1(Season.SUMMER)) assertEquals("summer_or_null", foo1(null)) assertEquals("autumn_or_spring", foo2(Season.AUTUMN)) assertEquals("autumn_or_spring", foo2(Season.SPRING)) assertEquals("summer", foo2(Season.SUMMER)) assertEquals("other", foo2(null)) return "OK" }