algorythm v1.0