better update process