eldc
sealed class Result<T, TError> { data class Success<T, TError>(val item: T) : Result<T, TError>() data class Failure<T, TError>(val error: TError) : Result<T, TError>() }