import java.util.Calendar;
import kotlin.reflect.KClass;

@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
/**
 * public final annotation class Anno : kotlin/Annotation {
 *
 *   // signature: <init>(Lkotlin/reflect/KClass;Lkotlin/Array;Lkotlin/Array;Lkotlin/Array;)V
 *   public constructor(a: kotlin/reflect/KClass<*>, b: kotlin/Array<kotlin/reflect/KClass<*>>, c: kotlin/Array<kotlin/reflect/KClass<*>>, vararg d: kotlin/reflect/KClass<*> (* kotlin/Array<out kotlin/reflect/KClass<*>> *))
 *
 *   // getter: a()Ljava/lang/Class;
 *   public final val a: kotlin/reflect/KClass<*>
 *     public final get
 *
 *   // getter: b()[Ljava/lang/Class;
 *   public final val b: kotlin/Array<kotlin/reflect/KClass<*>>
 *     public final get
 *
 *   // getter: c()[Ljava/lang/Class;
 *   public final val c: kotlin/Array<kotlin/reflect/KClass<*>>
 *     public final get
 *
 *   // getter: d()[Ljava/lang/Class;
 *   public final val d: kotlin/Array<out kotlin/reflect/KClass<*>>
 *     public final get
 *
 *   // module name: main
 * }
 */
@kotlin.Metadata()
public abstract @interface Anno {

    public abstract java.lang.Class<?> a();

    public abstract java.lang.Class<?>[] b();

    public abstract java.lang.Class<?>[] c();

    public abstract java.lang.Class<?>[] d();
}

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


import java.util.Calendar;
import kotlin.reflect.KClass;

/**
 * public final class MyType<T#0 (* T *)> : kotlin/Any {
 *
 *   // signature: <init>()V
 *   public constructor()
 *
 *   // module name: main
 * }
 */
@kotlin.Metadata()
public final class MyType<T extends java.lang.Object> {

    public MyType() {
        super();
    }
}

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


import java.util.Calendar;
import kotlin.reflect.KClass;

/**
 * package {
 *
 *   public typealias Coocoo = error/NonExistentClass (* = error/NonExistentClass *)
 *
 *   public typealias Coocoo2<T#0 (* T *)> = error/NonExistentClass (* = error/NonExistentClass *)
 *
 *   public typealias Coocoo3<T#0 (* X *)> = error/NonExistentClass (* = error/NonExistentClass *)
 *
 *   public typealias Nested1 = error/NonExistentClass (* = error/NonExistentClass *)
 *
 *   public typealias Nested2 = Nested1^ (* = error/NonExistentClass (* = Nested1^ *) *)
 *
 *   // module name: main
 * }
 */
@kotlin.Metadata()
@kotlin.Suppress(names = {"UNRESOLVED_REFERENCE", "ANNOTATION_ARGUMENT_MUST_BE_CONST", "NON_CONST_VAL_USED_IN_CONSTANT_EXPRESSION", "UNSUPPORTED_FEATURE"})
public final class NonExistentClassTypesConversionKt {
}

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


import java.util.Calendar;
import kotlin.reflect.KClass;

@Anno(a = Blah.class, b = {NoFoo1.class, NoBar1.class}, c = {NoFoo2.class, java.lang.String.class}, d = {boolean.class, NoBar3.class})
/**
 * public final class Test<T#0 (* G *)> : kotlin/Any {
 *
 *   // signature: <init>()V
 *   public constructor()
 *
 *   // signature: f1(Lerror/NonExistentClass;)Lerror/NonExistentClass;
 *   public final fun f1(a: error/NonExistentClass): error/NonExistentClass
 *
 *   // signature: f2(Lerror/NonExistentClass;)V
 *   public final fun <T#1 (* T *)> f2(a: error/NonExistentClass): kotlin/Unit
 *
 *   // signature: f3(Lerror/NonExistentClass;I)J
 *   public final fun <T#1 (* T *)> f3(a: error/NonExistentClass, b: kotlin/Int): kotlin/Long
 *
 *   // signature: f4()Lerror/NonExistentClass;
 *   public final fun f4(): error/NonExistentClass
 *
 *   // signature: f5(LMyType;)Ljava/lang/Class;
 *   public final fun <T#1 (* T *)> MyType<T#1>.f5(): java/lang/Class<kotlin/Enum<*>>?
 *
 *   // field: a:Lerror/NonExistentClass;
 *   // getter: getA()Lerror/NonExistentClass;
 *   // setter: setA(Lerror/NonExistentClass;)V
 *   public final lateinit var a: error/NonExistentClass
 *     public final get
 *     public final set
 *
 *   // field: b:Lerror/NonExistentClass;
 *   // getter: getB()Lerror/NonExistentClass;
 *   public final val b: error/NonExistentClass
 *     public final get
 *
 *   // field: c:Ljava/util/List;
 *   // getter: getC()Ljava/util/List;
 *   public final val c: kotlin/collections/List<error/NonExistentClass>?
 *     public final get
 *
 *   // field: coocoo:Lerror/NonExistentClass;
 *   // getter: getCoocoo()Lerror/NonExistentClass;
 *   // setter: setCoocoo(Lerror/NonExistentClass;)V
 *   public final lateinit var coocoo: error/NonExistentClass (* = Coocoo^ *)
 *     public final get
 *     public final set
 *
 *   // field: coocoo2:Lerror/NonExistentClass;
 *   // getter: getCoocoo2()Lerror/NonExistentClass;
 *   // setter: setCoocoo2(Lerror/NonExistentClass;)V
 *   public final lateinit var coocoo2: error/NonExistentClass (* = Coocoo2^<kotlin/String> *)
 *     public final get
 *     public final set
 *
 *   // field: coocoo21:Lerror/NonExistentClass;
 *   // getter: getCoocoo21()Lerror/NonExistentClass;
 *   // setter: setCoocoo21(Lerror/NonExistentClass;)V
 *   public final lateinit var coocoo21: error/NonExistentClass (* = Coocoo2^<error/NonExistentClass (* = Coocoo^ *)> *)
 *     public final get
 *     public final set
 *
 *   // field: coocoo3:Lerror/NonExistentClass;
 *   // getter: getCoocoo3()Lerror/NonExistentClass;
 *   // setter: setCoocoo3(Lerror/NonExistentClass;)V
 *   public final lateinit var coocoo3: error/NonExistentClass (* = Coocoo3^<kotlin/String> *)
 *     public final get
 *     public final set
 *
 *   // field: coocoo31:Lerror/NonExistentClass;
 *   // getter: getCoocoo31()Lerror/NonExistentClass;
 *   // setter: setCoocoo31(Lerror/NonExistentClass;)V
 *   public final lateinit var coocoo31: error/NonExistentClass (* = Coocoo3^<error/NonExistentClass (* = Coocoo2^<error/NonExistentClass (* = Coocoo^ *)> *)> *)
 *     public final get
 *     public final set
 *
 *   // field: d:Ljava/util/List;
 *   // getter: getD()Ljava/util/List;
 *   public final val d: kotlin/collections/List<kotlin/collections/Map<error/NonExistentClass, error/NonExistentClass>>?
 *     public final get
 *
 *   // field: e:Ljava/util/List;
 *   // getter: getE()Ljava/util/List;
 *   // setter: setE(Ljava/util/List;)V
 *   public final lateinit var e: kotlin/collections/List<out kotlin/collections/Map<out error/NonExistentClass, out error/NonExistentClass>?>
 *     public final get
 *     public final set
 *
 *   // field: f:Lerror/NonExistentClass;
 *   // getter: getF()Lerror/NonExistentClass;
 *   // setter: setF(Lerror/NonExistentClass;)V
 *   public final lateinit var f: error/NonExistentClass
 *     public final get
 *     public final set
 *
 *   // field: g:Ljava/util/List;
 *   // getter: getG()Ljava/util/List;
 *   // setter: setG(Ljava/util/List;)V
 *   public final lateinit var g: kotlin/collections/List<*>
 *     public final get
 *     public final set
 *
 *   // field: h:Lerror/NonExistentClass;
 *   // getter: getH()Lerror/NonExistentClass;
 *   // setter: setH(Lerror/NonExistentClass;)V
 *   public final lateinit var h: error/NonExistentClass
 *     public final get
 *     public final set
 *
 *   // field: i:Lkotlin/jvm/functions/Function2;
 *   // getter: getI()Lkotlin/jvm/functions/Function2;
 *   // setter: setI(Lkotlin/jvm/functions/Function2;)V
 *   public final lateinit var i: kotlin/Function2<error/NonExistentClass, kotlin/collections/List<error/NonExistentClass>, error/NonExistentClass>
 *     public final get
 *     public final set
 *
 *   // field: j:Lkotlin/jvm/functions/Function0;
 *   // getter: getJ()Lkotlin/jvm/functions/Function0;
 *   // setter: setJ(Lkotlin/jvm/functions/Function0;)V
 *   public final lateinit var j: kotlin/Function0<error/NonExistentClass>
 *     public final get
 *     public final set
 *
 *   // field: k:Lkotlin/jvm/functions/Function2;
 *   // getter: getK()Lkotlin/jvm/functions/Function2;
 *   // setter: setK(Lkotlin/jvm/functions/Function2;)V
 *   public final lateinit var k: @kotlin/ExtensionFunctionType kotlin/Function2<error/NonExistentClass, kotlin/collections/List<error/NonExistentClass>, error/NonExistentClass>
 *     public final get
 *     public final set
 *
 *   // field: l:Lerror/NonExistentClass;
 *   // getter: getL()Lerror/NonExistentClass;
 *   // setter: setL(Lerror/NonExistentClass;)V
 *   public final lateinit var l: error/NonExistentClass
 *     public final get
 *     public final set
 *
 *   // field: m:Lerror/NonExistentClass;
 *   // getter: getM()Lerror/NonExistentClass;
 *   public final val m: error/NonExistentClass
 *     public final get
 *
 *   // field: n:Ljava/lang/String;
 *   // getter: getN()Ljava/lang/String;
 *   public final val n: kotlin/String
 *     public final get
 *
 *   // field: nested:Lerror/NonExistentClass;
 *   // getter: getNested()Lerror/NonExistentClass;
 *   // setter: setNested(Lerror/NonExistentClass;)V
 *   public final lateinit var nested: error/NonExistentClass (* = Nested2^ *)
 *     public final get
 *     public final set
 *
 *   // field: o10:Ljava/util/List;
 *   // getter: getO10()Ljava/util/List;
 *   // setter: setO10(Ljava/util/List;)V
 *   public final lateinit var o10: kotlin/collections/List<kotlin/collections/List<kotlin/collections/List<kotlin/collections/List<kotlin/collections/List<kotlin/collections/List<kotlin/collections/List<kotlin/collections/List<kotlin/collections/List<error/NonExistentClass>>>>>>>>>
 *     public final get
 *     public final set
 *
 *   // field: o11:Ljava/util/List;
 *   // getter: getO11()Ljava/util/List;
 *   // setter: setO11(Ljava/util/List;)V
 *   public final lateinit var o11: kotlin/collections/List<kotlin/collections/List<kotlin/collections/List<kotlin/collections/List<kotlin/collections/List<kotlin/collections/List<kotlin/collections/List<kotlin/collections/List<kotlin/collections/List<kotlin/collections/List<error/NonExistentClass>>>>>>>>>>
 *     public final get
 *     public final set
 *
 *   // field: p:Ljava/util/Calendar$Builder;
 *   // getter: getP()Ljava/util/Calendar$Builder;
 *   // setter: setP(Ljava/util/Calendar$Builder;)V
 *   public final lateinit var p: java/util/Calendar.Builder
 *     public final get
 *     public final set
 *
 *   // module name: main
 * }
 */
@kotlin.Metadata()
public final class Test<G extends java.lang.Object> {
    public ABC a;
    @org.jetbrains.annotations.Nullable()
    private final ABC b = null;
    @org.jetbrains.annotations.Nullable()
    private final java.util.List<ABC> c = null;
    @org.jetbrains.annotations.Nullable()
    private final java.util.List<java.util.Map<BCD, ABC<java.util.List<BCD>>>> d = null;
    public java.util.List<java.util.Map<? extends ABC, BCD>> e;
    public ABC<?> f;
    public java.util.List<?> g;
    public ABC<java.lang.Integer, java.lang.String> h;
    public Function2<ABC, java.util.List<BCD>, CDE> i;
    public Function0<CDE> j;
    public Function2<ABC, java.util.List<BCD>, CDE> k;
    public ABC.BCD.EFG l;
    public ABC coocoo;
    public ABC<java.lang.String> coocoo2;
    public ABC<ABC> coocoo21;
    public ABC<java.lang.String, java.lang.String> coocoo3;
    public ABC<java.lang.String, ABC<ABC>> coocoo31;
    public ABC nested;
    @org.jetbrains.annotations.NotNull()
    private final java.lang.Object m = null;
    @org.jetbrains.annotations.NotNull()
    private final java.lang.String n = "";
    public java.util.List<? extends java.util.List<? extends java.util.List<? extends java.util.List<? extends java.util.List<? extends java.util.List<? extends java.util.List<? extends java.util.List<? extends java.util.List<? extends java.util.List<error.NonExistentClass>>>>>>>>>> o11;
    public java.util.List<java.util.List<java.util.List<java.util.List<java.util.List<java.util.List<java.util.List<java.util.List<java.util.List<ABC>>>>>>>>> o10;
    public java.util.Calendar.Builder p;

    public Test() {
        super();
    }

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

    public final void setA(@org.jetbrains.annotations.NotNull()
    ABC p0) {
    }

    @org.jetbrains.annotations.Nullable()
    public final ABC getB() {
        return null;
    }

    @org.jetbrains.annotations.Nullable()
    public final java.util.List<ABC> getC() {
        return null;
    }

    @org.jetbrains.annotations.Nullable()
    public final java.util.List<java.util.Map<BCD, ABC<java.util.List<BCD>>>> getD() {
        return null;
    }

    @org.jetbrains.annotations.NotNull()
    public final java.util.List<java.util.Map<? extends ABC, BCD>> getE() {
        return null;
    }

    public final void setE(@org.jetbrains.annotations.NotNull()
    java.util.List<? extends java.util.Map<? extends ABC, ? extends BCD>> p0) {
    }

    @org.jetbrains.annotations.NotNull()
    public final ABC<?> getF() {
        return null;
    }

    public final void setF(@org.jetbrains.annotations.NotNull()
    ABC<?> p0) {
    }

    @org.jetbrains.annotations.NotNull()
    public final java.util.List<?> getG() {
        return null;
    }

    public final void setG(@org.jetbrains.annotations.NotNull()
    java.util.List<?> p0) {
    }

    @org.jetbrains.annotations.NotNull()
    public final ABC<java.lang.Integer, java.lang.String> getH() {
        return null;
    }

    public final void setH(@org.jetbrains.annotations.NotNull()
    ABC<java.lang.Integer, java.lang.String> p0) {
    }

    @org.jetbrains.annotations.NotNull()
    public final Function2<ABC, java.util.List<BCD>, CDE> getI() {
        return null;
    }

    public final void setI(@org.jetbrains.annotations.NotNull()
    Function2<ABC, java.util.List<? extends BCD>, CDE> p0) {
    }

    @org.jetbrains.annotations.NotNull()
    public final Function0<CDE> getJ() {
        return null;
    }

    public final void setJ(@org.jetbrains.annotations.NotNull()
    Function0<CDE> p0) {
    }

    @org.jetbrains.annotations.NotNull()
    public final Function2<ABC, java.util.List<BCD>, CDE> getK() {
        return null;
    }

    public final void setK(@org.jetbrains.annotations.NotNull()
    Function2<ABC, java.util.List<? extends BCD>, CDE> p0) {
    }

    @org.jetbrains.annotations.NotNull()
    public final ABC.BCD.EFG getL() {
        return null;
    }

    public final void setL(@org.jetbrains.annotations.NotNull()
    ABC.BCD.EFG p0) {
    }

    @org.jetbrains.annotations.NotNull()
    public final ABC getCoocoo() {
        return null;
    }

    public final void setCoocoo(@org.jetbrains.annotations.NotNull()
    ABC p0) {
    }

    @org.jetbrains.annotations.NotNull()
    public final ABC<java.lang.String> getCoocoo2() {
        return null;
    }

    public final void setCoocoo2(@org.jetbrains.annotations.NotNull()
    ABC<java.lang.String> p0) {
    }

    @org.jetbrains.annotations.NotNull()
    public final ABC<ABC> getCoocoo21() {
        return null;
    }

    public final void setCoocoo21(@org.jetbrains.annotations.NotNull()
    ABC<ABC> p0) {
    }

    @org.jetbrains.annotations.NotNull()
    public final ABC<java.lang.String, java.lang.String> getCoocoo3() {
        return null;
    }

    public final void setCoocoo3(@org.jetbrains.annotations.NotNull()
    ABC<java.lang.String, java.lang.String> p0) {
    }

    @org.jetbrains.annotations.NotNull()
    public final ABC<java.lang.String, ABC<ABC>> getCoocoo31() {
        return null;
    }

    public final void setCoocoo31(@org.jetbrains.annotations.NotNull()
    ABC<java.lang.String, ABC<ABC>> p0) {
    }

    @org.jetbrains.annotations.NotNull()
    public final ABC getNested() {
        return null;
    }

    public final void setNested(@org.jetbrains.annotations.NotNull()
    ABC p0) {
    }

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

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

    @org.jetbrains.annotations.NotNull()
    public final java.util.List<java.util.List<java.util.List<java.util.List<java.util.List<java.util.List<java.util.List<java.util.List<java.util.List<java.util.List<error.NonExistentClass>>>>>>>>>> getO11() {
        return null;
    }

    public final void setO11(@org.jetbrains.annotations.NotNull()
    java.util.List<? extends java.util.List<? extends java.util.List<? extends java.util.List<? extends java.util.List<? extends java.util.List<? extends java.util.List<? extends java.util.List<? extends java.util.List<? extends java.util.List<error.NonExistentClass>>>>>>>>>> p0) {
    }

    @org.jetbrains.annotations.NotNull()
    public final java.util.List<java.util.List<java.util.List<java.util.List<java.util.List<java.util.List<java.util.List<java.util.List<java.util.List<ABC>>>>>>>>> getO10() {
        return null;
    }

    public final void setO10(@org.jetbrains.annotations.NotNull()
    java.util.List<? extends java.util.List<? extends java.util.List<? extends java.util.List<? extends java.util.List<? extends java.util.List<? extends java.util.List<? extends java.util.List<? extends java.util.List<? extends ABC>>>>>>>>> p0) {
    }

    @org.jetbrains.annotations.NotNull()
    public final java.util.Calendar.Builder getP() {
        return null;
    }

    public final void setP(@org.jetbrains.annotations.NotNull()
    java.util.Calendar.Builder p0) {
    }

    @org.jetbrains.annotations.Nullable()
    public final BCD f1(@org.jetbrains.annotations.NotNull()
    ABC a) {
        return null;
    }

    public final <T extends java.lang.Object>void f2(@org.jetbrains.annotations.NotNull()
    ABC<java.lang.String, java.lang.Integer, Function0<BCD>> a) {
    }

    public final <T extends java.lang.Object>long f3(@org.jetbrains.annotations.NotNull()
    ABC a, int b) {
        return 0L;
    }

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

    @org.jetbrains.annotations.Nullable()
    public final <T extends java.lang.Object>java.lang.Class<java.lang.Enum<?>> f5(@org.jetbrains.annotations.NotNull()
    MyType<T> $this$f5) {
        return null;
    }
}

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

package error;

public final class NonExistentClass {
}
