code refactored
refactored