code polishing
refactoring