public final class test/Foo$Creator : java/lang/Object, android/os/Parcelable$Creator {
    public void <init>()

    public final test.Foo createFromParcel(android.os.Parcel parcel) {
        LABEL (L0)
          ALOAD (1)
          LDC (parcel)
          INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
          NEW (test/Foo)
          DUP
          ALOAD (1)
          LDC (Ltest/Foo;)
          INVOKEVIRTUAL (java/lang/Class, getClassLoader, ()Ljava/lang/ClassLoader;)
          INVOKEVIRTUAL (android/os/Parcel, readParcelable, (Ljava/lang/ClassLoader;)Landroid/os/Parcelable;)
          INVOKESPECIAL (test/Foo, <init>, (Landroid/os/Parcelable;)V)
          ARETURN
        LABEL (L1)
    }

    public java.lang.Object createFromParcel(android.os.Parcel source) {
        LABEL (L0)
          ALOAD (0)
          ALOAD (1)
          INVOKEVIRTUAL (test/Foo$Creator, createFromParcel, (Landroid/os/Parcel;)Ltest/Foo;)
          ARETURN
        LABEL (L1)
    }

    public final test.Foo[] newArray(int size)

    public java.lang.Object[] newArray(int size)
}

public final class test/Foo : java/lang/Object, android/os/Parcelable {
    public final static android.os.Parcelable$Creator CREATOR

    private final android.os.Parcelable parcelable

    static void <clinit>() {
          NEW (test/Foo$Creator)
          DUP
          INVOKESPECIAL (test/Foo$Creator, <init>, ()V)
          CHECKCAST (android/os/Parcelable$Creator)
          PUTSTATIC (test/Foo, CREATOR, Landroid/os/Parcelable$Creator;)
          RETURN
    }

    public void <init>(android.os.Parcelable parcelable)

    public final int describeContents()

    public final android.os.Parcelable getParcelable()

    public final void writeToParcel(android.os.Parcel dest, int flags) {
        LABEL (L0)
          ALOAD (1)
          LDC (dest)
          INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
          ALOAD (1)
          ALOAD (0)
          GETFIELD (test/Foo, parcelable, Landroid/os/Parcelable;)
          ILOAD (2)
          INVOKEVIRTUAL (android/os/Parcel, writeParcelable, (Landroid/os/Parcelable;I)V)
        LABEL (L1)
        LINENUMBER (37)
          RETURN
        LABEL (L2)
    }
}
