action refactoring