Updated with logic and UI components