updates with generators