FILE: propertyAccessWithExplicitTypeArguments.kt
    public final fun f1(x: R|kotlin/Int|): R|kotlin/Unit| {
        lval y: R|kotlin/Int| = Int(5)
        lval s: R|kotlin/String| = String(hello)
        R|<local>/x|<R|kotlin/Int|>
        R|<local>/x|<R|kotlin/String|, R|kotlin/String|>
        R|<local>/y|<R|kotlin/Int|>
        R|<local>/y|<R|kotlin/String|, R|kotlin/Int|>
        R|<local>/s|<R|kotlin/String|>
        R|<local>/s|<R|kotlin/Int|, R|kotlin/String|>
    }
    public final val property: R|kotlin/Int| = Int(10)
        public get(): R|kotlin/Int|
    public final fun f2(): R|kotlin/Unit| {
        R|/property|<R|kotlin/String|>
    }
    public final val property2: R|kotlin/Int|
        public get(): R|kotlin/Int| {
            ^ Int(10)
        }
    public final fun f3(): R|kotlin/Unit| {
        R|/property2|<R|kotlin/String|>
    }
    public abstract interface Context<A> : R|kotlin/Any| {
    }
    public final class ContextImpl<A> : R|Context<A>| {
        public constructor<A>(): R|ContextImpl<A>| {
            super<R|kotlin/Any|>()
        }

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

    }
    public final val <A> R|Receiver<A>|.hello1: R|kotlin/String|
        public get(): R|kotlin/String| {
            ^ String(hello 1)
        }
    context(R|Context<A>|)
    public final val <A> hello2: R|kotlin/String|
        public get(): R|kotlin/String| {
            ^ String(hello 2)
        }
    context(R|Context<B>|)
    public final val <A, B> R|Receiver<A>|.hello3: R|kotlin/String|
        public get(): R|kotlin/String| {
            ^ String(hello 3)
        }
    public final operator fun <A, B> R|kotlin/String|.invoke(): R|kotlin/String| {
        ^invoke String(world)
    }
    public final fun f4(): R|kotlin/Unit| {
        lval receiver: R|Receiver<kotlin/Int>| = R|/Receiver.Receiver|<R|kotlin/Int|>()
        R|<local>/receiver|.R|/hello1|<R|kotlin/Int|>
        R|<local>/receiver|.R|/hello1|<R|kotlin/Int|>
        R|<local>/receiver|.R|/hello1|<R|kotlin/Int|>.R|/invoke|<R|kotlin/Int|, R|kotlin/String|>()
        R|<local>/receiver|.R|/hello1|<R|kotlin/Int|>
        R|<local>/receiver|.R|/hello1|<R|kotlin/Int|, R|kotlin/String|>
        R|<local>/receiver|.R|/hello1|<R|kotlin/Int|, R|kotlin/String|, R|kotlin/String|>
        R|kotlin/with|<R|ContextImpl<kotlin/String>|, R|kotlin/String|>(R|/ContextImpl.ContextImpl|<R|kotlin/String|>(), <L> = with@fun R|ContextImpl<kotlin/String>|.<anonymous>(): R|kotlin/String| <inline=Inline, kind=EXACTLY_ONCE>  {
            R|/hello2|<R|kotlin/String|>
            R|/hello2|<R|kotlin/String|>
            R|/hello2|<R|kotlin/String|>.R|/invoke|<R|kotlin/String|, R|kotlin/Int|>()
            R|/hello2|<R|kotlin/String|>
            R|/hello2|<R|kotlin/String|, R|kotlin/Int|>
            R|/hello2|<R|kotlin/String|, R|kotlin/Int|, R|kotlin/Int|>
            R|<local>/receiver|.R|/hello3|<R|kotlin/Int|, R|kotlin/String|>
            R|<local>/receiver|.R|/hello3|<R|kotlin/Int|, R|kotlin/String|>
            R|<local>/receiver|.R|/hello3|<R|kotlin/Int|, R|kotlin/String|>.R|/invoke|<R|kotlin/Int|, R|kotlin/String|>()
            R|<local>/receiver|.R|/hello3|<R|kotlin/Int|, R|kotlin/String|>
            R|<local>/receiver|.R|/hello3|<R|kotlin/Int|, R|kotlin/String|>
            ^ R|<local>/receiver|.R|/hello3|<R|kotlin/Int|, R|kotlin/String|, R|kotlin/String|>
        }
        )
    }
    public final val <reified A> R|Receiver<A>|.helloReified: R|kotlin/String|
        public inline get(): R|kotlin/String| {
            ^ String(hello)
        }
    public final fun f5(): R|kotlin/Unit| {
        lval receiver: R|Receiver<kotlin/Int>| = R|/Receiver.Receiver|<R|kotlin/Int|>()
        R|<local>/receiver|.R|/helloReified|<R|kotlin/Int|>
        R|<local>/receiver|.R|/helloReified|<R|kotlin/Int|>
        R|<local>/receiver|.R|/helloReified|<R|kotlin/Int|>
    }
