Refactor with Classes