added algorithmes