added maximum principle preserving viscosity