refactor views and more...