cool algo for creation of combinations