alband
class Optional<T>(private val value: T?) { fun <X> or(other: X): X where T:X = value ?: other }