Updated data model to use pointers to the User object