refactored

refactoring