package

package bar {
    internal fun f1(): foo.E
    internal fun f2(): foo.E
    internal fun f3(): foo.E.Nested
    internal fun f4(): kotlin.Int
    internal fun f5(): kotlin.Array<foo.E>
}

package foo {

    internal final enum class E : kotlin.Enum<foo.E> {
        public enum entry ENTRY : foo.E {
            private constructor ENTRY()
            public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: foo.E): kotlin.Int
            public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
            public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
            public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
            public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
            public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
        }

        public enum entry ANOTHER : foo.E {
            private constructor ANOTHER()
            public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: foo.E): kotlin.Int
            public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
            public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
            public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
            public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
            public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
        }

        private constructor E()
        public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: foo.E): kotlin.Int
        public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
        public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
        public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
        public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
        public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String

        internal final class Nested {
            public constructor Nested()
            public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
            public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
            public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String

            public companion object Companion {
                private constructor Companion()
                public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
                internal final fun foo(): kotlin.Int
                public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
                public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
            }
        }

        // Static members
        public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): foo.E
        public final /*synthesized*/ fun values(): kotlin.Array<foo.E>
    }
}
