// CHECK:
//   Mangled name: TestInitVarFromParameter
//   Public signature: /TestInitVarFromParameter|null[0]
class TestInitVarFromParameter {
  // CHECK:
  //   Mangled name: TestInitVarFromParameter{}x
  //   Public signature: /TestInitVarFromParameter.x|-8060530855978347579[0]
  //   Public signature debug description: {}x
  var x: Int
    // CHECK JVM_IR:
    //   Mangled name: TestInitVarFromParameter#<get-x>(){}kotlin.Int
    //   Public signature: /TestInitVarFromParameter.x.<get-x>|4966956098150895696[0]
    //   Public signature debug description: <get-x>(){}kotlin.Int
    // CHECK JS_IR NATIVE:
    //   Mangled name: TestInitVarFromParameter#<get-x>(){}
    //   Public signature: /TestInitVarFromParameter.x.<get-x>|1482705010654679335[0]
    //   Public signature debug description: <get-x>(){}
    get
    // CHECK:
    //   Mangled name: TestInitVarFromParameter#<set-x>(kotlin.Int){}
    //   Public signature: /TestInitVarFromParameter.x.<set-x>|-740209739415615559[0]
    //   Public signature debug description: <set-x>(kotlin.Int){}
    set

  // CHECK:
  //   Mangled name: TestInitVarFromParameter#<init>(kotlin.Int){}
  //   Public signature: /TestInitVarFromParameter.<init>|-5182794243525578284[0]
  //   Public signature debug description: <init>(kotlin.Int){}
  constructor(x: Int) /* primary */

}

// CHECK:
//   Mangled name: TestInitVarInClass
//   Public signature: /TestInitVarInClass|null[0]
class TestInitVarInClass {
  // CHECK:
  //   Mangled name: TestInitVarInClass{}x
  //   Public signature: /TestInitVarInClass.x|-8060530855978347579[0]
  //   Public signature debug description: {}x
  var x: Int
    // CHECK JVM_IR:
    //   Mangled name: TestInitVarInClass#<get-x>(){}kotlin.Int
    //   Public signature: /TestInitVarInClass.x.<get-x>|4966956098150895696[0]
    //   Public signature debug description: <get-x>(){}kotlin.Int
    // CHECK JS_IR NATIVE:
    //   Mangled name: TestInitVarInClass#<get-x>(){}
    //   Public signature: /TestInitVarInClass.x.<get-x>|1482705010654679335[0]
    //   Public signature debug description: <get-x>(){}
    get
    // CHECK:
    //   Mangled name: TestInitVarInClass#<set-x>(kotlin.Int){}
    //   Public signature: /TestInitVarInClass.x.<set-x>|-740209739415615559[0]
    //   Public signature debug description: <set-x>(kotlin.Int){}
    set

  // CHECK:
  //   Mangled name: TestInitVarInClass#<init>(){}
  //   Public signature: /TestInitVarInClass.<init>|-5645683436151566731[0]
  //   Public signature debug description: <init>(){}
  constructor() /* primary */

}

// CHECK:
//   Mangled name: TestInitVarInInitBlock
//   Public signature: /TestInitVarInInitBlock|null[0]
class TestInitVarInInitBlock {
  // CHECK:
  //   Mangled name: TestInitVarInInitBlock{}x
  //   Public signature: /TestInitVarInInitBlock.x|-8060530855978347579[0]
  //   Public signature debug description: {}x
  var x: Int
    // CHECK JVM_IR:
    //   Mangled name: TestInitVarInInitBlock#<get-x>(){}kotlin.Int
    //   Public signature: /TestInitVarInInitBlock.x.<get-x>|4966956098150895696[0]
    //   Public signature debug description: <get-x>(){}kotlin.Int
    // CHECK JS_IR NATIVE:
    //   Mangled name: TestInitVarInInitBlock#<get-x>(){}
    //   Public signature: /TestInitVarInInitBlock.x.<get-x>|1482705010654679335[0]
    //   Public signature debug description: <get-x>(){}
    get
    // CHECK:
    //   Mangled name: TestInitVarInInitBlock#<set-x>(kotlin.Int){}
    //   Public signature: /TestInitVarInInitBlock.x.<set-x>|-740209739415615559[0]
    //   Public signature debug description: <set-x>(kotlin.Int){}
    set

  // CHECK:
  //   Mangled name: TestInitVarInInitBlock#<init>(){}
  //   Public signature: /TestInitVarInInitBlock.<init>|-5645683436151566731[0]
  //   Public signature debug description: <init>(){}
  constructor() /* primary */

}

// CHECK:
//   Mangled name: TestInitVarWithCustomSetter
//   Public signature: /TestInitVarWithCustomSetter|null[0]
class TestInitVarWithCustomSetter {
  // CHECK:
  //   Mangled name: TestInitVarWithCustomSetter{}x
  //   Public signature: /TestInitVarWithCustomSetter.x|-8060530855978347579[0]
  //   Public signature debug description: {}x
  var x: Int
    // CHECK JVM_IR:
    //   Mangled name: TestInitVarWithCustomSetter#<get-x>(){}kotlin.Int
    //   Public signature: /TestInitVarWithCustomSetter.x.<get-x>|4966956098150895696[0]
    //   Public signature debug description: <get-x>(){}kotlin.Int
    // CHECK JS_IR NATIVE:
    //   Mangled name: TestInitVarWithCustomSetter#<get-x>(){}
    //   Public signature: /TestInitVarWithCustomSetter.x.<get-x>|1482705010654679335[0]
    //   Public signature debug description: <get-x>(){}
    get
    // CHECK:
    //   Mangled name: TestInitVarWithCustomSetter#<set-x>(kotlin.Int){}
    //   Public signature: /TestInitVarWithCustomSetter.x.<set-x>|-740209739415615559[0]
    //   Public signature debug description: <set-x>(kotlin.Int){}
    set(value: Int): Unit

  // CHECK:
  //   Mangled name: TestInitVarWithCustomSetter#<init>(){}
  //   Public signature: /TestInitVarWithCustomSetter.<init>|-5645683436151566731[0]
  //   Public signature debug description: <init>(){}
  constructor() /* primary */

}

