committing before refactor in part 4