update the alg.