- Refactored per Brian's suggestions