@JvmRecord
data class MyRec : Record {
  constructor(name: String) /* primary */ {
    super/*Record*/()
    /* <init>() */

  }

  val name: String
    field = name
    get

  operator fun component1(): String {
    return <this>.#name
  }

  fun copy(name: String = <this>.#name): MyRec {
    return MyRec(name = name)
  }

  override fun toString(): String {
    return "MyRec(" + "name=" + <this>.#name + ")"
  }

  override fun hashCode(): Int {
    return <this>.#name.hashCode()
  }

  override operator fun equals(other: Any?): Boolean {
    when {
      EQEQEQ(arg0 = <this>, arg1 = other) -> return true
    }
    when {
      other !is MyRec -> return false
    }
    val tmp0_other_with_cast: MyRec = other as MyRec
    when {
      EQEQ(arg0 = <this>.#name, arg1 = tmp0_other_with_cast.#name).not() -> return false
    }
    return true
  }

}

fun test(rec: MyRec) {
  rec.<get-name>() /*~> Unit */
}
