getting the implementation right part 1 595553