make a lot of work for testing different algorithnms