recalc cycle