refactor useractions