package Ġcom . mult ith read . coco on . presentation . main Ċ Ċ import Ġcom . mult ith read . coco on . base . Base Event Ċ import Ġcom . mult ith read . coco on . base . Base State Ċ import Ġcom . mult ith read . coco on . base . ViewModel State Ċ import Ġcom . mult ith read . coco on . base . loading Ċ import Ġcom . mult ith read . coco on . base . view model . Base Flow ViewModel Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠMain ViewModel Ġ@ Inject Ġconstructor () Ġ: ĠBase Flow ViewModel < Main State , ĠMain Event >() Ġ{ ĊĠĠĠ Ġoverride Ġval ĠinitialState : ĠMain State ĊĠĠĠĠĠĠĠ Ġget () Ġ= ĠMain State () ĊĊĠĠĠ Ġoverride Ġfun Ġhandle Event ( event : ĠMain Event ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġdo Ġnothing ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġval Ġloading State : ĠMain State ĊĠĠĠĠĠĠĠ Ġget () Ġ= ĠinitialState . loading () Ċ Ċ } Ċ Ċ sealed Ġclass ĠMain Event Ġ: ĠBase Event Ġ{ Ċ } Ċ Ċ data Ġclass ĠMain State ( ĊĠĠĠĠĠĠĠ Ġoverride Ġvar Ġbase State : ĠBase State Ġ= ĠBase State () Ċ ) Ġ: ĠViewModel State () Ċ