FILE: chooseOverloadByShapeOfLambda.kt
    public final fun foo(x: R|(@R|kotlin/ParameterName|(name = String(a))  kotlin/Int) -> kotlin/Unit|): R|kotlin/Int| {
        ^foo Int(1)
    }
    public final fun foo(x: R|(@R|kotlin/ParameterName|(name = String(a))  kotlin/Int, @R|kotlin/ParameterName|(name = String(b))  kotlin/String) -> kotlin/Unit|): R|kotlin/String| {
        ^foo String()
    }
    public final fun takeInt(x: R|kotlin/Int|): R|kotlin/Unit| {
    }
    public final fun takeString(x: R|kotlin/String|): R|kotlin/Unit| {
    }
    public final fun test_1(): R|kotlin/Unit| {
        lval res: R|kotlin/Int| = R|/foo|(<L> = foo@fun <anonymous>(x: R|@R|kotlin/ParameterName|(name = String(a))  kotlin/Int|): R|kotlin/Unit| <inline=NoInline>  {
            ^@foo Unit
        }
        )
        R|/takeInt|(R|<local>/res|)
    }
    public final fun test_2(): R|kotlin/Unit| {
        lval res: R|kotlin/String| = R|/foo|(<L> = foo@fun <anonymous>(x: R|@R|kotlin/ParameterName|(name = String(a))  kotlin/Int|, y: R|@R|kotlin/ParameterName|(name = String(b))  kotlin/String|): R|kotlin/Unit| <inline=NoInline>  {
            ^@foo Unit
        }
        )
        R|/takeString|(R|<local>/res|)
    }
    public final fun test_3(): R|kotlin/Unit| {
        lval res: R|kotlin/Int| = R|/foo|(<L> = foo@fun <anonymous>(it: R|@R|kotlin/ParameterName|(name = String(a))  kotlin/Int|): R|kotlin/Unit| <inline=NoInline>  {
            ^@foo Unit
        }
        )
        R|/takeInt|(R|<local>/res|)
    }
