can we have an assert here to make sure that we never less than 0? maybe in the `addWithoutBreaking` method?