Kotlin Parcelize Exception API <21

Я использую Parcelize в kotlin.

Всякий раз, когда я запускаю свое приложение на уровне API ниже 21, я получаю следующие исключения:

 W/dalvikvm: VFY: register1 v5 type 17, wanted 5 W/dalvikvm: VFY: register1 v6 type 17, wanted 5 W/dalvikvm: VFY: rejecting opcode 0x76 at 0x0020 W/dalvikvm: VFY: rejected L$Creator;.createFromParcel (Landroid/os/Parcel;)Ljava/lang/Object; W/dalvikvm: Verifier rejected class L$Creator; W/dalvikvm: Exception Ljava/lang/VerifyError; thrown while initializing L/data/model/Student; : Unable to invoke no-args constructor for class data.model.Student. Registering an InstanceCreator with Gson for this type may fix this problem. I/dalvikvm: Rejecting re-init on previously-failed class L/data/model/Student; v=0x0 I/dalvikvm: Rejecting re-init on previously-failed class L/data/model/Student; v=0x0 W/dalvikvm: VFY: unable to find class referenced in signature (L/data/model/Student;) 

Я пробовал использовать classpath "org.jetbrains.kotlin:kotlin-noarg:$kotlin_version" и apply plugin: "kotlin-noarg" но не повезло.

  @Parcelize @Entity(tableName = Constants.STUDENTS_TABLE_NAME) data class Student( @PrimaryKey @ColumnInfo(name = "name") @SerializedName("name") val name: String, @ColumnInfo(name = "phone") @SerializedName("phone") val phone: String, @ColumnInfo(name = "address") @SerializedName("address") val address: String, @ColumnInfo(name = "city") @SerializedName("city") val city: String, @ColumnInfo(name = "sponsored") @SerializedName("sponsored") val isSponsored: Boolean, @ColumnInfo(name = "isFavorite") var isFavorite: Boolean ) : Parcelable 

И это единственный код для Gson

  @Provides @Singleton fun provideGson(): Gson { return GsonBuilder().setFieldNamingPolicy(FieldNamingPolicy.LOWER_CASE_WITH_UNDERSCORES).create() }