screen refactored