operator fun Int.invoke(block: (Int)->Unit):Int = TODO() operator fun Int.invoke(block: (Int)->String):String = TODO() val q1 = 5({it:Int -> println(it) } as (Int) -> Unit) val q2 = 5({it:Int -> it.toString() }as (Int) -> String)