create algorithm variants and so on