refactor:extract method
refactor:extract method
refactor:extract method
refactor: generalization
refactor: rename
refactor: rename and change visibility
refactor: tackling primitive obsession