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
    Element 7
        Scope: FirLocalScope
            Properties:
                FirLocalPropertySymbol lval x: R|Base|

FILE: [ResolvedTo(IMPORTS)] onSmartCastExpression.kt
    public open [ResolvedTo(RAW_FIR)] class Base : R|kotlin/Any| {
        public? [ResolvedTo(RAW_FIR)] constructor(): R|Base| {
            LAZY_super<R|kotlin/Any|>
        }

        public? open [ResolvedTo(RAW_FIR)] fun foo(): Int { LAZY_BLOCK }

    }
    public final? [ResolvedTo(RAW_FIR)] class Derived : Base {
        public? [ResolvedTo(RAW_FIR)] constructor(): R|Derived| {
            LAZY_super<Base>
        }

        public? open? override [ResolvedTo(RAW_FIR)] fun foo(): Int { LAZY_BLOCK }

        public? final? [ResolvedTo(RAW_FIR)] fun boo(): Int { LAZY_BLOCK }

    }
    public final [ResolvedTo(ANNOTATION_ARGUMENTS)] [PartialBodyAnalysisStateKey=3(3/4) #1] fun main(): R|kotlin/Unit| {
        [ResolvedTo(BODY_RESOLVE)] lval x: R|Base| = R|/Base.Base|()
        String().R|kotlin/String.toString|()
        when () {
            (R|<local>/x| !is R|Derived|) ->  {
                ^main Unit
            }
        }

        String().toString#()
    }