Refactored code from inverseAdd and inverseRemove to delegateAdd and
delegateRemove