Refactored: Eliminate magic numbers, add constants. Naming congruent to problem domain