FILE: main.kt
    package foo

    public abstract interface MyInterface : R|kotlin/Any| {
        public open fun foo(): R|kotlin/Unit| {
        }

    }
    @R|AddSupertype2|() public final class Second : R|kotlin/Any|, R|foo/MyInterface| {
        public constructor(): R|foo/Second| {
            super<R|kotlin/Any|>()
        }

    }
    @R|AddSupertype3|() public final class Third : R|kotlin/Any|, R|foo/MyInterface| {
        public constructor(): R|foo/Third| {
            super<R|kotlin/Any|>()
        }

    }
    @R|AddSupertype1|() public final class First : R|kotlin/Any|, R|foo/MyInterface| {
        public constructor(): R|foo/First| {
            super<R|kotlin/Any|>()
        }

    }
    @R|org/jetbrains/kotlin/plugin/sandbox/MetaSupertype|() public final class Zero : R|kotlin/Any| {
        public constructor(): R|foo/Zero| {
            super<R|kotlin/Any|>()
        }

    }
    public final fun test(a: R|foo/Zero|, b: R|foo/First|, c: R|foo/Second|, d: R|foo/Third|): R|kotlin/Unit| {
        R|<local>/a|.<Unresolved name: foo>#()
        R|<local>/b|.R|foo/MyInterface.foo|()
        R|<local>/c|.R|foo/MyInterface.foo|()
        R|<local>/d|.R|foo/MyInterface.foo|()
    }
FILE: ann3.kt
    @R|AddSupertype2|() public final annotation class AddSupertype3 : R|kotlin/Annotation| {
        public constructor(): R|AddSupertype3| {
            super<R|kotlin/Any|>()
        }

    }
FILE: ann2.kt
    @R|AddSupertype1|() public final annotation class AddSupertype2 : R|kotlin/Annotation| {
        public constructor(): R|AddSupertype2| {
            super<R|kotlin/Any|>()
        }

    }
FILE: ann1.kt
    @R|org/jetbrains/kotlin/plugin/sandbox/MetaSupertype|() public final annotation class AddSupertype1 : R|kotlin/Annotation| {
        public constructor(): R|AddSupertype1| {
            super<R|kotlin/Any|>()
        }

    }
