FILE: access.kt public final class Foo : R|kotlin/Any| { public constructor(): R|Foo| { super() } public final val x: R|kotlin/Int| = Int(1) public get(): R|kotlin/Int| public final fun abc(): R|kotlin/Int| { ^abc this@R|/Foo|.R|/Foo.x| } public final fun cba(): R|kotlin/Int| { ^cba this@R|/Foo|.R|/Foo.abc|() } } public final class Bar : R|kotlin/Any| { public constructor(): R|Bar| { super() } public final val x: R|kotlin/String| = String() public get(): R|kotlin/String| public final fun R|Foo|.abc(): R|kotlin/Int| { ^abc this@R|/Bar.abc|.R|/Foo.x| } public final fun bar(): R|Bar| { ^bar this@R|/Bar| } public final operator fun R|kotlin/String|.plus(bar: R|Bar|): R|kotlin/String| { ^plus String() } public final fun R|Foo|.check(): { ^check this@R|/Bar.check|.R|/Foo.abc|().#(this@R|/Bar|.R|/Bar.bar|()) } public final fun R|Foo|.check2(): R|kotlin/String| { ^check2 String().R|kotlin/String.plus|(this@R|/Bar|.R|/Bar.bar|()) } } public final fun R|Foo|.ext(): R|kotlin/Int| { ^ext this@R|/ext|.R|/Foo.x| } public final fun bar(): R|kotlin/Unit| { } public final fun buz(): R|kotlin/Unit| { R|/bar|() } public final fun f(): R|kotlin/Unit| { lval a: R|kotlin/Int| = Int(10) lval b: R|kotlin/Int| = R|/a| lval d: R|kotlin/String| = String() lval c: = # #() local final fun bcd(): R|kotlin/Unit| { } local final fun abc(): R|kotlin/Unit| { lval a: R|kotlin/String| = R|/d| lval b: R|kotlin/String| = R|/a| R|/bcd|() local final fun dcb(): R|kotlin/Unit| { } R|/dcb|() } #() R|/abc|() }