class U open class WeatherReport { public open var forecast: U = U() } open class DerivedWeatherReport() : WeatherReport() { public override var forecast: U get() = super.forecast set(newv: U) { super.forecast = newv } }