FILE: withGenericFun.kt public final fun apply(x: R|T|, f: R|(T) -> R|): R|R| { ^apply R|/f|.R|SubstitutionOverride|(R|/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|(Int(1), ::R|/foo|) public get(): R|kotlin/Unit| public final val x2: R|kotlin/Unit| = R|/apply|(String(hello), ::R|/foo|) public get(): R|kotlin/Unit|