update UI flow