Refactored with new naming conventions