package Ġcom . sem icolon . domain . use case . user Ċ Ċ import Ġcom . sem icolon . domain . entity . users . UserProfile Entity Ċ import Ġcom . sem icolon . domain . repository . UserRepository Ċ import Ġcom . sem icolon . domain . use case . UseCase Ċ import Ġkotlinx . coroutines . flow . Flow Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠFetch UserProfile UseCase Ġ@ Inject Ġconstructor ( ĊĠĠĠ Ġprivate Ġval Ġuser Repository : ĠUser Repository Ċ ) Ġ: ĠUse Case < Int , ĠFlow < UserProfile Entity >>() Ġ{ ĊĊĠĠĠ Ġoverride Ġsuspend Ġfun Ġexecute ( data : ĠInt ): ĠFlow < UserProfile Entity > Ġ= ĊĠĠĠĠĠĠĠ Ġuser Repository . fetch UserProfile ( data ) Ċ }