Tower Data Context: Element 0 Scope: FirDefaultStarImportingScope Element 1 Scope: FirExplicitStarImportingScope Element 2 Scope: FirDefaultSimpleImportingScope Element 3 Scope: FirDefaultSimpleImportingScope Element 4 Scope: FirPackageMemberScope Element 5 Scope: FirExplicitSimpleImportingScope Element 6 Scope: FirLocalScope Properties: FirValueParameterSymbol obj: R|kotlin/Any| Element 7 Scope: FirLocalScope Element 8 Scope: FirLocalScope Smart Casts: FirValueParameterSymbol obj: R|kotlin/Any| Types: Bar kotlin.Any FILE: [ResolvedTo(IMPORTS)] when.kt public abstract [ResolvedTo(STATUS)] interface Foo : R|kotlin/Any| { public abstract [ResolvedTo(CONTRACTS)] fun foo(): R|kotlin/Unit| } public abstract [ResolvedTo(STATUS)] interface Bar : R|kotlin/Any| { public abstract [ResolvedTo(CONTRACTS)] fun bar(): R|kotlin/Unit| } public final [ResolvedTo(BODY_RESOLVE)] fun test([ResolvedTo(BODY_RESOLVE)] obj: R|kotlin/Any|): R|kotlin/Unit| { when (R|/obj|) { ($subj$ is R|Foo|) -> { R|/obj|.R|/Foo.foo|() } ($subj$ is R|Bar|) -> { R|/obj|.R|/Bar.bar|() } } }