update algo