add more algo