refactored effectManager