respect the bounds