package Ġcom . k ha led . com ic list . feature . com ic List . module . data Ċ Ċ import Ġandroid . os . Parcel Ċ import Ġandroid . os . Parcelable Ċ import Ġandroidx . annotation . NonNull Ċ import Ġandroidx . room . Column Info Ċ import Ġandroidx . room . Entity Ċ import Ġandroidx . room . Index Ċ import Ġandroidx . room . PrimaryKey Ċ Ċ @ Entity ( indices Ġ= Ġ[ Index ( value Ġ= Ġ[" title ", Ġ" number "]) ]) Ċ data Ġclass ĠCom ic Item ( ĊĠĠĠ Ġ@ PrimaryKey ĊĠĠĠ Ġ@ NonNull ĊĠĠĠ Ġval Ġnumber : ĠInt , ĊĠĠĠ Ġval Ġtitle : ĠString ?, ĊĠĠĠ Ġ@ Column Info ( name Ġ= Ġ" description ") ĊĠĠĠ Ġval Ġdescription : ĠString ?, ĊĠĠĠ Ġ@ Column Info ( name Ġ= Ġ" image _ url ") ĊĠĠĠ Ġval ĠimageUrl : ĠString ?, ĊĠĠĠ Ġ@ Column Info ( name Ġ= Ġ" is _ favorite ") ĊĠĠĠ Ġvar Ġis Favorite : ĠBoolean Ġ= Ġfalse Ċ ) Ġ: ĠParcel able Ġ{ ĊĠĠĠ Ġconstructor ( parcel : ĠParcel ) Ġ: Ġthis ( ĊĠĠĠĠĠĠĠ Ġparcel . readInt (), ĊĠĠĠĠĠĠĠ Ġparcel . readString (), ĊĠĠĠĠĠĠĠ Ġparcel . readString (), ĊĠĠĠĠĠĠĠ Ġparcel . readString (), ĊĠĠĠĠĠĠĠ Ġparcel . read Byte () Ġ> Ġ 0 ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠwriteTo Parcel ( parcel : ĠParcel , Ġflags : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġparcel . writeInt ( number ) ĊĠĠĠĠĠĠĠ Ġparcel . writeString ( title ) ĊĠĠĠĠĠĠĠ Ġparcel . writeString ( description ) ĊĠĠĠĠĠĠĠ Ġparcel . writeString ( imageUrl ) ĊĠĠĠĠĠĠĠ Ġparcel . write Byte ( if Ġ( is Favorite ) Ġ 1 Ġelse Ġ 0 ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdescribe Contents () Ġ= Ġ 0 ĊĊĊĠĠĠ Ġcompanion Ġobject ĠCRE ATOR Ġ: ĠParcel able . Creator < Com ic Item > Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġcreate From Parcel ( parcel : ĠParcel ) Ġ= ĠCom ic Item ( parcel ) ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġnew Array ( size : ĠInt ): ĠArray < Com ic Item ?> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠarrayOf Null s ( size ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }