add permute