start to refactor
refactoring finish