first algorithm added