package Ġcom . sample . android . t mdb . ui . item . tv show Ċ Ċ import Ġandroidx . lifecycle . ViewModel Ċ import Ġandroidx . lifecycle . ViewModel Provider Ċ import Ġandroidx . lifecycle . ViewModel Providers Ċ import Ġcom . sample . android . t mdb . domain . TV Show Ċ import Ġcom . sample . android . t mdb . network . TV Show Api Ċ import Ġcom . sample . android . t mdb . ui . item . Base Item Fragment Ċ import Ġjavax . inject . Inject Ċ Ċ abstract Ġclass ĠTV Show Fragment Ġ: ĠBase Item Fragment < TV Show >() Ġ{ ĊĊĠĠĠ Ġ@ Inject ĊĠĠĠ Ġlateinit Ġvar Ġapi : ĠTV Show Api ĊĊĠĠĠ Ġoverride Ġval ĠviewModel Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ ĠViewModel Providers . of ( this , Ġobject Ġ: ĠViewModel Provider . Factory Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġ< T Ġ: ĠViewModel ?> Ġcreate ( model Class : ĠClass < T >): ĠT Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Suppress (" UN CHECK ED _ CAST ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠTV Shows ViewModel ( api , Ġsort Type , Ġrequire NotNull ( activity ). application ) Ġas ĠT ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) [ TV Shows ViewModel :: class . java ] ĊĠĠĠ Ġ} Ċ }