updated views and logic