refactoring
refactoring
output