extension UserInfo: Encodable {
func encode(to encoder: Encoder) throws {
var container = encoder.container(keyedBy: CodingKeys.self)
try container.encode(userId, forKey: .userId)
try container.encode(jobTitleName, forKey: .jobTitleName)
try container.encode(preferredFullName, forKey: .preferredFullName)
try container.encode(employeeCode, forKey: .employeeCode)
try container.encode(region, forKey: .region)
try container.encode(phoneNumber, forKey: .phoneNumber)
try container.encode(emailAddress, forKey: .emailAddress)
try container.encode(salary, forKey: .salary)
var name = container.nestedContainer(keyedBy: NameKeys.self, forKey: .name)
try name.encode(firstName, forKey: .firstName)
try name.encode(lastName, forKey: .lastName)
}
}