val value: T): LocalResult<T>() { override fun get(): T = value } class Obsolete<T>(private val value: T): LocalResult<T>() { override fun get(): T = value } class NotFound<T>: LocalResult<T>() { override fun get(): T = throw Resources.NotFoundException("No value") } }