package Ġcom . h ari . t mdb . di Ċ Ċ import Ġandroid . app . Application Ċ import Ġcom . h ari . t mdb . db . Db Component Ċ import Ġcom . h ari . t mdb . db . internal . Movies Data Base Ċ import Ġcom . h ari . t mdb . db . internal . Pe op les Database Ċ import Ġcom . h ari . t mdb . db . internal . Shows Database Ċ import Ġdagger . Module Ċ import Ġdagger . Provides Ċ import Ġkotlinx . coroutines . Dispatch ers Ċ import Ġjavax . inject . Singleton Ċ Ċ @ Module Ċ object ĠDb Component Module Ġ{ ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Singleton ĊĠĠĠ Ġfun Ġprovide Movies Database ( ĊĠĠĠĠĠĠĠ Ġapplication : ĠApplication ĊĠĠĠ Ġ): ĠMov ies Data Base Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠDb Component . factory () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. create ( application , ĠDispatch ers . IO ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. movies Data Base () ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Singleton ĊĠĠĠ Ġfun Ġprovide Pe op les Database ( ĊĠĠĠĠĠĠĠ Ġapplication : ĠApplication ĊĠĠĠ Ġ): ĠPe op les Database Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠDb Component . factory () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. create ( application , ĠDispatch ers . IO ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. pe op les Database () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Singleton ĊĠĠĠ Ġfun Ġprovide Shows Database ( ĊĠĠĠĠĠĠĠ Ġapplication : ĠApplication ĊĠĠĠ Ġ): ĠShows Database Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠDb Component . factory () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. create ( application , ĠDispatch ers . IO ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. shows Database () ĊĠĠĠ Ġ} Ċ }