add remove logic