public final class A {
    private final var str: java.lang.String
    public final fun getStr() : java.lang.String = UastEmptyExpression
    public fun A(str: java.lang.String) = UastEmptyExpression
    public fun A(i: int) {
        <init>(i.toString())
    }
}

public final class AWithInit {
    private final var str: java.lang.String
    public final fun getStr() : java.lang.String = UastEmptyExpression
    public fun AWithInit(str: java.lang.String) {
        {
            println()
        }
    }
    public fun AWithInit(i: int) {
        <init>(i.toString())
    }
}

public final class AWith2Init {
    private final var str: java.lang.String
    public final fun getStr() : java.lang.String = UastEmptyExpression
    public fun AWith2Init(str: java.lang.String) {
        {
            println(1)
        }
        {
            println(2)
        }
    }
    public fun AWith2Init(i: int) {
        <init>(i.toString())
    }
}

public final class AOnlyInit {
    public fun AOnlyInit() {
        {
            println(1)
        }
        {
            println(2)
        }
    }
}

public final class AWithSecondary {
    public var a: java.lang.String
    public final fun getA() : java.lang.String = UastEmptyExpression
    public final fun setA(p: java.lang.String) : void = UastEmptyExpression
    public fun AWithSecondary(i: int) {
        <init>()
        a = i.toString()
    }
    public fun AWithSecondary(s: java.lang.String) {
        <init>()
        a = s
    }
}

public final class AWithSecondaryInit {
    public var a: java.lang.String
    public final fun getA() : java.lang.String = UastEmptyExpression
    public final fun setA(p: java.lang.String) : void = UastEmptyExpression
    public fun AWithSecondaryInit(i: int) {
        <init>()
        {
            println()
        }
        a = i.toString()
    }
    public fun AWithSecondaryInit(s: java.lang.String) {
        <init>()
        a = s
    }
}
