Cleaned up. Refactored.