lists refactored