finish CRUD function