pref apply() instead of commit()
eliminated useless fields