Refactored controller, dtos