package Ġid . shader bo i . an il ist . favorite _ anime . ui . view _ models Ċ Ċ import Ġandroidx . lifecycle . ViewModel Ċ import Ġandroidx . lifecycle . ViewModel Provider Ċ import Ġid . shader bo i . an il ist . core . domain . use _ case . favorite _ anime . Favorite An ime Use Cases Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠF avorite An ime ViewModel Factory Ġ@ Inject Ġconstructor ( ĊĠĠĠ Ġprivate Ġval Ġfavorite An ime Use Cases : ĠF avorite An ime Use Cases , Ċ ) Ġ: ĠViewModel Provider . Factory Ġ{ ĊĠĠĠ Ġ@ Suppress (" UN CHECK ED _ CAST ") ĊĠĠĠ Ġoverride Ġfun Ġ< T Ġ: ĠViewModel > Ġcreate ( model Class : ĠClass < T >): ĠT Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( model Class Ġ!= ĠF avorite An ime ViewModel :: class . java ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠIllegalArgumentException (" Unknown ĠViewModel Ġclass ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn ĠF avorite An ime ViewModel ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfavorite An ime Use Cases , ĊĠĠĠĠĠĠĠ Ġ) Ġas ĠT ĊĠĠĠ Ġ} Ċ }