Refactored classes.