add Algorithm