/**
 * public final enum class E : kotlin/Enum<E> {
 *
 *   // signature: <init>(Ljava/lang/String;I)V
 *   private constructor()
 *
 *   // signature: a()V
 *   public abstract fun a(): kotlin/Unit
 *
 *   // signature: b()V
 *   public final fun b(): kotlin/Unit
 *
 *   // nested class: Obj
 *
 *   // nested class: NestedClass
 *
 *   X,
 *
 *   Y,
 *
 *   // module name: main
 *
 *   // has Enum.entries
 * }
 */
@kotlin.Metadata()
public enum E {
    X,
    Y;


    E() {
    }

    public abstract void a();

    public final void b() {
    }

    @org.jetbrains.annotations.NotNull()
    public static kotlin.enums.EnumEntries<E> getEntries() {
        return null;
    }

    /**
     * public final object E.Obj : kotlin/Any {
     *
     *   // signature: <init>()V
     *   private constructor()
     *
     *   // module name: main
     * }
     */
    @kotlin.Metadata()
    public static final class Obj {
        @org.jetbrains.annotations.NotNull()
        public static final E.Obj INSTANCE = null;

        private Obj() {
            super();
        }
    }
    /**
     * public final class E.NestedClass : kotlin/Any {
     *
     *   // signature: <init>()V
     *   public constructor()
     *
     *   // module name: main
     * }
     */
    @kotlin.Metadata()
    public static final class NestedClass {

        public NestedClass() {
            super();
        }
    }
}


////////////////////

/**
 * public final enum class E2 : kotlin/Enum<E2> {
 *
 *   // signature: <init>(Ljava/lang/String;II)V
 *   private (* secondary *) constructor(n: kotlin/Int)
 *
 *   // signature: <init>(Ljava/lang/String;ILjava/lang/String;)V
 *   private (* secondary *) constructor(s: kotlin/String)
 *
 *   // signature: a()V
 *   public abstract fun a(): kotlin/Unit
 *
 *   X,
 *
 *   Y,
 *
 *   // module name: main
 *
 *   // has Enum.entries
 * }
 */
@kotlin.Metadata()
public enum E2 {
    X,
    Y;


    E2(int n) {
    }

    E2(java.lang.String s) {
    }

    public abstract void a();

    @org.jetbrains.annotations.NotNull()
    public static kotlin.enums.EnumEntries<E2> getEntries() {
        return null;
    }
}


////////////////////

/**
 * public final enum class E3 : kotlin/Enum<E3> {
 *
 *   // signature: <init>(Ljava/lang/String;ILjava/lang/String;)V
 *   private constructor(a: kotlin/String)
 *
 *   // field: a:Ljava/lang/String;
 *   // getter: getA()Ljava/lang/String;
 *   public final val a: kotlin/String
 *     public final get
 *
 *   X,
 *
 *   Y,
 *
 *   // module name: main
 *
 *   // has Enum.entries
 * }
 */
@kotlin.Metadata()
public enum E3 {
    X,
    Y;

    @org.jetbrains.annotations.NotNull()
    private final java.lang.String a = null;

    E3(java.lang.String a) {
    }

    @org.jetbrains.annotations.NotNull()
    public final java.lang.String getA() {
        return null;
    }

    @org.jetbrains.annotations.NotNull()
    public static kotlin.enums.EnumEntries<E3> getEntries() {
        return null;
    }
}


////////////////////

/**
 * public final enum class E4 : kotlin/Enum<E4> {
 *
 *   // signature: <init>(Ljava/lang/String;ILjava/lang/String;IJZ)V
 *   private constructor(a: kotlin/String, b: kotlin/Int, c: kotlin/Long, d: kotlin/Boolean)
 *
 *   // field: a:Ljava/lang/String;
 *   // getter: getA()Ljava/lang/String;
 *   public final val a: kotlin/String
 *     public final get
 *
 *   // field: b:I
 *   // getter: getB()I
 *   public final val b: kotlin/Int
 *     public final get
 *
 *   // field: c:J
 *   // getter: getC()J
 *   public final val c: kotlin/Long
 *     public final get
 *
 *   // field: d:Z
 *   // getter: getD()Z
 *   public final val d: kotlin/Boolean
 *     public final get
 *
 *   X,
 *
 *   // module name: main
 *
 *   // has Enum.entries
 * }
 */
@kotlin.Metadata()
public enum E4 {
    X;

    @org.jetbrains.annotations.NotNull()
    private final java.lang.String a = null;

    private final int b = 0;

    private final long c = 0L;

    private final boolean d = false;

    E4(java.lang.String a, int b, long c, boolean d) {
    }

    @org.jetbrains.annotations.NotNull()
    public final java.lang.String getA() {
        return null;
    }

    public final int getB() {
        return 0;
    }

    public final long getC() {
        return 0L;
    }

    public final boolean getD() {
        return false;
    }

    @org.jetbrains.annotations.NotNull()
    public static kotlin.enums.EnumEntries<E4> getEntries() {
        return null;
    }
}
