Just had a thought... `will_deactivate` and `on_activate`?