reduce alter complexity