added add remove complete functions