@kotlin.annotation.Target(allowedTargets = {kotlin.annotation.AnnotationTarget.PROPERTY})
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
@java.lang.annotation.Target(value = {})
/**
 * public final annotation class Anno : kotlin/Annotation {
 *
 *   // signature: <init>()V
 *   public constructor()
 *
 *   // module name: main
 * }
 */
@kotlin.Metadata()
public abstract @interface Anno {
}

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


/**
 * public final enum class EnumError : kotlin/Enum<EnumError> {
 *
 *   // signature: <init>(Ljava/lang/String;I)V
 *   private constructor()
 *
 *   // signature: doIt()Ljava/lang/String;
 *   public abstract fun doIt(): kotlin/String
 *
 *   One,
 *
 *   Two,
 *
 *   // module name: main
 *
 *   // has Enum.entries
 * }
 */
@kotlin.Metadata()
public enum EnumError {
    /*public static final*/ One /* = new EnumError() */,
    /*public static final*/ Two /* = new EnumError() */;

    EnumError() {
    }

    @org.jetbrains.annotations.NotNull()
    public abstract java.lang.String doIt();

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

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


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

    private Obj() {
        super();
    }
}

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


/**
 * public final class Test : kotlin/Any {
 *
 *   // signature: <init>()V
 *   public constructor()
 *
 *   // signature: method()V
 *   public final fun method(): kotlin/Unit
 *
 *   // signature: method(I)V
 *   public final fun method(a: kotlin/Int): kotlin/Unit
 *
 *   // signature: method(Ljava/lang/String;)V
 *   public final fun method(a: kotlin/String): kotlin/Unit
 *
 *   // field: prop2:Ljava/lang/String;
 *   // getter: getProp2()Ljava/lang/String;
 *   // synthetic method for annotations: getProp2$annotations()V
 *   public final val prop2: kotlin/String
 *     public final get
 *
 *   // getter: getProp3()Ljava/lang/String;
 *   // setter: setProp3(Ljava/lang/String;)V
 *   public final var prop3: kotlin/String
 *     public final (* non-default *) get
 *     public final (* non-default *) set(v: kotlin/String)
 *
 *   // field: prop:Ljava/lang/String;
 *   public final const val prop: kotlin/String (* = ... *)
 *     public final get
 *
 *   // module name: main
 * }
 */
@kotlin.Metadata()
public final class Test {
    @org.jetbrains.annotations.NotNull()
    public final java.lang.String prop = "";
    @org.jetbrains.annotations.NotNull()
    private final java.lang.String prop2 = "";

    public Test() {
        super();
    }

    public final void method() {
    }

    public final void method(int a) {
    }

    public final void method(@org.jetbrains.annotations.NotNull()
    java.lang.String a) {
    }

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

    @Anno()
    @java.lang.Deprecated()
    public static void getProp2$annotations() {
    }

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

    public final void setProp3(@org.jetbrains.annotations.NotNull()
    java.lang.String v) {
    }
}

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


/**
 * public final class Test2 : kotlin/Any {
 *
 *   // signature: <init>(Ljava/lang/String;)V
 *   public constructor(a: kotlin/String)
 *
 *   // field: a:Ljava/lang/String;
 *   // getter: getA()Ljava/lang/String;
 *   public final val a: kotlin/String
 *     public final get
 *
 *   // module name: main
 * }
 */
@kotlin.Metadata()
public final class Test2 {
    @org.jetbrains.annotations.NotNull()
    private final java.lang.String a = null;

    public Test2(@org.jetbrains.annotations.NotNull()
    java.lang.String a) {
        super();
    }

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

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


/**
 * public final class Test3 : kotlin/Any {
 *
 *   // signature: <init>(Ljava/lang/String;)V
 *   protected constructor(a: kotlin/String)
 *
 *   // field: a:Ljava/lang/String;
 *   // getter: getA()Ljava/lang/String;
 *   public final val a: kotlin/String
 *     public final get
 *
 *   // module name: main
 * }
 */
@kotlin.Metadata()
public final class Test3 {
    @org.jetbrains.annotations.NotNull()
    private final java.lang.String a = null;

    protected Test3(@org.jetbrains.annotations.NotNull()
    java.lang.String a) {
        super();
    }

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

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


/**
 * public final class Test4 : kotlin/Any {
 *
 *   // signature: <init>()V
 *   public constructor()
 *
 *   // signature: method()V
 *   public final fun method(): kotlin/Unit
 *
 *   // module name: main
 * }
 */
@kotlin.Metadata()
public final class Test4 {

    public Test4() {
        super();
    }

    public final void method() {
    }
}

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


/**
 * public abstract interface TestComponent : kotlin/Any {
 *
 *   // module name: main
 *
 *   // has method bodies in interface
 *
 *   // is compiled in compatibility mode
 * }
 */
@kotlin.Metadata()
public abstract interface TestComponent {
}
