2.2.1 user model