Refactored to 80 char line limit.