added remove and add functions