package Ġco . ra h ul ch ow dh ury . addto things . di . module Ċ Ċ import Ġco . ra h ul ch ow dh ury . addto things . data . repo . Default Things Repository Ċ import Ġco . ra h ul ch ow dh ury . addto things . data . repo . Things Repository Ċ import Ġco . ra h ul ch ow dh ury . addto things . data . source . remote . Mail gun ApiService Ċ import Ġco . ra h ul ch ow dh ury . addto things . data . source . remote . Mail gun Email Source Ċ import Ġco . ra h ul ch ow dh ury . addto things . data . source . remote . Things Email Source Ċ import Ġco . ra h ul ch ow dh ury . addto things . ui . Add Todo ViewModel Ċ import Ġorg . k oin . android . view model . dsl . viewModel Ċ import Ġorg . k oin . dsl . module Ċ Ċ val Ġthings Module Ġ= Ġmodule Ġ{ ĊĠĠĠ Ġsingle Ġ{ Ġprovide Things Email Source ( get ()) Ġ} ĊĠĠĠ Ġsingle Ġ{ Ġprovide Things Repository ( get ()) Ġ} ĊĠĠĠ ĠviewModel Ġ{ Ġprovide Add Todo ViewModel ( get ()) Ġ} Ċ } Ċ Ċ fun Ġprovide Things Email Source ( ĊĠĠĠ Ġmail gun ApiService : ĠMail gun ApiService Ċ ): ĠThings Email Source Ġ= ĠMail gun Email Source ( mail gun ApiService ) Ċ Ċ fun Ġprovide Things Repository ( ĊĠĠĠ Ġthings Email Source : ĠThings Email Source Ċ ): ĠThings Repository Ġ= ĠDefault Things Repository ( things Email Source ) Ċ Ċ fun Ġprovide Add Todo ViewModel ( ĊĠĠĠ Ġthings Repository : ĠThings Repository Ċ ): ĠAdd Todo ViewModel Ġ= ĠAdd Todo ViewModel ( things Repository ) Ċ