Renamed zero to middleValue so it's less confusing.