Multiplying the right vector by minus 1 causes to increase the value.
Could you demonstrate it? Sounds like a super serious bug.
Seems fine to me.