4.2 driver code
4.2 pseudocode
4.2 Initial Solution and Refactoring