con viewmodel