refactoring 02