The main problem is the two magic numbers: 7 and 10. Any solution that eliminates them would be acceptable.