FILE: annotation.kt
    @Target(LAZY_EXPRESSION, LAZY_EXPRESSION, LAZY_EXPRESSION, LAZY_EXPRESSION, LAZY_EXPRESSION, LAZY_EXPRESSION, LAZY_EXPRESSION) public final? annotation class base : R|kotlin/Annotation| {
        public? constructor(): R|base| {
            LAZY_super<R|kotlin/Any|>
        }

    }
    @base() public final? class correct : R|kotlin/Any| {
        public? constructor(@base() x: Int): R|correct| {
            LAZY_super<R|kotlin/Any|>
        }

        @base() public? final? val x: Int = R|<local>/x|
            public? get(): Int

        @base() public? constructor(): R|correct| {
            LAZY_this<R|correct|>
        }

        @base() init { LAZY_BLOCK }

    }
    @base() public final? enum class My : R|kotlin/Enum<My>| {
        private constructor(): R|My| {
            LAZY_super<R|kotlin/Enum<My>|>
        }

        @base() public final static enum entry FIRST: R|My| = LAZY_EXPRESSION
        @base() public final static enum entry SECOND: R|My| = LAZY_EXPRESSION
        public final static fun values(): R|kotlin/Array<My>| {
        }

        public final static fun valueOf(value: R|kotlin/String|): R|My| {
        }

        public final static val entries: R|kotlin/enums/EnumEntries<My>|
            public get(): R|kotlin/enums/EnumEntries<My>|

    }
    @base() public? final? fun foo(@base() y: @base() Int): @base() Int { LAZY_BLOCK }
    @base() public? final? val z: <implicit> = LAZY_EXPRESSION
        public? get(): <implicit>
    @base() public? final? val x: Map<@base() Int, List<@base() Int>> = LAZY_EXPRESSION
        public? get(): Map<@base() Int, List<@base() Int>>
    @Target(LAZY_EXPRESSION, LAZY_EXPRESSION, LAZY_EXPRESSION, LAZY_EXPRESSION, LAZY_EXPRESSION, LAZY_EXPRESSION, LAZY_EXPRESSION) @base() public final? annotation class derived : base, R|kotlin/Annotation| {
        public? constructor(x: Int): R|derived| {
            LAZY_super<R|kotlin/Any|>
        }

        public? final? val x: Int = R|<local>/x|
            public? get(): Int

    }
    @derived(LAZY_EXPRESSION) public final? class correctDerived : R|kotlin/Any| {
        public? constructor(@derived(LAZY_EXPRESSION) x: @derived(LAZY_EXPRESSION) Int): R|correctDerived| {
            LAZY_super<R|kotlin/Any|>
        }

        @derived(LAZY_EXPRESSION) public? final? val x: @derived(LAZY_EXPRESSION) Int = R|<local>/x|
            public? get(): @derived(LAZY_EXPRESSION) Int

        @base() public? constructor(): R|correctDerived| {
            LAZY_this<R|correctDerived|>
        }

    }
    @derived(LAZY_EXPRESSION) public final? enum class MyDerived : R|kotlin/Enum<MyDerived>| {
        private constructor(): R|MyDerived| {
            LAZY_super<R|kotlin/Enum<MyDerived>|>
        }

        @derived(LAZY_EXPRESSION) public final static enum entry FIRST: R|MyDerived| = LAZY_EXPRESSION
        @derived(LAZY_EXPRESSION) public final static enum entry SECOND: R|MyDerived| = LAZY_EXPRESSION
        public final static fun values(): R|kotlin/Array<MyDerived>| {
        }

        public final static fun valueOf(value: R|kotlin/String|): R|MyDerived| {
        }

        public final static val entries: R|kotlin/enums/EnumEntries<MyDerived>|
            public get(): R|kotlin/enums/EnumEntries<MyDerived>|

    }
    @derived(LAZY_EXPRESSION) public? final? fun fooDerived(@derived(LAZY_EXPRESSION) y: @derived(LAZY_EXPRESSION) Int): @derived(LAZY_EXPRESSION) Int { LAZY_BLOCK }
    @derived(LAZY_EXPRESSION) public? final? val zDerived: <implicit> = LAZY_EXPRESSION
        public? get(): <implicit>
    @derived(LAZY_EXPRESSION) public? final? val xDerived: Map<@derived(LAZY_EXPRESSION) Int, List<@derived(LAZY_EXPRESSION) Int>> = LAZY_EXPRESSION
        public? get(): Map<@derived(LAZY_EXPRESSION) Int, List<@derived(LAZY_EXPRESSION) Int>>
