class A { operator fun get(x: String) = 1 operator fun get(x: String, y: Boolean) = 2 operator fun get(x: Int, y: Boolean) = 2 fun d(x: Int) { this[1, false] } } /* Text: (x: Int, y: Boolean), Disabled: false, Strikeout: false, Green: true Text: (x: String), Disabled: true, Strikeout: false, Green: false Text: (x: String, y: Boolean), Disabled: true, Strikeout: false, Green: false */