Refactored the new affect feature