one can choose which algorithm to use now