add delete and edit (not work properly)