follow context and views refactoring