Refactored runners with events