Problem Statement
All strings in this problem are strings of lowercase English letters ('a'-'z').
You are given two equally long strings A and B. Your primary task is to transform A into B in as few steps as possible.
In each step you must change exactly one letter. You may not change the same letter twice in a row, and you may not change the letter at index i directly from A[i] to B[i].
More formally, the transformation of A to B must look as follows:
- In each step you must select exactly one index into the current word and replace the letter at that index with a different letter. (The new letter must also be a lowercase English letter. We emphasize that the new letter must be different from the current one.)
- You may never select the same index twice in a row. (In other words, in the first step you may select any index you like, but then in each following step you may not select the same index as in the previous step.)
- If you selected the index i and the letter at that index is the original letter A[i], you are not allowed to change it directly into the correct letter B[i].
To illustrate rule 3, suppose A = "yoyo" and B = "lord". In the first step you may change "yoyo" to many different words, including "royo", "yolo", "ooyo", and "yyyo". The three changes forbidden by rule 3 are changing "yoyo" to "loyo", "yoro", and "yoyd".
If you change "yoyo" to "royo", in the second step you can change "royo" to "roxo" but not to "royo" (rule 1), "loyo" (rule 2), or "roro" (rule 3).
Your transformation of A into B can be represented by a
As stated above, your primary goal is to minimize the number of elements in this
Definition
- Class:
- DoubleWordLadder
- Method:
- transform
- Parameters:
- String, String
- Returns:
- String[]
- Method signature:
- String[] transform(String A, String B)
- (be sure your method is public)
Notes
- For the constraints given below a solution always exists.
- Given two different String[]s S and T representing valid solutions with an optimal length, let j be the smallest index such that the strings S[j] and T[j] differ. If S[j] < T[j], we say that S is lexicographically smaller than T.
Constraints
- A will have between 2 and 30 characters, inclusive.
- B will have the same number of characters as A.
- Each character in A and B will be a lowercase English letter ('a'-'z').
Examples
"topcoder"
"topcoder"
Returns: {"topcoder" }
If A = B, the optimal sequence of steps has length 0 (do nothing) and thus the optimal return value is a String[] with a single element: the string with which we started and immediately also ended.
"ab"
"cd"
Returns: {"ab", "aa", "ba", "bd", "cd" }
"donation"
"solution"
Returns: {"donation", "aonation", "aoaation", "aoabtion", "aolbtion", "aolution", "solution" }
"solution"
"donation"
Returns: {"solution", "aolution", "aoaution", "aoabtion", "aonbtion", "aonation", "donation" }
"ab"
"ab"
Returns: {"ab" }
"aba"
"aba"
Returns: {"aba" }
"abaa"
"abaa"
Returns: {"abaa" }
"aa"
"ba"
Returns: {"aa", "ab", "cb", "ca", "ba" }
"aa"
"ab"
Returns: {"aa", "ac", "bc", "bb", "ab" }
"aa"
"bb"
Returns: {"aa", "ac", "cc", "cb", "bb" }
"ba"
"aa"
Returns: {"ba", "bb", "cb", "ca", "aa" }
"ba"
"ab"
Returns: {"ba", "bc", "cc", "cb", "ab" }
"ba"
"bb"
Returns: {"ba", "aa", "ac", "bc", "bb" }
"ab"
"aa"
Returns: {"ab", "ac", "bc", "ba", "aa" }
"ab"
"ba"
Returns: {"ab", "ac", "cc", "ca", "ba" }
"ab"
"bb"
Returns: {"ab", "aa", "ca", "cb", "bb" }
"bb"
"aa"
Returns: {"bb", "bc", "cc", "ca", "aa" }
"bb"
"ba"
Returns: {"bb", "ab", "ac", "bc", "ba" }
"bb"
"ab"
Returns: {"bb", "ba", "ca", "cb", "ab" }
"aaa"
"baa"
Returns: {"aaa", "aab", "cab", "caa", "baa" }
"aaa"
"aba"
Returns: {"aaa", "aab", "acb", "aca", "aba" }
"aaa"
"bba"
Returns: {"aaa", "aca", "cca", "cba", "bba" }
"aaa"
"aab"
Returns: {"aaa", "aac", "abc", "abb", "aab" }
"aaa"
"bab"
Returns: {"aaa", "aac", "cac", "cab", "bab" }
"aaa"
"abb"
Returns: {"aaa", "aac", "acc", "acb", "abb" }
"aaa"
"bbb"
Returns: {"aaa", "aac", "acc", "acb", "ccb", "cbb", "bbb" }
"baa"
"aaa"
Returns: {"baa", "bab", "cab", "caa", "aaa" }
"baa"
"aba"
Returns: {"baa", "bca", "cca", "cba", "aba" }
"baa"
"bba"
Returns: {"baa", "aaa", "aca", "bca", "bba" }
"baa"
"aab"
Returns: {"baa", "bac", "cac", "cab", "aab" }
"baa"
"bab"
Returns: {"baa", "aaa", "aac", "bac", "bab" }
"baa"
"abb"
Returns: {"baa", "bac", "bcc", "bcb", "ccb", "cbb", "abb" }
"baa"
"bbb"
Returns: {"baa", "bac", "bcc", "bcb", "bbb" }
"aba"
"aaa"
Returns: {"aba", "abb", "acb", "aca", "aaa" }
"aba"
"baa"
Returns: {"aba", "aca", "cca", "caa", "baa" }
"aba"
"bba"
Returns: {"aba", "aaa", "caa", "cba", "bba" }
"aba"
"aab"
Returns: {"aba", "abc", "acc", "acb", "aab" }
"aba"
"bab"
Returns: {"aba", "abc", "acc", "acb", "ccb", "cab", "bab" }
"aba"
"abb"
Returns: {"aba", "aaa", "aac", "abc", "abb" }
"aba"
"bbb"
Returns: {"aba", "abc", "cbc", "cbb", "bbb" }
"bba"
"aaa"
Returns: {"bba", "bca", "cca", "caa", "aaa" }
"bba"
"baa"
Returns: {"bba", "aba", "aca", "bca", "baa" }
"bba"
"aba"
Returns: {"bba", "baa", "caa", "cba", "aba" }
"bba"
"aab"
Returns: {"bba", "bbc", "bcc", "bcb", "ccb", "cab", "aab" }
"bba"
"bab"
Returns: {"bba", "bbc", "bcc", "bcb", "bab" }
"bba"
"abb"
Returns: {"bba", "bbc", "cbc", "cbb", "abb" }
"bba"
"bbb"
Returns: {"bba", "aba", "abc", "bbc", "bbb" }
"aab"
"aaa"
Returns: {"aab", "aac", "abc", "aba", "aaa" }
"aab"
"baa"
Returns: {"aab", "aac", "cac", "caa", "baa" }
"aab"
"aba"
Returns: {"aab", "aac", "acc", "aca", "aba" }
"aab"
"bba"
Returns: {"aab", "aac", "acc", "aca", "cca", "cba", "bba" }
"aab"
"bab"
Returns: {"aab", "aaa", "caa", "cab", "bab" }
"aab"
"abb"
Returns: {"aab", "aaa", "aca", "acb", "abb" }
"aab"
"bbb"
Returns: {"aab", "acb", "ccb", "cbb", "bbb" }
"bab"
"aaa"
Returns: {"bab", "bac", "cac", "caa", "aaa" }
"bab"
"baa"
Returns: {"bab", "aab", "aac", "bac", "baa" }
"bab"
"aba"
Returns: {"bab", "bac", "bcc", "bca", "cca", "cba", "aba" }
"bab"
"bba"
Returns: {"bab", "bac", "bcc", "bca", "bba" }
"bab"
"aab"
Returns: {"bab", "baa", "caa", "cab", "aab" }
"bab"
"abb"
Returns: {"bab", "bcb", "ccb", "cbb", "abb" }
"bab"
"bbb"
Returns: {"bab", "aab", "acb", "bcb", "bbb" }
"abb"
"aaa"
Returns: {"abb", "abc", "acc", "aca", "aaa" }
"abb"
"baa"
Returns: {"abb", "abc", "acc", "aca", "cca", "caa", "baa" }
"abb"
"aba"
Returns: {"abb", "aab", "aac", "abc", "aba" }
"abb"
"bba"
Returns: {"abb", "abc", "cbc", "cba", "bba" }
"abb"
"aab"
Returns: {"abb", "aba", "aca", "acb", "aab" }
"abb"
"bab"
Returns: {"abb", "acb", "ccb", "cab", "bab" }
"abb"
"bbb"
Returns: {"abb", "aab", "cab", "cbb", "bbb" }
"bbb"
"aaa"
Returns: {"bbb", "bbc", "bcc", "bca", "cca", "caa", "aaa" }
"bbb"
"baa"
Returns: {"bbb", "bbc", "bcc", "bca", "baa" }
"bbb"
"aba"
Returns: {"bbb", "bbc", "cbc", "cba", "aba" }
"bbb"
"bba"
Returns: {"bbb", "abb", "abc", "bbc", "bba" }
"bbb"
"aab"
Returns: {"bbb", "bcb", "ccb", "cab", "aab" }
"bbb"
"bab"
Returns: {"bbb", "abb", "acb", "bcb", "bab" }
"bbb"
"abb"
Returns: {"bbb", "bab", "cab", "cbb", "abb" }
"bbbbbbabaaabb"
"bbbbbbabaaaab"
Returns: {"bbbbbbabaaabb", "abbbbbabaaabb", "abbbbbabaaacb", "bbbbbbabaaacb", "bbbbbbabaaaab" }
"cbaaccbbaacbccbcbccaacaababc"
"cbaaccbbaacbccbcbbcaacaababc"
Returns: {"cbaaccbbaacbccbcbccaacaababc", "abaaccbbaacbccbcbccaacaababc", "abaaccbbaacbccbcbacaacaababc", "cbaaccbbaacbccbcbacaacaababc", "cbaaccbbaacbccbcbbcaacaababc" }
"hwkgp"
"ywkgp"
Returns: {"hwkgp", "awkgp", "aakgp", "yakgp", "ywkgp" }
"lvjyzhzrilrsbpj"
"lvjyzhzriyrsbpj"
Returns: {"lvjyzhzrilrsbpj", "avjyzhzrilrsbpj", "avjyzhzriarsbpj", "lvjyzhzriarsbpj", "lvjyzhzriyrsbpj" }
"ccacacabbbccab"
"acacacabbbccab"
Returns: {"ccacacabbbccab", "bcacacabbbccab", "baacacabbbccab", "aaacacabbbccab", "acacacabbbccab" }
"zycciqtrpzznlybtiut"
"zycciqtrpzznlybtvut"
Returns: {"zycciqtrpzznlybtiut", "aycciqtrpzznlybtiut", "aycciqtrpzznlybtaut", "zycciqtrpzznlybtaut", "zycciqtrpzznlybtvut" }
"uzkashglnwffpgede"
"uzkashglnwfqpgede"
Returns: {"uzkashglnwffpgede", "azkashglnwffpgede", "azkashglnwfapgede", "uzkashglnwfapgede", "uzkashglnwfqpgede" }
"bbaabababaaaba"
"bbaabaaabaaaba"
Returns: {"bbaabababaaaba", "abaabababaaaba", "abaabacabaaaba", "bbaabacabaaaba", "bbaabaaabaaaba" }
"ba"
"bb"
Returns: {"ba", "aa", "ac", "bc", "bb" }
"yptecqdouzo"
"nptecqdouzo"
Returns: {"yptecqdouzo", "aptecqdouzo", "aatecqdouzo", "natecqdouzo", "nptecqdouzo" }
"qyczzjzwpqdyhlzkfoasdvooiur"
"qyczzjzwpqdyhlzkfoasdwooiur"
Returns: {"qyczzjzwpqdyhlzkfoasdvooiur", "ayczzjzwpqdyhlzkfoasdvooiur", "ayczzjzwpqdyhlzkfoasdaooiur", "qyczzjzwpqdyhlzkfoasdaooiur", "qyczzjzwpqdyhlzkfoasdwooiur" }
"ababbbaabbbbaaabbbbaabba"
"ababbbaabbbaaaabbbbaabba"
Returns: {"ababbbaabbbbaaabbbbaabba", "aaabbbaabbbbaaabbbbaabba", "aaabbbaabbbcaaabbbbaabba", "ababbbaabbbcaaabbbbaabba", "ababbbaabbbaaaabbbbaabba" }
"ziigjgovjoyokv"
"eiigjgovjoyokv"
Returns: {"ziigjgovjoyokv", "aiigjgovjoyokv", "aaigjgovjoyokv", "eaigjgovjoyokv", "eiigjgovjoyokv" }
"aabbcbcbbabaabbbbacc"
"aabbcbcbbacaabbbbacc"
Returns: {"aabbcbcbbabaabbbbacc", "aaabcbcbbabaabbbbacc", "aaabcbcbbaaaabbbbacc", "aabbcbcbbaaaabbbbacc", "aabbcbcbbacaabbbbacc" }
"vm"
"vt"
Returns: {"vm", "am", "aa", "va", "vt" }
"baaaabbaababaaababb"
"baaaabbaababaabbabb"
Returns: {"baaaabbaababaaababb", "aaaaabbaababaaababb", "aaaaabbaababaacbabb", "baaaabbaababaacbabb", "baaaabbaababaabbabb" }
"baabbaabbbabbbabbaabbabba"
"baabbaabbbaabbabbaabbabba"
Returns: {"baabbaabbbabbbabbaabbabba", "aaabbaabbbabbbabbaabbabba", "aaabbaabbbacbbabbaabbabba", "baabbaabbbacbbabbaabbabba", "baabbaabbbaabbabbaabbabba" }
"cthqugqiwyjqtd"
"cthqugqibyjqtd"
Returns: {"cthqugqiwyjqtd", "athqugqiwyjqtd", "athqugqiayjqtd", "cthqugqiayjqtd", "cthqugqibyjqtd" }
"fpwhmtpasmt"
"fpwumtpasmt"
Returns: {"fpwhmtpasmt", "apwhmtpasmt", "apwamtpasmt", "fpwamtpasmt", "fpwumtpasmt" }
"abaacaaaaacacaaaacb"
"abaacaaaaacacbaaacb"
Returns: {"abaacaaaaacacaaaacb", "aaaacaaaaacacaaaacb", "aaaacaaaaacaccaaacb", "abaacaaaaacaccaaacb", "abaacaaaaacacbaaacb" }
"hvlycukdbgzrekckywv"
"hvlycukdbgzreqckywv"
Returns: {"hvlycukdbgzrekckywv", "avlycukdbgzrekckywv", "avlycukdbgzreackywv", "hvlycukdbgzreackywv", "hvlycukdbgzreqckywv" }
"yyvlzqqnuonvnxpagkb"
"yyvlzqqnuonvndpagkb"
Returns: {"yyvlzqqnuonvnxpagkb", "ayvlzqqnuonvnxpagkb", "ayvlzqqnuonvnapagkb", "yyvlzqqnuonvnapagkb", "yyvlzqqnuonvndpagkb" }
"ddknxbkzyfvnpxqp"
"ddkhxbkzyfvnpxqp"
Returns: {"ddknxbkzyfvnpxqp", "adknxbkzyfvnpxqp", "adkaxbkzyfvnpxqp", "ddkaxbkzyfvnpxqp", "ddkhxbkzyfvnpxqp" }
"arpkevfy"
"arpkcvfy"
Returns: {"arpkevfy", "aapkevfy", "aapkavfy", "arpkavfy", "arpkcvfy" }
"tjb"
"tjt"
Returns: {"tjb", "ajb", "aja", "tja", "tjt" }
"ailgrgllegotbzxjtvjndnnlypibx"
"ailgrgllegotbzxjtvxndnnlypibx"
Returns: {"ailgrgllegotbzxjtvjndnnlypibx", "aalgrgllegotbzxjtvjndnnlypibx", "aalgrgllegotbzxjtvandnnlypibx", "ailgrgllegotbzxjtvandnnlypibx", "ailgrgllegotbzxjtvxndnnlypibx" }
"abbaababbcabcccbbaabbaaa"
"abbaababbcabcccabaabbaaa"
Returns: {"abbaababbcabcccbbaabbaaa", "aabaababbcabcccbbaabbaaa", "aabaababbcabccccbaabbaaa", "abbaababbcabccccbaabbaaa", "abbaababbcabcccabaabbaaa" }
"aababbabbab"
"bababbabbab"
Returns: {"aababbabbab", "aaaabbabbab", "caaabbabbab", "cababbabbab", "bababbabbab" }
"aaaabbaabbbaabbabbbbabbbabb"
"aaaabbaabbbaabbabbababbbabb"
Returns: {"aaaabbaabbbaabbabbbbabbbabb", "aaaaabaabbbaabbabbbbabbbabb", "aaaaabaabbbaabbabbcbabbbabb", "aaaabbaabbbaabbabbcbabbbabb", "aaaabbaabbbaabbabbababbbabb" }
"hcannn"
"hcanxn"
Returns: {"hcannn", "acannn", "acanan", "hcanan", "hcanxn" }
"bbbbbbabaaabbab"
"baabbaabbbaaaab"
Returns: {"bbbbbbabaaabbab", "bbbbbbabaaabcab", "bbbbbbabaaaccab", "bbbbbbabaaacaab", "bbbbbbabaaaaaab", "bbbbbbabacaaaab", "bbbbbbabccaaaab", "bbbbbbabcbaaaab", "bbbbbbabbbaaaab", "bbbbbcabbbaaaab", "bbcbbcabbbaaaab", "bbcbbaabbbaaaab", "bccbbaabbbaaaab", "bcabbaabbbaaaab", "baabbaabbbaaaab" }
"bbaabab"
"abbbabb"
Returns: {"bbaabab", "bbaabcb", "bbaaccb", "bbaacbb", "bbaaabb", "bbacabb", "bbccabb", "bbcbabb", "cbcbabb", "cbbbabb", "abbbabb" }
"abbcbbccacacabbbccaba"
"accaabcccbbbacbccccbc"
Returns: {"abbcbbccacacabbbccaba", "aabcbbccacacabbbccaba", "aaacbbccacacabbbccaba", "aaabbbccacacabbbccaba", "aaabbbccaaacabbbccaba", "aaaabbccaaacabbbccaba", "aaaabbccaaaaabbbccaba", "aaaabbccaaaaaabbccaba", "aaaabbccaaaaaabaccaba", "aaaabbccaaaaaabaccabb", "aaaabbccaaaaaabaccbbb", "aaaabbccaaaaaabaccbbc", "aaaabbccaaaaaabacccbc", "aaaabbccaaaaaabccccbc", "aaaabbccaaaaacbccccbc", "aaaabbccaaabacbccccbc", "aaaabbccaacbacbccccbc", "aaaabbccabcbacbccccbc", "aaaabbccabbbacbccccbc", "aaaabbccbbbbacbccccbc", "aaaacbccbbbbacbccccbc", "aaaacbcccbbbacbccccbc", "aaaaabcccbbbacbccccbc", "aacaabcccbbbacbccccbc", "accaabcccbbbacbccccbc" }
"aaabbaabaaaabbabbaababab"
"aaababbaaaabaaabaaababaa"
Returns: {"aaabbaabaaaabbabbaababab", "aaabbaabaaaabbabbaababac", "aaabbaabaaaabbabcaababac", "aaabbaabaaaabbabcaababaa", "aaabbaabaaaabbabaaababaa", "aaabbaabaaaabcabaaababaa", "aaabbaabaaaaccabaaababaa", "aaabbaabaaaacaabaaababaa", "aaabbaabaaaaaaabaaababaa", "aaabbaabaaacaaabaaababaa", "aaabbaacaaacaaabaaababaa", "aaabbaacaaabaaabaaababaa", "aaabbaaaaaabaaabaaababaa", "aaabbacaaaabaaabaaababaa", "aaabbccaaaabaaabaaababaa", "aaabbcbaaaabaaabaaababaa", "aaabccbaaaabaaabaaababaa", "aaabcbbaaaabaaabaaababaa", "aaababbaaaabaaabaaababaa" }
"bccacbbcaabbbbcbcaaca"
"bcbabccabcbcaabbabaca"
Returns: {"bccacbbcaabbbbcbcaaca", "bcaacbbcaabbbbcbcaaca", "bcaaabbcaabbbbcbcaaca", "bcaaaabcaabbbbcbcaaca", "bcaaaaacaabbbbcbcaaca", "bcaaaaabaabbbbcbcaaca", "bcaaaaabaababbcbcaaca", "bcaaaaaaaababbcbcaaca", "bcaaaaaaaababbabcaaca", "bcaaaaaaaababbabbaaca", "bcaaaaaaaababbabbcaca", "bcaaaaaaaababbabacaca", "bcaaaaaaaababbababaca", "bcaaaaaaaababbbbabaca", "bcaaaaaaaababcbbabaca", "bcaaaaaaaabaccbbabaca", "bcaaaaaaaabacabbabaca", "bcaaaaaaaabaaabbabaca", "bcaaaaaaaabcaabbabaca", "bcaaaaaaabbcaabbabaca", "bcaaaaaacbbcaabbabaca", "bcaaaaaaccbcaabbabaca", "bcaaaaaabcbcaabbabaca", "bcaaaacabcbcaabbabaca", "bcaaaccabcbcaabbabaca", "bcaabccabcbcaabbabaca", "bcbabccabcbcaabbabaca" }
"bbcccccacacbabcbbacaccccb"
"ccbcbbcaccaacbbbcbaaccbba"
Returns: {"bbcccccacacbabcbbacaccccb", "abcccccacacbabcbbacaccccb", "aacccccacacbabcbbacaccccb", "aaaccccacacbabcbbacaccccb", "aaacaccacacbabcbbacaccccb", "aaacaacacacbabcbbacaccccb", "aaacaacacabbabcbbacaccccb", "aaacaacacabbababbacaccccb", "aaacaacacaabababbacaccccb", "aaacaacacaabababaacaccccb", "aaacaacacaabababaabaccccb", "aaacaacacaabababaabaccacb", "aaacaacacaabababaaaaccacb", "aaacaacacaabababaaaaccaab", "aaacaacacaabababaaaaccaac", "aaacaacacaabababaaaaccabc", "aaacaacacaabababaaaaccaba", "aaacaacacaabababaaaaccbba", "aaacaacacaabababacaaccbba", "aaacaacacaabababccaaccbba", "aaacaacacaabababcbaaccbba", "aaacaacacaababbbcbaaccbba", "aaacaacacaabbbbbcbaaccbba", "aaacaacacaacbbbbcbaaccbba", "aaacaacacaaccbbbcbaaccbba", "aaacaacacaaacbbbcbaaccbba", "aaacaacacbaacbbbcbaaccbba", "aaacabcacbaacbbbcbaaccbba", "aaacabcaccaacbbbcbaaccbba", "aaacbbcaccaacbbbcbaaccbba", "aabcbbcaccaacbbbcbaaccbba", "acbcbbcaccaacbbbcbaaccbba", "ccbcbbcaccaacbbbcbaaccbba" }
"abcbbababcbbbbc"
"aacbaabbcbcbbab"
Returns: {"abcbbababcbbbbc", "abcbbabaacbbbbc", "abcbbabaaabbbbc", "abcbbabaaaabbbc", "abcbbabaaaabbba", "abcbbabaaaabbca", "abcbbabaaaabbcb", "abcbbabaaaabbab", "abcbbabaaacbbab", "abcbbabaabcbbab", "abcbbabacbcbbab", "abcbbabccbcbbab", "abcbcabccbcbbab", "abcbcabbcbcbbab", "accbcabbcbcbbab", "accbaabbcbcbbab", "aacbaabbcbcbbab" }
"bbbbabb"
"abbabaa"
Returns: {"bbbbabb", "bbbbabc", "bbbbacc", "bbbbaca", "bbbbaaa", "bbbbcaa", "bbbccaa", "bbbcbaa", "cbbcbaa", "cbbabaa", "abbabaa" }
"abbaababaaababbbbabaabb"
"aabbbabbbabbaabbabbabab"
Returns: {"abbaababaaababbbbabaabb", "abbaababaaababbbbabaacb", "abbaababaaababbbbabaccb", "abbaababaaababbbbabacab", "abbaababaaababbbbababab", "abbaababaaababbbbcbabab", "abbaababaaababbbccbabab", "abbaababaaababbbcbbabab", "abbaababaaababbbabbabab", "abbaababaaabacbbabbabab", "abbaababaacbacbbabbabab", "abbaababaacbaabbabbabab", "abbaababaabbaabbabbabab", "abbaababcabbaabbabbabab", "abbaabcbcabbaabbabbabab", "abbaabcbbabbaabbabbabab", "abbaabbbbabbaabbabbabab", "abbaacbbbabbaabbabbabab", "abbaccbbbabbaabbabbabab", "abbacabbbabbaabbabbabab", "abbababbbabbaabbabbabab", "abbcbabbbabbaabbabbabab", "acbcbabbbabbaabbabbabab", "acbbbabbbabbaabbabbabab", "aabbbabbbabbaabbabbabab" }
"aabbaabababbabababaaaaa"
"aaaaaaabbabbababaaaabab"
Returns: {"aabbaabababbabababaaaaa", "aabbaabababbabababaaaac", "aabbaabababbabababaacac", "aabbaabababbabababaacab", "aabbaabababbabababaabab", "aabbaabababbababacaabab", "aabbaabcbabbababacaabab", "aabbaabcbabbababaaaabab", "aabbaabbbabbababaaaabab", "aabbaacbbabbababaaaabab", "aabcaacbbabbababaaaabab", "aabcaaabbabbababaaaabab", "aaccaaabbabbababaaaabab", "aacaaaabbabbababaaaabab", "aaaaaaabbabbababaaaabab" }
"vnqrsyyvlzqqnuonvnxpagkbtndo"
"ysddknxbkzyfvnpxqpwqdhguarpk"
Returns: {"vnqrsyyvlzqqnuonvnxpagkbtndo", "anqrsyyvlzqqnuonvnxpagkbtndo", "aaqrsyyvlzqqnuonvnxpagkbtndo", "aaarsyyvlzqqnuonvnxpagkbtndo", "aaaasyyvlzqqnuonvnxpagkbtndo", "aaaaayyvlzqqnuonvnxpagkbtndo", "aaaaaayvlzqqnuonvnxpagkbtndo", "aaaaaaavlzqqnuonvnxpagkbtndo", "aaaaaaaalzqqnuonvnxpagkbtndo", "aaaaaaaaazqqnuonvnxpagkbtndo", "aaaaaaaaazaqnuonvnxpagkbtndo", "aaaaaaaaazaanuonvnxpagkbtndo", "aaaaaaaaazaaauonvnxpagkbtndo", "aaaaaaaaazaaaaonvnxpagkbtndo", "aaaaaaaaazaaaaanvnxpagkbtndo", "aaaaaaaaazaaaaaavnxpagkbtndo", "aaaaaaaaazaaaaaaanxpagkbtndo", "aaaaaaaaazaaaaaaaaxpagkbtndo", "aaaaaaaaazaaaaaaaaapagkbtndo", "aaaaaaaaazaaaaaaaaaaagkbtndo", "aaaaaaaaazaaaaaaaaaaaakbtndo", "aaaaaaaaazaaaaaaaaaaaaabtndo", "aaaaaaaaazaaaaaaaaaaaaaatndo", "aaaaaaaaazaaaaaaaaaaaaaabndo", "aaaaaaaaazaaaaaaaaaaaaaabado", "aaaaaaaaazaaaaaaaaaaaaaaaado", "aaaaaaaaazaaaaaaaaaaaaaaaaao", "aaaaaaaaazaaaaaaaaaaaaaaaaaa", "aaaaaaaaazaaaaaaaaaaaaaaaapa", "aaaaaaaaazaaaaaaaaaaaaaaaapk", "aaaaaaaaazaaaaaaaaaaaaaaarpk", "aaaaaaaaazaaaaaaaaaaaaauarpk", "aaaaaaaaazaaaaaaaaaaaaguarpk", "aaaaaaaaazaaaaaaaaaaahguarpk", "aaaaaaaaazaaaaaaaaaabhguarpk", "aaaaaaaaazaaaaaaaaaqbhguarpk", "aaaaaaaaazaaaaaaaaaqdhguarpk", "aaaaaaaaazaaaaaaaawqdhguarpk", "aaaaaaaaazaaaaaaapwqdhguarpk", "aaaaaaaaazaaaaaaqpwqdhguarpk", "aaaaaaaaazaaaaaxqpwqdhguarpk", "aaaaaaaaazaaaapxqpwqdhguarpk", "aaaaaaaaazaaanpxqpwqdhguarpk", "aaaaaaaaazaavnpxqpwqdhguarpk", "aaaaaaaaazafvnpxqpwqdhguarpk", "aaaaaaaaazyfvnpxqpwqdhguarpk", "aaaaaaaakzyfvnpxqpwqdhguarpk", "aaaaaaabkzyfvnpxqpwqdhguarpk", "aaaaaaxbkzyfvnpxqpwqdhguarpk", "aaaaanxbkzyfvnpxqpwqdhguarpk", "aaaaknxbkzyfvnpxqpwqdhguarpk", "aaadknxbkzyfvnpxqpwqdhguarpk", "aaddknxbkzyfvnpxqpwqdhguarpk", "asddknxbkzyfvnpxqpwqdhguarpk", "ysddknxbkzyfvnpxqpwqdhguarpk" }
"fyjcbxtj"
"butvailg"
Returns: {"fyjcbxtj", "ayjcbxtj", "aajcbxtj", "aaacbxtj", "aaaabxtj", "aaaabatj", "aaaabaaj", "aaaabaaa", "aaaabala", "aaaabalg", "aaaabilg", "aaaacilg", "aaavcilg", "aaavailg", "aatvailg", "autvailg", "butvailg" }
"bbaababbbabbbbbababba"
"ababbabbbaabbaaaabbab"
Returns: {"bbaababbbabbbbbababba", "bbaababbbabbbbbababbc", "bbaababbbabbbbbababcc", "bbaababbbabbbbbababcb", "bbaababbbabbbbbababab", "bbaababbbabbbbbabcbab", "bbaababbbabbbbbaccbab", "bbaababbbabbbbbacbbab", "bbaababbbabbbbbaabbab", "bbaababbbabbbbcaabbab", "bbaababbbabbbccaabbab", "bbaababbbabbbcaaabbab", "bbaababbbabbbaaaabbab", "bbaababbbacbbaaaabbab", "bbacbabbbacbbaaaabbab", "bbacbabbbaabbaaaabbab", "cbacbabbbaabbaaaabbab", "cbabbabbbaabbaaaabbab", "ababbabbbaabbaaaabbab" }
"abab"
"babb"
Returns: {"abab", "abcb", "accb", "acbb", "ccbb", "cabb", "babb" }
"usnkz"
"zrlad"
Returns: {"usnkz", "asnkz", "aankz", "aaakz", "aaabz", "aaaba", "aaaaa", "aaaad", "aalad", "arlad", "zrlad" }
"aaaa"
"abba"
Returns: {"aaaa", "aaca", "acca", "acba", "abba" }
"bbaabb"
"abbbba"
Returns: {"bbaabb", "bbaabc", "bbacbc", "bbacba", "bbabba", "bbcbba", "cbcbba", "cbbbba", "abbbba" }
"bacbbabaaccc"
"aacaaabbbcbc"
Returns: {"bacbbabaaccc", "bacbbabaacac", "bacbbabaccac", "bacbbabaccbc", "bacbbababcbc", "bacbbabcbcbc", "bacbcabcbcbc", "bacbcabbbcbc", "bacbaabbbcbc", "baccaabbbcbc", "caccaabbbcbc", "cacaaabbbcbc", "aacaaabbbcbc" }
"abbbaaaaaaaaaabbbaaaaaabbbb"
"bbbaabbbbbbbbbbababbaaabbaa"
Returns: {"abbbaaaaaaaaaabbbaaaaaabbbb", "abbbaaaaaaaaaabbbaaaaaabbbc", "abbbaaaaaaaaaabbbaaaaaabbcc", "abbbaaaaaaaaaabbbaaaaaabbca", "abbbaaaaaaaaaabbbaaaaaabbaa", "abbbaaaaaaaaaabbbaacaaabbaa", "abbbaaaaaaaaaabbbaccaaabbaa", "abbbaaaaaaaaaabbbacbaaabbaa", "abbbaaaaaaaaaabbbabbaaabbaa", "abbbaaaaaaaaaabcbabbaaabbaa", "abbbaaaaaaaaacbcbabbaaabbaa", "abbbaaaaaaaaacbababbaaabbaa", "abbbaaaaaaaaabbababbaaabbaa", "abbbaaaaaaaacbbababbaaabbaa", "abbbaaaaaaaccbbababbaaabbaa", "abbbaaaaaaacbbbababbaaabbaa", "abbbaaaaaaabbbbababbaaabbaa", "abbbaaaaaacbbbbababbaaabbaa", "abbbaaaaaccbbbbababbaaabbaa", "abbbaaaaacbbbbbababbaaabbaa", "abbbaaaaabbbbbbababbaaabbaa", "abbbaaaacbbbbbbababbaaabbaa", "abbbaaaccbbbbbbababbaaabbaa", "abbbaaacbbbbbbbababbaaabbaa", "abbbaaabbbbbbbbababbaaabbaa", "abbbaacbbbbbbbbababbaaabbaa", "abbbaccbbbbbbbbababbaaabbaa", "abbbacbbbbbbbbbababbaaabbaa", "abbbabbbbbbbbbbababbaaabbaa", "abbcabbbbbbbbbbababbaaabbaa", "cbbcabbbbbbbbbbababbaaabbaa", "cbbaabbbbbbbbbbababbaaabbaa", "bbbaabbbbbbbbbbababbaaabbaa" }
"aabbbabbbbaa"
"aababbabaaaa"
Returns: {"aabbbabbbbaa", "aabbbabbbcaa", "aabbbabbccaa", "aabbbabbcaaa", "aabbbabbaaaa", "aabbbacbaaaa", "aabbbccbaaaa", "aabbbcabaaaa", "aabcbcabaaaa", "aabcbbabaaaa", "aababbabaaaa" }
"cbcccacaabbabcccaabcc"
"abbccabaacccccabcbabc"
Returns: {"cbcccacaabbabcccaabcc", "bbcccacaabbabcccaabcc", "bbaccacaabbabcccaabcc", "abaccacaabbabcccaabcc", "abaccaaaabbabcccaabcc", "abaccaaaaababcccaabcc", "abaccaaaaaaabcccaabcc", "abaccaaaaaaaacccaabcc", "abaccaaaaaaaacbcaabcc", "abaccaaaaaaaacbaaabcc", "abaccaaaaaaaacaaaabcc", "abaccaaaaaaaacaaaabac", "abaccaaaaaaaacaaaacac", "abaccaaaaaaaacaaaacbc", "abaccaaaaaaaacaaaaabc", "abaccaaaaaaaacaaacabc", "abaccaaaaaaaacaabcabc", "abaccaaaaaaaacaabbabc", "abaccaaaaaaaacaacbabc", "abaccaaaaaaaacabcbabc", "abaccaaaaaaaccabcbabc", "abaccaaaaaabccabcbabc", "abaccaaaaacbccabcbabc", "abaccaaaaaccccabcbabc", "abaccaaaacccccabcbabc", "abaccabaacccccabcbabc", "abbccabaacccccabcbabc" }
"bbabbbaabbbaaab"
"bbabaabaabbabaa"
Returns: {"bbabbbaabbbaaab", "bbabbbaabbbaaac", "bbabbbaabbbacac", "bbabbbaabbbacaa", "bbabbbaabbbabaa", "bbabbbaacbbabaa", "bbabbbcacbbabaa", "bbabbbcaabbabaa", "bbabbbbaabbabaa", "bbabbcbaabbabaa", "bbabccbaabbabaa", "bbabcabaabbabaa", "bbabaabaabbabaa" }
"babaaac"
"ccacacb"
Returns: {"babaaac", "aabaaac", "aabaaaa", "aabaaba", "aabaabb", "aabaacb", "aabbacb", "aacbacb", "aaccacb", "aaacacb", "abacacb", "cbacacb", "ccacacb" }
"baabbaaabbaab"
"bbbaabbabbbba"
Returns: {"baabbaaabbaab", "baabbaaabbaac", "baabbaaabbacc", "baabbaaabbaca", "baabbaaabbaba", "baabbaaabbcba", "baabbacabbcba", "baabbacabbbba", "baabbababbbba", "baabbcbabbbba", "baabccbabbbba", "baabcbbabbbba", "baababbabbbba", "baacabbabbbba", "baccabbabbbba", "bacaabbabbbba", "bccaabbabbbba", "bcbaabbabbbba", "bbbaabbabbbba" }
"wuksugsfghybawtqtixtjgk"
"sturkqfxyklffvxpcbmowoj"
Returns: {"wuksugsfghybawtqtixtjgk", "auksugsfghybawtqtixtjgk", "aaksugsfghybawtqtixtjgk", "aaasugsfghybawtqtixtjgk", "aaaaugsfghybawtqtixtjgk", "aaaaagsfghybawtqtixtjgk", "aaaaaasfghybawtqtixtjgk", "aaaaaaafghybawtqtixtjgk", "aaaaaaaaghybawtqtixtjgk", "aaaaaaaaahybawtqtixtjgk", "aaaaaaaaaaybawtqtixtjgk", "aaaaaaaaaaabawtqtixtjgk", "aaaaaaaaaaaaawtqtixtjgk", "aaaaaaaaaaaaaatqtixtjgk", "aaaaaaaaaaaaaaaqtixtjgk", "aaaaaaaaaaaaaaaatixtjgk", "aaaaaaaaaaaaaaaaaixtjgk", "aaaaaaaaaaaaaaaaaaxtjgk", "aaaaaaaaaaaaaaaaaaatjgk", "aaaaaaaaaaaaaaaaaaaajgk", "aaaaaaaaaaaaaaaaaaaaagk", "aaaaaaaaaaaaaaaaaaaaaak", "aaaaaaaaaaaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaaaaaaaoa", "aaaaaaaaaaaaaaaaaaaaaoj", "aaaaaaaaaaaaaaaaaaaawoj", "aaaaaaaaaaaaaaaaaaaowoj", "aaaaaaaaaaaaaaaaaamowoj", "aaaaaaaaaaaaaaaaabmowoj", "aaaaaaaaaaaaaaaacbmowoj", "aaaaaaaaaaaaaaapcbmowoj", "aaaaaaaaaaaaaaxpcbmowoj", "aaaaaaaaaaaaavxpcbmowoj", "aaaaaaaaaaaabvxpcbmowoj", "aaaaaaaaaaafbvxpcbmowoj", "aaaaaaaaaaaffvxpcbmowoj", "aaaaaaaaaalffvxpcbmowoj", "aaaaaaaaaklffvxpcbmowoj", "aaaaaaaayklffvxpcbmowoj", "aaaaaaaxyklffvxpcbmowoj", "aaaaaafxyklffvxpcbmowoj", "aaaaaqfxyklffvxpcbmowoj", "aaaakqfxyklffvxpcbmowoj", "aaarkqfxyklffvxpcbmowoj", "aaurkqfxyklffvxpcbmowoj", "aturkqfxyklffvxpcbmowoj", "sturkqfxyklffvxpcbmowoj" }
"bbbbababbbbbaaababaabab"
"abbbabbaaabbaaabbaabbaa"
Returns: {"bbbbababbbbbaaababaabab", "bbbbababbbbbaaababaabac", "bbbbababbbbbaaababacbac", "bbbbababbbbbaaababacbaa", "bbbbababbbbbaaabababbaa", "bbbbababbbbbaaabacabbaa", "bbbbababbbbbaaabccabbaa", "bbbbababbbbbaaabcaabbaa", "bbbbababbbbbaaabbaabbaa", "bbbbababbcbbaaabbaabbaa", "bbbbababccbbaaabbaabbaa", "bbbbababcabbaaabbaabbaa", "bbbbababaabbaaabbaabbaa", "bbbbabacaabbaaabbaabbaa", "bbbbabccaabbaaabbaabbaa", "bbbbabcaaabbaaabbaabbaa", "cbbbabcaaabbaaabbaabbaa", "cbbbabbaaabbaaabbaabbaa", "abbbabbaaabbaaabbaabbaa" }
"bbabbbbbaabaaaabababababbaaaa"
"aaababaabbababaaaabbbabaababb"
Returns: {"bbabbbbbaabaaaabababababbaaaa", "bbabbbbbaabaaaabababababbaaac", "bbabbbbbaabaaaabababababbaacc", "bbabbbbbaabaaaabababababbaacb", "bbabbbbbaabaaaabababababbaabb", "bbabbbbbaabaaaabababababbcabb", "bbabbbbbaabaaaabababababccabb", "bbabbbbbaabaaaabababababcbabb", "bbabbbbbaabaaaabababababababb", "bbabbbbbaabaaaababababacababb", "bbabbbbbaabaaaababababccababb", "bbabbbbbaabaaaababababcaababb", "bbabbbbbaabaaaababababbaababb", "bbabbbbbaabaaaabababacbaababb", "bbabbbbbaabaaaabababccbaababb", "bbabbbbbaabaaaabababcabaababb", "bbabbbbbaabaaaabababbabaababb", "bbabbbbbaabaaaababcbbabaababb", "bbabbbbbaabaaaabaccbbabaababb", "bbabbbbbaabaaaabacbbbabaababb", "bbabbbbbaabaaaabaabbbabaababb", "bbabbbbbaabaaaacaabbbabaababb", "bbabbbbbaabaacacaabbbabaababb", "bbabbbbbaabaacaaaabbbabaababb", "bbabbbbbaabaabaaaabbbabaababb", "bbabbbbbaabcabaaaabbbabaababb", "bbabbbbbaaccabaaaabbbabaababb", "bbabbbbbaacbabaaaabbbabaababb", "bbabbbbbaaababaaaabbbabaababb", "bbabbbbbacababaaaabbbabaababb", "bbabbbbbccababaaaabbbabaababb", "bbabbbbbcbababaaaabbbabaababb", "bbabbbbbbbababaaaabbbabaababb", "bbabbbbcbbababaaaabbbabaababb", "bbabbbccbbababaaaabbbabaababb", "bbabbbcabbababaaaabbbabaababb", "bbabbbaabbababaaaabbbabaababb", "bbabcbaabbababaaaabbbabaababb", "bcabcbaabbababaaaabbbabaababb", "bcababaabbababaaaabbbabaababb", "ccababaabbababaaaabbbabaababb", "caababaabbababaaaabbbabaababb", "aaababaabbababaaaabbbabaababb" }
"abcabcaaac"
"aabcbcbcbc"
Returns: {"abcabcaaac", "abaabcaaac", "abaabcaacc", "abaabcabcc", "abaabcabbc", "abaabcacbc", "abaabcccbc", "ababbcccbc", "ababbcbcbc", "abacbcbcbc", "acacbcbcbc", "acbcbcbcbc", "aabcbcbcbc" }
"aabbab"
"baabbb"
Returns: {"aabbab", "aabbcb", "aacbcb", "aacbbb", "cacbbb", "caabbb", "baabbb" }
"cabacaccbccba"
"bbccaccbcbcab"
Returns: {"cabacaccbccba", "aabacaccbccba", "aaaacaccbccba", "aaaabaccbccba", "aaaabacabccba", "aaaaaacabccba", "aaaaaacaaccba", "aaaaaacaaacba", "aaaaaacaaacbc", "aaaaaacaaaccc", "aaaaaacaaaccb", "aaaaaacaaacab", "aaaaaacaabcab", "aaaaaacacbcab", "aaaaaacbcbcab", "aaaaabcbcbcab", "aaababcbcbcab", "aaabaccbcbcab", "aaacaccbcbcab", "aaccaccbcbcab", "acccaccbcbcab", "bcccaccbcbcab", "bbccaccbcbcab" }
"babbaabaaababbba"
"baaaabbabbbbaabb"
Returns: {"babbaabaaababbba", "babbaabaaababbbc", "babbaabaaababcbc", "babbaabaaababcbb", "babbaabaaabababb", "babbaabaaabacabb", "babbaabaaabccabb", "babbaabaaabcaabb", "babbaabaaabbaabb", "babbaabaacbbaabb", "babbaabaccbbaabb", "babbaabacbbbaabb", "babbaababbbbaabb", "babbacbabbbbaabb", "babcacbabbbbaabb", "babcabbabbbbaabb", "baccabbabbbbaabb", "bacaabbabbbbaabb", "baaaabbabbbbaabb" }
"dqjfmixswgq"
"iyffkeipdjw"
Returns: {"dqjfmixswgq", "aqjfmixswgq", "aajfmixswgq", "aaafmixswgq", "aaafaixswgq", "aaafaaxswgq", "aaafaaaswgq", "aaafaaaawgq", "aaafaaaaagq", "aaafaaaaaaq", "aaafaaaaaaa", "aaafaaaaaja", "aaafaaaaajw", "aaafaaaadjw", "aaafaaapdjw", "aaafaaipdjw", "aaafaeipdjw", "aaafkeipdjw", "aaffkeipdjw", "ayffkeipdjw", "iyffkeipdjw" }
"baaaababbaaa"
"aaabbbbabbba"
Returns: {"baaaababbaaa", "baaaababbaca", "baaaababbcca", "baaaababbcba", "baaaababbbba", "baaaabacbbba", "baaaabccbbba", "baaaabcabbba", "baaaabbabbba", "baaacbbabbba", "baaccbbabbba", "baacbbbabbba", "caacbbbabbba", "caabbbbabbba", "aaabbbbabbba" }
"baaaba"
"aaabab"
Returns: {"baaaba", "baaabc", "baaacc", "baaacb", "baaaab", "baacab", "caacab", "caabab", "aaabab" }
"bbababaabba"
"babababaaab"
Returns: {"bbababaabba", "bbababaabbc", "bbababaabcc", "bbababaabcb", "bbababaabab", "bbababaacab", "bbababcacab", "bbababcaaab", "bbababbaaab", "bbabacbaaab", "bbabccbaaab", "bbabcabaaab", "bbabbabaaab", "bbacbabaaab", "bbccbabaaab", "bbcababaaab", "bccababaaab", "bcbababaaab", "babababaaab" }
"bbbbbaaaabbbbbabbaba"
"bbbaaaabbabbaaaaabaa"
Returns: {"bbbbbaaaabbbbbabbaba", "bbbbbaaaabbbbbabbaca", "bbbbbaaaabbbbbabbcca", "bbbbbaaaabbbbbabbcaa", "bbbbbaaaabbbbbabbbaa", "bbbbbaaaabbbbbabcbaa", "bbbbbaaaabbbbbaccbaa", "bbbbbaaaabbbbbacabaa", "bbbbbaaaabbbbbaaabaa", "bbbbbaaaabbbbcaaabaa", "bbbbbaaaabbbccaaabaa", "bbbbbaaaabbbcaaaabaa", "bbbbbaaaabbbaaaaabaa", "bbbbbaaaacbbaaaaabaa", "bbbbbaaaccbbaaaaabaa", "bbbbbaaacabbaaaaabaa", "bbbbbaaababbaaaaabaa", "bbbbbaacbabbaaaaabaa", "bbbbcaacbabbaaaaabaa", "bbbbcaabbabbaaaaabaa", "bbbccaabbabbaaaaabaa", "bbbcaaabbabbaaaaabaa", "bbbaaaabbabbaaaaabaa" }
"bbaaabbbabbabbbbabaaaaabbaa"
"baaabbbabababbaaaabaababbbb"
Returns: {"bbaaabbbabbabbbbabaaaaabbaa", "bbaaabbbabbabbbbabaaaaabbac", "bbaaabbbabbabbbbabaaaaabbcc", "bbaaabbbabbabbbbabaaaaabbcb", "bbaaabbbabbabbbbabaaaaabbbb", "bbaaabbbabbabbbbabaaacabbbb", "bbaaabbbabbabbbbabcaacabbbb", "bbaaabbbabbabbbbabcaababbbb", "bbaaabbbabbabbbbabbaababbbb", "bbaaabbbabbabbbbacbaababbbb", "bbaaabbbabbabbbcacbaababbbb", "bbaaabbbabbabbbcaabaababbbb", "bbaaabbbabbabbbaaabaababbbb", "bbaaabbbabbabbcaaabaababbbb", "bbaaabbbacbabbcaaabaababbbb", "bbaaabbbacbabbaaaabaababbbb", "bbaaabbbaababbaaaabaababbbb", "bbaaabbbcababbaaaabaababbbb", "bbaaabbccababbaaaabaababbbb", "bbaaabbcbababbaaaabaababbbb", "bbaaabbabababbaaaabaababbbb", "bbaacbbabababbaaaabaababbbb", "bcaacbbabababbaaaabaababbbb", "bcaabbbabababbaaaabaababbbb", "baaabbbabababbaaaabaababbbb" }
"abbaaaaabaaaabbbbaabbabbb"
"aabbbababaabaaaabababaaab"
Returns: {"abbaaaaabaaaabbbbaabbabbb", "abbaaaaabaaaabbbbaabbabcb", "abbaaaaabaaaabbbbaabbaccb", "abbaaaaabaaaabbbbaabbacab", "abbaaaaabaaaabbbbaabbaaab", "abbaaaaabaaaabbbbaacbaaab", "abbaaaaabaaaabbbbaccbaaab", "abbaaaaabaaaabbbbacabaaab", "abbaaaaabaaaabbbbababaaab", "abbaaaaabaaaabbcbababaaab", "abbaaaaabaaaabccbababaaab", "abbaaaaabaaaabcabababaaab", "abbaaaaabaaaabaabababaaab", "abbaaaaabaaaacaabababaaab", "abbaaaaabaacacaabababaaab", "abbaaaaabaacaaaabababaaab", "abbaaaaabaabaaaabababaaab", "abbaaacabaabaaaabababaaab", "abbacacabaabaaaabababaaab", "abbacababaabaaaabababaaab", "abbabababaabaaaabababaaab", "abbcbababaabaaaabababaaab", "acbcbababaabaaaabababaaab", "acbbbababaabaaaabababaaab", "aabbbababaabaaaabababaaab" }
"babbaabb"
"babaabaa"
Returns: {"babbaabb", "babbaabc", "babbaacc", "babbaaca", "babbaaaa", "babbacaa", "babcacaa", "babcabaa", "babaabaa" }
"aaaaaba"
"abaaaba"
Returns: {"aaaaaba", "aaaaaaa", "acaaaaa", "acaaaba", "abaaaba" }
"baaababaaabababbaabaaabbbb"
"abbaaaababbbaabbaababbaabb"
Returns: {"baaababaaabababbaabaaabbbb", "baaababaaabababbaabaaabcbb", "baaababaaabababbaabaaaccbb", "baaababaaabababbaabaaacabb", "baaababaaabababbaabaaaaabb", "baaababaaabababbaabaacaabb", "baaababaaabababbaabaccaabb", "baaababaaabababbaabacbaabb", "baaababaaabababbaababbaabb", "baaababaaabacabbaababbaabb", "baaababaaabccabbaababbaabb", "baaababaaabcaabbaababbaabb", "baaababaaabbaabbaababbaabb", "baaababaacbbaabbaababbaabb", "baaababcacbbaabbaababbaabb", "baaababcabbbaabbaababbaabb", "baaababbabbbaabbaababbaabb", "baaabacbabbbaabbaababbaabb", "baaacacbabbbaabbaababbaabb", "baaacaababbbaabbaababbaabb", "baaaaaababbbaabbaababbaabb", "bacaaaababbbaabbaababbaabb", "bccaaaababbbaabbaababbaabb", "bcbaaaababbbaabbaababbaabb", "ccbaaaababbbaabbaababbaabb", "cbbaaaababbbaabbaababbaabb", "abbaaaababbbaabbaababbaabb" }
"abbbababbaabaaaababbaa"
"abbabbbbaababbbbababbb"
Returns: {"abbbababbaabaaaababbaa", "abbbababbaabaaaababbac", "abbbababbaabaaaababbcc", "abbbababbaabaaaababbcb", "abbbababbaabaaaababbbb", "abbbababbaabaaaabacbbb", "abbbababbaabaaaabccbbb", "abbbababbaabaaaabcabbb", "abbbababbaabaaaabbabbb", "abbbababbaabaaaacbabbb", "abbbababbaabaaaccbabbb", "abbbababbaabaaacababbb", "abbbababbaabaaabababbb", "abbbababbaabaacbababbb", "abbbababbaabaccbababbb", "abbbababbaabacbbababbb", "abbbababbaababbbababbb", "abbbababbaabcbbbababbb", "abbbababbaaccbbbababbb", "abbbababbaacbbbbababbb", "abbbababbaaabbbbababbb", "abbbababbacabbbbababbb", "abbbababcacabbbbababbb", "abbbababcababbbbababbb", "abbbababaababbbbababbb", "abbbabcbaababbbbababbb", "abbbcbcbaababbbbababbb", "abbbcbbbaababbbbababbb", "abbccbbbaababbbbababbb", "abbcbbbbaababbbbababbb", "abbabbbbaababbbbababbb" }
"hzybfbyjunp"
"hgbwizssgqb"
Returns: {"hzybfbyjunp", "haybfbyjunp", "haabfbyjunp", "haaafbyjunp", "haaaabyjunp", "haaaaayjunp", "haaaaaajunp", "haaaaaaaunp", "haaaaaaaanp", "haaaaaaaaap", "haaaaaaaaaa", "haaaaaaaaqa", "haaaaaaaaqb", "haaaaaaagqb", "haaaaaasgqb", "haaaaassgqb", "haaaazssgqb", "haaaizssgqb", "haawizssgqb", "habwizssgqb", "hgbwizssgqb" }
"abaaaaaabbbaba"
"abbbbbababbbaa"
Returns: {"abaaaaaabbbaba", "abaaaaaabbbaca", "abaaaaaabbbcca", "abaaaaaabbbcaa", "abaaaaaabbbbaa", "abaaaaaacbbbaa", "abaaaaaccbbbaa", "abaaaaacabbbaa", "abaaaaababbbaa", "abaaacababbbaa", "abaaccababbbaa", "abaacbababbbaa", "abaabbababbbaa", "abacbbababbbaa", "abccbbababbbaa", "abcbbbababbbaa", "abbbbbababbbaa" }
"ababbaaabaaabaabbababaaababa"
"abbaaaabbbbbbaaaabbaaaaaaaab"
Returns: {"ababbaaabaaabaabbababaaababa", "ababbaaabaaabaabbababaaababc", "ababbaaabaaabaabbababaaabacc", "ababbaaabaaabaabbababaaabacb", "ababbaaabaaabaabbababaaabaab", "ababbaaabaaabaabbababaaacaab", "ababbaaabaaabaabbabacaaacaab", "ababbaaabaaabaabbabacaaaaaab", "ababbaaabaaabaabbabaaaaaaaab", "ababbaaabaaabaabbcbaaaaaaaab", "ababbaaabaaabaabccbaaaaaaaab", "ababbaaabaaabaabcbbaaaaaaaab", "ababbaaabaaabaababbaaaaaaaab", "ababbaaabaaabaacabbaaaaaaaab", "ababbaaabaacbaacabbaaaaaaaab", "ababbaaabaacbaaaabbaaaaaaaab", "ababbaaabaabbaaaabbaaaaaaaab", "ababbaaabacbbaaaabbaaaaaaaab", "ababbaaabccbbaaaabbaaaaaaaab", "ababbaaabcbbbaaaabbaaaaaaaab", "ababbaaabbbbbaaaabbaaaaaaaab", "ababbaacbbbbbaaaabbaaaaaaaab", "ababcaacbbbbbaaaabbaaaaaaaab", "ababcaabbbbbbaaaabbaaaaaaaab", "ababaaabbbbbbaaaabbaaaaaaaab", "abacaaabbbbbbaaaabbaaaaaaaab", "abccaaabbbbbbaaaabbaaaaaaaab", "abcaaaabbbbbbaaaabbaaaaaaaab", "abbaaaabbbbbbaaaabbaaaaaaaab" }
"aabbbbabba"
"abaaababba"
Returns: {"aabbbbabba", "aabbcbabba", "aabccbabba", "aabcababba", "aabaababba", "aacaababba", "accaababba", "acaaababba", "abaaababba" }
"baba"
"bccb"
Returns: {"baba", "baaa", "baac", "bacc", "bbcc", "bbcb", "bccb" }
"babacbccacacbbaacbacababc"
"cabaabbcababaaaababacaacc"
Returns: {"babacbccacacbbaacbacababc", "aabacbccacacbbaacbacababc", "aababbccacacbbaacbacababc", "aababbacacacbbaacbacababc", "aabaabacacacbbaacbacababc", "aabaabacaaacbbaacbacababc", "aabaabacaaaabbaacbacababc", "aabaabacaaaabbaaabacababc", "aabaabacaaaabbaaababababc", "aabaabacaaaabbaaabababaac", "aabaabacaaaabbaaabaaabaac", "aabaabacaaaabbaaabaaabacc", "aabaabacaaaabbaaabaaacacc", "aabaabacaaaabbaaabaabcacc", "aabaabacaaaabbaaabaabaacc", "aabaabacaaaabbaaabaacaacc", "aabaabacaaaabbaaabcacaacc", "aabaabacaaaabbaaaccacaacc", "aabaabacaaaabbaaacbacaacc", "aabaabacaaaabbaaaabacaacc", "aabaabacaaaabbaababacaacc", "aabaabacaaaabcaababacaacc", "aabaabacaaaaccaababacaacc", "aabaabacaaaacaaababacaacc", "aabaabacaaaaaaaababacaacc", "aabaabacaaabaaaababacaacc", "aabaabacababaaaababacaacc", "aabaabbcababaaaababacaacc", "cabaabbcababaaaababacaacc" }
"bbbbbbcaabcccbbbbacccca"
"bbcabbcabaaabcbcababaab"
Returns: {"bbbbbbcaabcccbbbbacccca", "bbabbbcaabcccbbbbacccca", "bbabbbcaabbccbbbbacccca", "bbabbbcaabbbcbbbbacccca", "bbabbbcaababcbbbbacccca", "bbabbbcaabaacbbbbacccca", "bbabbbcaabaaabbbbacccca", "bbabbbcaabaaaabbbacccca", "bbabbbcaabaaaababacccca", "bbabbbcaabaaaabababccca", "bbabbbcaabaaaabababacca", "bbabbbcaabaaaababaaacca", "bbabbbcaabaaaababaaabca", "bbabbbcaabaaaababaaabba", "bbabbbcaabaaaababaaaaba", "bbabbbcaabaaaababaaaaaa", "bbabbbcaabaaaababaaaaac", "bbabbbcaabaaaababaabaac", "bbabbbcaabaaaababaabaab", "bbabbbcaabaaaababcabaab", "bbabbbcaabaaaabaccabaab", "bbabbbcaabaaaabacbabaab", "bbabbbcaabaaaabaababaab", "bbabbbcaabaaaabcababaab", "bbabbbcaabaaacbcababaab", "bbabbbcaabaabcbcababaab", "bbabbbcaacaabcbcababaab", "bbabbbcaccaabcbcababaab", "bbabbbcacaaabcbcababaab", "bbabbbcabaaabcbcababaab", "bbacbbcabaaabcbcababaab", "bbccbbcabaaabcbcababaab", "bbcabbcabaaabcbcababaab" }
"caabcaccbccbbccbcaccaaaabcb"
"bccaacccbcbbbbcabcccacccabb"
Returns: {"caabcaccbccbbccbcaccaaaabcb", "aaabcaccbccbbccbcaccaaaabcb", "aaabbaccbccbbccbcaccaaaabcb", "aaabbaccbcabbccbcaccaaaabcb", "aaabaaccbcabbccbcaccaaaabcb", "aaabaaccbcabbacbcaccaaaabcb", "aaabaaccbcabbacbaaccaaaabcb", "aaabaaccbcabbacbaaccaaaabab", "aaabaaccbcabbacbaaccaaaacab", "aaabaaccbcabbacbaaccaaaacbb", "aaabaaccbcabbacbaaccaaaaabb", "aaabaaccbcabbacbaaccaaababb", "aaabaaccbcabbacbaaccaabbabb", "aaabaaccbcabbacbaaccaabcabb", "aaabaaccbcabbacbaaccaaccabb", "aaabaaccbcabbacbaaccabccabb", "aaabaaccbcabbacbabccabccabb", "aaabaaccbcabbacbabccacccabb", "aaabaaccbcabbacbacccacccabb", "aaabaaccbcabbacbbcccacccabb", "aaabaaccbcabbaccbcccacccabb", "aaabaaccbcabbbccbcccacccabb", "aaabaaccbcabbbcabcccacccabb", "aaabaaccbcbbbbcabcccacccabb", "aaababccbcbbbbcabcccacccabb", "aaacabccbcbbbbcabcccacccabb", "aaacacccbcbbbbcabcccacccabb", "aaaaacccbcbbbbcabcccacccabb", "aabaacccbcbbbbcabcccacccabb", "abbaacccbcbbbbcabcccacccabb", "abcaacccbcbbbbcabcccacccabb", "accaacccbcbbbbcabcccacccabb", "bccaacccbcbbbbcabcccacccabb" }
"aabbccbacabaccabaacabacaabacab"
"bcacabcabaacabaabacaababcaabba"
Returns: {"aabbccbacabaccabaacabacaabacab", "aabaccbacabaccabaacabacaabacab", "aababcbacabaccabaacabacaabacab", "aabababacabaccabaacabacaabacab", "aabaaabacabaccabaacabacaabacab", "aabaaaaacabaccabaacabacaabacab", "aabaaaaaaabaccabaacabacaabacab", "aabaaaaaaababcabaacabacaabacab", "aabaaaaaaababaabaacabacaabacab", "aabaaaaaaabaaaabaacabacaabacab", "aabaaaaaaabaaaabaacababaabacab", "aabaaaaaaabaaaabaacababaabaaab", "aabaaaaaaabaaaabaacabaaaabaaab", "aabaaaaaaabaaaabaacabaaaabaaac", "aabaaaaaaabaaaabaacabaaaabaacc", "aabaaaaaaabaaaabaacabaaaabaaca", "aabaaaaaaabaaaabaacabaaaabaaba", "aabaaaaaaabaaaabaacabaaaababba", "aabaaaaaaabaaaabaacabaaaacabba", "aabaaaaaaabaaaabaacabaaabcabba", "aabaaaaaaabaaaabaacabaaabaabba", "aabaaaaaaabaaaabaacabaaacaabba", "aabaaaaaaabaaaabaacabaaccaabba", "aabaaaaaaabaaaabaacabcaccaabba", "aabaaaaaaabaaaabaacabcabcaabba", "aabaaaaaaabaaaabaacabbabcaabba", "aabaaaaaaabaaaabaacacbabcaabba", "aabaaaaaaabaaaabcacacbabcaabba", "aabaaaaaaabaaaabcacaababcaabba", "aabaaaaaaabaaaabbacaababcaabba", "aabaaaaaaabaaaacbacaababcaabba", "aabaaaaaaabaabacbacaababcaabba", "aabaaaaaaabaabaabacaababcaabba", "aabaaaaaaabbabaabacaababcaabba", "aabaaaaaaacbabaabacaababcaabba", "aabaaaaaaaccabaabacaababcaabba", "aabaaaaaaaacabaabacaababcaabba", "aabaaaaabaacabaabacaababcaabba", "aabaaacabaacabaabacaababcaabba", "aabaabcabaacabaabacaababcaabba", "aabcabcabaacabaabacaababcaabba", "aaccabcabaacabaabacaababcaabba", "abccabcabaacabaabacaababcaabba", "abacabcabaacabaabacaababcaabba", "cbacabcabaacabaabacaababcaabba", "ccacabcabaacabaabacaababcaabba", "bcacabcabaacabaabacaababcaabba" }
"aeb"
"aec"
Returns: {"aeb", "aab", "aaa", "aea", "aec" }
"aaaaal"
"aaaaay"
Returns: {"aaaaal", "aaaaaa", "aaaaba", "aaaaby", "aaaaay" }
"ccc"
"aaa"
Returns: {"ccc", "bcc", "bbc", "abc", "abb", "aab", "aaa" }
"mma"
"msa"
Returns: {"mma", "ama", "aaa", "maa", "msa" }
"aba"
"ada"
Returns: {"aba", "aaa", "aab", "adb", "ada" }