refactoring think geek test to simplify and encapsulate