implement delete successfully