clean code example 9.2