refactoring user actions i.e. admin cannot delete one-self