1 lab -----
refactoring