permutations algo added