import kotlin.reflect.KProperty;

/**
 * package {
 *
 *   // field: delegate$delegate:Ljava/lang/Object;
 *   // getter: getDelegate()Ljava/lang/Object;
 *   // setter: setDelegate(Ljava/lang/Object;)V
 *   public final (* delegated *) var delegate: kotlin/Any
 *     public final (* non-default *) get
 *     public final (* non-default *) set(<set-?>: kotlin/Any)
 *
 *   // module name: main
 * }
 */
@kotlin.Metadata()
public final class AnonymousDelegateKt {

    public AnonymousDelegateKt() {
        super();
    }
    @org.jetbrains.annotations.NotNull()
    private static final java.lang.Object delegate$delegate = null;

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

    public static final void setDelegate(@org.jetbrains.annotations.NotNull()
    java.lang.Object p0) {
    }
}

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


import kotlin.reflect.KProperty;

/**
 * public final class ConcreteDelegate : kotlin/Any {
 *
 *   // signature: <init>()V
 *   public constructor()
 *
 *   // signature: getValue(Ljava/lang/Object;Lkotlin/reflect/KProperty;)I
 *   public final operator fun getValue(t: kotlin/Any?, p: kotlin/reflect/KProperty<*>): kotlin/Int
 *
 *   // module name: main
 * }
 */
@kotlin.Metadata()
public final class ConcreteDelegate {

    public ConcreteDelegate() {
        super();
    }

    public final int getValue(@org.jetbrains.annotations.Nullable()
    java.lang.Object t, @org.jetbrains.annotations.NotNull()
    kotlin.reflect.KProperty<?> p) {
        return 0;
    }
}

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


import kotlin.reflect.KProperty;

/**
 * public final class Test : kotlin/Any {
 *
 *   // signature: <init>()V
 *   public constructor()
 *
 *   // field: broken$delegate:Ljava/lang/Object;
 *   // getter: getBroken()Ljava/lang/Object;
 *   // setter: setBroken(Ljava/lang/Object;)V
 *   public final (* delegated *) var broken: kotlin/Any
 *     public final (* non-default *) get
 *     public final (* non-default *) set(<set-?>: kotlin/Any)
 *
 *   // field: concreteDelegate$delegate:LConcreteDelegate;
 *   // getter: getConcreteDelegate()I
 *   public final (* delegated *) val concreteDelegate: kotlin/Int
 *     public final (* non-default *) get
 *
 *   // field: lazyProp$delegate:Lkotlin/Lazy;
 *   // getter: getLazyProp()Ljava/lang/Runnable;
 *   private final (* delegated *) val lazyProp: java/lang/Runnable
 *     private final (* non-default *) get
 *
 *   // field: overridden$delegate:Ljava/io/Serializable;
 *   // getter: getOverridden()Ljava/lang/Object;
 *   // setter: setOverridden(Ljava/lang/Object;)V
 *   public final (* delegated *) var overridden: kotlin/Any
 *     public final (* non-default *) get
 *     public final (* non-default *) set(<set-?>: kotlin/Any)
 *
 *   // module name: main
 * }
 */
@kotlin.Metadata()
public final class Test {
    @org.jetbrains.annotations.NotNull()
    private final java.lang.Object broken$delegate = null;
    @org.jetbrains.annotations.NotNull()
    private final java.io.Serializable overridden$delegate = null;
    @org.jetbrains.annotations.NotNull()
    private final kotlin.Lazy lazyProp$delegate = null;
    @org.jetbrains.annotations.NotNull()
    private final ConcreteDelegate concreteDelegate$delegate = null;

    public Test() {
        super();
    }

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

    public final void setBroken(@org.jetbrains.annotations.NotNull()
    java.lang.Object p0) {
    }

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

    public final void setOverridden(@org.jetbrains.annotations.NotNull()
    java.lang.Object p0) {
    }

    private final java.lang.Runnable getLazyProp() {
        return null;
    }

    public final int getConcreteDelegate() {
        return 0;
    }
}
