Refactored classes