FILE: contextParametersFunctions.kt
    public open class A : R|kotlin/Any| {
        public constructor(): R|A| {
            super<R|kotlin/Any|>()
        }

    }
    public final class B : R|A| {
        public constructor(): R|B| {
            super<R|A|>()
        }

    }
    public final class C : R|kotlin/Any| {
        public constructor(): R|C| {
            super<R|kotlin/Any|>()
        }

    }
    context(a: R|A|)
    public final fun usage1(): R|kotlin/Unit| {
        context(R|<local>/a|) R|kotlin/contextOf|<R|A|>()
    }
    context(a: R|A|)
    public final fun usage2(): R|A| {
        ^usage2 context(R|<local>/a|) R|kotlin/contextOf|<R|A|>()
    }
    context(a: R|A|)
    public final fun usage3(): R|A| {
        ^usage3 context(R|<local>/a|) R|kotlin/contextOf|<R|A|>()
    }
    public final fun R|A|.usage4(): R|kotlin/Unit| {
        context(this@R|/usage4|) R|kotlin/contextOf|<R|A|>()
    }
    public final fun R|A|.usage5(): R|A| {
        ^usage5 context(this@R|/usage5|) R|kotlin/contextOf|<R|A|>()
    }
    public final fun R|A|.usage6(): R|A| {
        ^usage6 context(this@R|/usage6|) R|kotlin/contextOf|<R|A|>()
    }
    context(b: R|B|)
    public final fun usage7(): R|kotlin/Unit| {
        context(R|<local>/b|) R|kotlin/contextOf|<R|A|>()
    }
    context(b: R|B|)
    public final fun usage8(): R|A| {
        ^usage8 context(R|<local>/b|) R|kotlin/contextOf|<R|A|>()
    }
    context(b: R|B|)
    public final fun usage9(): R|A| {
        ^usage9 context(R|<local>/b|) R|kotlin/contextOf|<R|B|>()
    }
    context(a: R|A|)
    public final fun R|A|.usage10(): R|kotlin/Unit| {
        R|kotlin/contextOf<Inapplicable(INAPPLICABLE): kotlin/contextOf>#|<R|A|>()
    }
    context(a: R|A|)
    public final fun R|A|.usage11(): R|A| {
        ^usage11 R|kotlin/contextOf<Inapplicable(INAPPLICABLE): kotlin/contextOf>#|<R|A|>()
    }
    context(a: R|A|, b: R|B|)
    public final fun usage12(): R|kotlin/Unit| {
        R|kotlin/contextOf<Inapplicable(INAPPLICABLE): kotlin/contextOf>#|<R|A|>()
    }
    context(a: R|A|, b: R|B|)
    public final fun usage13(): R|A| {
        ^usage13 R|kotlin/contextOf<Inapplicable(INAPPLICABLE): kotlin/contextOf>#|<R|A|>()
    }
    context(a: R|A|, c: R|C|)
    public final fun usage14(): R|kotlin/Unit| {
        context(R|<local>/a|) R|kotlin/contextOf|<R|A|>()
    }
    context(a: R|A|, c: R|C|)
    public final fun usage15(): R|A| {
        ^usage15 context(R|<local>/a|) R|kotlin/contextOf|<R|A|>()
    }
    context(a: R|A|)
    public final fun usage16(): R|kotlin/Unit| {
        context(R|<local>/a|) R|kotlin/contextOf<CS errors: kotlin/contextOf>#|<<ERROR TYPE REF: Cannot infer argument for type parameter A>>()
    }
    context(a: R|A|)
    public final fun usage17(): <ERROR TYPE REF: Cannot infer argument for type parameter A> {
        ^usage17 context(R|<local>/a|) R|kotlin/contextOf<CS errors: kotlin/contextOf>#|<<ERROR TYPE REF: Cannot infer argument for type parameter A>>()
    }
    public final fun R|A|.usage18(): R|kotlin/Unit| {
        context(this@R|/usage18|) R|kotlin/contextOf<CS errors: kotlin/contextOf>#|<<ERROR TYPE REF: Cannot infer argument for type parameter A>>()
    }
    public final fun R|A|.usage19(): <ERROR TYPE REF: Cannot infer argument for type parameter A> {
        ^usage19 context(this@R|/usage19|) R|kotlin/contextOf<CS errors: kotlin/contextOf>#|<<ERROR TYPE REF: Cannot infer argument for type parameter A>>()
    }
    context(a: R|A|)
    public final fun R|A|.usage20(): R|kotlin/Unit| {
        R|kotlin/contextOf<Inapplicable(INAPPLICABLE): kotlin/contextOf>#|<<ERROR TYPE REF: Cannot infer argument for type parameter A>>()
    }
    context(a: R|A|, b: R|B|)
    public final fun usage21(): R|kotlin/Unit| {
        R|kotlin/contextOf<Inapplicable(INAPPLICABLE): kotlin/contextOf>#|<<ERROR TYPE REF: Cannot infer argument for type parameter A>>()
    }
    context(a: R|A|, c: R|C|)
    public final fun usage22(): R|kotlin/Unit| {
        R|kotlin/contextOf<Inapplicable(INAPPLICABLE): kotlin/contextOf>#|<<ERROR TYPE REF: Cannot infer argument for type parameter A>>()
    }
    context(a: R|A|)
    public final fun usage23(): R|A| {
        ^usage23 context(R|<local>/a|) R|kotlin/contextOf<CS errors: kotlin/contextOf>#|<<ERROR TYPE REF: Cannot infer argument for type parameter A>>()
    }
    public final fun R|A|.usage24(): R|A| {
        ^usage24 context(this@R|/usage24|) R|kotlin/contextOf<CS errors: kotlin/contextOf>#|<<ERROR TYPE REF: Cannot infer argument for type parameter A>>()
    }
    context(b: R|B|)
    public final fun usage25(): R|A| {
        ^usage25 context(R|<local>/b|) R|kotlin/contextOf<CS errors: kotlin/contextOf>#|<<ERROR TYPE REF: Cannot infer argument for type parameter A>>()
    }
    context(a: R|A|)
    public final fun R|A|.usage26(): R|A| {
        ^usage26 R|kotlin/contextOf<Inapplicable(INAPPLICABLE): kotlin/contextOf>#|<<ERROR TYPE REF: Cannot infer argument for type parameter A>>()
    }
    context(a: R|A|, b: R|B|)
    public final fun usage27(): R|A| {
        ^usage27 R|kotlin/contextOf<Inapplicable(INAPPLICABLE): kotlin/contextOf>#|<<ERROR TYPE REF: Cannot infer argument for type parameter A>>()
    }
    context(a: R|A|, c: R|C|)
    public final fun usage28(): R|A| {
        ^usage28 R|kotlin/contextOf<Inapplicable(INAPPLICABLE): kotlin/contextOf>#|<<ERROR TYPE REF: Cannot infer argument for type parameter A>>()
    }
    public final fun context1(): R|kotlin/Unit| {
        R|kotlin/context|<R|B|, R|kotlin/Unit|>(R|/B.B|(), <L> = context(<unused var>: R|B|) context@fun <anonymous>(): R|kotlin/Unit| <inline=Inline, kind=EXACTLY_ONCE>  {
            context(R|<local>/<unused var>|) R|/usage1|()
        }
        )
    }
    public final fun context2(): R|A| {
        ^context2 R|kotlin/context|<R|B|, R|A|>(R|/B.B|(), <L> = context(<unused var>: R|B|) context@fun <anonymous>(): R|A| <inline=Inline, kind=EXACTLY_ONCE>  {
            ^ context(R|<local>/<unused var>|) R|/usage2|()
        }
        )
    }
    public final fun context3(): R|A| {
        ^context3 R|kotlin/context|<R|B|, R|A|>(R|/B.B|(), <L> = context(<unused var>: R|B|) context@fun <anonymous>(): R|A| <inline=Inline, kind=EXACTLY_ONCE>  {
            ^ context(R|<local>/<unused var>|) R|/usage3|()
        }
        )
    }
    public final fun context4(): R|kotlin/Unit| {
        R|kotlin/context<Inapplicable(INAPPLICABLE): kotlin/context>#|<R|B|, <ERROR TYPE REF: Cannot infer argument for type parameter R>>(R|/B.B|(), <L> = context(<unused var>: R|B|) context@fun <anonymous>(): <ERROR TYPE REF: Unresolved name: usage4> <inline=Inline, kind=EXACTLY_ONCE>  {
            ^ <Unresolved name: usage4>#()
        }
        )
    }
    public final fun context5(): R|A| {
        ^context5 R|kotlin/context<Inapplicable(INAPPLICABLE): kotlin/context>#|<R|B|, R|A|>(R|/B.B|(), <L> = context(<unused var>: R|B|) context@fun <anonymous>(): R|A| <inline=Inline, kind=EXACTLY_ONCE>  {
            ^ <Unresolved name: usage5>#()
        }
        )
    }
    public final fun context6(): R|A| {
        ^context6 R|kotlin/context<Inapplicable(INAPPLICABLE): kotlin/context>#|<R|B|, R|A|>(R|/B.B|(), <L> = context(<unused var>: R|B|) context@fun <anonymous>(): R|A| <inline=Inline, kind=EXACTLY_ONCE>  {
            ^ <Unresolved name: usage6>#()
        }
        )
    }
    public final fun context7(): R|kotlin/Unit| {
        R|kotlin/context|<R|B|, R|kotlin/Unit|>(R|/B.B|(), <L> = context(<unused var>: R|B|) context@fun <anonymous>(): R|kotlin/Unit| <inline=Inline, kind=EXACTLY_ONCE>  {
            context(R|<local>/<unused var>|) R|/usage7|()
        }
        )
    }
    public final fun context8(): R|A| {
        ^context8 R|kotlin/context|<R|B|, R|A|>(R|/B.B|(), <L> = context(<unused var>: R|B|) context@fun <anonymous>(): R|A| <inline=Inline, kind=EXACTLY_ONCE>  {
            ^ context(R|<local>/<unused var>|) R|/usage8|()
        }
        )
    }
    public final fun context9(): R|A| {
        ^context9 R|kotlin/context|<R|B|, R|A|>(R|/B.B|(), <L> = context(<unused var>: R|B|) context@fun <anonymous>(): R|A| <inline=Inline, kind=EXACTLY_ONCE>  {
            ^ context(R|<local>/<unused var>|) R|/usage9|()
        }
        )
    }
    public final fun context10v1(): R|kotlin/Unit| {
        R|kotlin/context|<R|B|, R|kotlin/Unit|>(R|/B.B|(), <L> = context(<unused var>: R|B|) context@fun <anonymous>(): R|kotlin/Unit| <inline=Inline, kind=EXACTLY_ONCE>  {
            R|kotlin/with|<R|B|, R|kotlin/Unit|>(R|/B.B|(), <L> = with@fun R|B|.<anonymous>(): R|kotlin/Unit| <inline=Inline, kind=EXACTLY_ONCE>  {
                context(this@R|special/anonymous|) this@R|special/anonymous|.R|/usage10|()
            }
            )
        }
        )
    }
    public final fun context11v1(): R|A| {
        ^context11v1 R|kotlin/context|<R|B|, R|A|>(R|/B.B|(), <L> = context(<unused var>: R|B|) context@fun <anonymous>(): R|A| <inline=Inline, kind=EXACTLY_ONCE>  {
            ^ R|kotlin/with|<R|B|, R|A|>(R|/B.B|(), <L> = with@fun R|B|.<anonymous>(): R|A| <inline=Inline, kind=EXACTLY_ONCE>  {
                ^ context(this@R|special/anonymous|) this@R|special/anonymous|.R|/usage11|()
            }
            )
        }
        )
    }
    public final fun context10v2(): R|kotlin/Unit| {
        R|kotlin/context<Inapplicable(INAPPLICABLE): kotlin/context>#|<R|B|, <ERROR TYPE REF: Cannot infer argument for type parameter R>>(R|/B.B|(), <L> = context(<unused var>: R|B|) context@fun <anonymous>(): <ERROR TYPE REF: Unresolved name: usage10> <inline=Inline, kind=EXACTLY_ONCE>  {
            ^ <Unresolved name: usage10>#()
        }
        )
    }
    public final fun context11v2(): R|A| {
        ^context11v2 R|kotlin/context<Inapplicable(INAPPLICABLE): kotlin/context>#|<R|B|, R|A|>(R|/B.B|(), <L> = context(<unused var>: R|B|) context@fun <anonymous>(): R|A| <inline=Inline, kind=EXACTLY_ONCE>  {
            ^ <Unresolved name: usage11>#()
        }
        )
    }
    public final fun context12(): R|kotlin/Unit| {
        R|kotlin/context|<R|B|, R|kotlin/Unit|>(R|/B.B|(), <L> = context(<unused var>: R|B|) context@fun <anonymous>(): R|kotlin/Unit| <inline=Inline, kind=EXACTLY_ONCE>  {
            context(R|<local>/<unused var>|, R|<local>/<unused var>|) R|/usage12|()
        }
        )
    }
    public final fun context13(): R|A| {
        ^context13 R|kotlin/context|<R|B|, R|A|>(R|/B.B|(), <L> = context(<unused var>: R|B|) context@fun <anonymous>(): R|A| <inline=Inline, kind=EXACTLY_ONCE>  {
            ^ context(R|<local>/<unused var>|, R|<local>/<unused var>|) R|/usage13|()
        }
        )
    }
    public final fun context14v1(): R|kotlin/Unit| {
        R|kotlin/context|<R|B|, R|kotlin/Unit|>(R|/B.B|(), <L> = context(<unused var>: R|B|) context@fun <anonymous>(): R|kotlin/Unit| <inline=Inline, kind=EXACTLY_ONCE>  {
            R|kotlin/context|<R|C|, R|kotlin/Unit|>(R|/C.C|(), <L> = context(<unused var>: R|C|) context@fun <anonymous>(): R|kotlin/Unit| <inline=Inline, kind=EXACTLY_ONCE>  {
                context(R|<local>/<unused var>|, R|<local>/<unused var>|) R|/usage14|()
            }
            )
        }
        )
    }
    public final fun context15v1(): R|A| {
        ^context15v1 R|kotlin/context|<R|B|, R|A|>(R|/B.B|(), <L> = context(<unused var>: R|B|) context@fun <anonymous>(): R|A| <inline=Inline, kind=EXACTLY_ONCE>  {
            ^ R|kotlin/context|<R|C|, R|A|>(R|/C.C|(), <L> = context(<unused var>: R|C|) context@fun <anonymous>(): R|A| <inline=Inline, kind=EXACTLY_ONCE>  {
                ^ context(R|<local>/<unused var>|, R|<local>/<unused var>|) R|/usage15|()
            }
            )
        }
        )
    }
    public final fun context14v2(): R|kotlin/Unit| {
        R|kotlin/context|<R|B|, R|kotlin/Unit|>(R|/B.B|(), <L> = context(<unused var>: R|B|) context@fun <anonymous>(): R|kotlin/Unit| <inline=Inline, kind=EXACTLY_ONCE>  {
            R|/usage14<Inapplicable(INAPPLICABLE): /usage14>#|()
        }
        )
    }
    public final fun context15v2(): R|A| {
        ^context15v2 R|kotlin/context|<R|B|, R|A|>(R|/B.B|(), <L> = context(<unused var>: R|B|) context@fun <anonymous>(): R|A| <inline=Inline, kind=EXACTLY_ONCE>  {
            ^ R|/usage15<Inapplicable(INAPPLICABLE): /usage15>#|()
        }
        )
    }
