package Ġcom . ad it pr ay ogo . b faa _ submission 2 . di Ċ Ċ import Ġcom . ad it pr ay ogo . b faa _ submission 2 . data . network . User Services Ċ import Ġcom . ad it pr ay ogo . b faa _ submission 2 . data . repository . UserRepository Impl Ċ import Ġcom . ad it pr ay ogo . b faa _ submission 2 . data . repository . UserRepository Ċ import Ġcom . ad it pr ay ogo . b faa _ submission 2 . domain . User UseCase Ċ import Ġdagger . Module Ċ import Ġdagger . Provides Ċ import Ġdagger . h ilt . Install In Ċ import Ġdagger . h ilt . android . components . Application Component Ċ import Ġjavax . inject . Singleton Ċ Ċ @ Module Ċ @ Install In ( Application Component :: class ) Ċ object ĠApp Module Ġ{ ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Singleton ĊĠĠĠ Ġfun Ġprovide UserRepository ( ĊĠĠĠĠĠĠĠ Ġuser Services : ĠUser Services ĊĠĠĠ Ġ) Ġ: ĠUser Repository Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠUser Repository Impl ( user Services ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Singleton ĊĠĠĠ Ġfun Ġprovide User UseCase ( ĊĠĠĠĠĠĠĠ Ġuser Repository : ĠUser Repository ĊĠĠĠ Ġ) Ġ: ĠUser UseCase Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠUser UseCase ( user Repository ) ĊĠĠĠ Ġ} Ċ Ċ }