Merge the User Object Model from Haohan and convert the code format for
consistency and engineering purposes.