tested add/remove/search