added activate, deactivate, and update functions