enhance event on add/remove