FILE: withGenericFun.kt
    public final fun <T, R> apply(x: R|T|, f: R|(T) -> R|): R|R| {
        ^apply R|<local>/f|.R|SubstitutionOverride<kotlin/Function1.invoke: R|R|>|(R|<local>/x|)
    }
    public final fun foo(i: R|kotlin/Int|): R|kotlin/Unit| {
    }
    public final fun foo(s: R|kotlin/String|): R|kotlin/Unit| {
    }
    public final val x1: R|kotlin/Unit| = R|/apply|<R|kotlin/Int|, R|kotlin/Unit|>(Int(1), ::R|/foo|)
        public get(): R|kotlin/Unit|
    public final val x2: R|kotlin/Unit| = R|/apply|<R|kotlin/String|, R|kotlin/Unit|>(String(hello), ::R|/foo|)
        public get(): R|kotlin/Unit|
