pre mvvm