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 a: R|kotlin/Any|
    Element 7
        Scope: FirLocalScope
            Properties:
                FirLocalPropertySymbol lvar result: R|kotlin/Int|
Smart Casts:
    FirValueParameterSymbol a: R|kotlin/Any|
    Types:
        Foo
        kotlin.Any

FILE: [ResolvedTo(IMPORTS)] onLabel.kt
    public final [ResolvedTo(BODY_RESOLVE)] fun test([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Any|): R|kotlin/Unit| {
        when () {
            (R|<local>/a| !is R|Foo|) ->  {
                ^test Unit
            }
        }

        [ResolvedTo(BODY_RESOLVE)] lvar result: R|kotlin/Int| = Int(0)
        loop@while(Boolean(true)) {
            when () {
                R|<local>/a|.R|/Foo.process|().R|kotlin/Boolean.not|() ->  {
                    break@@@[Boolean(true)] 
                }
            }

        }

    }
    public abstract [ResolvedTo(STATUS)] interface Foo : R|kotlin/Any| {
        public abstract [ResolvedTo(CONTRACTS)] fun process(): R|kotlin/Boolean|

    }