finished all but algorithms