refactored executor