recalculate after copying