moved algorithms to a new separate project