add delete with bugs
add delete
add func of delete