Refactored userInterface