package Ġcom . pac ow ork s . type classes . basics . solved . advanced Ċ Ċ import Ġarrow . core . Either Ċ import Ġarrow . type classes . Index Ċ import Ġarrow . type classes . User Ċ import Ġcom . pac ow ork s . type classes . basics . solved . Domain Mapper Ċ import Ġkotlinx . coroutines . with Context Ċ import Ġkotlin . coroutines . Coroutine Context Ċ Ċ // ĠHave Ġyou Ġalready Ġchecked Ġthe Ġchanges Ġto Ġthe ĠFramework ? Ċ Ċ interface ĠRequest Operations Async Ġ: ĊĠ ĠDao Operations K Async , ĠNetwork Operations K Async , ĠDomain Mapper , ĠCor outine Context Ġ{ ĊĊĠ Ġsuspend Ġfun ĠIndex . fetch User (): ĠUser Ġ= Ġwith Context ( this @ Request Operations Async ) Ġ{ ĊĠĠĠ ĠEither . catch Ġ{ ĊĠĠĠĠĠ Ġquery User (). to User From Database () ĊĠĠĠ Ġ}. or Null () Ġ?: Ġrequest User (). to User From Network () ĊĠ Ġ} Ċ } Ċ Ċ // ĠOkay , Ġso ĠUsage Ġshould Ġbe Ġsimple , Ġright ? Ċ