finally more work, made more common view object