added some more algorithms