6th commit: refactored with CRUD model