mvvm pattern, entity data model