package demo public open class Identifier(myName : T?, myHasDollar : Boolean) { private val myName : T? private var myHasDollar : Boolean private var myNullable : Boolean = true { $myName = myName $myHasDollar = myHasDollar } open public fun getName() : T? { return myName } class object { open public fun init(name : T?) : Identifier { val __ = Identifier(name, false) return __ } } } fun box() : String { var i3 : Identifier<*>? = Identifier.init("name") System.out?.println("Hello, " + i3?.getName()) return "OK" }