it is slightly weird to pass in the contents of the `var` and let the method write to that same `var`; I suggest returning the new limit instead and keeping access to `acceptLimit` confined to this line