clean up
refactoring