A Permutation Generator to implement Full Permutation and Specific Permutation.