FILE: directAndIndirectLowerBound.kt
    public final fun <K> select(vararg k: R|kotlin/Array<out K>|): R|K| {
        ^select R|<local>/k|.R|SubstitutionOverride<kotlin/Array.get: R|CapturedType(out K)|>|(Int(0))
    }
    public final fun <L> id(l: R|L|): R|L| {
        ^id R|<local>/l|
    }
    public final fun cond(): R|kotlin/Boolean| {
        ^cond Boolean(true)
    }
    public final fun test(): R|kotlin/Unit| {
        R|/select|<R|kotlin/collections/Set<it(kotlin/Comparable<*> & java/io/Serializable)>|>(vararg(R|/select|<R|kotlin/collections/Set<it(kotlin/Comparable<*> & java/io/Serializable)>|>(vararg(Q|kotlin/collections|.R|kotlin/collections/setOf|<R|it(kotlin/Comparable<*> & java/io/Serializable)|>(), R|kotlin/collections/setOf|<R|kotlin/String|>())), R|kotlin/collections/setOf|<R|kotlin/Int|>()))
        R|/select<Inapplicable(INAPPLICABLE): /select>#|<R|kotlin/collections/Set<kotlin/Int>|>(vararg(R|kotlin/collections/mutableSetOf|<R|kotlin/Int|>(), R|/select|<R|kotlin/collections/Set<kotlin/Int>|>(vararg(<Ambiguous collection literal>#(), R|kotlin/collections/setOf|<R|kotlin/Int|>()))))
    }
    public final fun testWhen(): R|kotlin/Unit| {
        when () {
            R|/cond|() ->  {
                R|kotlin/collections/setOf|<R|kotlin/Int|>()
            }
            else ->  {
                when () {
                    R|/cond|() ->  {
                        R|kotlin/collections/setOf|<R|kotlin/String|>()
                    }
                    else ->  {
                        Q|kotlin/collections|.R|kotlin/collections/setOf|<R|it(kotlin/Comparable<*> & java/io/Serializable)|>()
                    }
                }

            }
        }

        when () {
            R|/cond|() ->  {
                when () {
                    R|/cond|() ->  {
                        R|kotlin/collections/setOf|<R|kotlin/Int|>()
                    }
                    else ->  {
                        <Ambiguous collection literal>#()
                    }
                }

            }
            else ->  {
                R|kotlin/collections/mutableSetOf|<R|kotlin/Int|>()
            }
        }

    }
    public final fun deepTests(): R|kotlin/Unit| {
        R|/select|<R|kotlin/collections/Set<it(kotlin/Comparable<*> & java/io/Serializable)>|>(vararg(R|/id|<R|kotlin/collections/Set<it(kotlin/Comparable<*> & java/io/Serializable)>|>(R|/id|<R|kotlin/collections/Set<it(kotlin/Comparable<*> & java/io/Serializable)>|>(R|/id|<R|kotlin/collections/Set<it(kotlin/Comparable<*> & java/io/Serializable)>|>(R|/select|<R|kotlin/collections/Set<it(kotlin/Comparable<*> & java/io/Serializable)>|>(vararg(Q|kotlin/collections|.R|kotlin/collections/setOf|<R|it(kotlin/Comparable<*> & java/io/Serializable)|>(), R|kotlin/collections/setOf|<R|kotlin/String|>()))))), R|kotlin/collections/setOf|<R|kotlin/Int|>()))
        R|/select<Inapplicable(INAPPLICABLE): /select>#|<R|kotlin/collections/Set<kotlin/Int>|>(vararg(R|/id|<R|kotlin/collections/MutableSet<kotlin/Int>|>(R|/id|<R|kotlin/collections/MutableSet<kotlin/Int>|>(R|/id|<R|kotlin/collections/MutableSet<kotlin/Int>|>(R|/select|<R|kotlin/collections/MutableSet<kotlin/Int>|>(vararg(<Ambiguous collection literal>#(), R|kotlin/collections/mutableSetOf|<R|kotlin/Int|>()))))), R|kotlin/collections/setOf|<R|kotlin/Int|>()))
        R|/select<Inapplicable(INAPPLICABLE): /select>#|<R|kotlin/collections/Set<kotlin/Int>|>(vararg(R|/id|<R|kotlin/collections/MutableSet<kotlin/Int>|>(R|/id|<R|kotlin/collections/MutableSet<kotlin/Int>|>(R|/id|<R|kotlin/collections/MutableSet<kotlin/Int>|>(R|/select|<R|kotlin/collections/MutableSet<kotlin/Int>|>(vararg(R|kotlin/run|<R|kotlin/collections/MutableSet<kotlin/Int>|>(<L> = run@fun <anonymous>(): R|kotlin/collections/MutableSet<kotlin/Int>| <inline=Inline, kind=EXACTLY_ONCE>  {
            ^ <Ambiguous collection literal>#()
        }
        ), R|kotlin/collections/mutableSetOf|<R|kotlin/Int|>()))))), R|kotlin/collections/setOf|<R|kotlin/Int|>()))
    }
