added add and remove feature