dean
interface VarDelegate<T> : ValDelegate<T> { operator fun setValue(thisRef: Any?, property: KProperty<*>, value: T) } interface ValDelegate<T> { operator fun getValue(thisRef: Any?, property: KProperty<*>): T }