add tow permutation algorithms