class Derived1<T : Any?> : Base<T> {
  constructor(x: T) /* primary */ {
    super/*Base*/<T>(x = x)
    /* <init>() */

  }

  override fun <Y : Any?> foo(y: Y): T {
    return <this>.<get-x>()
  }

  override var bar: T
    field = x
    override get
    override set

  override var <Z : Any?> Z.exn: T
    override get(): T {
      return <this>.<get-x>()
    }
    override set(value: T) {
    }

}
