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
Smart Casts:
    FirValueParameterSymbol obj: R|kotlin/Any|
    Types:
        Foo
        kotlin.Any

FILE: [ResolvedTo(IMPORTS)] andRight.kt
    public final? [ResolvedTo(RAW_FIR)] interface Foo : R|kotlin/Any| {
        public? final? [ResolvedTo(RAW_FIR)] val isValid: Boolean
            public? [ResolvedTo(RAW_FIR)] get(): Boolean

    }
    public final [ResolvedTo(BODY_RESOLVE)] fun test([ResolvedTo(BODY_RESOLVE)] obj: R|kotlin/Any|): R|kotlin/Unit| {
        when () {
            (R|<local>/obj| is R|Foo|) && R|<local>/obj|.R|/Foo.isValid| ->  {
                R|/consume|(R|<local>/obj|)
            }
        }

    }
    public? final? [ResolvedTo(RAW_FIR)] fun consume([ResolvedTo(RAW_FIR)] obj: Foo): R|kotlin/Unit| { LAZY_BLOCK }