merge of algo and design