added the add and remove functionality