fix: off-by-one