https://clickhouse-test-reports.s3.yandex.net/0/624cb43f7f85b576dc2831e20623a5cf5b878792/fuzzer_ubsan/report.html

```
SELECT max(intDiv(1048575, NULL)) OVER (ORDER BY mod(number, 1024) DESC NULLS LAST RANGE BETWEEN 1 PRECEDING AND CURRENT ROW), 0, number, nth_value(toNullable(number), -9223372036854775808) OVER w AS firstValue, nth_value(toNullable(number), NULL) OVER w AS thridValue FROM numbers(1) WINDOW w AS (ORDER BY number ASC)
```
offset += x.row;
            x.row = 0;
            
            
            
            if (x.block == first_block_number)
            {
                break;
            }
            --x.block;
            offset += 1;
            x.row = blockRowsNumber(x) - 1;
        }
    }
    return std::tuple{x, offset};
}
auto WindowTransform::moveRowNumber(const RowNumber & _x, int offset) const
{
    auto [x, o] = moveRowNumberNoCheck(_x, offset);
#ifndef NDEBUG
    
    auto [xx, oo] = moveRowNumberNoCheck(x, -(offset - o));
    assert(xx == _x);
    assert(oo == 0);
#endif
    return std::tuple{x, o};
}
void WindowTransform::advanceFrameStartRowsOffset()