Fixed subtraction some more, should work well in general