Refactored (max 80 cols).