Component refactored