add New alorithms