dat algorythm