abstract enum class X : Enum { private constructor() /* primary */ { super/*Enum*/() /* () */ } B = B() private enum entry class B : X { private constructor() /* primary */ { super/*X*/() /*~> Unit */ /* () */ } val value2: String field = "OK" get override val value: Function0 field = local fun (): String { return X.B.() } override get } abstract val value: Function0 abstract get fun values(): Array /* Synthetic body for ENUM_VALUES */ fun valueOf(value: String): X /* Synthetic body for ENUM_VALUEOF */ val entries: EnumEntries get(): EnumEntries /* Synthetic body for ENUM_ENTRIES */ } fun box(): String { return X.B.().invoke() }