package Ġorg . ion project . android . program mes Ċ Ċ import Ġandroidx . lifecycle . ViewModel Ċ import Ġandroidx . lifecycle . ViewModel Provider Ċ import Ġorg . ion project . android . common . Ion Application Ċ Ċ class ĠProgram mes ViewModel Provider Ġ: ĠViewModel Provider . Factory Ġ{ ĊĊĠĠĠ Ġ@ Suppress (" UN CHECK ED _ CAST ") ĊĠĠĠ Ġoverride Ġfun Ġ< T Ġ: ĠViewModel ?> Ġcreate ( model Class : ĠClass < T >): ĠT Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmodel Ġ= Ġwhen Ġ( model Class ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠProgram mes ViewModel :: class . java Ġ-> ĠProgram mes ViewModel ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIon Application . program mes Repository ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġthrow ĠIllegalArgumentException (" There Ġis Ġno ĠViewModel Ġfor Ġclass Ġ$ model Class ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġmodel Ġas ĠT ĊĠĠĠ Ġ} Ċ Ċ }