jkbbwr
sealed class Result<out T> { class Failure(val message: String): Result<Nothing>() class Success<out T>(val value: T): Result<T>() object ok : Result<Nothing>() }