implements notification preferences