preference model add