reworking the remove method again