Add Next Permutation - Refined