refactored workshop