test1: ---
assert(A::foo == { true })
       |      |
       |      false
       val A.foo: kotlin.Boolean
---
test2: ---
assert(A::foo.isOpen)
       |      |
       |      false
       val A.foo: kotlin.Boolean
---
test3: ---
assert((A::foo)(A()))
        |      ||
        |      |A
        |      false
        val A.foo: kotlin.Boolean
---
test4: ---
assert(List<Int>::bar.name == "foo")
       |              |    |
       |              |    false
       |              bar
       val kotlin.collections.List<kotlin.Int>.bar: kotlin.Boolean
---
test5: ---
assert(List<Int>::bar.isConst)
       |              |
       |              false
       val kotlin.collections.List<kotlin.Int>.bar: kotlin.Boolean
---
test6: ---
assert((List<Int>::bar)(listOf(1,2,3)))
        |              ||
        |              |[1, 2, 3]
        |              false
        val kotlin.collections.List<kotlin.Int>.bar: kotlin.Boolean
---
test7: ---
assert((a::foo)())
        |      |
        |      false
        val kotlin.String.foo: kotlin.Boolean
        Some text
---
test8: ---
assert(((a+b)::foo)())
        ||||       |
        ||||       false
        |||b
        ||ab
        |a
        val kotlin.String.foo: kotlin.Boolean
---
test9: ---
assert(a::foo == b::foo)
       |      |  |
       |      |  val kotlin.String.foo: kotlin.Boolean
       |      |  Another text
       |      false
       val kotlin.String.foo: kotlin.Boolean
       Some text
---
test10: ---
assert(a::foo.isOpen)
       |      |
       |      false
       val kotlin.String.foo: kotlin.Boolean
       Some text
---
