v2 dynamic upper limits