working model view control