class Flaf { constructor(javaName: String) /* primary */ { super/*Any*/() /* () */ } val javaName: String field = javaName get private val INSTANCES: MutableMap field = mutableMapOf() private get fun forJavaName(javaName: String): Flaf { var result: Flaf? = .().get(key = javaName) when { EQEQ(arg0 = result, arg1 = null) -> { // BLOCK result = .().get(key = javaName + "_alternative") when { EQEQ(arg0 = result, arg1 = null) -> { // BLOCK result = Flaf(javaName = javaName) } } .().set(key = javaName, value = result) } } return result } }