step 7 - refactor
step 7 - refactor