details
refactored