https://github.com/coderespawn/permutations