{
BlockCursor intermediates = block.cursor();
OnlineVarianceCalculator calculator = new OnlineVarianceCalculator();
for (int position = 0; position < block.getPositionCount(); position++) {
checkState(intermediates.advanceNextPosition(), "failed to advance intermediates cursor");
Slice slice = intermediates.getSlice();
sum += slice.getDouble(SUM_OFFSET);
count += slice.getLong(COUNT_OFFSET);
calculator.deserializeFrom(slice, VARIANCE_OFFSET);
this.calculator.merge(calculator);