algorithm descriptions added