continued CRUD implementation