class C<T : Any?> {
  constructor() /* primary */ {
    super/*Any*/()
    /* <init>() */

  }

}

object Delegate {
  private constructor() /* primary */ {
    super/*Any*/()
    /* <init>() */

  }

  operator fun getValue(thisRef: Any?, kProp: Any?): Int {
    return 42
  }

  operator fun setValue(thisRef: Any?, kProp: Any?, newValue: Int) {
  }

}

var <T : Any?> C<T>.genericDelegatedProperty: Int /* by */
  field = Delegate
  get(): Int {
    return #genericDelegatedProperty$delegate.getValue(thisRef = <this>, kProp = ::genericDelegatedProperty/*</* null */>()*/)
  }
  set(<set-?>: Int) {
    #genericDelegatedProperty$delegate.setValue(thisRef = <this>, kProp = ::genericDelegatedProperty/*</* null */>()*/, newValue = <set-?>)
  }
