Self defined Preference Class