modified to using ObjectUtils & updating user data.