refactor view layer