fixed alg.