final commit before refactoring for part 3. Annual tests still failing due to whitespace issues