FILE: onConstructor.kt
    public open class Base : R|kotlin/Any| {
        public constructor(): R|Base| {
            super<R|kotlin/Any|>()
        }

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

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

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

        public constructor(a: R|kotlin/String|): R|Test2| {
            super<R|kotlin/Any|>()
        }

    }
    public final class Test3 : R|Base| {
        public constructor(a: R|kotlin/String|): R|Test3| {
            super<R|Base|>()
        }

        public constructor(): R|Test3| {
            super<R|Base|>()
        }

    }
    public final class Test4 : R|kotlin/Any| {
        public constructor(a: R|@ContextFunctionTypeParams (A) -> kotlin/String| = fun <anonymous>(): R|kotlin/String| <inline=Unknown>  {
            ^ String()
        }
        ): R|Test4| {
            super<R|kotlin/Any|>()
        }

        public final val a: R|@ContextFunctionTypeParams (A) -> kotlin/String| = R|<local>/a|
            public get(): R|@ContextFunctionTypeParams (A) -> kotlin/String|

        public constructor(b: R|@ContextFunctionTypeParams (A, kotlin/String) -> kotlin/String|): R|Test4| {
            this<R|Test4|>()
        }

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

        public final class Nested : R|kotlin/Any| {
            public constructor(s: R|kotlin/String|): R|Test5.Nested| {
                super<R|kotlin/Any|>()
            }

        }

    }
