refactored action template