refactored actions class