Permutations II: Interactive Visualizer

Generate all unique permutations by sorting the input and recursing with a functionally-sliced `choices` array; dedup collapses to a `choices[i] === choices[i-1]` sibling-skip.