recalculates
not defined yet