It's good to have a wrapper for scroll and sticky state instead of directly mutating vectors with frames. No behavior change.