adding new algos
structure changes