refactoring View