attempted  .  restructure (broken)
added viewmodels class