update cycle