FILE: typesInLocalFunctions.kt
    public final class Some : R|kotlin/Any| {
        public constructor(): R|Some| {
            super<R|kotlin/Any|>()
        }

    }
    public final fun foo(): R|() -> kotlin/Boolean| {
        lval s: R|Some| = R|/Some.Some|()
        when () {
            Boolean(true) ->  {
                ^foo fun <implicit>.<anonymous>(): <implicit> {
                    when () {
                        (s# is Some) ->  {
                            Boolean(true)
                        }
                        else ->  {
                            Boolean(false)
                        }
                    }

                }

            }
            else ->  {
                ^foo fun <implicit>.<anonymous>(): <implicit> {
                    Boolean(true)
                }

            }
        }

    }
