Preferences refactored