Impl of simple MVVM