package Ġcom . g vet ri . kotlin . vide oli brary . home . android Ċ Ċ import Ġcom . coding p izza . di . N ASA _ REPOSITORY Ċ import Ġcom . coding p izza . home public . Retrieve Video Url UseCase Ċ import Ġcom . coding p izza . home public . Retrieve N asa Collection UseCase Ċ import Ġcom . g vet ri . kotlin . vide oli brary . home . android . detail . Retrieve Video Url UseCase Impl Ċ import Ġcom . g vet ri . kotlin . vide oli brary . home . android . detail . Detail ViewModel Ċ import Ġorg . k oin . android x . view model . dsl . viewModel Ċ import Ġorg . k oin . core . qual ifier . named Ċ import Ġorg . k oin . dsl . module Ċ Ċ const Ġval ĠHOME _ USE CASE Ġ= Ġ" Home ViewModel " Ċ const Ġval ĠDET AIL _ USE CASE Ġ= Ġ" Detail UseCase " Ċ Ċ val Ġhome Module Ġ= Ġmodule Ġ{ ĊĠĠĠ Ġsingle < Retrieve N asa Collection UseCase >( named ( HOME _ USE CASE )) Ġ{ ĊĠĠĠĠĠĠĠ ĠRetrieve N asa Collection UseCase Impl ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġn asa Repository Ġ= Ġget ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnamed ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠN ASA _ REPOSITORY ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġsingle < Retrieve Video Url UseCase >( named ( DETAIL _ USE CASE )) Ġ{ ĊĠĠĠĠĠĠĠ ĠRetrieve Video Url UseCase Impl ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġn asa Repository Ġ= Ġget ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnamed ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠN ASA _ REPOSITORY ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ ĠviewModel Ġ{ ĠHome ViewModel ( retrieve N asa Collection UseCase Ġ= Ġget ( named ( HOME _ USE CASE ))) Ġ} ĊĠĠĠ ĠviewModel Ġ{ ĠDetail ViewModel ( retrieve Video Url UseCase Ġ= Ġget ( named ( DETAIL _ USE CASE ))) Ġ} Ċ } Ċ