QB64.org Forum

Active Forums => Programs => Topic started by: bplus on September 03, 2021, 08:46:12 pm

Title: Word ladder - Rosetta Code
Post by: bplus on September 03, 2021, 08:46:12 pm
ref: http://rosettacode.org/wiki/Word_ladder

Oh this was a little more tricky!

Code: QB64: [Select]
  1. _Title "Word ladder - Rosetta Code" 'b+ start 2021-09-03 ref: http://rosettacode.org/wiki/Word_ladder
  2. Type connectType
  3.     connect As String
  4.     word As String
  5.  
  6. Dim Shared wordList$(2 To 7)
  7. LoadWords 'build the strings for each word length the split them for that length
  8. Print ladder$("boy", "man") '     quick
  9. Print ladder$("girl", "lady") '   this takes awhile
  10. Print ladder$("john", "jane") '   quick enough
  11. Print ladder$("alien", "drool") ' cool but takes a long long time!
  12. Print ladder$("child", "adult") ' and this takes awhile
  13. Print ladder$("play", "ball") '   goes quick
  14. Print ladder$("fun", "job") '     ditto
  15.  
  16. Sub LoadWords
  17.     Open "unixdict.txt" For Input As #1
  18.     While EOF(1) = 0
  19.         Input #1, wd$
  20.         If Len(wd$) > 1 And Len(wd$) < 8 Then
  21.             ok = -1
  22.             For m = 1 To Len(wd$)
  23.                 If Asc(wd$, m) < 97 Or Asc(wd$, m) > 122 Then ok = 0: Exit For
  24.             Next
  25.             If ok Then
  26.                 If wordList$(Len(wd$)) = "" Then wordList$(Len(wd$)) = wd$ Else wordList$(Len(wd$)) = wordList$(Len(wd$)) + " " + wd$
  27.             End If
  28.         End If
  29.     Wend
  30.     Close #1
  31.  
  32. Function ladder$ (w1$, w2$)
  33.     If Len(w1$) <> Len(w2$) Then ladder$ = "": Exit Function
  34.     ReDim TheList(1 To 1) As connectType, listPlace
  35.     ReDim wl$(1 To 1)
  36.     Split wordList$(Len(w1$)), " ", wl$()
  37.     connect$ = w1$
  38.  
  39.     newConnect:
  40.     'progress
  41.     'Print "Connect word is "; connect$; UBound(wl$); listPlace;
  42.     For i = 1 To UBound(wl$)
  43.         If oneChange%(connect$, wl$(i)) Then
  44.             If TheList(1).connect = "" Then
  45.                 TheList(1).connect = connect$
  46.                 TheList(1).word = wl$(i)
  47.             Else ' add to list only if word isn't a connect
  48.                 found = 0
  49.                 For j = 1 To UBound(theList)
  50.                     If wl$(i) = TheList(j).connect Then found = -1: Exit For
  51.                 Next
  52.                 If found = 0 Then
  53.                     cAppend TheList(), connect$, wl$(i)
  54.                 End If
  55.             End If
  56.             If wl$(i) = w2$ Then done = -1: Exit For
  57.         End If
  58.     Next
  59.     If done = 0 Then
  60.         listPlace = listPlace + 1
  61.         If listPlace > UBound(TheList) Then
  62.             ladder$ = "Could NOT connect " + w1$ + " to " + w2$
  63.         Else
  64.             connect$ = TheList(listPlace).word
  65.             GoTo newConnect
  66.         End If
  67.     Else
  68.         'should be able to backtrack our path?
  69.         ladder$ = "Could connect " + w1$ + " to " + w2$
  70.         target$ = w2$: trail$ = w2$
  71.         again:
  72.         For i = 1 To UBound(theList)
  73.             If TheList(i).word = target$ Then target$ = TheList(i).connect: trail$ = target$ + " > " + trail$: GoTo again
  74.         Next
  75.         ladder$ = ladder$ + Chr$(10) + trail$
  76.     End If
  77.  
  78. Sub Split (SplitMeString As String, delim As String, loadMeArray() As String)
  79.     Dim curpos As Long, arrpos As Long, LD As Long, dpos As Long 'fix use the Lbound the array already has
  80.     curpos = 1: arrpos = LBound(loadMeArray): LD = Len(delim)
  81.     dpos = InStr(curpos, SplitMeString, delim)
  82.     Do Until dpos = 0
  83.         loadMeArray(arrpos) = Mid$(SplitMeString, curpos, dpos - curpos)
  84.         arrpos = arrpos + 1
  85.         If arrpos > UBound(loadMeArray) Then ReDim _Preserve loadMeArray(LBound(loadMeArray) To UBound(loadMeArray) + 1000) As String
  86.         curpos = dpos + LD
  87.         dpos = InStr(curpos, SplitMeString, delim)
  88.     Loop
  89.     loadMeArray(arrpos) = Mid$(SplitMeString, curpos)
  90.     ReDim _Preserve loadMeArray(LBound(loadMeArray) To arrpos) As String 'get the ubound correct
  91.  
  92. Sub cAppend (arr() As connectType, cWrd$, w$)
  93.     ReDim _Preserve arr(LBound(arr) To UBound(arr) + 1) As connectType
  94.     arr(UBound(arr)).connect = cWrd$
  95.     arr(UBound(arr)).word = w$
  96.  
  97. Function oneChange% (last$, test$)
  98.     For i = 1 To Len(last$)
  99.         If Mid$(last$, i, 1) <> Mid$(test$, i, 1) Then strike = strike + 1
  100.     Next
  101.     If strike = 1 Then oneChange% = -1
  102.  
  103.  
  104.  

Same unixdict.txt for words attached and screen shot of output.
 


All original in Basic!
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 05, 2021, 11:40:48 am
There is an interesting structure here, like directories it's all down hill from one word to another for shortest path but! that can be reversed. I should try this tracking the whole path in the connect string of the ConnectType.
Title: Re: Word ladder - Rosetta Code
Post by: david_uwi on September 07, 2021, 01:48:19 pm
Interesting challenge. I haven't quite worked out a strategy yet, but I was tending towards a string to log the movement of the letters - as you seem to be suggesting. I notice you use quite a small dictionary which still contains a number of dubious words aaas, aaa, aarhus - just a few at the beginning. Are you just being lucky or do you filter out these wack words.
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 07, 2021, 02:00:40 pm
Hi @david_uwi

Yeah that dictionary is standard given for all Rosetta Code word challenges. The more words the better, goof ball or not, when trying to go from one word to another one letter change at a time. I do filter out digits and other words that don't have standard 26 English letters of alphabet. BTW I learned from Wordiff Challenge that the dictionary does not have "has"!? There are more common ones missing.
Title: Re: Word ladder - Rosetta Code
Post by: SMcNeill on September 07, 2021, 02:15:08 pm
Noticed it also doesn’t show multiple shortest paths.

For example, boy to man:

boy - bay - ban - man
boy - bay - may - man
boy - moy - may - man
boy - bon - ban - man
boy - bon - mon - man

Each of those are valid 4 word paths, and there’s probably more.  Those are just the ones I could come up with quickly off the top of my head.  ;D
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 07, 2021, 03:27:13 pm
Noticed it also doesn’t show multiple shortest paths.

For example, boy to man:

boy - bay - ban - man
boy - bay - may - man
boy - moy - may - man
boy - bon - ban - man
boy - bon - mon - man

Each of those are valid 4 word paths, and there’s probably more.  Those are just the ones I could come up with quickly off the top of my head.  ;D

Some of the PL's at RC were showing multiple paths of equal length but I say if equal in length then go alphabetic to settle differences, there can be only one shortest path ;-))
(I say that because that was the way they were coming up.)
Title: Re: Word ladder - Rosetta Code
Post by: johnno56 on September 07, 2021, 06:10:37 pm
I checked out 'Rosetta Code', as per the above link, and noticed the absence of any version of Basic... This may be a discussion for another time, but I am eager to know, just how was the 'Word Ladder' converted to Basic? Someone must have a knowledge of any of those languages AND an understanding of QB64... Hmm... Did I just answer my own question? Never mind. At least someone knows how... lol
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 07, 2021, 11:06:46 pm
Quote
This may be a discussion for another time, but I am eager to know, just how was the 'Word Ladder' converted to Basic?

Hi @johnno56
Word Ladder wasn't converted, as I said "All original Basic!" Many of those languages I dont have a clue!
I do like to peek at FreeBASIC or BBC maybe or some other Basics even Python after I try my ideas out.


I have worked out an alternate version v2 that doesn't need to backtrack at the end to find the whole path. It tracks the path along with the connect (the last word in path before w2$), so when it finds the target word it's done you just pull the path from the last item loaded into TheList(). Too bad it runs 3 mins longer than the original version! I guess maintaining the path for every word in the list was very costly in processing time.

Here is what not to do to try to beat the first version in time:
Code: QB64: [Select]
  1. _Title "Word ladder v2 - Rosetta Code" 'b+ start 2021-09-03 ref: http://rosettacode.org/wiki/Word_ladder
  2. ' v2 2021-09-07 try building the whole path back to start word in the connect part of Connect Type
  3. ' so far it does the short ones ok but hangs on longer ones (fixed)
  4. ' adding path to connectType to avoid having to isolate last words in path
  5. ' OK it works now for timed test to see if it is better than 1 version, hell no!
  6.  
  7. Type connectType
  8.     path As String
  9.     connect As String
  10.     word As String
  11.  
  12. Dim Shared wordList$(2 To 7)
  13. start! = Timer(.001)
  14. LoadWords 'build the strings for each word length the split them for that length
  15. Print ladder$("boy", "man") '     quick
  16. Print ladder$("girl", "lady") '   this takes awhile
  17. Print ladder$("john", "jane") '   quick enough
  18. Print ladder$("alien", "drool") ' cool but takes a long long time!
  19. Print ladder$("child", "adult") ' and this takes awhile
  20. Print ladder$("play", "ball") '   goes quick
  21. Print ladder$("fun", "job") '     ditto
  22. Print Timer(.001) - start!
  23.  
  24. Sub LoadWords
  25.     Open "unixdict.txt" For Input As #1
  26.     While EOF(1) = 0
  27.         Input #1, wd$
  28.         If Len(wd$) > 1 And Len(wd$) < 8 Then
  29.             ok = -1
  30.             For m = 1 To Len(wd$)
  31.                 If Asc(wd$, m) < 97 Or Asc(wd$, m) > 122 Then ok = 0: Exit For
  32.             Next
  33.             If ok Then
  34.                 If wordList$(Len(wd$)) = "" Then wordList$(Len(wd$)) = wd$ Else wordList$(Len(wd$)) = wordList$(Len(wd$)) + " " + wd$
  35.             End If
  36.         End If
  37.     Wend
  38.     Close #1
  39.  
  40. Function ladder$ (w1$, w2$)
  41.     If Len(w1$) <> Len(w2$) Then ladder$ = "": Exit Function
  42.     ReDim TheList(1 To 1) As connectType, listPlace
  43.     ReDim wl$(1 To 1)
  44.     Split wordList$(Len(w1$)), " ", wl$()
  45.     PathedConnect$ = ">>" + w1$ ' double >> signals root
  46.     Connect$ = w1$
  47.     newConnect:
  48.     'progress
  49.     'Print "Connect word is "; connect$; UBound(wl$); listPlace;
  50.     For i = 1 To UBound(wl$)
  51.         If oneChange%(Connect$, wl$(i)) Then
  52.             If TheList(1).connect = "" Then
  53.                 TheList(1).path = PathedConnect$
  54.                 TheList(1).connect = Connect$
  55.                 TheList(1).word = wl$(i)
  56.             Else ' add to list only if word isn't a connect
  57.                 found = 0
  58.                 For j = 1 To UBound(theList) ' see if word is already on our list
  59.                     If wl$(i) = TheList(j).connect Then found = -1: Exit For
  60.                 Next
  61.                 If found = 0 Then ' not in List so add it to list
  62.                     cAppend TheList(), PathedConnect$, Connect$, wl$(i)
  63.                 End If
  64.             End If
  65.             If wl$(i) = w2$ Then done = -1: Exit For
  66.         End If
  67.     Next
  68.     If done = 0 Then
  69.         listPlace = listPlace + 1
  70.         If listPlace > UBound(TheList) Then
  71.             ladder$ = "Could NOT connect " + w1$ + " to " + w2$
  72.         Else
  73.             PathedConnect$ = TheList(listPlace).path + ">" + TheList(listPlace).word
  74.             Connect$ = TheList(listPlace).word
  75.             GoTo newConnect
  76.         End If
  77.     Else
  78.         'the very last item added to list had 2nd word connected to it, the .path has the first path (shortest) that got to it.
  79.         ladder$ = "Could connect " + w1$ + " to " + w2$ + Chr$(10) + TheList(UBound(thelist)).path + ">" + w2$
  80.     End If
  81.  
  82. Sub Split (SplitMeString As String, delim As String, loadMeArray() As String)
  83.     Dim curpos As Long, arrpos As Long, LD As Long, dpos As Long 'fix use the Lbound the array already has
  84.     curpos = 1: arrpos = LBound(loadMeArray): LD = Len(delim)
  85.     dpos = InStr(curpos, SplitMeString, delim)
  86.     Do Until dpos = 0
  87.         loadMeArray(arrpos) = Mid$(SplitMeString, curpos, dpos - curpos)
  88.         arrpos = arrpos + 1
  89.         If arrpos > UBound(loadMeArray) Then ReDim _Preserve loadMeArray(LBound(loadMeArray) To UBound(loadMeArray) + 1000) As String
  90.         curpos = dpos + LD
  91.         dpos = InStr(curpos, SplitMeString, delim)
  92.     Loop
  93.     loadMeArray(arrpos) = Mid$(SplitMeString, curpos)
  94.     ReDim _Preserve loadMeArray(LBound(loadMeArray) To arrpos) As String 'get the ubound correct
  95.  
  96. Sub cAppend (arr() As connectType, path$, cWrd$, w$)
  97.     ReDim _Preserve arr(LBound(arr) To UBound(arr) + 1) As connectType
  98.     arr(UBound(arr)).path = path$
  99.     arr(UBound(arr)).connect = cWrd$
  100.     arr(UBound(arr)).word = w$
  101.  
  102. Function oneChange% (last$, test$)
  103.     For i = 1 To Len(last$)
  104.         If Mid$(last$, i, 1) <> Mid$(test$, i, 1) Then strike = strike + 1
  105.     Next
  106.     If strike = 1 Then oneChange% = -1
  107.  
  108. 'Function LastRightOf$ (source$, of$)   'abandoned to adding a path to ConnectType
  109. '    For i = Len(source$) To 1 Step -1
  110. '        If Mid$(source$, i, 1) = of$ Then LastRightOf$ = Mid$(source$, i + 1): Exit Function
  111. '    Next
  112. 'End Function
  113.  
  114.  
Title: Re: Word ladder - Rosetta Code
Post by: johnno56 on September 08, 2021, 06:06:49 am
I remember doing these in puzzle magazines. First word and Last word are shown but you could only make 3 changes by changing only one letter each turn. But the new word had to be a 'real' word. So much fun.

Ran the above... Could not connect child to adult and could not connect fun to job.
Ran for 496.0862...   Is that good? Do I get a prize? lol

Just had a weird thought... don't even think about it... The program uses a dictionary of 25k+ words.
Correct me if I'm wrong... The program looks like it is comparing words of equal length? Would it not make the search quicker if the dictionary was split up into files of equal word lengths? eg: if the first word was five characters long then only open the 5 character word file. Just a thought.

I now have my coffee and all the crazy ideas are abating....
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 08, 2021, 07:47:30 am
Hi @johnno56

With first version my system ran code 403 and 416 secs, v2 ran 579 and 541 secs about 3 minutes difference.

You are not supposed to find a connect from child to adult but are supposed to connect fun to job and that goes fairly quick too.

Quote
Correct me if I'm wrong... The program looks like it is comparing words of equal length? Would it not make the search quicker if the dictionary was split up into files of equal word lengths? eg: if the first word was five characters long then only open the 5 character word file. Just a thought.

I did use that idea when loading the file, I loaded words of same length into very long strings. Then when Ladder sub gets 2 words to connect it checks their length, makes sure they are same and then splits the long string of words of that length into an array for connect words.

Just ran v2 again fun does connect to job ">>fun>bun>bon,bob,job total time 569 secs on my system.

What is bon? I can hear you asking.
According to Oxford Languages = a Japanese Buddhist festival held annually in August to honor the dead.

Dang just missed it.
Title: Re: Word ladder - Rosetta Code
Post by: SMcNeill on September 08, 2021, 09:01:26 am
bon is also a type of bean, grass, and the name of a hindu based religion.

It’s also French for good, if my memory’s correct.  “Bon appetite.”
Title: Re: Word ladder - Rosetta Code
Post by: david_uwi on September 08, 2021, 02:02:33 pm
Well I've got something to work - it was tricky.
The number of words increases dramatically on each letter substitution - I'm sure that there is a lot of redundancy there.
Anyway fun --> job took 1.6 seconds. It found fun-bun-bon-bob-job and fun-bun-bub-bob-job and fun-fin-fib-fob-job (which I like the best).
I have two questions
How long did yours take from job to fun and how big was the word list on each step. For mine it was
13,117,1222,11092 (just to check I'm moving on the right path).
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 08, 2021, 03:23:25 pm
OK I am running v3 a revision of the original, now has timed each ladder call and also shows the ubound of The List array used to store all the word connections.

While we wait... oh dang, had I put sleep at end then wouldn't have scrolled, do over... dang didn't help:
Quote
How long did yours take from job to fun and how big was the word list on each step. For mine it was
13,117,1222,11092 (just to check I'm moving on the right path).

@david_uwi
11092 seems high, I am running through what I have in TheList so I don't add a duplicate connect, only add unique connects to avoid duplicate efforts. 

OK the results are in for:
Code: QB64: [Select]
  1. _Title "Word ladder v3 - Rosetta Code" 'b+ start 2021-09-03 ref: http://rosettacode.org/wiki/Word_ladder
  2. ' 2021-09-08  v3 is just v1 (original) plus times and TheList uBound added to the report
  3.  
  4. Type connectType
  5.     connect As String
  6.     word As String
  7.  
  8. Dim Shared wordList$(2 To 7)
  9. start! = Timer(1)
  10. LoadWords 'build the strings for each word length the split them for that length
  11. Print ladder$("boy", "man") '     quick
  12. Print ladder$("girl", "lady") '   this takes awhile
  13. Print ladder$("john", "jane") '   quick enough
  14. Print ladder$("alien", "drool") ' cool but takes a long long time!
  15. Print ladder$("child", "adult") ' and this takes awhile
  16. Print ladder$("play", "ball") '   goes quick
  17. Print ladder$("fun", "job") '     ditto
  18. Print Timer(.001) - start!
  19.  
  20. Sub LoadWords
  21.     Open "unixdict.txt" For Input As #1
  22.     While EOF(1) = 0
  23.         Input #1, wd$
  24.         If Len(wd$) > 1 And Len(wd$) < 8 Then
  25.             ok = -1
  26.             For m = 1 To Len(wd$)
  27.                 If Asc(wd$, m) < 97 Or Asc(wd$, m) > 122 Then ok = 0: Exit For
  28.             Next
  29.             If ok Then
  30.                 If wordList$(Len(wd$)) = "" Then wordList$(Len(wd$)) = wd$ Else wordList$(Len(wd$)) = wordList$(Len(wd$)) + " " + wd$
  31.             End If
  32.         End If
  33.     Wend
  34.     Close #1
  35.  
  36. Function ladder$ (w1$, w2$)
  37.     If Len(w1$) <> Len(w2$) Then ladder$ = "": Exit Function
  38.     ReDim TheList(1 To 1) As connectType, listPlace
  39.     ReDim wl$(1 To 1)
  40.  
  41.     start! = Timer(.001)
  42.     Split wordList$(Len(w1$)), " ", wl$()
  43.     connect$ = w1$
  44.  
  45.     newConnect:
  46.     'progress
  47.     'Print "Connect word is "; connect$; UBound(wl$); listPlace;
  48.     For i = 1 To UBound(wl$)
  49.         If oneChange%(connect$, wl$(i)) Then
  50.             If TheList(1).connect = "" Then
  51.                 TheList(1).connect = connect$
  52.                 TheList(1).word = wl$(i)
  53.             Else ' add to list only if word isn't a connect
  54.                 found = 0
  55.                 For j = 1 To UBound(theList)
  56.                     If wl$(i) = TheList(j).connect Then found = -1: Exit For
  57.                 Next
  58.                 If found = 0 Then
  59.                     cAppend TheList(), connect$, wl$(i)
  60.                 End If
  61.             End If
  62.             If wl$(i) = w2$ Then done = -1: Exit For
  63.         End If
  64.     Next
  65.     If done = 0 Then
  66.         listPlace = listPlace + 1
  67.         If listPlace > UBound(TheList) Then
  68.             ladder$ = "Could NOT connect " + w1$ + " to " + w2$
  69.         Else
  70.             connect$ = TheList(listPlace).word
  71.             GoTo newConnect
  72.         End If
  73.     Else
  74.         'should be able to backtrack our path?
  75.         ladder$ = "Could connect " + w1$ + " to " + w2$
  76.         target$ = w2$: trail$ = w2$
  77.         again:
  78.         For i = 1 To UBound(theList)
  79.             If TheList(i).word = target$ Then target$ = TheList(i).connect: trail$ = target$ + " > " + trail$: GoTo again
  80.         Next
  81.         ladder$ = ladder$ + Chr$(10) + trail$
  82.     End If
  83.     ladder$ = ladder$ + Chr$(10) + Str$(Timer(.001) - start!) + " secs, TheList() has" + Str$(UBound(theList)) + " items."
  84.  
  85. Sub Split (SplitMeString As String, delim As String, loadMeArray() As String)
  86.     Dim curpos As Long, arrpos As Long, LD As Long, dpos As Long 'fix use the Lbound the array already has
  87.     curpos = 1: arrpos = LBound(loadMeArray): LD = Len(delim)
  88.     dpos = InStr(curpos, SplitMeString, delim)
  89.     Do Until dpos = 0
  90.         loadMeArray(arrpos) = Mid$(SplitMeString, curpos, dpos - curpos)
  91.         arrpos = arrpos + 1
  92.         If arrpos > UBound(loadMeArray) Then ReDim _Preserve loadMeArray(LBound(loadMeArray) To UBound(loadMeArray) + 1000) As String
  93.         curpos = dpos + LD
  94.         dpos = InStr(curpos, SplitMeString, delim)
  95.     Loop
  96.     loadMeArray(arrpos) = Mid$(SplitMeString, curpos)
  97.     ReDim _Preserve loadMeArray(LBound(loadMeArray) To arrpos) As String 'get the ubound correct
  98.  
  99. Sub cAppend (arr() As connectType, cWrd$, w$)
  100.     ReDim _Preserve arr(LBound(arr) To UBound(arr) + 1) As connectType
  101.     arr(UBound(arr)).connect = cWrd$
  102.     arr(UBound(arr)).word = w$
  103.  
  104. Function oneChange% (last$, test$)
  105.     For i = 1 To Len(last$)
  106.         If Mid$(last$, i, 1) <> Mid$(test$, i, 1) Then strike = strike + 1
  107.     Next
  108.     If strike = 1 Then oneChange% = -1
  109.  

The times for each ladder start and end inside the Ladder sub, the over all time for the set of ladder calls PLUS the time to load the words from file is listed at the very end:
 
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 08, 2021, 03:36:31 pm
You know checking for redundancies could be time consuming, if I just keep adding to TheList then v2 where I preserve the path may save time after all! Let's see...
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 08, 2021, 04:11:43 pm
No not going to work:
girl to lady took 45 secs with 25,369 items v3

v4 is v2 without redundancy checks now takes 601.85 secs with 3,251,469 items.
Remember processing paths took 3 mins longer when I did remove redundancies.

I am letting alien to drool run but it is going to take hours and that is if items does not exceed the limit of Longs.
Title: Re: Word ladder - Rosetta Code
Post by: Jaze on September 08, 2021, 04:59:48 pm
Where can I find the "unixdict.txt" file?
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 08, 2021, 05:03:04 pm
It is attached to the first post in this thread.
Title: Re: Word ladder - Rosetta Code
Post by: Jaze on September 08, 2021, 07:50:23 pm
I skipped by it twice. Finally found it
Title: Re: Word ladder - Rosetta Code
Post by: david_uwi on September 09, 2021, 04:32:28 am
I've removed the duplicates in each list. I have a feeling that I could be accidentally filtering out some genuine ones - I need to check this!
anyway job-->fun 0.33 sec (found 8 solutions - seems to have missed fun, bun,bub,bob, job)
girl-->lady 4.9 sec and the word list goes up as follows 2,18,71,278,756,1394,1716 and comes up with the same sequence as you got. So I'm getting there!
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 09, 2021, 11:45:37 am
@david_uwi

girl > lady in 4.9 is looking really good, roughly .1 * my time @46.5 secs.
Could you get from alien > drool?

I've exhausted variations on code from first thread, I am going to try a different approach.
Title: Re: Word ladder - Rosetta Code
Post by: david_uwi on September 09, 2021, 02:32:20 pm
Yes I got alien --> drool in 49 sec. I'm not sure I've done anything clever, maybe I just hit on a good approach.

At the moment I am trying to work out how to prove that child-->adult is not possible.
I was thinking that the chain of words, when it gets long enough, must start to repeat and I've attempted to write a routine that will look for that. Problem is that I'm up to chains 100 words long and there still seems to be 1000 word chains without repeats.
Maybe I've programmed it wrong!
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 09, 2021, 08:11:32 pm
Yes I got alien --> drool in 49 sec. I'm not sure I've done anything clever, maybe I just hit on a good approach.

At the moment I am trying to work out how to prove that child-->adult is not possible.
I was thinking that the chain of words, when it gets long enough, must start to repeat and I've attempted to write a routine that will look for that. Problem is that I'm up to chains 100 words long and there still seems to be 1000 word chains without repeats.
Maybe I've programmed it wrong!

alien to drool in 49 secs is great! You've certainly programmed something right!

My code is done eg for child to adult when it runs out of connections in my TheList array which is not so different from a stack except I work it off from the front end instead of the back. TheList() array only grows but TheList position index only goes up in looking for connections.
Title: Re: Word ladder - Rosetta Code
Post by: david_uwi on September 10, 2021, 03:00:10 am
The solution just suddenly came to me last evening (while taking a beer!).

Once a word has been used it can be eliminated from all future consideration.
With that insight alien-->drool takes 6 seconds and no path child-->adult is also found in 6 seconds.

Here's the code (it's a bit messy and I've only bothered with the 5 letter words).

Code: QB64: [Select]
  1. OPEN "c:\cw1\unixdict.txt" FOR INPUT AS #1
  2. 'OPEN "c:\cw1\english3.txt" FOR INPUT AS #1 'bigger dictionary
  3. DIM w(10000) AS STRING * 5 'make sure we have enough storage!!
  4. DIM q4(10000, 100) AS STRING * 5
  5. DIM k1(100)
  6. DIM z4(10000, 100) AS STRING
  7. tt = TIMER 'include time taken to load to RAM
  8.  
  9. q1$ = "alien": q2$ = "drool"
  10. 'q1$ = "child": q2$ = "adult"
  11.  
  12.     INPUT #1, a$
  13.     IF LEN(a$) = 5 THEN
  14.         k = k + 1
  15.         w(k) = a$
  16.         IF a$ = q1$ THEN w(k) = "*****"
  17.     END IF
  18. 'tt = TIMER
  19. jk = 1
  20. k1(jk) = 1
  21. q4(1, 1) = q1$
  22.     FOR i = 1 TO k
  23.         cnt = 0
  24.         FOR kk = 1 TO k1(jk)
  25.             cnt = 0
  26.             FOR j = 1 TO 5
  27.                 IF MID$(w(i), j, 1) = MID$(q4(kk, jk), j, 1) THEN cnt = cnt + 1 ELSE zz = j
  28.             NEXT j
  29.             IF cnt = 4 THEN
  30.                 k1(jk + 1) = k1(jk + 1) + 1
  31.                 q4(k1(jk + 1), jk + 1) = w(i)
  32.                 z4(k1(jk + 1), jk + 1) = z4(kk, jk) + MID$(w(i), zz, 1) + CHR$(zz + 48) + " "
  33.                 w(i) = "*****"
  34.             END IF
  35.        20 NEXT kk
  36.     NEXT i
  37.     kflag = 0
  38.     FOR i = 1 TO k1(jk + 1)
  39.         IF q4(i, jk + 1) = q2$ THEN kflag = 99: final$ = z4(i, jk + 1)
  40.     NEXT i
  41.     PRINT
  42.     PRINT jk; k1(jk + 1)
  43.     IF k1(jk + 1) = 0 THEN kflag = 99
  44.     jk = jk + 1
  45.     IF kflag = 99 THEN EXIT DO
  46. IF k1(jk) = 0 THEN PRINT: PRINT "No path found!"
  47. IF k1(jk) > 0 THEN
  48.     xlen = LEN(final$)
  49.     PRINT: PRINT q1$; " ";
  50.     FOR i = 1 TO xlen STEP 3
  51.         c1$ = MID$(final$, i, 1)
  52.         c2$ = MID$(final$, i + 1, 1)
  53.         MID$(q1$, VAL(c2$), 1) = c1$
  54.         PRINT q1$; " ";
  55.     NEXT i
  56. PRINT: PRINT "time taken = "; TIMER - tt; " seconds"
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 10, 2021, 11:04:54 am
@david_uwi Really nice time:
 


Why is the _Title I gave it not showing???
Code: QB64: [Select]
  1. _Title "Word ladder - RC v david_uwi"
  2. ' 2021-09-10 ref https://www.qb64.org/forum/index.php?topic=4157.msg135285#msg135285
  3. Open "unixdict.txt" For Input As #1 ' bplus mod path
  4. 'OPEN "c:\cw1\english3.txt" FOR INPUT AS #1 'bigger dictionary
  5. Dim w(10000) As String * 5 'make sure we have enough storage!!
  6. Dim q4(10000, 100) As String * 5
  7. Dim k1(100)
  8. Dim z4(10000, 100) As String
  9. tt = Timer 'include time taken to load to RAM
  10.  
  11. q1$ = "alien": q2$ = "drool" '  6.70.. secs on bplus system
  12. 'q1$ = "child": q2$ = "adult" ' 6.89.. secs on bplus system
  13.  
  14.     Input #1, a$
  15.     If Len(a$) = 5 Then
  16.         k = k + 1
  17.         w(k) = a$
  18.         If a$ = q1$ Then w(k) = "*****"
  19.     End If
  20. 'tt = TIMER
  21. jk = 1
  22. k1(jk) = 1
  23. q4(1, 1) = q1$
  24.     For i = 1 To k
  25.         cnt = 0
  26.         For kk = 1 To k1(jk)
  27.             cnt = 0
  28.             For j = 1 To 5
  29.                 If Mid$(w(i), j, 1) = Mid$(q4(kk, jk), j, 1) Then cnt = cnt + 1 Else zz = j
  30.             Next j
  31.             If cnt = 4 Then
  32.                 k1(jk + 1) = k1(jk + 1) + 1
  33.                 q4(k1(jk + 1), jk + 1) = w(i)
  34.                 z4(k1(jk + 1), jk + 1) = z4(kk, jk) + Mid$(w(i), zz, 1) + Chr$(zz + 48) + " "
  35.                 w(i) = "*****"
  36.             End If
  37.        20 Next kk
  38.     Next i
  39.     kflag = 0
  40.     For i = 1 To k1(jk + 1)
  41.         If q4(i, jk + 1) = q2$ Then kflag = 99: final$ = z4(i, jk + 1)
  42.     Next i
  43.     Print
  44.     Print jk; k1(jk + 1)
  45.     If k1(jk + 1) = 0 Then kflag = 99
  46.     jk = jk + 1
  47.     If kflag = 99 Then Exit Do
  48. If k1(jk) = 0 Then Print: Print "No path found!"
  49. If k1(jk) > 0 Then
  50.     xlen = Len(final$)
  51.     Print: Print q1$; " ";
  52.     For i = 1 To xlen Step 3
  53.         c1$ = Mid$(final$, i, 1)
  54.         c2$ = Mid$(final$, i + 1, 1)
  55.         Mid$(q1$, Val(c2$), 1) = c1$
  56.         Print q1$; " ";
  57.     Next i
  58. Print: Print "time taken = "; Timer - tt; " seconds"
  59.  
  60.  
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 10, 2021, 11:26:02 am
Weird! Is anyone getting a title for above code?

I was wondering if Windows changed it's rules but _Title is still working in my other Word ladder codes.
Title: Re: Word ladder - Rosetta Code
Post by: FellippeHeitor on September 10, 2021, 11:32:43 am
Setting _TITLE may fail if the command is run before the window has time to be created. As per the wiki, add this to the beginning of your program:

Code: QB64: [Select]
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 10, 2021, 11:44:39 am
Thanks @FellippeHeitor  so another race condition with screen load like moving it to _Middle.
Title: Re: Word ladder - Rosetta Code
Post by: david_uwi on September 10, 2021, 11:52:06 am
Should you want to do shorter words here is a bodge.
I've also shaved about a second off the time and as a bit of variety I am searching from Z to A.
I notice that on the "Rosetta Code page" there are no execution times given.
As always it is about the algorithm being efficient and nothing to do with the programming language (despite what the C++ bores would like you to believe).

Code: QB64: [Select]
  1. OPEN "c:\cw1\unixdict.txt" FOR INPUT AS #1
  2. 'OPEN "c:\cw1\english3.txt" FOR INPUT AS #1 'bigger dictionary
  3. DIM w(10000) AS STRING * 5 'make sure we have enough storage!!
  4. DIM q4(10000, 100) AS STRING * 5
  5. DIM k1(100)
  6. DIM z4(10000, 100) AS STRING
  7. tt = TIMER 'include time taken to load to RAM
  8.  
  9. q1$ = "alien": q2$ = "drool"
  10. 'q1$ = "child": q2$ = "adult"
  11. 'q1$ = "girl": q2$ = "lady"
  12. 'q1$ = "john": q2$ = "jane"
  13. 'q1$ = "play": q2$ = "ball"
  14. n = LEN(q1$)
  15. IF n < 5 THEN q1$ = q1$ + SPACE$(5 - n): q2$ = q2$ + SPACE$(5 - n)
  16.     INPUT #1, a$
  17.     IF LEN(a$) = n THEN
  18.         k = k + 1
  19.         w(k) = a$
  20.         IF a$ = q1$ THEN w(k) = "*****"
  21.     END IF
  22. 'tt = TIMER
  23. jk = 1
  24. k1(jk) = 1
  25. q4(1, 1) = q1$
  26.     FOR i = k TO 1 STEP -1
  27.         IF w(i) = "*****" THEN 500
  28.         cnt = 0
  29.         FOR kk = 1 TO k1(jk)
  30.             cnt = 0
  31.  
  32.             FOR j = 1 TO n
  33.                 IF MID$(w(i), j, 1) = MID$(q4(kk, jk), j, 1) THEN cnt = cnt + 1 ELSE zz = j
  34.             NEXT j
  35.             IF cnt = n - 1 THEN
  36.                 k1(jk + 1) = k1(jk + 1) + 1
  37.                 q4(k1(jk + 1), jk + 1) = w(i)
  38.                 z4(k1(jk + 1), jk + 1) = z4(kk, jk) + MID$(w(i), zz, 1) + CHR$(zz + 48) + " "
  39.                 w(i) = "*****"
  40.             END IF
  41.        20 NEXT kk
  42.    500 NEXT i
  43.     kflag = 0
  44.     FOR i = 1 TO k1(jk + 1)
  45.         IF q4(i, jk + 1) = q2$ THEN kflag = 99: final$ = z4(i, jk + 1)
  46.     NEXT i
  47.     PRINT
  48.     PRINT jk; k1(jk + 1)
  49.     IF k1(jk + 1) = 0 THEN kflag = 99
  50.     jk = jk + 1
  51.     IF kflag = 99 THEN EXIT DO
  52. IF k1(jk) = 0 THEN PRINT: PRINT "No path found!"
  53. IF k1(jk) > 0 THEN
  54.     xlen = LEN(final$)
  55.     PRINT: PRINT q1$; " ";
  56.     FOR i = 1 TO xlen STEP 3
  57.         c1$ = MID$(final$, i, 1)
  58.         c2$ = MID$(final$, i + 1, 1)
  59.         MID$(q1$, VAL(c2$), 1) = c1$
  60.         PRINT q1$; " ";
  61.     NEXT i
  62. PRINT: PRINT "time taken = "; TIMER - tt; " seconds"
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 10, 2021, 12:41:08 pm
running my tests
Quote
'                                                     2nd times with 20 removed from my line 49 here
q1$ = "alien": q2$ = "drool" ' 5.21... bplus system  5.11..
'q1$ = "child": q2$ = "adult" ' 5.21... bplus system  4.94..
'q1$ = "girl": q2$ = "lady" '   2.47... bplus system  2.58..
'q1$ = "john": q2$ = "jane" '   1.48... bplus system  1.42..
'q1$ = "play": q2$ = "ball" '   1.97... bplus system  2.08..


Wow another second + off the longest, that's a huge percent at 6.9 or so to start.

I am still trying to figure out Iterating digits squared now I have another to study:
*The 20 on line 45 is artifact from some other test code.
*500 NEXT i     _Continue does not work for you also (maybe I screwed up when I tried) or just old habit? Oh I can check it here!
*I see 2 arrays used to store hit info the word of course but also the letter place they differ.
Well that's from first read through... got to go but hope to figure it out this afternoon for big aha!
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 10, 2021, 01:42:19 pm
Update: _Continue does work in this line (instead of 500)
Code: QB64: [Select]
  1. IF w(i) = "*****" THEN 500
  2.  
Title: Re: Word ladder - Rosetta Code
Post by: david_uwi on September 10, 2021, 02:29:23 pm
you can replace
if w(i)="*****" then 500
with
if w(i)<>"*****" then
.
.
end if
and put an "end if" before the 500 label. I seems to make it go faster - who would have thought.

The matrix z4(a,b) is storing all the letter movements. The matrix q4(a,b) is storing all the words that can be formed on each iteration. Maybe they could be combined somehow but it could be a big job. I am having difficulty remembering how it all works as this is a remnant from previous versions which has survived.
If memory storage was still at a premium I would have to work something out, but it isn't.
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 11, 2021, 08:38:06 pm
In studying david_uwi code first thing I notice is that there is no Type and specially no appending to arrays using REDIM _Preserve

so throw out these:
Code: QB64: [Select]
  1. SUB Split (SplitMeString AS STRING, delim AS STRING, loadMeArray() AS STRING)
  2.     DIM curpos AS LONG, arrpos AS LONG, LD AS LONG, dpos AS LONG 'fix use the Lbound the array already has
  3.     curpos = 1: arrpos = LBOUND(loadMeArray): LD = LEN(delim)
  4.     dpos = INSTR(curpos, SplitMeString, delim)
  5.     DO UNTIL dpos = 0
  6.         loadMeArray(arrpos) = MID$(SplitMeString, curpos, dpos - curpos)
  7.         arrpos = arrpos + 1
  8.         IF arrpos > UBOUND(loadMeArray) THEN REDIM _PRESERVE loadMeArray(LBOUND(loadMeArray) TO UBOUND(loadMeArray) + 1000) AS STRING
  9.         curpos = dpos + LD
  10.         dpos = INSTR(curpos, SplitMeString, delim)
  11.     LOOP
  12.     loadMeArray(arrpos) = MID$(SplitMeString, curpos)
  13.     REDIM _PRESERVE loadMeArray(LBOUND(loadMeArray) TO arrpos) AS STRING 'get the ubound correct
  14.  
  15. SUB cAppend (arr() AS connectType, cWrd$, w$)
  16.     REDIM _PRESERVE arr(LBOUND(arr) TO UBOUND(arr) + 1) AS connectType
  17.     arr(UBOUND(arr)).connect = cWrd$
  18.     arr(UBOUND(arr)).word = w$
  19.  

Make simple arrays that are over dim'd and use max indexes to track last item in arrays instead and you get this:
Code: QB64: [Select]
  1. _Title "Word ladder v5 - Rosetta Code" 'b+ start 2021-09-03 ref: http://rosettacode.org/wiki/Word_ladder
  2. ' 2021-09-10  v5 is modified from v3 (original) plus times and TheList uBound added to the report
  3. ' minus connectType will use 2 simple oversized arrays that have their own indexes
  4. ' OK for this version I cut 2.3 mins off v3 version by above changes, working my way towards david_uwi
  5. ' best time.
  6.  
  7. DefLng A-Z
  8. Dim start!
  9. start! = Timer(.001)
  10. Print ladder$("boy", "man") '     quick
  11. Print ladder$("girl", "lady") '   this takes awhile
  12. Print ladder$("john", "jane") '   quick enough
  13. Print ladder$("alien", "drool") ' cool but takes a long long time!
  14. Print ladder$("child", "adult") ' and this takes awhile
  15. Print ladder$("play", "ball") '   goes quick
  16. Print ladder$("fun", "job") '     ditto
  17. Print Timer(.001) - start!
  18.  
  19.  
  20. Function ladder$ (w1$, w2$) ' assume two words are same length
  21.     Dim start!, wl, wd$, maxWI, connect$, i, found, j, done, listplace, target$, trail$, testChange, lastChange
  22.     'If Len(w1$) <> Len(w2$) Then ladder$ = "Error: the 2 words have different letter amounts": Exit Function
  23.     start! = Timer(.001)
  24.     wl = Len(w1$)
  25.     Dim w$(4100) ' over dim so no append or redim preserve, miminize if's
  26.     Open "unixdict.txt" For Input As #1
  27.     While EOF(1) = 0
  28.         Input #1, wd$ ' w is for word
  29.         If Len(wd$) = wl Then maxWI = maxWI + 1: w$(maxWI) = wd$ 'words all same length in strings, save time no seperators
  30.     Wend
  31.     Close #1 ' done with file
  32.     ReDim ListConnects$(1000000), ListWords$(1000000), maxLI
  33.     connect$ = w1$
  34.     newConnect:
  35.     For i = 1 To maxWI
  36.         If oneChange%(connect$, w$(i)) Then
  37.             If maxLI = 0 Then
  38.                 maxLI = 1
  39.                 ListConnects$(1) = connect$
  40.                 ListWords$(1) = w$(i)
  41.             Else ' add to list only if word isn't a connect
  42.                 found = 0
  43.                 For j = 1 To maxLI
  44.                     If w$(i) = ListConnects$(j) Then found = -1: Exit For
  45.                 Next
  46.                 If found = 0 And w$(i) <> connect$ Then
  47.                     maxLI = maxLI + 1
  48.                     ListConnects$(maxLI) = connect$
  49.                     ListWords$(maxLI) = w$(i)
  50.                 End If
  51.             End If
  52.             If w$(i) = w2$ Then done = -1: Exit For
  53.         End If
  54.     Next
  55.     If done = 0 Then
  56.         listplace = listplace + 1
  57.         If listplace > maxLI Then
  58.             ladder$ = "Could NOT connect " + w1$ + " to " + w2$
  59.         Else
  60.             connect$ = ListWords$(listplace)
  61.             GoTo newConnect
  62.         End If
  63.     Else
  64.         'should be able to backtrack our path?
  65.         ladder$ = "Could connect " + w1$ + " to " + w2$
  66.         target$ = w2$: trail$ = w2$
  67.         again:
  68.         For i = 1 To maxLI
  69.             If ListWords$(i) = target$ Then target$ = ListConnects$(i): trail$ = target$ + " > " + trail$: GoTo again
  70.         Next
  71.         ladder$ = ladder$ + Chr$(10) + trail$
  72.     End If
  73.     ladder$ = ladder$ + Chr$(10) + Str$(Timer(.001) - start!) + " secs, TheList() has" + Str$(maxLI) + " items."
  74.  
  75. Function oneChange% (last$, test$)
  76.     Dim i, strike, ll
  77.     ll = Len(last$)
  78.     For i = 1 To ll
  79.         If Mid$(last$, i, 1) <> Mid$(test$, i, 1) Then strike = strike + 1
  80.     Next
  81.     If strike = 1 Then oneChange% = -1

and cut 2.3 mins or so off time!
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 11, 2021, 08:50:05 pm
But david_uwi is tracking the change place when connecting one word to next and somehow reducing the number of new words to continue the path to target word. After much fiddling I track the change position going from connect word to next and am able to reduce the number of new connections to check, not nearly as few as david_uwi but significantly less than I was having to check. Now my time is down to between 90 and 100 secs comparing to my 3rd mod of david_uwi's code to get the 2 output screens about the same for comparing so
my v6 version of Word Ladder:
Code: QB64: [Select]
  1. _Title "Word ladder v6 - Rosetta Code" 'b+ start 2021-09-03 ref: http://rosettacode.org/wiki/Word_ladder
  2. ' 2021-09-10  v5 is modified from v3 (original) plus times and TheList uBound added to the report
  3. ' minus connectType will use 2 simple oversized arrays that have their own indexes
  4. ' OK for this version I cut 2.3 mins off v3 version by above changes, working my way towards david_uwi
  5. ' best time.
  6. ' 2021-09-11 v6 try to use the fact that a change of letter at position x cannot occur between n and n+1 on a path.
  7. ' eg boy > bot > bon will never happen in a shortest path that is 2 changes in a row of the 3rd letter.
  8. ' so here in v6 we will make a third array d() d for delta that tracks the change from connect to word
  9. ' modify oneChange Function to Change and it will return the letter position changed if only one letter was changed.
  10.  
  11. DefLng A-Z
  12. Dim start!
  13. start! = Timer(.001)
  14. ladder "boy", "man" '     quick
  15. ladder "girl", "lady" '   this takes awhile
  16. ladder "john", "jane" '   quick enough
  17. ladder "alien", "drool" ' cool but takes a long long time!
  18. ladder "child", "adult" ' and this takes awhile
  19. ladder "play", "ball" '   goes quick
  20. ladder "fun", "job" '     ditto
  21. Print: Print "Total time:"; Timer(.001) - start!
  22.  
  23. Sub ladder (w1$, w2$) ' assume two words are same length
  24.     Dim start!, wl, wd$, maxWI, connect$, i, found, j, done, listplace, target$, trail$, testChange, lastChange
  25.     'If Len(w1$) <> Len(w2$) Then ladder$ = "Error: the 2 words have different letter amounts": Exit Function
  26.     start! = Timer(.001)
  27.     wl = Len(w1$)
  28.     Dim w$(4100) ' over dim so no append or redim preserve, miminize if's
  29.     Open "unixdict.txt" For Input As #1
  30.     While EOF(1) = 0
  31.         Input #1, wd$ ' w is for word
  32.         If Len(wd$) = wl Then maxWI = maxWI + 1: w$(maxWI) = wd$ 'words all same length in strings, save time no seperators
  33.     Wend
  34.     Close #1 ' done with file
  35.     ReDim ListConnects$(1000000), ListWords$(1000000), ListChanges(1000000), maxLI
  36.     connect$ = w1$
  37.     newConnect:
  38.     For i = 1 To maxWI
  39.         testChange = Change%(connect$, w$(i))
  40.         If testChange Then
  41.             If maxLI = 0 Then
  42.                 maxLI = 1
  43.                 ListConnects$(1) = connect$
  44.                 ListWords$(1) = w$(i)
  45.             Else ' add to list only if word isn't a connect
  46.                 found = 0
  47.                 For j = 1 To maxLI
  48.                     If w$(i) = ListConnects$(j) Then found = -1: Exit For
  49.                 Next
  50.                 If found = 0 And w$(i) <> connect$ Then
  51.                     If testChange <> lastChange Then
  52.                         maxLI = maxLI + 1
  53.                         ListConnects$(maxLI) = connect$
  54.                         ListWords$(maxLI) = w$(i)
  55.                         ListChanges(maxLI) = testChange
  56.                     End If
  57.                 End If
  58.             End If
  59.             If w$(i) = w2$ Then done = -1: Exit For
  60.         End If
  61.     Next
  62.     If done = 0 Then
  63.         listplace = listplace + 1
  64.         If listplace > maxLI Then
  65.             Print "Could NOT connect " + w1$ + " to " + w2$
  66.         Else
  67.             connect$ = ListWords$(listplace)
  68.             lastChange = ListChanges(listplace)
  69.             GoTo newConnect
  70.         End If
  71.     Else
  72.         'should be able to backtrack our path?
  73.         'ladder$ = "Could connect " + w1$ + " to " + w2$
  74.         target$ = w2$: trail$ = w2$
  75.         again:
  76.         For i = 1 To maxLI
  77.             If ListWords$(i) = target$ Then target$ = ListConnects$(i): trail$ = target$ + " > " + trail$: GoTo again
  78.         Next
  79.         Print trail$
  80.     End If
  81.     Print Str$(Timer(.001) - start!) + " secs, Max index:" + Str$(maxLI)
  82.  
  83. Function Change% (last$, test$)
  84.     Dim i, strike, L, saveI
  85.     L = Len(last$)
  86.     For i = 1 To L
  87.         If Mid$(last$, i, 1) <> Mid$(test$, i, 1) Then strike = strike + 1: saveI = i
  88.     Next
  89.     If strike = 1 Then Change% = saveI
  90.  
  91.  

and david_uwi mod 3 by bplus:
Code: QB64: [Select]
  1. _Title "Word ladder v3 b+ mod david_uwi" '2021-09-10 david has already improved his first version!
  2. ' ref:  https://www.qb64.org/forum/index.php?topic=4157.msg135293#msg135293
  3. ' get original version above, I am modifying below to study
  4. ' 2021-09-11 in v3 b+ mod david_uwi I modify to compare whole set to my orignal whole set
  5.  
  6. Dim start!
  7. start! = Timer(.001)
  8. ladder "boy", "man" '     quick
  9. ladder "girl", "lady" '   this takes awhile
  10. ladder "john", "jane" '   quick enough
  11. ladder "alien", "drool" ' cool but takes a long long time!
  12. ladder "child", "adult" ' and this takes awhile
  13. ladder "play", "ball" '   goes quick
  14. ladder "fun", "job" '     ditto
  15. Print: Print "Total time:"; Timer(.001) - start!
  16.  
  17. Sub ladder (q1$, q2$)
  18.     Open "unixdict.txt" For Input As #1
  19.     'OPEN "c:\cw1\english3.txt" FOR INPUT AS #1 'bigger dictionary
  20.     Dim w(10000) As String * 5 'make sure we have enough storage!!
  21.     Dim q4(10000, 100) As String * 5 ' fixed string! storing connect words
  22.     Dim k1(100)
  23.     Dim z4(10000, 100) As String
  24.     tt = Timer(.001) 'include time taken to load to RAM bplus mod to accuracy (.001)
  25.  
  26.     n = Len(q1$)
  27.     If n < 5 Then q1$ = q1$ + Space$(5 - n): q2$ = q2$ + Space$(5 - n)
  28.     Do Until EOF(1)
  29.         Input #1, a$
  30.         If Len(a$) = n Then
  31.             k = k + 1
  32.             w(k) = a$
  33.             If a$ = q1$ Then w(k) = "*****"
  34.         End If
  35.     Loop
  36.     Close #1
  37.     'tt = TIMER
  38.     jk = 1
  39.     k1(jk) = 1
  40.     q4(1, 1) = q1$
  41.     Do
  42.         For i = k To 1 Step -1
  43.             If w(i) = "*****" Then _Continue '  500
  44.             cnt = 0
  45.             For kk = 1 To k1(jk)
  46.                 cnt = 0
  47.  
  48.                 For j = 1 To n
  49.                     If Mid$(w(i), j, 1) = Mid$(q4(kk, jk), j, 1) Then cnt = cnt + 1 Else zz = j
  50.                 Next j
  51.                 If cnt = n - 1 Then
  52.                     k1(jk + 1) = k1(jk + 1) + 1
  53.                     q4(k1(jk + 1), jk + 1) = w(i)
  54.                     z4(k1(jk + 1), jk + 1) = z4(kk, jk) + Mid$(w(i), zz, 1) + Chr$(zz + 48) + " "
  55.                     w(i) = "*****"
  56.                 End If
  57.             Next kk
  58.         Next i
  59.         kflag = 0
  60.         For i = 1 To k1(jk + 1)
  61.             If q4(i, jk + 1) = q2$ Then kflag = 99: final$ = z4(i, jk + 1)
  62.         Next i
  63.         'Print
  64.         'Print jk; k1(jk + 1)
  65.         If k1(jk + 1) = 0 Then kflag = 99
  66.         jk = jk + 1
  67.         If kflag = 99 Then Exit Do
  68.     Loop
  69.     If k1(jk) = 0 Then Print "No path found! from "; q1$; " to "; q2$; ' b+ removed a print blank line
  70.     If k1(jk) > 0 Then
  71.         xlen = Len(final$)
  72.         'Print:
  73.         Print q1$; " ";
  74.         For i = 1 To xlen Step 3
  75.             c1$ = Mid$(final$, i, 1)
  76.             c2$ = Mid$(final$, i + 1, 1)
  77.             Mid$(q1$, Val(c2$), 1) = c1$
  78.             Print q1$; " ";
  79.         Next i
  80.     End If
  81.     Print: Print "time taken = "; Timer(.001) - tt; " seconds"
  82.  

now we have 2 screens to compare: see attached

So I am closing in :)

Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 11, 2021, 08:56:42 pm
But ho!

I see a way to cut david_uwi's time very significantly by gulping in the file, splitting it and then processing it:
Code: QB64: [Select]
  1. _Title "Word ladder v4 b+ mod david_uwi" '2021-09-10 david has already improved his first version!
  2. ' ref:  https://www.qb64.org/forum/index.php?topic=4157.msg135293#msg135293
  3. ' get original version above, I am modifying below to study
  4. ' 2021-09-11 in v3 b+ mod david_uwi I modify to compare whole set to my orignal whole set
  5. ' 2021-09-11 I think I can load the words faster
  6.  
  7. Dim start!
  8. start! = Timer(.001)
  9. ladder "boy", "man" '     quick
  10. ladder "girl", "lady" '   this takes awhile
  11. ladder "john", "jane" '   quick enough
  12. ladder "alien", "drool" ' cool but takes a long long time!
  13. ladder "child", "adult" ' and this takes awhile
  14. ladder "play", "ball" '   goes quick
  15. ladder "fun", "job" '     ditto
  16. Print: Print "Total time:"; Timer(.001) - start!
  17.  
  18. Sub ladder (q1$, q2$)
  19.  
  20.     'Open "unixdict.txt" For Input As #1
  21.     'OPEN "c:\cw1\english3.txt" FOR INPUT AS #1 'bigger dictionary
  22.     Dim w(10000) As String * 5 'make sure we have enough storage!!
  23.     Dim q4(10000, 100) As String * 5 ' fixed string! storing connect words
  24.     Dim k1(100)
  25.     Dim z4(10000, 100) As String
  26.     tt = Timer(.001) 'include time taken to load to RAM bplus mod to accuracy (.001)
  27.  
  28.     Open "unixdict.txt" For Binary As #1 ' take the file in a gulp
  29.     buf$ = Space$(LOF(1))
  30.     Get #1, , buf$
  31.     Close #1
  32.     ReDim Fwords$(1 To 1), FI
  33.     Split buf$, Chr$(10), Fwords$()
  34.     FI = 1
  35.     n = Len(q1$)
  36.     If n < 5 Then q1$ = q1$ + Space$(5 - n): q2$ = q2$ + Space$(5 - n)
  37.     While FI <= UBound(fwords$)
  38.         If Len(Fwords$(FI)) = n Then
  39.             k = k + 1
  40.             If Fwords$(FI) = q1$ Then w(k) = "*****" Else w(k) = Fwords$(FI)
  41.         End If
  42.         FI = FI + 1
  43.     Wend
  44.     'tt = TIMER
  45.     jk = 1
  46.     k1(jk) = 1
  47.     q4(1, 1) = q1$
  48.     Do
  49.         For i = k To 1 Step -1
  50.             If w(i) = "*****" Then _Continue '  500
  51.             cnt = 0
  52.             For kk = 1 To k1(jk)
  53.                 cnt = 0
  54.                 For j = 1 To n
  55.                     If Mid$(w(i), j, 1) = Mid$(q4(kk, jk), j, 1) Then cnt = cnt + 1 Else zz = j
  56.                 Next j
  57.                 If cnt = n - 1 Then
  58.                     k1(jk + 1) = k1(jk + 1) + 1
  59.                     q4(k1(jk + 1), jk + 1) = w(i)
  60.                     z4(k1(jk + 1), jk + 1) = z4(kk, jk) + Mid$(w(i), zz, 1) + Chr$(zz + 48) + " "
  61.                     w(i) = "*****"
  62.                 End If
  63.             Next kk
  64.         Next i
  65.         kflag = 0
  66.         For i = 1 To k1(jk + 1)
  67.             If q4(i, jk + 1) = q2$ Then kflag = 99: final$ = z4(i, jk + 1)
  68.         Next i
  69.         'Print
  70.         'Print jk; k1(jk + 1)
  71.         If k1(jk + 1) = 0 Then kflag = 99
  72.         jk = jk + 1
  73.         If kflag = 99 Then Exit Do
  74.     Loop
  75.     If k1(jk) = 0 Then Print "No path found! from "; q1$; " to "; q2$; ' b+ removed a print blank line
  76.     If k1(jk) > 0 Then
  77.         xlen = Len(final$)
  78.         'Print:
  79.         Print q1$; " ";
  80.         For i = 1 To xlen Step 3
  81.             c1$ = Mid$(final$, i, 1)
  82.             c2$ = Mid$(final$, i + 1, 1)
  83.             Mid$(q1$, Val(c2$), 1) = c1$
  84.             Print q1$; " ";
  85.         Next i
  86.     End If
  87.     Print: Print "time taken = "; Timer(.001) - tt; " seconds"
  88.  
  89. Sub Split (SplitMeString As String, delim As String, loadMeArray() As String)
  90.     Dim curpos As Long, arrpos As Long, LD As Long, dpos As Long 'fix use the Lbound the array already has
  91.     curpos = 1: arrpos = LBound(loadMeArray): LD = Len(delim)
  92.     dpos = InStr(curpos, SplitMeString, delim)
  93.     Do Until dpos = 0
  94.         loadMeArray(arrpos) = Mid$(SplitMeString, curpos, dpos - curpos)
  95.         arrpos = arrpos + 1
  96.         If arrpos > UBound(loadMeArray) Then ReDim _Preserve loadMeArray(LBound(loadMeArray) To UBound(loadMeArray) + 1000) As String
  97.         curpos = dpos + LD
  98.         dpos = InStr(curpos, SplitMeString, delim)
  99.     Loop
  100.     loadMeArray(arrpos) = Mid$(SplitMeString, curpos)
  101.     ReDim _Preserve loadMeArray(LBound(loadMeArray) To arrpos) As String 'get the ubound correct
  102.  
  103.  

  [ This attachment cannot be displayed inline in 'Print Page' view ]  

Title: Re: Word ladder - Rosetta Code
Post by: johnno56 on September 11, 2021, 09:12:13 pm
Cool... 9.19  Sooo much faster... Nicely done!
Title: Re: Word ladder - Rosetta Code
Post by: david_uwi on September 12, 2021, 03:31:18 am
Yes it needed tidying up thanks for doing that. I am not familiar with many of the new QB64 commands.
I particularly like the _continue (like I'm using FORTRAN again).
The kflag=99 is also a bit of a mess, but apart from that I think it is a wrap!

Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 12, 2021, 12:27:01 pm
Another 2.5 sec shaved off with just obvious time saving stuff:
- access disk file once for whole set and share the array and it's ubound
- default to Long type instead of Single
- removed _continue, though I'm glad david-uwi became aware of option and it doesn't save time, it just looks cleaner code wise. It was david's idea anyway.

Code: QB64: [Select]
  1. _Title "Word ladder v5 b+ mod david_uwi" '2021-09-10 david has already improved his first version!
  2. ' ref:  https://www.qb64.org/forum/index.php?topic=4157.msg135293#msg135293
  3. ' get original version above, I am modifying below to study
  4. ' 2021-09-11 in v3 b+ mod david_uwi I modify to compare whole set to my orignal whole set
  5. ' 2021-09-11 in v4 I think I can load the words faster
  6. ' 2021-09-11 in v5 lets just call the external file once, use david's idea instead of _continue,
  7. ' I think it looks cleaner without _continue which tool out skipping a For loop by a THEN (GOTO) line #.
  8. ' Ave of 5 runs before this (mod 4) was 11.27.. see if we improve still more, also DefLng A-Z  oh wow.
  9. ' Ave of 5 runs now 8.74 another 2.5 secs shaved off
  10.  
  11. DefLng A-Z ' 2 secs off from old Single default!
  12. ReDim Shared Fwords$(1 To 1), UBF ' ubound of Fwords$
  13. start! = Timer(.001)
  14.  
  15. ' do just once for all ladder calls
  16. Open "unixdict.txt" For Binary As #1 ' take the file in a gulp
  17. buf$ = Space$(LOF(1))
  18. Get #1, , buf$
  19. Split buf$, Chr$(10), Fwords$()
  20. UBF = UBound(fwords$)
  21.  
  22. ' test set of ladder calls
  23. ladder "boy", "man" '     quick
  24. ladder "girl", "lady" '   this takes awhile
  25. ladder "john", "jane" '   quick enough
  26. ladder "alien", "drool" ' cool but takes a long long time!
  27. ladder "child", "adult" ' and this takes awhile
  28. ladder "play", "ball" '   goes quick
  29. ladder "fun", "job" '     ditto
  30. Print: Print "Total time including one disk file access:"; Timer(.001) - start!
  31.  
  32. Sub ladder (q1$, q2$)
  33.     tt! = Timer(.001) 'include time taken to load to RAM bplus mod to accuracy (.001)
  34.     Dim w(10000) As String * 5 'make sure we have enough storage!!
  35.     Dim q4(10000, 100) As String * 5 ' fixed string! storing connect words
  36.     Dim k1(100)
  37.     Dim z4(10000, 100) As String
  38.     FI = 1
  39.     n = Len(q1$)
  40.     If n < 5 Then q1$ = q1$ + Space$(5 - n): q2$ = q2$ + Space$(5 - n)
  41.     While FI <= UBF
  42.         If Len(Fwords$(FI)) = n Then
  43.             k = k + 1
  44.             If Fwords$(FI) = q1$ Then w(k) = "*****" Else w(k) = Fwords$(FI)
  45.         End If
  46.         FI = FI + 1
  47.     Wend
  48.     jk = 1
  49.     k1(jk) = 1
  50.     q4(1, 1) = q1$
  51.     Do
  52.         For i = k To 1 Step -1
  53.             If w(i) <> "*****" Then '_Continue '  500  just check before entering loop
  54.                 cnt = 0
  55.                 For kk = 1 To k1(jk)
  56.                     cnt = 0
  57.                     For j = 1 To n
  58.                         If Mid$(w(i), j, 1) = Mid$(q4(kk, jk), j, 1) Then cnt = cnt + 1 Else zz = j
  59.                     Next j
  60.                     If cnt = n - 1 Then
  61.                         k1(jk + 1) = k1(jk + 1) + 1
  62.                         q4(k1(jk + 1), jk + 1) = w(i)
  63.                         z4(k1(jk + 1), jk + 1) = z4(kk, jk) + Mid$(w(i), zz, 1) + Chr$(zz + 48) + " "
  64.                         w(i) = "*****"
  65.                     End If
  66.                 Next kk
  67.             End If
  68.         Next i
  69.         kflag = 0
  70.         For i = 1 To k1(jk + 1)
  71.             If q4(i, jk + 1) = q2$ Then kflag = 99: final$ = z4(i, jk + 1)
  72.         Next i
  73.         If k1(jk + 1) = 0 Then kflag = 99
  74.         jk = jk + 1
  75.         If kflag = 99 Then Exit Do
  76.     Loop
  77.     If k1(jk) = 0 Then Print "No path found! from "; q1$; " to "; q2$; ' b+ removed a print blank line
  78.     If k1(jk) > 0 Then
  79.         xlen = Len(final$)
  80.         'Print:
  81.         Print q1$; " ";
  82.         For i = 1 To xlen Step 3
  83.             c1$ = Mid$(final$, i, 1)
  84.             c2$ = Mid$(final$, i + 1, 1)
  85.             Mid$(q1$, Val(c2$), 1) = c1$
  86.             Print q1$; " ";
  87.         Next i
  88.     End If
  89.     Print: Print "time taken = "; Timer(.001) - tt!; " seconds"
  90.  
  91. Sub Split (SplitMeString As String, delim As String, loadMeArray() As String)
  92.     Dim curpos As Long, arrpos As Long, LD As Long, dpos As Long 'fix use the Lbound the array already has
  93.     curpos = 1: arrpos = LBound(loadMeArray): LD = Len(delim)
  94.     dpos = InStr(curpos, SplitMeString, delim)
  95.     Do Until dpos = 0
  96.         loadMeArray(arrpos) = Mid$(SplitMeString, curpos, dpos - curpos)
  97.         arrpos = arrpos + 1
  98.         If arrpos > UBound(loadMeArray) Then ReDim _Preserve loadMeArray(LBound(loadMeArray) To UBound(loadMeArray) + 1000) As String
  99.         curpos = dpos + LD
  100.         dpos = InStr(curpos, SplitMeString, delim)
  101.     Loop
  102.     loadMeArray(arrpos) = Mid$(SplitMeString, curpos)
  103.     ReDim _Preserve loadMeArray(LBound(loadMeArray) To arrpos) As String 'get the ubound correct
  104.  
  105.  

I am now averaging 8.74 secs, fluky low 8.08 and highest high 9.1 removed from ave calc, on my aging Windows 10-64 laptop.

Title: Re: Word ladder - Rosetta Code
Post by: SMcNeill on September 12, 2021, 01:05:42 pm
If you’re looking for speed, wouldn’t the quickest way be to built and compare an index and not the actual strings?

For example, I have 10 words: aaa, bbb, ccc, dog, dot, fog, hot, hog, xxx, zzz

I’d build a base index and then a connection index:

1) aaa:
2) bbb:
3) ccc:
4) dog: 5, 6, 8
5) dot: 4, 7
6) fog: 4, 8
7) hot: 5, 8
8) hog: 4, 6, 7

The only words in your list that “dog” can transform into a single letter at a time is word 5, 6, or 8…

If I want to transform word 4 (dog) into word 7 (hot), I’d just run a recursive loop checking only to see if my indexes would ever match.

START: 4
PASS 1, CHECK 1: 5 (no match to 7)
     RECURSIVE PASS 2, CHECK 1 (from 5 to…) 4 (no match to 7)
            RECURSIVE PASS 3, CHECK 1 (from 4 to…) NO CHECK, ALREADY COVERED
     RECURSIVE PASS 2, CHECK 2 (from 5 to…) 7 (match!  abort checking!!)

4 to 5 to 7

OR….

dog to dot to hot

Like this, you’d be building a recursive connection tree using the INTEGER index values, rather than any sort of string comparison.  As for run times, I don’t see why you’d ever have more than a fraction of a second involved in your search routines.

You’re not checking to see if words match via character by character…. You’re just checking to see if one integer value can be chained in such a matter to reach another.

One things for certain: Index linking would definitely remove any differences in search times due to word length.  5 letter words would chain just as quickly via index as 3 letter ones…

Note: Prebuild your initial connection index once and be done with it.  Don’t rebuild it with each and every search run. 
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 12, 2021, 02:17:05 pm
I like integer indexes for words but you can't skip comparing letters between 2 words to see if they are one change different though using asc instead of mid$ might go faster.

Also for shortest path the letter change has to be a different position between level n and level n+1 in path, so you need the 2 words not indexes to see what letter position changes. Level n+ 2 can have the same change position as level n but can't be same word as n.

(So at least store that also when building list of one offs once.)
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 12, 2021, 02:45:06 pm
Quote
though using asc instead of mid$ might go faster.

Oh it does go faster, shaved off another 4.29 secs to 4.45 ave run on my system:
Code: QB64: [Select]
  1. _Title "Word ladder v6 b+ mod david_uwi" '2021-09-10 david has already improved his first version!
  2. ' ref:  https://www.qb64.org/forum/index.php?topic=4157.msg135293#msg135293
  3. ' get original version above, I am modifying below to study
  4. ' 2021-09-11 in v3 b+ mod david_uwi I modify to compare whole set to my orignal whole set
  5. ' 2021-09-11 in v4 I think I can load the words faster
  6. ' 2021-09-12 in v5 lets just call the external file once, use david's idea instead of _continue,
  7. ' I think it looks cleaner without _continue which tool out skipping a For loop by a THEN (GOTO) line #.
  8. ' Ave of 5 runs before this (mod 4) was 11.27.. see if we improve still more, also DefLng A-Z  oh wow.
  9. ' Ave of 5 runs now 8.74 another 2.5 secs shaved off
  10. ' 2021-09-12 in v6 though using asc instead of mid$ might go faster.
  11. ' Ave of 5 runs now is 4.45 secs another 4.29 sec off!
  12.  
  13. DefLng A-Z ' 2 secs off from old Single default!
  14. ReDim Shared Fwords$(1 To 1), UBF ' ubound of Fwords$
  15. start! = Timer(.001)
  16.  
  17. ' do just once for all ladder calls
  18. Open "unixdict.txt" For Binary As #1 ' take the file in a gulp
  19. buf$ = Space$(LOF(1))
  20. Get #1, , buf$
  21. Split buf$, Chr$(10), Fwords$()
  22. UBF = UBound(fwords$)
  23.  
  24. ' test set of ladder calls
  25. ladder "boy", "man" '     quick
  26. ladder "girl", "lady" '   this takes awhile
  27. ladder "john", "jane" '   quick enough
  28. ladder "alien", "drool" ' cool but takes a long long time!
  29. ladder "child", "adult" ' and this takes awhile
  30. ladder "play", "ball" '   goes quick
  31. ladder "fun", "job" '     ditto
  32. Print: Print "Total time including one disk file access:"; Timer(.001) - start!
  33.  
  34. Sub ladder (q1$, q2$)
  35.     tt! = Timer(.001) 'include time taken to load to RAM bplus mod to accuracy (.001)
  36.     Dim w(10000) As String * 5 'make sure we have enough storage!!
  37.     Dim q4(10000, 100) As String * 5 ' fixed string! storing connect words
  38.     Dim k1(100)
  39.     Dim z4(10000, 100) As String
  40.     FI = 1
  41.     n = Len(q1$)
  42.     If n < 5 Then q1$ = q1$ + Space$(5 - n): q2$ = q2$ + Space$(5 - n)
  43.     While FI <= UBF
  44.         If Len(Fwords$(FI)) = n Then
  45.             k = k + 1
  46.             If Fwords$(FI) = q1$ Then w(k) = "*****" Else w(k) = Fwords$(FI)
  47.         End If
  48.         FI = FI + 1
  49.     Wend
  50.     jk = 1
  51.     k1(jk) = 1
  52.     q4(1, 1) = q1$
  53.     Do
  54.         For i = k To 1 Step -1
  55.             If w(i) <> "*****" Then '_Continue '  500  just check before entering loop
  56.                 cnt = 0
  57.                 For kk = 1 To k1(jk)
  58.                     cnt = 0
  59.                     For j = 1 To n
  60.                         If Asc(w(i), j) = Asc(q4(kk, jk), j) Then cnt = cnt + 1 Else zz = j
  61.                         'If Mid$(w(i), j, 1) = Mid$(q4(kk, jk), j, 1) Then cnt = cnt + 1 Else zz = j
  62.                     Next j
  63.                     If cnt = n - 1 Then
  64.                         k1(jk + 1) = k1(jk + 1) + 1
  65.                         q4(k1(jk + 1), jk + 1) = w(i)
  66.                         z4(k1(jk + 1), jk + 1) = z4(kk, jk) + Mid$(w(i), zz, 1) + Chr$(zz + 48) + " "
  67.                         w(i) = "*****"
  68.                     End If
  69.                 Next kk
  70.             End If
  71.         Next i
  72.         kflag = 0
  73.         For i = 1 To k1(jk + 1)
  74.             If q4(i, jk + 1) = q2$ Then kflag = 99: final$ = z4(i, jk + 1)
  75.         Next i
  76.         If k1(jk + 1) = 0 Then kflag = 99
  77.         jk = jk + 1
  78.         If kflag = 99 Then Exit Do
  79.     Loop
  80.     If k1(jk) = 0 Then Print "No path found! from "; q1$; " to "; q2$; ' b+ removed a print blank line
  81.     If k1(jk) > 0 Then
  82.         xlen = Len(final$)
  83.         'Print:
  84.         Print q1$; " ";
  85.         For i = 1 To xlen Step 3
  86.             c1$ = Mid$(final$, i, 1)
  87.             c2$ = Mid$(final$, i + 1, 1)
  88.             Mid$(q1$, Val(c2$), 1) = c1$
  89.             Print q1$; " ";
  90.         Next i
  91.     End If
  92.     Print: Print "time taken = "; Timer(.001) - tt!; " seconds"
  93.  
  94. Sub Split (SplitMeString As String, delim As String, loadMeArray() As String)
  95.     Dim curpos As Long, arrpos As Long, LD As Long, dpos As Long 'fix use the Lbound the array already has
  96.     curpos = 1: arrpos = LBound(loadMeArray): LD = Len(delim)
  97.     dpos = InStr(curpos, SplitMeString, delim)
  98.     Do Until dpos = 0
  99.         loadMeArray(arrpos) = Mid$(SplitMeString, curpos, dpos - curpos)
  100.         arrpos = arrpos + 1
  101.         If arrpos > UBound(loadMeArray) Then ReDim _Preserve loadMeArray(LBound(loadMeArray) To UBound(loadMeArray) + 1000) As String
  102.         curpos = dpos + LD
  103.         dpos = InStr(curpos, SplitMeString, delim)
  104.     Loop
  105.     loadMeArray(arrpos) = Mid$(SplitMeString, curpos)
  106.     ReDim _Preserve loadMeArray(LBound(loadMeArray) To arrpos) As String 'get the ubound correct
  107.  
  108.  

I'm sorry I missed it doing the other obvious time shaving things.
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 12, 2021, 03:18:44 pm
BTW here is some intel on the unixdict.txt file:

As the number of letters increase the number of words increase up to 7 that I tested but makes sense as each letter allows for 26 times more permutations. 3 letter words < 800 and 7 letter < 4100.

The most one off's any one word had was 30, if I recall it was for a 3 letter word that was tan or rhymes with it.

I did preprocess all the words down to n letter word files with the word followed by all the one offs on the same line and then put a count of the one offs for the word at the start of the line (in one version of preprocessing).

The preprocessing took so much more time than what david_uwi got for alien to drool time that I gave up on the preprocessing idea Thurs or Friday.
Title: Re: Word ladder - Rosetta Code
Post by: SMcNeill on September 12, 2021, 03:31:29 pm
I like integer indexes for words but you can't skip comparing letters between 2 words to see….

That’s why I mentioned building an index once.  Currently, you’re checking for your word connections repeatedly one letter at a time.  (Unless I’m reading the code wrong.)

                    FOR j = 1 TO n
                        IF ASC(w(i), j) = ASC(q4(kk, jk), j) THEN cnt = cnt + 1 ELSE zz = j
                    NEXT j

Build that connection list once, and then be done with it.

Think of it as solving this mini-problem first: How many words are only one letter different from each other?

bog - cog - dog - fog - gog - hog - jog - log - nog - tog - and so on.

Make that list first, and then you only need to recursively check to see if any of those words connect to the word you’re looking for (or if the words they’re connected to are connected to…).

I figured you guys have worked hard on this with your method, so I’d just suggest an indexing method and let you try it first, before I did.  I really don’t want to just barge in and but into your work.  ;D

If you’re not interested in testing it out however, or if you just want me to see what I can come up with on my own, let me know, and I might try out a few different methods for speed comparisons. 
Title: Re: Word ladder - Rosetta Code
Post by: SMcNeill on September 12, 2021, 03:39:08 pm
The preprocessing took so much more time than what david_uwi got for alien to drool time that I gave up on the preprocessing idea Thurs or Friday.

For preprocessing, do a letter count comparison, like we did in the word boggle routines or the scramble routines before.  Those did word comparisons blazingly fast.

If you guys don’t mind me butting in, I might give this a go in a few days when I get free time.  I can’t swear I can do faster, but it’d be interesting to try.  ;)
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 12, 2021, 04:44:50 pm
Have at it Steve always like your input on things usually very helpful.

I've still been meaning to give david_uwi's variable more meaningful names so I can follow his code all the way through. I am thinking the q4 or the z4 arrays, one of them, is saving the one offs list so it isn't done over and over but I can't be sure.

For sure, he is checking way fewer things each round than I in my versions.
Title: Re: Word ladder - Rosetta Code
Post by: johnno56 on September 12, 2021, 09:29:21 pm
New time of 3.88 seconds... Definitely MUCH faster. Well done!
Title: Re: Word ladder - Rosetta Code
Post by: SMcNeill on September 13, 2021, 01:26:14 am
A quick program to generate a one-off connection list for all words:

Code: QB64: [Select]
  1. REDIM word(2 TO 22, 100000) AS STRING
  2.  
  3. OPEN "unixdict.txt" FOR BINARY AS #1
  4.     LINE INPUT #1, temp$
  5.     l = LEN(temp$)
  6.     IF l = 1 THEN _CONTINUE
  7.     c = VAL(word(l, 0)) + 1
  8.     word(l, 0) = STR$(c)
  9.     word(l, c) = temp$
  10.  
  11. OPEN "Connect one.txt" FOR OUTPUT AS #1
  12. t# = TIMER
  13. FOR l = 2 TO 22
  14.     c = VAL(word(l, 0)) 'word count
  15.     IF c < 2 THEN _CONTINUE 'no possible matches if we have less than 2 words
  16.     FOR j = 1 TO c
  17.         PRINT #1, word(l, j); " - ";
  18.         FOR k = 1 TO c
  19.             IF j = k THEN _CONTINUE
  20.             match = 0
  21.             FOR m = 1 TO l
  22.                 IF ASC(word(l, j), m) = ASC(word(l, k), m) THEN match = match + 1
  23.             NEXT
  24.             IF match = l - 1 THEN PRINT #1, word(l, k); " - ";
  25.         NEXT
  26.         PRINT #1, " "
  27.     NEXT
  28.     PRINT l
  29. PRINT USING "###.### seconds to pregenerate connection list."; TIMER - t#
  30.  

Takes about 38 seconds to run on my laptop and produces the following list:

Code: [Select]
ac - ad - ah - ak - al - am - an - ar - as - at - ax - az - dc - nc - sc - 
ad - ac - ah - ak - al - am - an - ar - as - at - ax - az - ed - id - md - nd - rd - sd - 
ah - ac - ad - ak - al - am - an - ar - as - at - ax - az - eh - nh - oh - 
ak - ac - ad - ah - al - am - an - ar - as - at - ax - az - ok - uk - 
al - ac - ad - ah - ak - am - an - ar - as - at - ax - az - el - fl - il - pl - 
am - ac - ad - ah - ak - al - an - ar - as - at - ax - az - em - fm - gm - nm - pm - 
an - ac - ad - ah - ak - al - am - ar - as - at - ax - az - en - in - mn - on - tn - un - 
ar - ac - ad - ah - ak - al - am - an - as - at - ax - az - dr - ir - jr - mr - or - pr - 
as - ac - ad - ah - ak - al - am - an - ar - at - ax - az - is - ks - ms - us - 
at - ac - ad - ah - ak - al - am - an - ar - as - ax - az - ct - et - ft - it - mt - st - ut - vt - 
ax - ac - ad - ah - ak - al - am - an - ar - as - at - az - ex - ix - ox - tx - 
az - ac - ad - ah - ak - al - am - an - ar - as - at - ax - cz - 
be - bp - by - de - fe - ge - he - me - ne - re - se - we - ye - 
bp - be - by - up - 
by - be - bp - ky - my - ny - wy - 
ca - cb - cf - co - ct - cz - ga - ha - ia - la - ma - pa - sa - ta - va - wa - 
cb - ca - cf - co - ct - cz - 
cf - ca - cb - co - ct - cz - if - of - 
co - ca - cb - cf - ct - cz - do - go - ho - io - jo - lo - mo - no - po - so - to - 
ct - at - ca - cb - cf - co - cz - et - ft - it - mt - st - ut - vt - 
cz - az - ca - cb - cf - co - ct - 
dc - ac - de - do - dr - du - nc - sc - 
de - be - dc - do - dr - du - fe - ge - he - me - ne - re - se - we - ye - 
do - co - dc - de - dr - du - go - ho - io - jo - lo - mo - no - po - so - to - 
dr - ar - dc - de - do - du - ir - jr - mr - or - pr - 
du - dc - de - do - dr - gu - ku - mu - nu - wu - 
ed - ad - eh - el - em - en - et - ex - id - md - nd - rd - sd - 
eh - ah - ed - el - em - en - et - ex - nh - oh - 
el - al - ed - eh - em - en - et - ex - fl - il - pl - 
em - am - ed - eh - el - en - et - ex - fm - gm - nm - pm - 
en - an - ed - eh - el - em - et - ex - in - mn - on - tn - un - 
et - at - ct - ed - eh - el - em - en - ex - ft - it - mt - st - ut - vt - 
ex - ax - ed - eh - el - em - en - et - ix - ox - tx - 
fe - be - de - fl - fm - ft - ge - he - me - ne - re - se - we - ye - 
fl - al - el - fe - fm - ft - il - pl - 
fm - am - em - fe - fl - ft - gm - nm - pm - 
ft - at - ct - et - fe - fl - fm - it - mt - st - ut - vt - 
ga - ca - ge - gm - go - gu - ha - ia - la - ma - pa - sa - ta - va - wa - 
ge - be - de - fe - ga - gm - go - gu - he - me - ne - re - se - we - ye - 
gm - am - em - fm - ga - ge - go - gu - nm - pm - 
go - co - do - ga - ge - gm - gu - ho - io - jo - lo - mo - no - po - so - to - 
gu - du - ga - ge - gm - go - ku - mu - nu - wu - 
ha - ca - ga - he - hi - ho - ia - la - ma - pa - sa - ta - va - wa - 
he - be - de - fe - ge - ha - hi - ho - me - ne - re - se - we - ye - 
hi - ha - he - ho - ii - mi - pi - ri - ti - vi - wi - xi - 
ho - co - do - go - ha - he - hi - io - jo - lo - mo - no - po - so - to - 
ia - ca - ga - ha - id - if - ii - il - in - io - iq - ir - is - it - iv - ix - la - ma - pa - sa - ta - va - wa - 
id - ad - ed - ia - if - ii - il - in - io - iq - ir - is - it - iv - ix - md - nd - rd - sd - 
if - cf - ia - id - ii - il - in - io - iq - ir - is - it - iv - ix - of - 
ii - hi - ia - id - if - il - in - io - iq - ir - is - it - iv - ix - mi - pi - ri - ti - vi - wi - xi - 
il - al - el - fl - ia - id - if - ii - in - io - iq - ir - is - it - iv - ix - pl - 
in - an - en - ia - id - if - ii - il - io - iq - ir - is - it - iv - ix - mn - on - tn - un - 
io - co - do - go - ho - ia - id - if - ii - il - in - iq - ir - is - it - iv - ix - jo - lo - mo - no - po - so - to - 
iq - ia - id - if - ii - il - in - io - ir - is - it - iv - ix - 
ir - ar - dr - ia - id - if - ii - il - in - io - iq - is - it - iv - ix - jr - mr - or - pr - 
is - as - ia - id - if - ii - il - in - io - iq - ir - it - iv - ix - ks - ms - us - 
it - at - ct - et - ft - ia - id - if - ii - il - in - io - iq - ir - is - iv - ix - mt - st - ut - vt - 
iv - ia - id - if - ii - il - in - io - iq - ir - is - it - ix - nv - tv - wv - 
ix - ax - ex - ia - id - if - ii - il - in - io - iq - ir - is - it - iv - ox - tx - 
jo - co - do - go - ho - io - jr - lo - mo - no - po - so - to - 
jr - ar - dr - ir - jo - mr - or - pr - 
ks - as - is - ku - ky - ms - us - 
ku - du - gu - ks - ky - mu - nu - wu - 
ky - by - ks - ku - my - ny - wy - 
la - ca - ga - ha - ia - lo - ma - pa - sa - ta - va - wa - 
lo - co - do - go - ho - io - jo - la - mo - no - po - so - to - 
ma - ca - ga - ha - ia - la - md - me - mi - mn - mo - mr - ms - mt - mu - my - pa - sa - ta - va - wa - 
md - ad - ed - id - ma - me - mi - mn - mo - mr - ms - mt - mu - my - nd - rd - sd - 
me - be - de - fe - ge - he - ma - md - mi - mn - mo - mr - ms - mt - mu - my - ne - re - se - we - ye - 
mi - hi - ii - ma - md - me - mn - mo - mr - ms - mt - mu - my - pi - ri - ti - vi - wi - xi - 
mn - an - en - in - ma - md - me - mi - mo - mr - ms - mt - mu - my - on - tn - un - 
mo - co - do - go - ho - io - jo - lo - ma - md - me - mi - mn - mr - ms - mt - mu - my - no - po - so - to - 
mr - ar - dr - ir - jr - ma - md - me - mi - mn - mo - ms - mt - mu - my - or - pr - 
ms - as - is - ks - ma - md - me - mi - mn - mo - mr - mt - mu - my - us - 
mt - at - ct - et - ft - it - ma - md - me - mi - mn - mo - mr - ms - mu - my - st - ut - vt - 
mu - du - gu - ku - ma - md - me - mi - mn - mo - mr - ms - mt - my - nu - wu - 
my - by - ky - ma - md - me - mi - mn - mo - mr - ms - mt - mu - ny - wy - 
nc - ac - dc - nd - ne - nh - nj - nm - no - nu - nv - nw - ny - sc - 
nd - ad - ed - id - md - nc - ne - nh - nj - nm - no - nu - nv - nw - ny - rd - sd - 
ne - be - de - fe - ge - he - me - nc - nd - nh - nj - nm - no - nu - nv - nw - ny - re - se - we - ye - 
nh - ah - eh - nc - nd - ne - nj - nm - no - nu - nv - nw - ny - oh - 
nj - nc - nd - ne - nh - nm - no - nu - nv - nw - ny - 
nm - am - em - fm - gm - nc - nd - ne - nh - nj - no - nu - nv - nw - ny - pm - 
no - co - do - go - ho - io - jo - lo - mo - nc - nd - ne - nh - nj - nm - nu - nv - nw - ny - po - so - to - 
nu - du - gu - ku - mu - nc - nd - ne - nh - nj - nm - no - nv - nw - ny - wu - 
nv - iv - nc - nd - ne - nh - nj - nm - no - nu - nw - ny - tv - wv - 
nw - nc - nd - ne - nh - nj - nm - no - nu - nv - ny - ow - sw - 
ny - by - ky - my - nc - nd - ne - nh - nj - nm - no - nu - nv - nw - wy - 
of - cf - if - oh - ok - on - or - ow - ox - 
oh - ah - eh - nh - of - ok - on - or - ow - ox - 
ok - ak - of - oh - on - or - ow - ox - uk - 
on - an - en - in - mn - of - oh - ok - or - ow - ox - tn - un - 
or - ar - dr - ir - jr - mr - of - oh - ok - on - ow - ox - pr - 
ow - nw - of - oh - ok - on - or - ox - sw - 
ox - ax - ex - ix - of - oh - ok - on - or - ow - tx - 
pa - ca - ga - ha - ia - la - ma - pi - pl - pm - po - pr - sa - ta - va - wa - 
pi - hi - ii - mi - pa - pl - pm - po - pr - ri - ti - vi - wi - xi - 
pl - al - el - fl - il - pa - pi - pm - po - pr - 
pm - am - em - fm - gm - nm - pa - pi - pl - po - pr - 
po - co - do - go - ho - io - jo - lo - mo - no - pa - pi - pl - pm - pr - so - to - 
pr - ar - dr - ir - jr - mr - or - pa - pi - pl - pm - po - 
rd - ad - ed - id - md - nd - re - ri - sd - 
re - be - de - fe - ge - he - me - ne - rd - ri - se - we - ye - 
ri - hi - ii - mi - pi - rd - re - ti - vi - wi - xi - 
sa - ca - ga - ha - ia - la - ma - pa - sc - sd - se - so - st - sw - ta - va - wa - 
sc - ac - dc - nc - sa - sd - se - so - st - sw - 
sd - ad - ed - id - md - nd - rd - sa - sc - se - so - st - sw - 
se - be - de - fe - ge - he - me - ne - re - sa - sc - sd - so - st - sw - we - ye - 
so - co - do - go - ho - io - jo - lo - mo - no - po - sa - sc - sd - se - st - sw - to - 
st - at - ct - et - ft - it - mt - sa - sc - sd - se - so - sw - ut - vt - 
sw - nw - ow - sa - sc - sd - se - so - st - 
ta - ca - ga - ha - ia - la - ma - pa - sa - ti - tn - to - tv - tx - va - wa - 
ti - hi - ii - mi - pi - ri - ta - tn - to - tv - tx - vi - wi - xi - 
tn - an - en - in - mn - on - ta - ti - to - tv - tx - un - 
to - co - do - go - ho - io - jo - lo - mo - no - po - so - ta - ti - tn - tv - tx - 
tv - iv - nv - ta - ti - tn - to - tx - wv - 
tx - ax - ex - ix - ox - ta - ti - tn - to - tv - 
uk - ak - ok - un - up - us - ut - 
un - an - en - in - mn - on - tn - uk - up - us - ut - 
up - bp - uk - un - us - ut - 
us - as - is - ks - ms - uk - un - up - ut - 
ut - at - ct - et - ft - it - mt - st - uk - un - up - us - vt - 
va - ca - ga - ha - ia - la - ma - pa - sa - ta - vi - vt - wa - 
vi - hi - ii - mi - pi - ri - ti - va - vt - wi - xi - 
vt - at - ct - et - ft - it - mt - st - ut - va - vi - 
wa - ca - ga - ha - ia - la - ma - pa - sa - ta - va - we - wi - wu - wv - wy - 
we - be - de - fe - ge - he - me - ne - re - se - wa - wi - wu - wv - wy - ye - 
wi - hi - ii - mi - pi - ri - ti - vi - wa - we - wu - wv - wy - xi - 
wu - du - gu - ku - mu - nu - wa - we - wi - wv - wy - 
wv - iv - nv - tv - wa - we - wi - wu - wy - 
wy - by - ky - my - ny - wa - we - wi - wu - wv - 
xi - hi - ii - mi - pi - ri - ti - vi - wi - 
ye - be - de - fe - ge - he - me - ne - re - se - we - 
1st - est - sst - 
2nd - and - end - 
3rd - 
4th - 5th - 6th - 7th - 8th - 9th - 
5th - 4th - 6th - 7th - 8th - 9th - 
6th - 4th - 5th - 7th - 8th - 9th - 
7th - 4th - 5th - 6th - 8th - 9th - 
8th - 4th - 5th - 6th - 7th - 9th - 
9th - 4th - 5th - 6th - 7th - 8th - 
a&m - a&p - acm - aim - arm - 
a&p - a&m - alp - amp - 
a's - acs - aps - ass - b's - c's - d's - e's - f's - g's - h's - i's - j's - k's - l's - m's - n's - o's - p's - q's - r's - s's - t's - u's - v's - w's - x's - y's - z's - 
aaa - aau - aba - ada - ala - ama - ana - faa - 
aau - aaa - tau - 
aba - aaa - abc - abe - abo - ada - ala - ama - ana - mba - 
abc - aba - abe - abo - arc - nbc - 
abe - aba - abc - abo - ace - age - ale - ape - are - ate - ave - awe - axe - aye - 
abo - aba - abc - abe - ado - ago - 
ace - abe - acm - acs - act - age - ale - ape - are - ate - ave - awe - axe - aye - ice - 
acm - a&m - ace - acs - act - aim - arm - scm - 
acs - a's - ace - acm - act - aps - ass - 
act - ace - acm - acs - aft - ant - apt - art - oct - 
ada - aaa - aba - add - ado - ala - ama - ana - fda - ida - 
add - ada - ado - aid - and - odd - 
ado - abo - ada - add - ago - 
aft - act - ant - apt - art - eft - oft - 
age - abe - ace - ago - ale - ape - are - ate - ave - awe - axe - aye - 
ago - abo - ado - age - ego - 
aid - add - ail - aim - air - and - bid - did - hid - kid - lid - mid - rid - tid - 
ail - aid - aim - air - all - awl - gil - nil - oil - til - 
aim - a&m - acm - aid - ail - air - arm - dim - him - jim - kim - lim - rim - tim - 
air - aid - ail - aim - apr - fir - sir - 
ala - aaa - aba - ada - alb - ale - ali - all - alp - ama - ana - 
alb - ala - ale - ali - all - alp - 
ale - abe - ace - age - ala - alb - ali - all - alp - ape - are - ate - ave - awe - axe - aye - 
ali - ala - alb - ale - all - alp - ami - ani - eli - 
all - ail - ala - alb - ale - ali - alp - awl - ell - ill - 
alp - a&p - ala - alb - ale - ali - all - amp - 
ama - aaa - aba - ada - ala - ami - amp - amy - ana - 
ami - ali - ama - amp - amy - ani - 
amp - a&p - alp - ama - ami - amy - imp - 
amy - ama - ami - amp - any - 
ana - aaa - aba - ada - ala - ama - and - ani - ann - ant - any - dna - rna - 
and - 2nd - add - aid - ana - ani - ann - ant - any - end - 
ani - ali - ami - ana - and - ann - ant - any - 
ann - ana - and - ani - ant - any - awn - inn - 
ant - act - aft - ana - and - ani - ann - any - apt - art - tnt - 
any - amy - ana - and - ani - ann - ant - 
ape - abe - ace - age - ale - apr - aps - apt - are - ate - ave - awe - axe - aye - 
apr - air - ape - aps - apt - 
aps - a's - acs - ape - apr - apt - ass - 
apt - act - aft - ant - ape - apr - aps - art - opt - 
arc - abc - are - ark - arm - art - nrc - 
are - abe - ace - age - ale - ape - arc - ark - arm - art - ate - ave - awe - axe - aye - ere - ire - ore - 
ark - arc - are - arm - art - ask - auk - irk - 
arm - a&m - acm - aim - arc - are - ark - art - 
art - act - aft - ant - apt - arc - are - ark - arm - crt - 
ash - ask - ass - 
ask - ark - ash - ass - auk - 
ass - a's - acs - aps - ash - ask - 
ate - abe - ace - age - ale - ape - are - ave - awe - axe - aye - 
aug - auk - bug - dug - hug - jug - lug - mug - pug - rug - tug - 
auk - ark - ask - aug - 
ave - abe - ace - age - ale - ape - are - ate - awe - axe - aye - eve - 
awe - abe - ace - age - ale - ape - are - ate - ave - awl - awn - axe - aye - ewe - owe - 
awl - ail - all - awe - awn - owl - 
awn - ann - awe - awl - own - 
axe - abe - ace - age - ale - ape - are - ate - ave - awe - aye - 
aye - abe - ace - age - ale - ape - are - ate - ave - awe - axe - bye - dye - eye - lye - rye - 
b's - a's - bus - c's - d's - e's - f's - g's - h's - i's - j's - k's - l's - m's - n's - o's - p's - q's - r's - s's - t's - u's - v's - w's - x's - y's - z's - 
bad - bag - bah - bam - ban - bar - bat - bay - bed - bid - bud - dad - fad - gad - had - lad - mad - pad - sad - tad - wad - 
bag - bad - bah - bam - ban - bar - bat - bay - beg - big - bog - bug - fag - gag - jag - lag - nag - rag - sag - tag - wag - zag - 
bah - bad - bag - bam - ban - bar - bat - bay - wah - yah - 
bam - bad - bag - bah - ban - bar - bat - bay - bum - cam - dam - gam - ham - jam - lam - pam - ram - sam - tam - yam - 
ban - bad - bag - bah - bam - bar - bat - bay - ben - bin - bon - bun - can - dan - fan - han - ian - jan - man - nan - pan - ran - san - tan - van - wan - zan - 
bar - bad - bag - bah - bam - ban - bat - bay - car - dar - ear - far - gar - jar - mar - oar - par - tar - war - 
bat - bad - bag - bah - bam - ban - bar - bay - bet - bit - but - cat - eat - fat - hat - mat - nat - oat - pat - rat - sat - tat - vat - 
bay - bad - bag - bah - bam - ban - bar - bat - bey - boy - buy - day - fay - gay - hay - jay - kay - lay - may - nay - pay - ray - say - way - 
bed - bad - bee - beg - bel - ben - bet - bey - bid - bud - fed - jed - led - ned - qed - red - ted - wed - 
bee - bed - beg - bel - ben - bet - bey - bye - dee - fee - gee - lee - nee - pee - see - tee - vee - wee - 
beg - bag - bed - bee - bel - ben - bet - bey - big - bog - bug - keg - leg - meg - peg - 
bel - bed - bee - beg - ben - bet - bey - btl - del - eel - gel - mel - tel - 
ben - ban - bed - bee - beg - bel - bet - bey - bin - bon - bun - den - hen - ken - len - men - pen - sen - ten - yen - zen - 
bet - bat - bed - bee - beg - bel - ben - bey - bit - but - get - jet - let - met - net - pet - ret - set - vet - wet - yet - 
bey - bay - bed - bee - beg - bel - ben - bet - boy - buy - dey - hey - key - 
bib - bid - big - bin - bit - biz - bob - bub - fib - nib - rib - sib - 
bid - aid - bad - bed - bib - big - bin - bit - biz - bud - did - hid - kid - lid - mid - rid - tid - 
big - bag - beg - bib - bid - bin - bit - biz - bog - bug - dig - fig - gig - jig - mig - pig - rig - wig - zig - 
bin - ban - ben - bib - bid - big - bit - biz - bon - bun - din - fin - gin - kin - lin - min - pin - sin - tin - win - yin - 
bit - bat - bet - bib - bid - big - bin - biz - but - cit - fit - hit - kit - lit - mit - nit - pit - sit - tit - wit - 
biz - bib - bid - big - bin - bit - liz - viz - 
bmw - bow - 
boa - bob - bog - bon - boo - bop - bow - box - boy - goa - 
bob - bib - boa - bog - bon - boo - bop - bow - box - boy - bub - fob - gob - hob - job - lob - mob - nob - rob - sob - 
bog - bag - beg - big - boa - bob - bon - boo - bop - bow - box - boy - bug - cog - dog - fog - gog - hog - jog - log - tog - 
bon - ban - ben - bin - boa - bob - bog - boo - bop - bow - box - boy - bun - con - don - ion - jon - non - ron - son - ton - von - won - yon - 
boo - boa - bob - bog - bon - bop - bow - box - boy - coo - moo - too - woo - zoo - 
bop - boa - bob - bog - bon - boo - bow - box - boy - cop - fop - gop - hop - lop - mop - pop - sop - top - wop - 
bow - bmw - boa - bob - bog - bon - boo - bop - box - boy - cow - dow - how - low - mow - now - pow - row - sow - tow - vow - wow - yow - 
box - boa - bob - bog - bon - boo - bop - bow - boy - cox - fox - 
boy - bay - bey - boa - bob - bog - bon - boo - bop - bow - box - buy - coy - hoy - joy - loy - roy - soy - toy - 
btl - bel - btu - ttl - 
btu - btl - stu - 
bub - bib - bob - bud - bug - bum - bun - bus - but - buy - cub - dub - hub - pub - rub - sub - tub - 
bud - bad - bed - bid - bub - bug - bum - bun - bus - but - buy - cud - dud - mud - sud - 
bug - aug - bag - beg - big - bog - bub - bud - bum - bun - bus - but - buy - dug - hug - jug - lug - mug - pug - rug - tug - 
bum - bam - bub - bud - bug - bun - bus - but - buy - fum - gum - hum - mum - rum - sum - tum - 
bun - ban - ben - bin - bon - bub - bud - bug - bum - bus - but - buy - dun - fun - gun - hun - nun - pun - run - sun - tun - 
bus - b's - bub - bud - bug - bum - bun - but - buy - gus - pus - sus - 
but - bat - bet - bit - bub - bud - bug - bum - bun - bus - buy - cut - gut - hut - jut - nut - out - put - rut - 
buy - bay - bey - boy - bub - bud - bug - bum - bun - bus - but - guy - 
bye - aye - bee - dye - eye - lye - rye - 
c's - a's - b's - cbs - cos - d's - e's - f's - g's - h's - i's - j's - k's - l's - m's - n's - o's - p's - q's - r's - s's - t's - u's - v's - w's - x's - y's - z's - 
cab - cal - cam - can - cap - car - cat - caw - cub - dab - gab - jab - lab - nab - tab - 
cal - cab - cam - can - cap - car - cat - caw - col - gal - hal - pal - sal - 
cam - bam - cab - cal - can - cap - car - cat - caw - dam - gam - ham - jam - lam - pam - ram - sam - tam - yam - 
can - ban - cab - cal - cam - cap - car - cat - caw - con - dan - fan - han - ian - jan - man - nan - pan - ran - san - tan - van - wan - zan - 
cap - cab - cal - cam - can - car - cat - caw - cop - cup - gap - hap - lap - map - nap - pap - rap - sap - tap - yap - zap - 
car - bar - cab - cal - cam - can - cap - cat - caw - cur - dar - ear - far - gar - jar - mar - oar - par - tar - war - 
cat - bat - cab - cal - cam - can - cap - car - caw - cit - cot - crt - cut - eat - fat - hat - mat - nat - oat - pat - rat - sat - tat - vat - 
caw - cab - cal - cam - can - cap - car - cat - cow - haw - jaw - law - maw - paw - raw - saw - yaw - 
cbs - c's - cos - nbs - pbs - 
cdc - 
ceq - seq - 
chi - phi - 
cia - cit - cpa - via - 
cit - bit - cat - cia - cot - crt - cut - fit - hit - kit - lit - mit - nit - pit - sit - tit - wit - 
cod - cog - col - con - coo - cop - cos - cot - cow - cox - coy - cud - dod - god - nod - pod - rod - sod - 
cog - bog - cod - col - con - coo - cop - cos - cot - cow - cox - coy - dog - fog - gog - hog - jog - log - tog - 
col - cal - cod - cog - con - coo - cop - cos - cot - cow - cox - coy - pol - sol - 
con - bon - can - cod - cog - col - coo - cop - cos - cot - cow - cox - coy - don - ion - jon - non - ron - son - ton - von - won - yon - 
coo - boo - cod - cog - col - con - cop - cos - cot - cow - cox - coy - moo - too - woo - zoo - 
cop - bop - cap - cod - cog - col - con - coo - cos - cot - cow - cox - coy - cup - fop - gop - hop - lop - mop - pop - sop - top - wop - 
cos - c's - cbs - cod - cog - col - con - coo - cop - cot - cow - cox - coy - los - 
cot - cat - cit - cod - cog - col - con - coo - cop - cos - cow - cox - coy - crt - cut - dot - got - hot - jot - lot - mot - not - pot - rot - tot - 
cow - bow - caw - cod - cog - col - con - coo - cop - cos - cot - cox - coy - dow - how - low - mow - now - pow - row - sow - tow - vow - wow - yow - 
cox - box - cod - cog - col - con - coo - cop - cos - cot - cow - coy - fox - 
coy - boy - cod - cog - col - con - coo - cop - cos - cot - cow - cox - cry - hoy - joy - loy - roy - soy - toy - 
cpa - cia - cpu - epa - spa - 
cpu - cpa - 
crt - art - cat - cit - cot - cry - cut - 
cry - coy - crt - dry - fry - pry - try - wry - 
cub - bub - cab - cud - cue - cup - cur - cut - dub - hub - pub - rub - sub - tub - 
cud - bud - cod - cub - cue - cup - cur - cut - dud - mud - sud - 
cue - cub - cud - cup - cur - cut - due - hue - rue - sue - 
cup - cap - cop - cub - cud - cue - cur - cut - pup - sup - 
cur - car - cub - cud - cue - cup - cut - fur - our - 
cut - but - cat - cit - cot - crt - cub - cud - cue - cup - cur - gut - hut - jut - nut - out - put - rut - 
d's - a's - b's - c's - des - dis - e's - f's - g's - h's - i's - j's - k's - l's - m's - n's - o's - p's - q's - r's - s's - t's - u's - v's - w's - x's - y's - z's - 
dab - cab - dad - dam - dan - dar - day - dub - gab - jab - lab - nab - tab - 
dad - bad - dab - dam - dan - dar - day - did - dod - dud - fad - gad - had - lad - mad - pad - sad - tad - wad - 
dam - bam - cam - dab - dad - dan - dar - day - dim - gam - ham - jam - lam - pam - ram - sam - tam - yam - 
dan - ban - can - dab - dad - dam - dar - day - den - din - don - dun - fan - han - ian - jan - man - nan - pan - ran - san - tan - van - wan - zan - 
dar - bar - car - dab - dad - dam - dan - day - ear - far - gar - jar - mar - oar - par - tar - war - 
day - bay - dab - dad - dam - dan - dar - dey - dry - fay - gay - hay - jay - kay - lay - may - nay - pay - ray - say - way - 
dec - dee - del - den - des - dew - dey - sec - 
dee - bee - dec - del - den - des - dew - dey - die - doe - due - dye - fee - gee - lee - nee - pee - see - tee - vee - wee - 
del - bel - dec - dee - den - des - dew - dey - eel - gel - mel - tel - 
den - ben - dan - dec - dee - del - des - dew - dey - din - don - dun - hen - ken - len - men - pen - sen - ten - yen - zen - 
des - d's - dec - dee - del - den - dew - dey - dis - 
dew - dec - dee - del - den - des - dey - dow - few - hew - jew - lew - mew - new - pew - sew - 
dey - bey - day - dec - dee - del - den - des - dew - dry - hey - key - 
did - aid - bid - dad - die - dig - dim - din - dip - dis - dod - dud - hid - kid - lid - mid - rid - tid - 
die - dee - did - dig - dim - din - dip - dis - doe - due - dye - lie - pie - tie - vie - 
dig - big - did - die - dim - din - dip - dis - dog - dug - fig - gig - jig - mig - pig - rig - wig - zig - 
dim - aim - dam - did - die - dig - din - dip - dis - him - jim - kim - lim - rim - tim - 
din - bin - dan - den - did - die - dig - dim - dip - dis - don - dun - fin - gin - kin - lin - min - pin - sin - tin - win - yin - 
dip - did - die - dig - dim - din - dis - hip - lip - nip - pip - rip - sip - tip - yip - zip - 
dis - d's - des - did - die - dig - dim - din - dip - his - sis - vis - 
dna - ana - rna - 
dod - cod - dad - did - doe - dog - don - dot - dow - dud - god - nod - pod - rod - sod - 
doe - dee - die - dod - dog - don - dot - dow - due - dye - foe - hoe - joe - moe - poe - roe - toe - woe - zoe - 
dog - bog - cog - dig - dod - doe - don - dot - dow - dug - fog - gog - hog - jog - log - tog - 
don - bon - con - dan - den - din - dod - doe - dog - dot - dow - dun - ion - jon - non - ron - son - ton - von - won - yon - 
dot - cot - dod - doe - dog - don - dow - got - hot - jot - lot - mot - not - pot - rot - tot - 
dow - bow - cow - dew - dod - doe - dog - don - dot - how - low - mow - now - pow - row - sow - tow - vow - wow - yow - 
dry - cry - day - dey - fry - pry - try - wry - 
dub - bub - cub - dab - dud - due - dug - dun - hub - pub - rub - sub - tub - 
dud - bud - cud - dad - did - dod - dub - due - dug - dun - mud - sud - 
due - cue - dee - die - doe - dub - dud - dug - dun - dye - hue - rue - sue - 
dug - aug - bug - dig - dog - dub - dud - due - dun - hug - jug - lug - mug - pug - rug - tug - 
dun - bun - dan - den - din - don - dub - dud - due - dug - fun - gun - hun - nun - pun - run - sun - tun - 
dye - aye - bye - dee - die - doe - due - eye - lye - rye - 
e's - a's - b's - c's - d's - f's - g's - h's - i's - j's - k's - l's - m's - n's - o's - p's - q's - r's - s's - t's - u's - v's - w's - x's - y's - z's - 
e.g - egg - eng - erg - 
ear - bar - car - dar - eat - err - far - gar - jar - mar - oar - par - tar - war - 
eat - bat - cat - ear - edt - eft - est - fat - hat - mat - nat - oat - pat - rat - sat - tat - vat - 
ebb - 
edt - eat - eft - est - 
eel - bel - del - ell - gel - mel - tel - 
eft - aft - eat - edt - est - oft - 
egg - e.g - ego - eng - erg - 
ego - ago - egg - 
eke - ere - eve - ewe - eye - ike - 
eli - ali - elk - ell - elm - ely - 
elk - eli - ell - elm - ely - 
ell - all - eel - eli - elk - elm - ely - ill - 
elm - eli - elk - ell - ely - 
ely - eli - elk - ell - elm - fly - ply - sly - 
end - 2nd - and - eng - 
eng - e.g - egg - end - erg - 
epa - cpa - era - eta - eva - spa - 
era - epa - ere - erg - err - eta - eva - ira - 
ere - are - eke - era - erg - err - eve - ewe - eye - ire - ore - 
erg - e.g - egg - eng - era - ere - err - 
err - ear - era - ere - erg - orr - 
est - 1st - eat - edt - eft - sst - 
eta - epa - era - etc - eva - pta - 
etc - eta - ftc - 
eva - epa - era - eta - eve - ova - tva - 
eve - ave - eke - ere - eva - ewe - eye - 
ewe - awe - eke - ere - eve - eye - owe - 
eye - aye - bye - dye - eke - ere - eve - ewe - lye - rye - 
f's - a's - b's - c's - d's - e's - g's - h's - i's - j's - k's - l's - m's - n's - o's - p's - q's - r's - s's - t's - u's - v's - w's - x's - y's - z's - 
faa - aaa - fad - fag - fan - far - fat - fay - fda - 
fad - bad - dad - faa - fag - fan - far - fat - fay - fed - gad - had - lad - mad - pad - sad - tad - wad - 
fag - bag - faa - fad - fan - far - fat - fay - fig - fog - gag - jag - lag - nag - rag - sag - tag - wag - zag - 
fan - ban - can - dan - faa - fad - fag - far - fat - fay - fin - fun - han - ian - jan - man - nan - pan - ran - san - tan - van - wan - zan - 
far - bar - car - dar - ear - faa - fad - fag - fan - fat - fay - fir - for - fur - gar - jar - mar - oar - par - tar - war - 
fat - bat - cat - eat - faa - fad - fag - fan - far - fay - fit - hat - mat - nat - oat - pat - rat - sat - tat - vat - 
fay - bay - day - faa - fad - fag - fan - far - fat - fly - fry - gay - hay - jay - kay - lay - may - nay - pay - ray - say - way - 
fbi - 
fcc - fmc - fpc - ftc - icc - 
fda - ada - faa - ida - 
feb - fed - fee - few - fib - fob - reb - web - 
fed - bed - fad - feb - fee - few - jed - led - ned - qed - red - ted - wed - 
fee - bee - dee - feb - fed - few - foe - gee - lee - nee - pee - see - tee - vee - wee - 
few - dew - feb - fed - fee - hew - jew - lew - mew - new - pew - sew - 
fib - bib - feb - fig - fin - fir - fit - fix - fob - nib - rib - sib - 
fig - big - dig - fag - fib - fin - fir - fit - fix - fog - gig - jig - mig - pig - rig - wig - zig - 
fin - bin - din - fan - fib - fig - fir - fit - fix - fun - gin - kin - lin - min - pin - sin - tin - win - yin - 
fir - air - far - fib - fig - fin - fit - fix - for - fur - sir - 
fit - bit - cit - fat - fib - fig - fin - fir - fix - hit - kit - lit - mit - nit - pit - sit - tit - wit - 
fix - fib - fig - fin - fir - fit - fox - mix - six - 
flo - flu - fly - fro - 
flu - flo - fly - 
fly - ely - fay - flo - flu - fry - ply - sly - 
fmc - fcc - fpc - ftc - 
fob - bob - feb - fib - foe - fog - fop - for - fox - gob - hob - job - lob - mob - nob - rob - sob - 
foe - doe - fee - fob - fog - fop - for - fox - hoe - joe - moe - poe - roe - toe - woe - zoe - 
fog - bog - cog - dog - fag - fig - fob - foe - fop - for - fox - gog - hog - jog - log - tog - 
fop - bop - cop - fob - foe - fog - for - fox - gop - hop - lop - mop - pop - sop - top - wop - 
for - far - fir - fob - foe - fog - fop - fox - fur - nor - tor - 
fox - box - cox - fix - fob - foe - fog - fop - for - 
fpc - fcc - fmc - ftc - 
fro - flo - fry - pro - 
fry - cry - dry - fay - fly - fro - pry - try - wry - 
ftc - etc - fcc - fmc - fpc - 
fum - bum - fun - fur - gum - hum - mum - rum - sum - tum - 
fun - bun - dun - fan - fin - fum - fur - gun - hun - nun - pun - run - sun - tun - 
fur - cur - far - fir - for - fum - fun - our - 
g's - a's - b's - c's - d's - e's - f's - gas - gus - h's - i's - j's - k's - l's - m's - n's - o's - p's - q's - r's - s's - t's - u's - v's - w's - x's - y's - z's - 
gab - cab - dab - gad - gag - gal - gam - gao - gap - gar - gas - gay - gob - jab - lab - nab - tab - 
gad - bad - dad - fad - gab - gag - gal - gam - gao - gap - gar - gas - gay - god - had - lad - mad - pad - sad - tad - wad - 
gag - bag - fag - gab - gad - gal - gam - gao - gap - gar - gas - gay - gig - gog - jag - lag - nag - rag - sag - tag - wag - zag - 
gal - cal - gab - gad - gag - gam - gao - gap - gar - gas - gay - gel - gil - hal - pal - sal - 
gam - bam - cam - dam - gab - gad - gag - gal - gao - gap - gar - gas - gay - gem - gum - gym - ham - jam - lam - pam - ram - sam - tam - yam - 
gao - gab - gad - gag - gal - gam - gap - gar - gas - gay - gpo - lao - mao - sao - tao - 
gap - cap - gab - gad - gag - gal - gam - gao - gar - gas - gay - gnp - gop - gyp - hap - lap - map - nap - pap - rap - sap - tap - yap - zap - 
gar - bar - car - dar - ear - far - gab - gad - gag - gal - gam - gao - gap - gas - gay - jar - mar - oar - par - tar - war - 
gas - g's - gab - gad - gag - gal - gam - gao - gap - gar - gay - gus - was - 
gay - bay - day - fay - gab - gad - gag - gal - gam - gao - gap - gar - gas - guy - hay - jay - kay - lay - may - nay - pay - ray - say - way - 
gee - bee - dee - fee - gel - gem - get - lee - nee - pee - see - tee - vee - wee - 
gel - bel - del - eel - gal - gee - gem - get - gil - mel - tel - 
gem - gam - gee - gel - get - gum - gym - hem - 
get - bet - gee - gel - gem - gmt - got - gut - jet - let - met - net - pet - ret - set - vet - wet - yet - 
gig - big - dig - fig - gag - gil - gin - gog - jig - mig - pig - rig - wig - zig - 
gil - ail - gal - gel - gig - gin - nil - oil - til - 
gin - bin - din - fin - gig - gil - gun - kin - lin - min - pin - sin - tin - win - yin - 
gmt - get - got - gut - 
gnp - gap - gnu - gop - gyp - 
gnu - gnp - 
goa - boa - gob - god - gog - gop - got - gsa - 
gob - bob - fob - gab - goa - god - gog - gop - got - hob - job - lob - mob - nob - rob - sob - 
god - cod - dod - gad - goa - gob - gog - gop - got - nod - pod - rod - sod - 
gog - bog - cog - dog - fog - gag - gig - goa - gob - god - gop - got - hog - jog - log - tog - 
gop - bop - cop - fop - gap - gnp - goa - gob - god - gog - got - gyp - hop - lop - mop - pop - sop - top - wop - 
got - cot - dot - get - gmt - goa - gob - god - gog - gop - gut - hot - jot - lot - mot - not - pot - rot - tot - 
gpo - gao - 
gsa - goa - usa - 
gum - bum - fum - gam - gem - gun - gus - gut - guy - gym - hum - mum - rum - sum - tum - 
gun - bun - dun - fun - gin - gum - gus - gut - guy - hun - nun - pun - run - sun - tun - 
gus - bus - g's - gas - gum - gun - gut - guy - pus - sus - 
gut - but - cut - get - gmt - got - gum - gun - gus - guy - hut - jut - nut - out - put - rut - 
guy - buy - gay - gum - gun - gus - gut - 
gym - gam - gem - gum - gyp - 
gyp - gap - gnp - gop - gym - 
h's - a's - b's - c's - d's - e's - f's - g's - his - i's - j's - k's - l's - m's - n's - o's - p's - q's - r's - s's - t's - u's - v's - w's - x's - y's - z's - 
had - bad - dad - fad - gad - hal - ham - han - hap - hat - haw - hay - hid - lad - mad - pad - sad - tad - wad - 
hal - cal - gal - had - ham - han - hap - hat - haw - hay - pal - sal - 
ham - bam - cam - dam - gam - had - hal - han - hap - hat - haw - hay - hem - him - hom - hum - jam - lam - pam - ram - sam - tam - yam - 
han - ban - can - dan - fan - had - hal - ham - hap - hat - haw - hay - hen - hun - ian - jan - man - nan - pan - ran - san - tan - van - wan - zan - 
hap - cap - gap - had - hal - ham - han - hat - haw - hay - hip - hop - lap - map - nap - pap - rap - sap - tap - yap - zap - 
hat - bat - cat - eat - fat - had - hal - ham - han - hap - haw - hay - hit - hot - hut - mat - nat - oat - pat - rat - sat - tat - vat - 
haw - caw - had - hal - ham - han - hap - hat - hay - hew - how - jaw - law - maw - paw - raw - saw - yaw - 
hay - bay - day - fay - gay - had - hal - ham - han - hap - hat - haw - hey - hoy - jay - kay - lay - may - nay - pay - ray - say - way - 
hem - gem - ham - hen - her - hew - hex - hey - him - hom - hum - 
hen - ben - den - han - hem - her - hew - hex - hey - hun - ken - len - men - pen - sen - ten - yen - zen - 
her - hem - hen - hew - hex - hey - per - 
hew - dew - few - haw - hem - hen - her - hex - hey - how - jew - lew - mew - new - pew - sew - 
hex - hem - hen - her - hew - hey - rex - sex - vex - 
hey - bey - dey - hay - hem - hen - her - hew - hex - hoy - key - 
hid - aid - bid - did - had - him - hip - his - hit - kid - lid - mid - rid - tid - 
him - aim - dim - ham - hem - hid - hip - his - hit - hom - hum - jim - kim - lim - rim - tim - 
hip - dip - hap - hid - him - his - hit - hop - lip - nip - pip - rip - sip - tip - yip - zip - 
his - dis - h's - hid - him - hip - hit - sis - vis - 
hit - bit - cit - fit - hat - hid - him - hip - his - hot - hut - kit - lit - mit - nit - pit - sit - tit - wit - 
hob - bob - fob - gob - hoc - hoe - hog - hoi - hom - hop - hot - how - hoy - hub - job - lob - mob - nob - rob - sob - 
hoc - hob - hoe - hog - hoi - hom - hop - hot - how - hoy - soc - 
hoe - doe - foe - hob - hoc - hog - hoi - hom - hop - hot - how - hoy - hue - joe - moe - poe - roe - toe - woe - zoe - 
hog - bog - cog - dog - fog - gog - hob - hoc - hoe - hoi - hom - hop - hot - how - hoy - hug - jog - log - tog - 
hoi - hob - hoc - hoe - hog - hom - hop - hot - how - hoy - poi - 
hom - ham - hem - him - hob - hoc - hoe - hog - hoi - hop - hot - how - hoy - hum - tom - 
hop - bop - cop - fop - gop - hap - hip - hob - hoc - hoe - hog - hoi - hom - hot - how - hoy - lop - mop - pop - sop - top - wop - 
hot - cot - dot - got - hat - hit - hob - hoc - hoe - hog - hoi - hom - hop - how - hoy - hut - jot - lot - mot - not - pot - rot - tot - 
how - bow - cow - dow - haw - hew - hob - hoc - hoe - hog - hoi - hom - hop - hot - hoy - low - mow - now - pow - row - sow - tow - vow - wow - yow - 
hoy - boy - coy - hay - hey - hob - hoc - hoe - hog - hoi - hom - hop - hot - how - joy - loy - roy - soy - toy - 
hub - bub - cub - dub - hob - hue - hug - huh - hum - hun - hut - pub - rub - sub - tub - 
hue - cue - due - hoe - hub - hug - huh - hum - hun - hut - rue - sue - 
hug - aug - bug - dug - hog - hub - hue - huh - hum - hun - hut - jug - lug - mug - pug - rug - tug - 
huh - hub - hue - hug - hum - hun - hut - yuh - 
hum - bum - fum - gum - ham - hem - him - hom - hub - hue - hug - huh - hun - hut - mum - rum - sum - tum - 
hun - bun - dun - fun - gun - han - hen - hub - hue - hug - huh - hum - hut - nun - pun - run - sun - tun - 
hut - but - cut - gut - hat - hit - hot - hub - hue - hug - huh - hum - hun - jut - nut - out - put - rut - 
i'd - i'm - i's - 
i'm - i'd - i's - ibm - 
i's - a's - b's - c's - d's - e's - f's - g's - h's - i'd - i'm - irs - j's - k's - l's - m's - n's - o's - p's - q's - r's - s's - t's - u's - v's - w's - x's - y's - z's - 
i.e - ice - ike - ire - 
ian - ban - can - dan - fan - han - ibn - inn - ion - jan - man - nan - pan - ran - san - tan - van - wan - zan - 
ibm - i'm - ibn - 
ibn - ian - ibm - inn - ion - 
icc - fcc - ice - icy - inc - 
ice - ace - i.e - icc - icy - ike - ire - 
icy - icc - ice - ivy - 
ida - ada - fda - ira - 
iii - vii - 
ike - eke - i.e - ice - ire - 
ill - all - ell - 
imp - amp - 
inc - icc - ink - inn - 
ink - inc - inn - irk - 
inn - ann - ian - ibn - inc - ink - ion - 
ion - bon - con - don - ian - ibn - inn - jon - non - ron - son - ton - von - won - yon - 
ira - era - ida - ire - irk - irs - 
ire - are - ere - i.e - ice - ike - ira - irk - irs - ore - 
irk - ark - ink - ira - ire - irs - 
irs - i's - ira - ire - irk - mrs - 
ito - itt - 
itt - ito - ott - 
ivy - icy - 
j's - a's - b's - c's - d's - e's - f's - g's - h's - i's - k's - l's - m's - n's - o's - p's - q's - r's - s's - t's - u's - v's - w's - x's - y's - z's - 
jab - cab - dab - gab - jag - jam - jan - jar - jaw - jay - job - lab - nab - tab - 
jag - bag - fag - gag - jab - jam - jan - jar - jaw - jay - jig - jog - jug - lag - nag - rag - sag - tag - wag - zag - 
jam - bam - cam - dam - gam - ham - jab - jag - jan - jar - jaw - jay - jim - lam - pam - ram - sam - tam - yam - 
jan - ban - can - dan - fan - han - ian - jab - jag - jam - jar - jaw - jay - jon - man - nan - pan - ran - san - tan - van - wan - zan - 
jar - bar - car - dar - ear - far - gar - jab - jag - jam - jan - jaw - jay - mar - oar - par - tar - war - 
jaw - caw - haw - jab - jag - jam - jan - jar - jay - jew - law - maw - paw - raw - saw - yaw - 
jay - bay - day - fay - gay - hay - jab - jag - jam - jan - jar - jaw - joy - kay - lay - may - nay - pay - ray - say - way - 
jed - bed - fed - jet - jew - led - ned - qed - red - ted - wed - 
jet - bet - get - jed - jew - jot - jut - let - met - net - pet - ret - set - vet - wet - yet - 
jew - dew - few - hew - jaw - jed - jet - lew - mew - new - pew - sew - 
jig - big - dig - fig - gig - jag - jim - jog - jug - mig - pig - rig - wig - zig - 
jim - aim - dim - him - jam - jig - kim - lim - rim - tim - 
job - bob - fob - gob - hob - jab - joe - jog - jon - jot - joy - lob - mob - nob - rob - sob - 
joe - doe - foe - hoe - job - jog - jon - jot - joy - moe - poe - roe - toe - woe - zoe - 
jog - bog - cog - dog - fog - gog - hog - jag - jig - job - joe - jon - jot - joy - jug - log - tog - 
jon - bon - con - don - ion - jan - job - joe - jog - jot - joy - non - ron - son - ton - von - won - yon - 
jot - cot - dot - got - hot - jet - job - joe - jog - jon - joy - jut - lot - mot - not - pot - rot - tot - 
joy - boy - coy - hoy - jay - job - joe - jog - jon - jot - loy - roy - soy - toy - 
jug - aug - bug - dug - hug - jag - jig - jog - jut - lug - mug - pug - rug - tug - 
jut - but - cut - gut - hut - jet - jot - jug - nut - out - put - rut - 
k's - a's - b's - c's - d's - e's - f's - g's - h's - i's - j's - l's - m's - n's - o's - p's - q's - r's - s's - t's - u's - v's - w's - x's - y's - z's - 
kay - bay - day - fay - gay - hay - jay - key - lay - may - nay - pay - ray - say - way - 
keg - beg - ken - key - leg - meg - peg - 
ken - ben - den - hen - keg - key - kin - len - men - pen - sen - ten - yen - zen - 
key - bey - dey - hey - kay - keg - ken - 
kid - aid - bid - did - hid - kim - kin - kit - lid - mid - rid - tid - 
kim - aim - dim - him - jim - kid - kin - kit - lim - rim - tim - 
kin - bin - din - fin - gin - ken - kid - kim - kit - lin - min - pin - sin - tin - win - yin - 
kit - bit - cit - fit - hit - kid - kim - kin - lit - mit - nit - pit - sit - tit - wit - 
l's - a's - b's - c's - d's - e's - f's - g's - h's - i's - j's - k's - los - m's - n's - o's - p's - q's - r's - s's - t's - u's - v's - w's - x's - y's - z's - 
lab - cab - dab - gab - jab - lac - lad - lag - lam - lao - lap - law - lax - lay - lob - nab - tab - 
lac - lab - lad - lag - lam - lao - lap - law - lax - lay - mac - sac - wac - 
lad - bad - dad - fad - gad - had - lab - lac - lag - lam - lao - lap - law - lax - lay - led - lid - ltd - mad - pad - sad - tad - wad - 
lag - bag - fag - gag - jag - lab - lac - lad - lam - lao - lap - law - lax - lay - leg - log - lug - nag - rag - sag - tag - wag - zag - 
lam - bam - cam - dam - gam - ham - jam - lab - lac - lad - lag - lao - lap - law - lax - lay - lim - pam - ram - sam - tam - yam - 
lao - gao - lab - lac - lad - lag - lam - lap - law - lax - lay - leo - mao - sao - tao - 
lap - cap - gap - hap - lab - lac - lad - lag - lam - lao - law - lax - lay - lip - lop - map - nap - pap - rap - sap - tap - yap - zap - 
law - caw - haw - jaw - lab - lac - lad - lag - lam - lao - lap - lax - lay - lew - low - maw - paw - raw - saw - yaw - 
lax - lab - lac - lad - lag - lam - lao - lap - law - lay - lux - max - pax - sax - tax - wax - 
lay - bay - day - fay - gay - hay - jay - kay - lab - lac - lad - lag - lam - lao - lap - law - lax - loy - may - nay - pay - ray - say - way - 
lea - led - lee - leg - len - leo - let - lev - lew - pea - sea - tea - yea - 
led - bed - fed - jed - lad - lea - lee - leg - len - leo - let - lev - lew - lid - ltd - ned - qed - red - ted - wed - 
lee - bee - dee - fee - gee - lea - led - leg - len - leo - let - lev - lew - lie - lye - nee - pee - see - tee - vee - wee - 
leg - beg - keg - lag - lea - led - lee - len - leo - let - lev - lew - log - lug - meg - peg - 
len - ben - den - hen - ken - lea - led - lee - leg - leo - let - lev - lew - lin - men - pen - sen - ten - yen - zen - 
leo - lao - lea - led - lee - leg - len - let - lev - lew - 
let - bet - get - jet - lea - led - lee - leg - len - leo - lev - lew - lit - lot - met - net - pet - ret - set - vet - wet - yet - 
lev - lea - led - lee - leg - len - leo - let - lew - ltv - rev - 
lew - dew - few - hew - jew - law - lea - led - lee - leg - len - leo - let - lev - low - mew - new - pew - sew - 
lid - aid - bid - did - hid - kid - lad - led - lie - lim - lin - lip - lit - liz - ltd - mid - rid - tid - 
lie - die - lee - lid - lim - lin - lip - lit - liz - lye - pie - tie - vie - 
lim - aim - dim - him - jim - kim - lam - lid - lie - lin - lip - lit - liz - rim - tim - 
lin - bin - din - fin - gin - kin - len - lid - lie - lim - lip - lit - liz - min - pin - sin - tin - win - yin - 
lip - dip - hip - lap - lid - lie - lim - lin - lit - liz - lop - nip - pip - rip - sip - tip - yip - zip - 
lit - bit - cit - fit - hit - kit - let - lid - lie - lim - lin - lip - liz - lot - mit - nit - pit - sit - tit - wit - 
liz - biz - lid - lie - lim - lin - lip - lit - viz - 
lob - bob - fob - gob - hob - job - lab - log - lop - los - lot - lou - low - loy - mob - nob - rob - sob - 
log - bog - cog - dog - fog - gog - hog - jog - lag - leg - lob - lop - los - lot - lou - low - loy - lug - tog - 
lop - bop - cop - fop - gop - hop - lap - lip - lob - log - los - lot - lou - low - loy - mop - pop - sop - top - wop - 
los - cos - l's - lob - log - lop - lot - lou - low - loy - 
lot - cot - dot - got - hot - jot - let - lit - lob - log - lop - los - lou - low - loy - mot - not - pot - rot - tot - 
lou - lob - log - lop - los - lot - low - loy - sou - you - 
low - bow - cow - dow - how - law - lew - lob - log - lop - los - lot - lou - loy - mow - now - pow - row - sow - tow - vow - wow - yow - 
loy - boy - coy - hoy - joy - lay - lob - log - lop - los - lot - lou - low - roy - soy - toy - 
lsi - psi - 
ltd - lad - led - lid - ltv - 
ltv - lev - ltd - 
lug - aug - bug - dug - hug - jug - lag - leg - log - lux - mug - pug - rug - tug - 
lux - lax - lug - 
lye - aye - bye - dye - eye - lee - lie - rye - 
m's - a's - b's - c's - d's - e's - f's - g's - h's - i's - j's - k's - l's - mrs - n's - o's - p's - q's - r's - s's - t's - u's - v's - w's - x's - y's - z's - 
mac - lac - mad - mae - man - mao - map - mar - mat - maw - max - may - sac - wac - 
mad - bad - dad - fad - gad - had - lad - mac - mae - man - mao - map - mar - mat - maw - max - may - mid - mud - pad - sad - tad - wad - 
mae - mac - mad - man - mao - map - mar - mat - maw - max - may - moe - rae - 
man - ban - can - dan - fan - han - ian - jan - mac - mad - mae - mao - map - mar - mat - maw - max - may - men - min - nan - pan - ran - san - tan - van - wan - zan - 
mao - gao - lao - mac - mad - mae - man - map - mar - mat - maw - max - may - moo - sao - tao - 
map - cap - gap - hap - lap - mac - mad - mae - man - mao - mar - mat - maw - max - may - mop - nap - pap - rap - sap - tap - yap - zap - 
mar - bar - car - dar - ear - far - gar - jar - mac - mad - mae - man - mao - map - mat - maw - max - may - oar - par - tar - war - 
mat - bat - cat - eat - fat - hat - mac - mad - mae - man - mao - map - mar - maw - max - may - met - mit - mot - nat - oat - pat - rat - sat - tat - vat - 
maw - caw - haw - jaw - law - mac - mad - mae - man - mao - map - mar - mat - max - may - mew - mow - paw - raw - saw - yaw - 
max - lax - mac - mad - mae - man - mao - map - mar - mat - maw - may - mix - pax - sax - tax - wax - 
may - bay - day - fay - gay - hay - jay - kay - lay - mac - mad - mae - man - mao - map - mar - mat - maw - max - nay - pay - ray - say - way - 
mba - aba - 
meg - beg - keg - leg - mel - men - met - mew - mig - mug - peg - 
mel - bel - del - eel - gel - meg - men - met - mew - tel - 
men - ben - den - hen - ken - len - man - meg - mel - met - mew - min - pen - sen - ten - yen - zen - 
met - bet - get - jet - let - mat - meg - mel - men - mew - mit - mot - net - pet - ret - set - vet - wet - yet - 
mew - dew - few - hew - jew - lew - maw - meg - mel - men - met - mow - new - pew - sew - 
mid - aid - bid - did - hid - kid - lid - mad - mig - min - mit - mix - mud - rid - tid - 
mig - big - dig - fig - gig - jig - meg - mid - min - mit - mix - mug - pig - rig - wig - zig - 
min - bin - din - fin - gin - kin - lin - man - men - mid - mig - mit - mix - pin - sin - tin - win - yin - 
mit - bit - cit - fit - hit - kit - lit - mat - met - mid - mig - min - mix - mot - nit - pit - sit - tit - wit - 
mix - fix - max - mid - mig - min - mit - six - 
mob - bob - fob - gob - hob - job - lob - moe - moo - mop - mot - mow - nob - rob - sob - 
moe - doe - foe - hoe - joe - mae - mob - moo - mop - mot - mow - poe - roe - toe - woe - zoe - 
moo - boo - coo - mao - mob - moe - mop - mot - mow - too - woo - zoo - 
mop - bop - cop - fop - gop - hop - lop - map - mob - moe - moo - mot - mow - pop - sop - top - wop - 
mot - cot - dot - got - hot - jot - lot - mat - met - mit - mob - moe - moo - mop - mow - not - pot - rot - tot - 
mow - bow - cow - dow - how - low - maw - mew - mob - moe - moo - mop - mot - now - pow - row - sow - tow - vow - wow - yow - 
mph - 
mrs - irs - m's - 
mud - bud - cud - dud - mad - mid - mug - mum - sud - 
mug - aug - bug - dug - hug - jug - lug - meg - mig - mud - mum - pug - rug - tug - 
mum - bum - fum - gum - hum - mud - mug - rum - sum - tum - 
n's - a's - b's - c's - d's - e's - f's - g's - h's - i's - j's - k's - l's - m's - nbs - o's - p's - q's - r's - s's - t's - u's - v's - w's - x's - y's - z's - 
nab - cab - dab - gab - jab - lab - nag - nan - nap - nat - nay - nib - nob - tab - 
nag - bag - fag - gag - jag - lag - nab - nan - nap - nat - nay - rag - sag - tag - wag - zag - 
nan - ban - can - dan - fan - han - ian - jan - man - nab - nag - nap - nat - nay - non - nun - pan - ran - san - tan - van - wan - zan - 
nap - cap - gap - hap - lap - map - nab - nag - nan - nat - nay - nip - pap - rap - sap - tap - yap - zap - 
nat - bat - cat - eat - fat - hat - mat - nab - nag - nan - nap - nay - net - nit - not - nut - oat - pat - rat - sat - tat - vat - 
nay - bay - day - fay - gay - hay - jay - kay - lay - may - nab - nag - nan - nap - nat - pay - ray - say - way - 
nbc - abc - nbs - nrc - nyc - 
nbs - cbs - n's - nbc - pbs - 
nco - ncr - 
ncr - nco - nor - 
ned - bed - fed - jed - led - nee - net - new - nod - qed - red - ted - wed - 
nee - bee - dee - fee - gee - lee - ned - net - new - nne - pee - see - tee - vee - wee - 
net - bet - get - jet - let - met - nat - ned - nee - new - nit - not - nut - pet - ret - set - vet - wet - yet - 
new - dew - few - hew - jew - lew - mew - ned - nee - net - nnw - now - pew - sew - 
nib - bib - fib - nab - nih - nil - nip - nit - nob - rib - sib - 
nih - nib - nil - nip - nit - 
nil - ail - gil - nib - nih - nip - nit - oil - til - 
nip - dip - hip - lip - nap - nib - nih - nil - nit - pip - rip - sip - tip - yip - zip - 
nit - bit - cit - fit - hit - kit - lit - mit - nat - net - nib - nih - nil - nip - not - nut - pit - sit - tit - wit - 
nne - nee - nnw - one - 
nnw - new - nne - now - 
nob - bob - fob - gob - hob - job - lob - mob - nab - nib - nod - non - nor - not - nov - now - rob - sob - 
nod - cod - dod - god - ned - nob - non - nor - not - nov - now - pod - rod - sod - 
non - bon - con - don - ion - jon - nan - nob - nod - nor - not - nov - now - nun - ron - son - ton - von - won - yon - 
nor - for - ncr - nob - nod - non - not - nov - now - tor - 
not - cot - dot - got - hot - jot - lot - mot - nat - net - nit - nob - nod - non - nor - nov - now - nut - pot - rot - tot - 
nov - nob - nod - non - nor - not - now - 
now - bow - cow - dow - how - low - mow - new - nnw - nob - nod - non - nor - not - nov - pow - row - sow - tow - vow - wow - yow - 
nrc - arc - nbc - nyc - 
nsf - 
nun - bun - dun - fun - gun - hun - nan - non - nut - pun - run - sun - tun - 
nut - but - cut - gut - hut - jut - nat - net - nit - not - nun - out - put - rut - 
nyc - nbc - nrc - nyu - 
nyu - nyc - 
o's - a's - b's - c's - d's - e's - f's - g's - h's - i's - j's - k's - l's - m's - n's - p's - q's - r's - s's - t's - u's - v's - w's - x's - y's - z's - 
oaf - oak - oar - oat - off - 
oak - oaf - oar - oat - yak - 
oar - bar - car - dar - ear - far - gar - jar - mar - oaf - oak - oat - orr - our - par - tar - war - 
oat - bat - cat - eat - fat - hat - mat - nat - oaf - oak - oar - oct - oft - opt - ott - out - pat - rat - sat - tat - vat - 
oct - act - oat - oft - opt - ott - out - 
odd - add - ode - old - 
ode - odd - one - ore - owe - 
off - oaf - oft - 
oft - aft - eft - oat - oct - off - opt - ott - out - 
ohm - 
oil - ail - gil - nil - owl - til - 
old - odd - 
one - nne - ode - ore - owe - 
opt - apt - oat - oct - oft - ott - out - 
orb - ore - orr - 
ore - are - ere - ire - ode - one - orb - orr - owe - 
orr - err - oar - orb - ore - our - 
ott - itt - oat - oct - oft - opt - out - 
our - cur - fur - oar - orr - out - 
out - but - cut - gut - hut - jut - nut - oat - oct - oft - opt - ott - our - put - rut - 
ova - eva - tva - 
owe - awe - ewe - ode - one - ore - owl - own - 
owl - awl - oil - owe - own - 
own - awn - owe - owl - 
p's - a's - b's - c's - d's - e's - f's - g's - h's - i's - j's - k's - l's - m's - n's - o's - pbs - pus - q's - r's - s's - t's - u's - v's - w's - x's - y's - z's - 
pad - bad - dad - fad - gad - had - lad - mad - pal - pam - pan - pap - par - pat - paw - pax - pay - paz - phd - pod - sad - tad - wad - 
pal - cal - gal - hal - pad - pam - pan - pap - par - pat - paw - pax - pay - paz - pol - sal - 
pam - bam - cam - dam - gam - ham - jam - lam - pad - pal - pan - pap - par - pat - paw - pax - pay - paz - ppm - ram - sam - tam - yam - 
pan - ban - can - dan - fan - han - ian - jan - man - nan - pad - pal - pam - pap - par - pat - paw - pax - pay - paz - pen - pin - pun - ran - san - tan - van - wan - zan - 
pap - cap - gap - hap - lap - map - nap - pad - pal - pam - pan - par - pat - paw - pax - pay - paz - pdp - pep - pip - pop - pup - rap - sap - tap - yap - zap - 
par - bar - car - dar - ear - far - gar - jar - mar - oar - pad - pal - pam - pan - pap - pat - paw - pax - pay - paz - per - tar - war - 
pat - bat - cat - eat - fat - hat - mat - nat - oat - pad - pal - pam - pan - pap - par - paw - pax - pay - paz - pet - pit - pot - put - rat - sat - tat - vat - 
paw - caw - haw - jaw - law - maw - pad - pal - pam - pan - pap - par - pat - pax - pay - paz - pew - pow - raw - saw - yaw - 
pax - lax - max - pad - pal - pam - pan - pap - par - pat - paw - pay - paz - sax - tax - wax - 
pay - bay - day - fay - gay - hay - jay - kay - lay - may - nay - pad - pal - pam - pan - pap - par - pat - paw - pax - paz - ply - pry - ray - say - way - 
paz - pad - pal - pam - pan - pap - par - pat - paw - pax - pay - 
pbs - cbs - nbs - p's - pus - 
pdp - pap - pep - pip - pop - pup - 
pea - lea - pee - peg - pen - pep - per - pet - pew - pta - sea - tea - yea - 
pee - bee - dee - fee - gee - lee - nee - pea - peg - pen - pep - per - pet - pew - pie - poe - see - tee - vee - wee - 
peg - beg - keg - leg - meg - pea - pee - pen - pep - per - pet - pew - pig - pug - 
pen - ben - den - hen - ken - len - men - pan - pea - pee - peg - pep - per - pet - pew - pin - pun - sen - ten - yen - zen - 
pep - pap - pdp - pea - pee - peg - pen - per - pet - pew - pip - pop - pup - rep - 
per - her - par - pea - pee - peg - pen - pep - pet - pew - 
pet - bet - get - jet - let - met - net - pat - pea - pee - peg - pen - pep - per - pew - pit - pot - put - ret - set - vet - wet - yet - 
pew - dew - few - hew - jew - lew - mew - new - paw - pea - pee - peg - pen - pep - per - pet - pow - sew - 
phd - pad - phi - pod - 
phi - chi - phd - poi - psi - 
pie - die - lie - pee - pig - pin - pip - pit - poe - tie - vie - 
pig - big - dig - fig - gig - jig - mig - peg - pie - pin - pip - pit - pug - rig - wig - zig - 
pin - bin - din - fin - gin - kin - lin - min - pan - pen - pie - pig - pip - pit - pun - sin - tin - win - yin - 
pip - dip - hip - lip - nip - pap - pdp - pep - pie - pig - pin - pit - pop - pup - rip - sip - tip - yip - zip - 
pit - bit - cit - fit - hit - kit - lit - mit - nit - pat - pet - pie - pig - pin - pip - pot - put - sit - tit - wit - 
ply - ely - fly - pay - pry - sly - 
pod - cod - dod - god - nod - pad - phd - poe - poi - pol - pop - pot - pow - rod - sod - 
poe - doe - foe - hoe - joe - moe - pee - pie - pod - poi - pol - pop - pot - pow - roe - toe - woe - zoe - 
poi - hoi - phi - pod - poe - pol - pop - pot - pow - psi - 
pol - col - pal - pod - poe - poi - pop - pot - pow - sol - 
pop - bop - cop - fop - gop - hop - lop - mop - pap - pdp - pep - pip - pod - poe - poi - pol - pot - pow - pup - sop - top - wop - 
pot - cot - dot - got - hot - jot - lot - mot - not - pat - pet - pit - pod - poe - poi - pol - pop - pow - put - rot - tot - 
pow - bow - cow - dow - how - low - mow - now - paw - pew - pod - poe - poi - pol - pop - pot - row - sow - tow - vow - wow - yow - 
ppm - pam - rpm - 
pro - fro - pry - 
pry - cry - dry - fry - pay - ply - pro - try - wry - 
psi - lsi - phi - poi - 
pta - eta - pea - 
pub - bub - cub - dub - hub - puc - pug - pun - pup - pus - put - rub - sub - tub - 
puc - pub - pug - pun - pup - pus - put - pvc - 
pug - aug - bug - dug - hug - jug - lug - mug - peg - pig - pub - puc - pun - pup - pus - put - rug - tug - 
pun - bun - dun - fun - gun - hun - nun - pan - pen - pin - pub - puc - pug - pup - pus - put - run - sun - tun - 
pup - cup - pap - pdp - pep - pip - pop - pub - puc - pug - pun - pus - put - sup - 
pus - bus - gus - p's - pbs - pub - puc - pug - pun - pup - put - sus - 
put - but - cut - gut - hut - jut - nut - out - pat - pet - pit - pot - pub - puc - pug - pun - pup - pus - rut - 
pvc - puc - 
q's - a's - b's - c's - d's - e's - f's - g's - h's - i's - j's - k's - l's - m's - n's - o's - p's - r's - s's - t's - u's - v's - w's - x's - y's - z's - 
qed - bed - fed - jed - led - ned - red - ted - wed - 
qua - quo - 
quo - qua - 
r&d - red - rid - rod - 
r's - a's - b's - c's - d's - e's - f's - g's - h's - i's - j's - k's - l's - m's - n's - o's - p's - q's - s's - t's - u's - v's - w's - x's - y's - z's - 
rae - mae - rag - raj - ram - ran - rap - rat - raw - ray - roe - rue - rye - 
rag - bag - fag - gag - jag - lag - nag - rae - raj - ram - ran - rap - rat - raw - ray - rig - rug - sag - tag - wag - zag - 
raj - rae - rag - ram - ran - rap - rat - raw - ray - 
ram - bam - cam - dam - gam - ham - jam - lam - pam - rae - rag - raj - ran - rap - rat - raw - ray - rim - rpm - rum - sam - tam - yam - 
ran - ban - can - dan - fan - han - ian - jan - man - nan - pan - rae - rag - raj - ram - rap - rat - raw - ray - ron - run - san - tan - van - wan - zan - 
rap - cap - gap - hap - lap - map - nap - pap - rae - rag - raj - ram - ran - rat - raw - ray - rep - rip - sap - tap - yap - zap - 
rat - bat - cat - eat - fat - hat - mat - nat - oat - pat - rae - rag - raj - ram - ran - rap - raw - ray - ret - rot - rut - sat - tat - vat - 
raw - caw - haw - jaw - law - maw - paw - rae - rag - raj - ram - ran - rap - rat - ray - row - saw - yaw - 
ray - bay - day - fay - gay - hay - jay - kay - lay - may - nay - pay - rae - rag - raj - ram - ran - rap - rat - raw - roy - say - way - 
rca - rna - 
reb - feb - red - rep - ret - rev - rex - rib - rob - rub - web - 
red - bed - fed - jed - led - ned - qed - r&d - reb - rep - ret - rev - rex - rid - rod - ted - wed - 
rep - pep - rap - reb - red - ret - rev - rex - rip - 
ret - bet - get - jet - let - met - net - pet - rat - reb - red - rep - rev - rex - rot - rut - set - vet - wet - yet - 
rev - lev - reb - red - rep - ret - rex - 
rex - hex - reb - red - rep - ret - rev - sex - vex - 
rho - rio - who - 
rib - bib - fib - nib - reb - rid - rig - rim - rio - rip - rob - rub - sib - 
rid - aid - bid - did - hid - kid - lid - mid - r&d - red - rib - rig - rim - rio - rip - rod - tid - 
rig - big - dig - fig - gig - jig - mig - pig - rag - rib - rid - rim - rio - rip - rug - wig - zig - 
rim - aim - dim - him - jim - kim - lim - ram - rib - rid - rig - rio - rip - rpm - rum - tim - 
rio - rho - rib - rid - rig - rim - rip - 
rip - dip - hip - lip - nip - pip - rap - rep - rib - rid - rig - rim - rio - sip - tip - yip - zip - 
rna - ana - dna - rca - 
rob - bob - fob - gob - hob - job - lob - mob - nob - reb - rib - rod - roe - ron - rot - row - roy - rub - sob - 
rod - cod - dod - god - nod - pod - r&d - red - rid - rob - roe - ron - rot - row - roy - sod - 
roe - doe - foe - hoe - joe - moe - poe - rae - rob - rod - ron - rot - row - roy - rue - rye - toe - woe - zoe - 
ron - bon - con - don - ion - jon - non - ran - rob - rod - roe - rot - row - roy - run - son - ton - von - won - yon - 
rot - cot - dot - got - hot - jot - lot - mot - not - pot - rat - ret - rob - rod - roe - ron - row - roy - rut - tot - 
row - bow - cow - dow - how - low - mow - now - pow - raw - rob - rod - roe - ron - rot - roy - sow - tow - vow - wow - yow - 
roy - boy - coy - hoy - joy - loy - ray - rob - rod - roe - ron - rot - row - soy - toy - 
rpm - ppm - ram - rim - rum - 
rub - bub - cub - dub - hub - pub - reb - rib - rob - rue - rug - rum - run - rut - sub - tub - 
rue - cue - due - hue - rae - roe - rub - rug - rum - run - rut - rye - sue - 
rug - aug - bug - dug - hug - jug - lug - mug - pug - rag - rig - rub - rue - rum - run - rut - tug - 
rum - bum - fum - gum - hum - mum - ram - rim - rpm - rub - rue - rug - run - rut - sum - tum - 
run - bun - dun - fun - gun - hun - nun - pun - ran - ron - rub - rue - rug - rum - rut - sun - tun - 
rut - but - cut - gut - hut - jut - nut - out - put - rat - ret - rot - rub - rue - rug - rum - run - 
rye - aye - bye - dye - eye - lye - rae - roe - rue - 
s's - a's - b's - c's - d's - e's - f's - g's - h's - i's - j's - k's - l's - m's - n's - o's - p's - q's - r's - sis - sus - t's - u's - v's - w's - x's - y's - z's - 
sac - lac - mac - sad - sag - sal - sam - san - sao - sap - sat - saw - sax - say - sec - sic - soc - wac - 
sad - bad - dad - fad - gad - had - lad - mad - pad - sac - sag - sal - sam - san - sao - sap - sat - saw - sax - say - sod - sud - tad - wad - 
sag - bag - fag - gag - jag - lag - nag - rag - sac - sad - sal - sam - san - sao - sap - sat - saw - sax - say - tag - wag - zag - 
sal - cal - gal - hal - pal - sac - sad - sag - sam - san - sao - sap - sat - saw - sax - say - sol - 
sam - bam - cam - dam - gam - ham - jam - lam - pam - ram - sac - sad - sag - sal - san - sao - sap - sat - saw - sax - say - scm - sum - tam - yam - 
san - ban - can - dan - fan - han - ian - jan - man - nan - pan - ran - sac - sad - sag - sal - sam - sao - sap - sat - saw - sax - say - sen - sin - son - sun - tan - van - wan - zan - 
sao - gao - lao - mao - sac - sad - sag - sal - sam - san - sap - sat - saw - sax - say - tao - 
sap - cap - gap - hap - lap - map - nap - pap - rap - sac - sad - sag - sal - sam - san - sao - sat - saw - sax - say - sip - sop - sup - tap - yap - zap - 
sat - bat - cat - eat - fat - hat - mat - nat - oat - pat - rat - sac - sad - sag - sal - sam - san - sao - sap - saw - sax - say - set - sit - sst - tat - vat - 
saw - caw - haw - jaw - law - maw - paw - raw - sac - sad - sag - sal - sam - san - sao - sap - sat - sax - say - sew - sow - ssw - yaw - 
sax - lax - max - pax - sac - sad - sag - sal - sam - san - sao - sap - sat - saw - say - sex - six - tax - wax - 
say - bay - day - fay - gay - hay - jay - kay - lay - may - nay - pay - ray - sac - sad - sag - sal - sam - san - sao - sap - sat - saw - sax - shy - sky - sly - soy - spy - way - 
sci - scm - ski - sri - 
scm - acm - sam - sci - sum - 
sea - lea - pea - sec - see - sen - seq - set - sew - sex - spa - tea - yea - 
sec - dec - sac - sea - see - sen - seq - set - sew - sex - sic - soc - 
see - bee - dee - fee - gee - lee - nee - pee - sea - sec - sen - seq - set - sew - sex - she - sse - sue - tee - vee - wee - 
sen - ben - den - hen - ken - len - men - pen - san - sea - sec - see - seq - set - sew - sex - sin - son - sun - ten - yen - zen - 
seq - ceq - sea - sec - see - sen - set - sew - sex - 
set - bet - get - jet - let - met - net - pet - ret - sat - sea - sec - see - sen - seq - sew - sex - sit - sst - vet - wet - yet - 
sew - dew - few - hew - jew - lew - mew - new - pew - saw - sea - sec - see - sen - seq - set - sex - sow - ssw - 
sex - hex - rex - sax - sea - sec - see - sen - seq - set - sew - six - vex - 
she - see - shu - shy - sse - sue - the - 
shu - she - shy - sou - stu - 
shy - say - she - shu - sky - sly - soy - spy - thy - why - 
sib - bib - fib - nib - rib - sic - sin - sip - sir - sis - sit - six - sob - sub - 
sic - sac - sec - sib - sin - sip - sir - sis - sit - six - soc - tic - 
sin - bin - din - fin - gin - kin - lin - min - pin - san - sen - sib - sic - sip - sir - sis - sit - six - son - sun - tin - win - yin - 
sip - dip - hip - lip - nip - pip - rip - sap - sib - sic - sin - sir - sis - sit - six - sop - sup - tip - yip - zip - 
sir - air - fir - sib - sic - sin - sip - sis - sit - six - 
sis - dis - his - s's - sib - sic - sin - sip - sir - sit - six - sus - vis - 
sit - bit - cit - fit - hit - kit - lit - mit - nit - pit - sat - set - sib - sic - sin - sip - sir - sis - six - sst - tit - wit - 
six - fix - mix - sax - sex - sib - sic - sin - sip - sir - sis - sit - 
ski - sci - sky - sri - 
sky - say - shy - ski - sly - soy - spy - 
sly - ely - fly - ply - say - shy - sky - soy - spy - 
sob - bob - fob - gob - hob - job - lob - mob - nob - rob - sib - soc - sod - sol - son - sop - sou - sow - soy - sub - 
soc - hoc - sac - sec - sic - sob - sod - sol - son - sop - sou - sow - soy - 
sod - cod - dod - god - nod - pod - rod - sad - sob - soc - sol - son - sop - sou - sow - soy - sud - 
sol - col - pol - sal - sob - soc - sod - son - sop - sou - sow - soy - 
son - bon - con - don - ion - jon - non - ron - san - sen - sin - sob - soc - sod - sol - sop - sou - sow - soy - sun - ton - von - won - yon - 
sop - bop - cop - fop - gop - hop - lop - mop - pop - sap - sip - sob - soc - sod - sol - son - sou - sow - soy - sup - top - wop - 
sou - lou - shu - sob - soc - sod - sol - son - sop - sow - soy - stu - you - 
sow - bow - cow - dow - how - low - mow - now - pow - row - saw - sew - sob - soc - sod - sol - son - sop - sou - soy - ssw - tow - vow - wow - yow - 
soy - boy - coy - hoy - joy - loy - roy - say - shy - sky - sly - sob - soc - sod - sol - son - sop - sou - sow - spy - toy - 
spa - cpa - epa - sea - spy - 
spy - say - shy - sky - sly - soy - spa - 
sri - sci - ski - uri - 
sse - see - she - sst - ssw - sue - use - 
sst - 1st - est - sat - set - sit - sse - ssw - 
ssw - saw - sew - sow - sse - sst - 
stu - btu - shu - sou - 
sub - bub - cub - dub - hub - pub - rub - sib - sob - sud - sue - sum - sun - sup - sus - tub - 
sud - bud - cud - dud - mud - sad - sod - sub - sue - sum - sun - sup - sus - 
sue - cue - due - hue - rue - see - she - sse - sub - sud - sum - sun - sup - sus - 
sum - bum - fum - gum - hum - mum - rum - sam - scm - sub - sud - sue - sun - sup - sus - tum - 
sun - bun - dun - fun - gun - hun - nun - pun - run - san - sen - sin - son - sub - sud - sue - sum - sup - sus - tun - 
sup - cup - pup - sap - sip - sop - sub - sud - sue - sum - sun - sus - 
sus - bus - gus - pus - s's - sis - sub - sud - sue - sum - sun - sup - 
t's - a's - b's - c's - d's - e's - f's - g's - h's - i's - j's - k's - l's - m's - n's - o's - p's - q's - r's - s's - u's - v's - w's - x's - y's - z's - 
tab - cab - dab - gab - jab - lab - nab - tad - tag - tam - tan - tao - tap - tar - tat - tau - tax - tub - 
tad - bad - dad - fad - gad - had - lad - mad - pad - sad - tab - tag - tam - tan - tao - tap - tar - tat - tau - tax - ted - tid - wad - 
tag - bag - fag - gag - jag - lag - nag - rag - sag - tab - tad - tam - tan - tao - tap - tar - tat - tau - tax - tog - tug - wag - zag - 
tam - bam - cam - dam - gam - ham - jam - lam - pam - ram - sam - tab - tad - tag - tan - tao - tap - tar - tat - tau - tax - tim - tom - tum - yam - 
tan - ban - can - dan - fan - han - ian - jan - man - nan - pan - ran - san - tab - tad - tag - tam - tao - tap - tar - tat - tau - tax - ten - tin - ton - tun - van - wan - zan - 
tao - gao - lao - mao - sao - tab - tad - tag - tam - tan - tap - tar - tat - tau - tax - too - two - 
tap - cap - gap - hap - lap - map - nap - pap - rap - sap - tab - tad - tag - tam - tan - tao - tar - tat - tau - tax - tip - top - yap - zap - 
tar - bar - car - dar - ear - far - gar - jar - mar - oar - par - tab - tad - tag - tam - tan - tao - tap - tat - tau - tax - tor - war - 
tat - bat - cat - eat - fat - hat - mat - nat - oat - pat - rat - sat - tab - tad - tag - tam - tan - tao - tap - tar - tau - tax - tit - tnt - tot - vat - 
tau - aau - tab - tad - tag - tam - tan - tao - tap - tar - tat - tax - 
tax - lax - max - pax - sax - tab - tad - tag - tam - tan - tao - tap - tar - tat - tau - twx - wax - 
tea - lea - pea - sea - ted - tee - tel - ten - tva - twa - yea - 
ted - bed - fed - jed - led - ned - qed - red - tad - tea - tee - tel - ten - tid - wed - 
tee - bee - dee - fee - gee - lee - nee - pee - see - tea - ted - tel - ten - the - tie - toe - vee - wee - 
tel - bel - del - eel - gel - mel - tea - ted - tee - ten - til - ttl - 
ten - ben - den - hen - ken - len - men - pen - sen - tan - tea - ted - tee - tel - tin - ton - tun - yen - zen - 
the - she - tee - thy - tie - toe - 
thy - shy - the - toy - try - tty - why - 
tic - sic - tid - tie - til - tim - tin - tip - tit - 
tid - aid - bid - did - hid - kid - lid - mid - rid - tad - ted - tic - tie - til - tim - tin - tip - tit - 
tie - die - lie - pie - tee - the - tic - tid - til - tim - tin - tip - tit - toe - vie - 
til - ail - gil - nil - oil - tel - tic - tid - tie - tim - tin - tip - tit - ttl - 
tim - aim - dim - him - jim - kim - lim - rim - tam - tic - tid - tie - til - tin - tip - tit - tom - tum - 
tin - bin - din - fin - gin - kin - lin - min - pin - sin - tan - ten - tic - tid - tie - til - tim - tip - tit - ton - tun - win - yin - 
tip - dip - hip - lip - nip - pip - rip - sip - tap - tic - tid - tie - til - tim - tin - tit - top - yip - zip - 
tit - bit - cit - fit - hit - kit - lit - mit - nit - pit - sit - tat - tic - tid - tie - til - tim - tin - tip - tnt - tot - wit - 
tnt - ant - tat - tit - tot - 
toe - doe - foe - hoe - joe - moe - poe - roe - tee - the - tie - tog - tom - ton - too - top - tor - tot - tow - toy - woe - zoe - 
tog - bog - cog - dog - fog - gog - hog - jog - log - tag - toe - tom - ton - too - top - tor - tot - tow - toy - tug - 
tom - hom - tam - tim - toe - tog - ton - too - top - tor - tot - tow - toy - tum - 
ton - bon - con - don - ion - jon - non - ron - son - tan - ten - tin - toe - tog - tom - too - top - tor - tot - tow - toy - tun - von - won - yon - 
too - boo - coo - moo - tao - toe - tog - tom - ton - top - tor - tot - tow - toy - two - woo - zoo - 
top - bop - cop - fop - gop - hop - lop - mop - pop - sop - tap - tip - toe - tog - tom - ton - too - tor - tot - tow - toy - wop - 
tor - for - nor - tar - toe - tog - tom - ton - too - top - tot - tow - toy - 
tot - cot - dot - got - hot - jot - lot - mot - not - pot - rot - tat - tit - tnt - toe - tog - tom - ton - too - top - tor - tow - toy - 
tow - bow - cow - dow - how - low - mow - now - pow - row - sow - toe - tog - tom - ton - too - top - tor - tot - toy - trw - vow - wow - yow - 
toy - boy - coy - hoy - joy - loy - roy - soy - thy - toe - tog - tom - ton - too - top - tor - tot - tow - try - tty - 
trw - tow - try - 
try - cry - dry - fry - pry - thy - toy - trw - tty - wry - 
ttl - btl - tel - til - tty - 
tty - thy - toy - try - ttl - 
tub - bub - cub - dub - hub - pub - rub - sub - tab - tug - tum - tun - 
tug - aug - bug - dug - hug - jug - lug - mug - pug - rug - tag - tog - tub - tum - tun - 
tum - bum - fum - gum - hum - mum - rum - sum - tam - tim - tom - tub - tug - tun - 
tun - bun - dun - fun - gun - hun - nun - pun - run - sun - tan - ten - tin - ton - tub - tug - tum - 
tva - eva - ova - tea - twa - 
twa - tea - tva - two - twx - 
two - tao - too - twa - twx - 
twx - tax - twa - two - 
u's - a's - b's - c's - d's - e's - f's - g's - h's - i's - j's - k's - l's - m's - n's - o's - p's - q's - r's - s's - t's - u.s - v's - w's - x's - y's - z's - 
u.s - u's - 
ugh - 
uhf - vhf - 
uri - sri - urn - 
urn - uri - usn - 
usa - gsa - usc - use - usn - 
usc - usa - use - usn - 
use - sse - usa - usc - usn - 
usn - urn - usa - usc - use - 
v's - a's - b's - c's - d's - e's - f's - g's - h's - i's - j's - k's - l's - m's - n's - o's - p's - q's - r's - s's - t's - u's - vis - w's - x's - y's - z's - 
van - ban - can - dan - fan - han - ian - jan - man - nan - pan - ran - san - tan - vat - von - wan - zan - 
vat - bat - cat - eat - fat - hat - mat - nat - oat - pat - rat - sat - tat - van - vet - 
vee - bee - dee - fee - gee - lee - nee - pee - see - tee - vet - vex - vie - wee - 
vet - bet - get - jet - let - met - net - pet - ret - set - vat - vee - vex - wet - yet - 
vex - hex - rex - sex - vee - vet - 
vhf - uhf - 
via - cia - vie - vii - vis - viz - 
vie - die - lie - pie - tie - vee - via - vii - vis - viz - 
vii - iii - via - vie - vis - viz - 
vis - dis - his - sis - v's - via - vie - vii - viz - 
viz - biz - liz - via - vie - vii - vis - 
von - bon - con - don - ion - jon - non - ron - son - ton - van - vow - won - yon - 
vow - bow - cow - dow - how - low - mow - now - pow - row - sow - tow - von - wow - yow - 
w's - a's - b's - c's - d's - e's - f's - g's - h's - i's - j's - k's - l's - m's - n's - o's - p's - q's - r's - s's - t's - u's - v's - was - x's - y's - z's - 
wac - lac - mac - sac - wad - wag - wah - wan - war - was - wax - way - 
wad - bad - dad - fad - gad - had - lad - mad - pad - sad - tad - wac - wag - wah - wan - war - was - wax - way - wed - 
wag - bag - fag - gag - jag - lag - nag - rag - sag - tag - wac - wad - wah - wan - war - was - wax - way - wig - zag - 
wah - bah - wac - wad - wag - wan - war - was - wax - way - yah - 
wan - ban - can - dan - fan - han - ian - jan - man - nan - pan - ran - san - tan - van - wac - wad - wag - wah - war - was - wax - way - win - won - zan - 
war - bar - car - dar - ear - far - gar - jar - mar - oar - par - tar - wac - wad - wag - wah - wan - was - wax - way - 
was - gas - w's - wac - wad - wag - wah - wan - war - wax - way - 
wax - lax - max - pax - sax - tax - wac - wad - wag - wah - wan - war - was - way - 
way - bay - day - fay - gay - hay - jay - kay - lay - may - nay - pay - ray - say - wac - wad - wag - wah - wan - war - was - wax - why - wry - 
web - feb - reb - wed - wee - wei - wet - 
wed - bed - fed - jed - led - ned - qed - red - ted - wad - web - wee - wei - wet - 
wee - bee - dee - fee - gee - lee - nee - pee - see - tee - vee - web - wed - wei - wet - woe - 
wei - web - wed - wee - wet - 
wet - bet - get - jet - let - met - net - pet - ret - set - vet - web - wed - wee - wei - wit - yet - 
who - rho - why - woo - 
why - shy - thy - way - who - wry - 
wig - big - dig - fig - gig - jig - mig - pig - rig - wag - win - wit - zig - 
win - bin - din - fin - gin - kin - lin - min - pin - sin - tin - wan - wig - wit - won - yin - 
wit - bit - cit - fit - hit - kit - lit - mit - nit - pit - sit - tit - wet - wig - win - 
woe - doe - foe - hoe - joe - moe - poe - roe - toe - wee - wok - won - woo - wop - wow - zoe - 
wok - woe - won - woo - wop - wow - 
won - bon - con - don - ion - jon - non - ron - son - ton - von - wan - win - woe - wok - woo - wop - wow - yon - 
woo - boo - coo - moo - too - who - woe - wok - won - wop - wow - zoo - 
wop - bop - cop - fop - gop - hop - lop - mop - pop - sop - top - woe - wok - won - woo - wow - 
wow - bow - cow - dow - how - low - mow - now - pow - row - sow - tow - vow - woe - wok - won - woo - wop - yow - 
wry - cry - dry - fry - pry - try - way - why - 
x's - a's - b's - c's - d's - e's - f's - g's - h's - i's - j's - k's - l's - m's - n's - o's - p's - q's - r's - s's - t's - u's - v's - w's - y's - z's - 
y's - a's - b's - c's - d's - e's - f's - g's - h's - i's - j's - k's - l's - m's - n's - o's - p's - q's - r's - s's - t's - u's - v's - w's - x's - z's - 
yah - bah - wah - yak - yam - yap - yaw - yuh - 
yak - oak - yah - yam - yap - yaw - 
yam - bam - cam - dam - gam - ham - jam - lam - pam - ram - sam - tam - yah - yak - yap - yaw - 
yap - cap - gap - hap - lap - map - nap - pap - rap - sap - tap - yah - yak - yam - yaw - yip - zap - 
yaw - caw - haw - jaw - law - maw - paw - raw - saw - yah - yak - yam - yap - yow - 
yea - lea - pea - sea - tea - yen - yet - 
yen - ben - den - hen - ken - len - men - pen - sen - ten - yea - yet - yin - yon - zen - 
yet - bet - get - jet - let - met - net - pet - ret - set - vet - wet - yea - yen - 
yin - bin - din - fin - gin - kin - lin - min - pin - sin - tin - win - yen - yip - yon - 
yip - dip - hip - lip - nip - pip - rip - sip - tip - yap - yin - zip - 
yon - bon - con - don - ion - jon - non - ron - son - ton - von - won - yen - yin - you - yow - 
you - lou - sou - yon - yow - 
yow - bow - cow - dow - how - low - mow - now - pow - row - sow - tow - vow - wow - yaw - yon - you - 
yuh - huh - yah - 
z's - a's - b's - c's - d's - e's - f's - g's - h's - i's - j's - k's - l's - m's - n's - o's - p's - q's - r's - s's - t's - u's - v's - w's - x's - y's - 
zag - bag - fag - gag - jag - lag - nag - rag - sag - tag - wag - zan - zap - zig - 
zan - ban - can - dan - fan - han - ian - jan - man - nan - pan - ran - san - tan - van - wan - zag - zap - zen - 
zap - cap - gap - hap - lap - map - nap - pap - rap - sap - tap - yap - zag - zan - zip - 
zen - ben - den - hen - ken - len - men - pen - sen - ten - yen - zan - 
zig - big - dig - fig - gig - jig - mig - pig - rig - wig - zag - zip - 
zip - dip - hip - lip - nip - pip - rip - sip - tip - yip - zap - zig - 
zoe - doe - foe - hoe - joe - moe - poe - roe - toe - woe - zoo - 
zoo - boo - coo - moo - too - woo - zoe - 
10th - 
aaas - haas - 
abbe - able - 
abed - abel - abet - 
abel - abed - abet - 
abet - abed - abel - abut - 
able - abbe - aile - axle - 
abut - abet - 
ache - acme - acre - 
acid - amid - arid - avid - 
acme - ache - acre - 
acre - ache - acme - 
acts - 
adam - 
aden - amen - eden - 
afar - ajar - 
afro - 
agee - ague - 
ague - agee - 
ahem - them - 
ahoy - bhoy - 
aida - aide - vida - 
aide - aida - aile - bide - fide - hide - ride - side - tide - vide - wide - 
aile - able - aide - axle - bile - file - mile - nile - pile - tile - vile - wile - 
ainu - 
airy - awry - wiry - 
ajar - afar - ajax - 
ajax - ajar - 
akin - skin - 
alai - alan - 
alan - alai - clan - elan - klan - plan - ulan - 
alba - alga - alia - alma - alva - elba - 
alec - alex - 
alex - alec - apex - flex - 
alga - alba - alia - alma - alva - olga - 
alia - alba - alga - alma - alva - asia - 
ally - 
alma - alba - alga - alia - alva - 
aloe - floe - sloe - 
alps - 
also - alto - 
alto - also - auto - 
alum - arum - blum - glum - plum - slum - 
alva - alba - alga - alia - alma - 
amen - aden - ames - omen - 
ames - amen - amos - ares - axes - 
amid - acid - arid - avid - 
ammo - 
amok - amos - 
amos - ames - amok - 
amra - aura - 
andy - indy - 
anew - knew - 
anna - anne - 
anne - anna - ante - 
ansi - anti - 
ante - anne - anti - 
anti - ansi - ante - 
anus - onus - 
apex - alex - 
apse - 
aqua - 
arab - crab - drab - grab - 
arch - 
area - ares - arpa - urea - 
ares - ames - area - axes - 
argo - 
arid - acid - amid - avid - grid - 
army - arty - 
arpa - area - 
arty - army - 
arum - alum - drum - 
aryl - 
ashy - 
asia - alia - usia - 
astm - 
at&t - it&t - 
atom - atop - 
atop - atom - stop - 
aunt - bunt - hunt - punt - runt - 
aura - amra - jura - lura - 
auto - alto - 
aver - over - 
avid - acid - amid - arid - avis - aviv - ovid - 
avis - avid - aviv - axis - 
aviv - avid - avis - 
avon - avow - axon - 
avow - avon - 
away - awry - sway - 
awry - airy - away - 
axes - ames - ares - axis - 
axis - avis - axes - 
axle - able - aile - 
axon - avon - 
babe - baby - bade - bake - bale - bane - bare - base - bate - 
baby - babe - 
bach - back - bash - bath - each - mach - 
back - bach - balk - bank - bark - bask - beck - bock - buck - hack - jack - lack - mack - pack - rack - sack - tack - wack - 
bade - babe - bake - bale - bane - bare - base - bate - bide - bode - dade - fade - jade - made - vade - wade - 
bail - bait - ball - bawl - boil - fail - gail - hail - jail - mail - nail - pail - rail - sail - tail - vail - wail - 
bait - bail - bart - batt - gait - wait - 
bake - babe - bade - baku - bale - bane - bare - base - bate - bike - cake - fake - jake - lake - make - rake - sake - take - wake - 
baku - bake - 
bald - bale - bali - balk - ball - balm - band - bard - baud - bawd - bold - 
bale - babe - bade - bake - bald - bali - balk - ball - balm - bane - bare - base - bate - bile - bole - dale - gale - hale - kale - male - pale - sale - tale - vale - wale - yale - 
bali - bald - bale - balk - ball - balm - mali - 
balk - back - bald - bale - bali - ball - balm - bank - bark - bask - bilk - bulk - salk - talk - walk - 
ball - bail - bald - bale - bali - balk - balm - bawl - bell - bill - bull - call - fall - gall - hall - mall - pall - tall - wall - 
balm - bald - bale - bali - balk - ball - calm - palm - 
band - bald - bane - bang - bank - bard - baud - bawd - bend - bind - bond - hand - land - rand - sand - wand - 
bane - babe - bade - bake - bale - band - bang - bank - bare - base - bate - bone - cane - dane - jane - kane - lane - mane - pane - sane - vane - wane - 
bang - band - bane - bank - bing - bong - dang - fang - gang - hang - lang - pang - rang - sang - tang - wang - yang - 
bank - back - balk - band - bane - bang - bark - bask - bunk - dank - hank - lank - rank - sank - tank - yank - 
barb - bard - bare - bark - barn - barr - bart - garb - 
bard - bald - band - barb - bare - bark - barn - barr - bart - baud - bawd - bird - byrd - card - hard - lard - ward - yard - 
bare - babe - bade - bake - bale - bane - barb - bard - bark - barn - barr - bart - base - bate - bore - care - dare - fare - hare - mare - pare - rare - ware - 
bark - back - balk - bank - barb - bard - bare - barn - barr - bart - bask - dark - hark - lark - mark - park - 
barn - barb - bard - bare - bark - barr - bart - bern - born - burn - darn - earn - warn - yarn - 
barr - barb - bard - bare - bark - barn - bart - burr - carr - parr - 
bart - bait - barb - bard - bare - bark - barn - barr - batt - bert - burt - cart - dart - hart - mart - part - tart - wart - 
base - babe - bade - bake - bale - bane - bare - bash - bask - bass - bate - bose - case - ease - lase - vase - 
bash - bach - base - bask - bass - bath - bush - cash - dash - gash - hash - lash - mash - nash - rash - sash - wash - 
bask - back - balk - bank - bark - base - bash - bass - cask - mask - task - 
bass - base - bash - bask - bess - boss - buss - lass - mass - pass - tass - 
bate - babe - bade - bake - bale - bane - bare - base - bath - batt - bite - byte - date - fate - gate - hate - kate - late - mate - nate - pate - rate - tate - 
bath - bach - bash - bate - batt - beth - both - hath - lath - math - oath - path - 
batt - bait - bart - bate - bath - bitt - butt - watt - 
baud - bald - band - bard - bawd - laud - saud - 
bawd - bald - band - bard - baud - bawl - 
bawl - bail - ball - bawd - bowl - yawl - 
bead - beak - beam - bean - bear - beat - beau - bend - brad - dead - head - lead - mead - read - 
beak - bead - beam - bean - bear - beat - beau - beck - leak - peak - weak - 
beam - bead - beak - bean - bear - beat - beau - ream - seam - team - 
bean - bead - beak - beam - bear - beat - beau - been - bern - bran - dean - jean - lean - mean - sean - wean - 
bear - bead - beak - beam - bean - beat - beau - beer - boar - dear - fear - gear - hear - lear - near - pear - rear - sear - tear - wear - year - 
beat - bead - beak - beam - bean - bear - beau - beet - belt - bent - bert - best - blat - boat - feat - heat - meat - neat - peat - seat - teat - 
beau - bead - beak - beam - bean - bear - beat - 
beck - back - beak - bock - buck - deck - heck - neck - peck - reck - 
beef - been - beep - beer - beet - reef - 
been - bean - beef - beep - beer - beet - bern - bien - keen - seen - teen - 
beep - beef - been - beer - beet - deep - jeep - keep - peep - seep - weep - 
beer - bear - beef - been - beep - beet - deer - leer - peer - veer - 
beet - beat - beef - been - beep - beer - belt - bent - bert - best - feet - meet - teet - 
bela - bell - belt - bema - beta - 
bell - ball - bela - belt - bill - bull - cell - dell - fell - hell - nell - sell - tell - well - yell - 
belt - beat - beet - bela - bell - bent - bert - best - bolt - felt - melt - pelt - welt - 
bema - bela - beta - 
bend - band - bead - bent - benz - bind - bond - fend - lend - mend - pend - rend - send - tend - vend - 
bent - beat - beet - belt - bend - benz - bert - best - bunt - cent - dent - gent - kent - lent - pent - rent - sent - tent - vent - went - 
benz - bend - bent - 
berg - bern - bert - borg - burg - 
bern - barn - bean - been - berg - bert - born - burn - cern - fern - kern - tern - 
bert - bart - beat - beet - belt - bent - berg - bern - best - burt - pert - wert - 
bess - bass - best - boss - buss - hess - jess - less - mess - ness - tess - 
best - beat - beet - belt - bent - bert - bess - bust - fest - jest - lest - nest - pest - rest - test - vest - west - zest - 
beta - bela - bema - beth - zeta - 
beth - bath - beta - both - seth - 
bevy - levy - 
bhoy - ahoy - buoy - 
bias - 
bibb - 
bide - aide - bade - bike - bile - bite - bode - fide - hide - ride - side - tide - vide - wide - 
bien - been - lien - mien - 
bike - bake - bide - bile - bite - hike - like - mike - pike - 
bile - aile - bale - bide - bike - bilk - bill - bite - bole - file - mile - nile - pile - tile - vile - wile - 
bilk - balk - bile - bill - bulk - milk - silk - 
bill - ball - bell - bile - bilk - bull - dill - fill - gill - hill - jill - kill - mill - pill - rill - sill - till - will - 
bind - band - bend - bing - bini - bird - bond - find - hind - kind - lind - mind - wind - 
bing - bang - bind - bini - bong - ding - king - ping - ring - sing - wing - zing - 
bini - bind - bing - mini - 
bird - bard - bind - byrd - gird - 
bite - bate - bide - bike - bile - bitt - byte - cite - kite - mite - rite - site - 
bitt - batt - bite - butt - mitt - pitt - witt - 
blab - blat - blob - slab - 
blat - beat - blab - blot - boat - flat - plat - slat - 
bled - blew - blvd - bred - fled - sled - 
blew - bled - blow - brew - flew - slew - 
blip - clip - flip - slip - 
blob - blab - bloc - blot - blow - glob - slob - 
bloc - blob - blot - blow - floc - 
blot - blat - blob - bloc - blow - boot - clot - plot - slot - 
blow - blew - blob - bloc - blot - brow - flow - glow - slow - 
blue - blum - blur - clue - flue - glue - 
blum - alum - blue - blur - glum - plum - slum - 
blur - blue - blum - slur - 
blvd - bled - 
boar - bear - boat - bohr - boor - hoar - roar - soar - 
boat - beat - blat - boar - bolt - boot - bout - coat - goat - moat - 
boca - bock - bona - coca - 
bock - back - beck - boca - book - buck - cock - dock - hock - jock - lock - mock - rock - sock - 
bode - bade - bide - body - bole - bone - bore - bose - code - mode - node - rode - 
body - bode - bogy - bony - boxy - cody - 
bogy - body - bony - boxy - fogy - 
bohr - boar - boor - mohr - 
boil - bail - bois - bowl - coil - foil - roil - soil - toil - 
bois - boil - boss - lois - 
bold - bald - bole - bolo - bolt - bond - boyd - cold - fold - gold - hold - mold - sold - told - wold - 
bole - bale - bile - bode - bold - bolo - bolt - bone - bore - bose - cole - dole - hole - mole - pole - role - sole - 
bolo - bold - bole - bolt - nolo - polo - solo - 
bolt - belt - boat - bold - bole - bolo - boot - bout - colt - dolt - holt - jolt - molt - volt - 
bomb - comb - lomb - tomb - womb - 
bona - boca - bond - bone - bong - bonn - bony - mona - 
bond - band - bend - bind - bold - bona - bone - bong - bonn - bony - boyd - fond - pond - yond - 
bone - bane - bode - bole - bona - bond - bong - bonn - bony - bore - bose - cone - done - gone - hone - lone - none - tone - zone - 
bong - bang - bing - bona - bond - bone - bonn - bony - borg - gong - hong - kong - long - pong - song - tong - wong - 
bonn - bona - bond - bone - bong - bony - boon - born - conn - 
bony - body - bogy - bona - bond - bone - bong - bonn - boxy - cony - pony - sony - tony - 
book - bock - boom - boon - boor - boot - cook - hook - look - nook - rook - took - 
boom - book - boon - boor - boot - doom - loom - room - zoom - 
boon - bonn - book - boom - boor - boot - born - coon - loon - moon - noon - soon - 
boor - boar - bohr - book - boom - boon - boot - door - moor - poor - 
boot - blot - boat - bolt - book - boom - boon - boor - bout - coot - foot - hoot - loot - moot - root - soot - toot - 
bore - bare - bode - bole - bone - borg - born - bose - core - fore - gore - lore - more - pore - sore - tore - wore - yore - 
borg - berg - bong - bore - born - burg - 
born - barn - bern - bonn - boon - bore - borg - burn - corn - horn - morn - torn - worn - zorn - 
bose - base - bode - bole - bone - bore - boss - dose - hose - jose - lose - nose - pose - rose - 
boss - bass - bess - bois - bose - buss - foss - joss - loss - moss - ross - toss - voss - 
both - bath - beth - moth - roth - 
bout - boat - bolt - boot - gout - pout - rout - tout - 
bowl - bawl - boil - cowl - fowl - howl - jowl - 
boxy - body - bogy - bony - foxy - 
boyd - bold - bond - 
brad - bead - brae - brag - bran - bray - bred - grad - 
brae - brad - brag - bran - bray - 
brag - brad - brae - bran - bray - brig - crag - drag - trag - 
bran - bean - brad - brae - brag - bray - bryn - fran - iran - 
bray - brad - brae - brag - bran - fray - gray - pray - tray - 
bred - bled - brad - brew - fred - 
brew - blew - bred - brow - crew - drew - grew - 
brig - brag - brim - prig - trig - 
brim - brig - grim - prim - trim - 
brow - blow - brew - crow - grow - prow - 
bryn - bran - 
bstj - 
buck - back - beck - bock - bulk - bunk - duck - huck - luck - muck - puck - suck - tuck - yuck - 
budd - judd - mudd - 
buff - cuff - duff - huff - muff - puff - ruff - tuff - 
bulb - bulk - bull - 
bulk - balk - bilk - buck - bulb - bull - bunk - hulk - sulk - 
bull - ball - bell - bill - bulb - bulk - burl - cull - dull - full - gull - hull - lull - mull - null - pull - 
bump - burp - dump - hump - jump - lump - pump - rump - 
bunk - bank - buck - bulk - bunt - dunk - funk - gunk - hunk - junk - punk - sunk - 
bunt - aunt - bent - bunk - burt - bust - butt - hunt - punt - runt - 
buoy - bhoy - bury - busy - 
burg - berg - borg - burl - burn - burp - burr - burt - bury - 
burl - bull - burg - burn - burp - burr - burt - bury - curl - furl - hurl - purl - 
burn - barn - bern - born - burg - burl - burp - burr - burt - bury - turn - 
burp - bump - burg - burl - burn - burr - burt - bury - 
burr - barr - burg - burl - burn - burp - burt - bury - purr - 
burt - bart - bert - bunt - burg - burl - burn - burp - burr - bury - bust - butt - curt - hurt - kurt - 
bury - buoy - burg - burl - burn - burp - burr - burt - busy - fury - jury - 
bush - bash - buss - bust - busy - gush - hush - lush - mush - push - rush - 
buss - bass - bess - boss - bush - bust - busy - fuss - russ - 
bust - best - bunt - burt - bush - buss - busy - butt - dust - gust - just - lust - must - oust - rust - 
busy - buoy - bury - bush - buss - bust - 
butt - batt - bitt - bunt - burt - bust - mutt - putt - 
buzz - fuzz - 
byrd - bard - bird - 
byte - bate - bite - 
cacm - calm - jacm - 
cady - cody - lady - 
cafe - cage - cake - came - cane - cape - care - case - cave - safe - 
cage - cafe - cake - came - cane - cape - care - case - cave - gage - page - rage - sage - wage - 
cain - chin - coin - fain - gain - lain - main - pain - rain - vain - 
cake - bake - cafe - cage - came - cane - cape - care - case - cave - coke - fake - jake - lake - make - rake - sake - take - wake - 
calf - call - calm - half - 
call - ball - calf - calm - carl - cell - cull - fall - gall - hall - mall - pall - tall - wall - 
calm - balm - cacm - calf - call - palm - 
came - cafe - cage - cake - camp - cane - cape - care - case - cave - come - dame - fame - game - lame - name - same - tame - 
camp - came - carp - damp - lamp - ramp - tamp - vamp - 
cane - bane - cafe - cage - cake - came - cant - cape - care - case - cave - cone - dane - jane - kane - lane - mane - pane - sane - vane - wane - 
cant - cane - cart - cast - cent - kant - pant - rant - want - 
cape - cafe - cage - cake - came - cane - capo - care - case - cave - cope - gape - nape - rape - tape - 
capo - cape - 
card - bard - care - carl - carp - carr - cart - cord - curd - hard - lard - ward - yard - 
care - bare - cafe - cage - cake - came - cane - cape - card - carl - carp - carr - cart - case - cave - core - cure - dare - fare - hare - mare - pare - rare - ware - 
carl - call - card - care - carp - carr - cart - curl - earl - karl - 
carp - camp - card - care - carl - carr - cart - corp - harp - karp - warp - 
carr - barr - card - care - carl - carp - cart - parr - 
cart - bart - cant - card - care - carl - carp - carr - cast - curt - dart - hart - mart - part - tart - wart - 
case - base - cafe - cage - cake - came - cane - cape - care - cash - cask - cast - cave - ease - lase - vase - 
cash - bash - case - cask - cast - cosh - dash - gash - hash - lash - mash - nash - rash - sash - wash - 
cask - bask - case - cash - cast - mask - task - 
cast - cant - cart - case - cash - cask - cost - cyst - east - fast - hast - last - mast - past - vast - wast - 
catv - 
cave - cafe - cage - cake - came - cane - cape - care - case - cove - dave - eave - gave - have - nave - pave - rave - save - wave - 
ccny - cony - cuny - 
cede - code - 
ceil - cell - coil - neil - veil - 
cell - bell - call - ceil - cull - dell - fell - hell - nell - sell - tell - well - yell - 
cent - bent - cant - dent - gent - kent - lent - pent - rent - sent - tent - vent - went - 
cern - bern - corn - fern - kern - tern - 
chad - chao - chap - char - chat - chaw - clad - shad - 
chao - chad - chap - char - chat - chaw - 
chap - chad - chao - char - chat - chaw - chip - chop - clap - crap - 
char - chad - chao - chap - chat - chaw - czar - 
chat - chad - chao - chap - char - chaw - chit - coat - that - what - 
chaw - chad - chao - chap - char - chat - chew - chow - claw - craw - shaw - thaw - 
chef - chen - chew - 
chen - chef - chew - chin - then - when - 
chew - chaw - chef - chen - chow - crew - 
chic - chin - chip - chit - 
chin - cain - chen - chic - chip - chit - coin - shin - thin - 
chip - chap - chic - chin - chit - chop - clip - ship - whip - 
chit - chat - chic - chin - chip - whit - 
chop - chap - chip - chou - chow - coop - crop - shop - whop - 
chou - chop - chow - thou - 
chow - chaw - chew - chop - chou - crow - show - 
chub - chug - chum - club - 
chug - chub - chum - thug - 
chum - chub - chug - 
cite - bite - city - cute - kite - mite - rite - site - 
city - cite - pity - 
clad - chad - clam - clan - clap - claw - clay - clod - glad - 
clam - clad - clan - clap - claw - clay - cram - flam - slam - 
clan - alan - clad - clam - clap - claw - clay - elan - klan - plan - ulan - 
clap - chap - clad - clam - clan - claw - clay - clip - crap - flap - slap - 
claw - chaw - clad - clam - clan - clap - clay - craw - flaw - 
clay - clad - clam - clan - clap - claw - cloy - play - slay - 
clio - clip - 
clip - blip - chip - clap - clio - flip - slip - 
clod - clad - clog - clot - cloy - plod - 
clog - clod - clot - cloy - flog - slog - 
clot - blot - clod - clog - cloy - coot - plot - slot - 
cloy - clay - clod - clog - clot - 
club - chub - clue - cluj - flub - 
clue - blue - club - cluj - flue - glue - 
cluj - club - clue - 
coal - coat - coax - coil - cool - cowl - foal - goal - 
coat - boat - chat - coal - coax - colt - coot - cost - goat - moat - 
coax - coal - coat - 
cobb - comb - 
coca - boca - cock - coco - coda - cola - coma - 
cock - bock - coca - coco - cook - cork - dock - hock - jock - lock - mock - rock - sock - 
coco - coca - cock - 
coda - coca - code - cody - cola - coma - soda - 
code - bode - cede - coda - cody - coke - cole - come - cone - cope - core - cove - mode - node - rode - 
cody - body - cady - coda - code - cony - copy - cosy - cozy - 
coed - cold - cord - 
cohn - coin - conn - coon - corn - john - 
coil - boil - ceil - coal - coin - cool - cowl - foil - roil - soil - toil - 
coin - cain - chin - cohn - coil - conn - coon - corn - join - loin - 
coke - cake - code - cole - come - cone - cope - core - cove - joke - poke - woke - yoke - 
cola - coca - coda - cold - cole - colt - coma - kola - lola - 
cold - bold - coed - cola - cole - colt - cord - fold - gold - hold - mold - sold - told - wold - 
cole - bole - code - coke - cola - cold - colt - come - cone - cope - core - cove - dole - hole - mole - pole - role - sole - 
colt - bolt - coat - cola - cold - cole - coot - cost - cult - dolt - holt - jolt - molt - volt - 
coma - coca - coda - cola - comb - come - soma - 
comb - bomb - cobb - coma - come - lomb - tomb - womb - 
come - came - code - coke - cole - coma - comb - cone - cope - core - cove - dome - home - lome - rome - some - tome - 
cone - bone - cane - code - coke - cole - come - conn - cony - cope - core - cove - done - gone - hone - lone - none - tone - zone - 
conn - bonn - cohn - coin - cone - cony - coon - corn - 
cony - bony - ccny - cody - cone - conn - copy - cosy - cozy - cuny - pony - sony - tony - 
cook - book - cock - cool - coon - coop - coot - cork - hook - look - nook - rook - took - 
cool - coal - coil - cook - coon - coop - coot - cowl - fool - pool - tool - wool - 
coon - boon - cohn - coin - conn - cook - cool - coop - coot - corn - loon - moon - noon - soon - 
coop - chop - cook - cool - coon - coot - corp - coup - crop - hoop - loop - poop - 
coot - boot - clot - coat - colt - cook - cool - coon - coop - cost - foot - hoot - loot - moot - root - soot - toot - 
cope - cape - code - coke - cole - come - cone - copy - core - cove - dope - hope - lope - pope - rope - 
copy - cody - cony - cope - cosy - cozy - 
cord - card - coed - cold - core - cork - corn - corp - curd - ford - lord - word - 
core - bore - care - code - coke - cole - come - cone - cope - cord - cork - corn - corp - cove - cure - fore - gore - lore - more - pore - sore - tore - wore - yore - 
cork - cock - cook - cord - core - corn - corp - fork - pork - work - york - 
corn - born - cern - cohn - coin - conn - coon - cord - core - cork - corp - horn - morn - torn - worn - zorn - 
corp - carp - coop - cord - core - cork - corn - coup - 
cosh - cash - cost - cosy - gosh - posh - 
cost - cast - coat - colt - coot - cosh - cosy - cyst - host - lost - most - post - yost - 
cosy - cody - cony - copy - cosh - cost - cozy - posy - rosy - 
coup - coop - corp - soup - 
cove - cave - code - coke - cole - come - cone - cope - core - dove - hove - jove - love - move - rove - wove - 
cowl - bowl - coal - coil - cool - fowl - howl - jowl - 
cozy - cody - cony - copy - cosy - 
crab - arab - crag - cram - crap - craw - crib - drab - grab - 
crag - brag - crab - cram - crap - craw - drag - trag - 
cram - clam - crab - crag - crap - craw - dram - pram - tram - 
crap - chap - clap - crab - crag - cram - craw - crop - trap - wrap - 
craw - chaw - claw - crab - crag - cram - crap - crew - crow - draw - 
crew - brew - chew - craw - crow - drew - grew - 
crib - crab - drib - 
crop - chop - coop - crap - crow - drop - prop - 
crow - brow - chow - craw - crew - crop - grow - prow - 
crud - crux - cruz - 
crux - crud - cruz - 
cruz - crud - crux - 
cuba - cube - tuba - 
cube - cuba - cure - cute - rube - tube - 
cuff - buff - duff - huff - muff - puff - ruff - tuff - 
cull - bull - call - cell - cult - curl - dull - full - gull - hull - lull - mull - null - pull - 
cult - colt - cull - curt - 
cuny - ccny - cony - puny - suny - 
curb - curd - cure - curl - curt - 
curd - card - cord - curb - cure - curl - curt - hurd - kurd - 
cure - care - core - cube - curb - curd - curl - curt - cute - jure - lure - pure - sure - 
curl - burl - carl - cull - curb - curd - cure - curt - furl - hurl - purl - 
curt - burt - cart - cult - curb - curd - cure - curl - hurt - kurt - 
cusp - 
cute - cite - cube - cure - jute - lute - mute - 
cyst - cast - cost - 
czar - char - 
dada - dade - dana - data - 
dade - bade - dada - dale - dame - dane - dare - date - dave - daze - fade - jade - made - vade - wade - 
dahl - wahl - 
dais - 
dale - bale - dade - daly - dame - dane - dare - date - dave - daze - dole - gale - hale - kale - male - pale - sale - tale - vale - wale - yale - 
daly - dale - davy - duly - 
dame - came - dade - dale - damn - damp - dane - dare - date - dave - daze - dime - dome - fame - game - lame - name - same - tame - 
damn - dame - damp - darn - dawn - 
damp - camp - dame - damn - dump - lamp - ramp - tamp - vamp - 
dana - dada - dane - dang - dank - data - lana - mana - sana - 
dane - bane - cane - dade - dale - dame - dana - dang - dank - dare - date - dave - daze - dine - done - dune - dyne - jane - kane - lane - mane - pane - sane - vane - wane - 
dang - bang - dana - dane - dank - ding - dung - fang - gang - hang - lang - pang - rang - sang - tang - wang - yang - 
dank - bank - dana - dane - dang - dark - dunk - hank - lank - rank - sank - tank - yank - 
dare - bare - care - dade - dale - dame - dane - dark - darn - dart - date - dave - daze - dire - fare - hare - mare - pare - rare - ware - 
dark - bark - dank - dare - darn - dart - hark - lark - mark - park - 
darn - barn - damn - dare - dark - dart - dawn - earn - warn - yarn - 
dart - bart - cart - dare - dark - darn - dirt - hart - mart - part - tart - wart - 
dash - bash - cash - dish - gash - hash - lash - mash - nash - rash - sash - wash - 
data - dada - dana - date - rata - 
date - bate - dade - dale - dame - dane - dare - data - dave - daze - dote - fate - gate - hate - kate - late - mate - nate - pate - rate - tate - 
daub - drub - 
dave - cave - dade - dale - dame - dane - dare - date - davy - daze - dive - dove - eave - gave - have - nave - pave - rave - save - wave - 
davy - daly - dave - navy - wavy - 
dawn - damn - darn - down - fawn - lawn - pawn - yawn - 
daze - dade - dale - dame - dane - dare - date - dave - doze - faze - gaze - haze - laze - maze - raze - 
dead - bead - deaf - deal - dean - dear - deed - dyad - head - lead - mead - read - 
deaf - dead - deal - dean - dear - leaf - 
deal - dead - deaf - dean - dear - dell - dial - dual - heal - meal - neal - peal - real - seal - teal - veal - weal - zeal - 
dean - bean - dead - deaf - deal - dear - jean - lean - mean - sean - wean - 
dear - bear - dead - deaf - deal - dean - deer - fear - gear - hear - lear - near - pear - rear - sear - tear - wear - year - 
debt - deft - dent - 
deck - beck - desk - dick - dock - duck - heck - neck - peck - reck - 
deed - dead - deem - deep - deer - died - feed - heed - need - peed - reed - seed - weed - 
deem - deed - deep - deer - diem - seem - teem - 
deep - beep - deed - deem - deer - jeep - keep - peep - seep - weep - 
deer - beer - dear - deed - deem - deep - dyer - leer - peer - veer - 
deft - debt - defy - dent - heft - left - 
defy - deft - deny - dewy - 
deja - 
dell - bell - cell - deal - dill - doll - dull - fell - hell - nell - sell - tell - well - yell - 
demo - memo - 
dent - bent - cent - debt - deft - deny - dint - gent - kent - lent - pent - rent - sent - tent - vent - went - 
deny - defy - dent - dewy - 
desk - deck - disk - dusk - 
deus - zeus - 
dewy - defy - deny - 
dial - deal - dill - dual - sial - vial - 
dice - dick - dime - dine - dire - dive - lice - mice - nice - rice - vice - 
dick - deck - dice - disk - dock - duck - hick - kick - lick - nick - pick - rick - sick - tick - wick - 
dido - dodo - 
died - deed - diem - diet - lied - tied - 
diem - deem - died - diet - 
diet - died - diem - dint - dirt - duet - viet - 
dill - bill - dell - dial - doll - dull - fill - gill - hill - jill - kill - mill - pill - rill - sill - till - will - 
dime - dame - dice - dine - dire - dive - dome - lime - rime - time - 
dine - dane - dice - dime - ding - dint - dire - dive - done - dune - dyne - fine - line - mine - nine - pine - sine - tine - vine - wine - 
ding - bing - dang - dine - dint - dung - king - ping - ring - sing - wing - zing - 
dint - dent - diet - dine - ding - dirt - hint - lint - mint - oint - pint - tint - 
dire - dare - dice - dime - dine - dirt - dive - eire - fire - hire - mire - sire - tire - wire - 
dirt - dart - diet - dint - dire - 
disc - dish - disk - 
dish - dash - disc - disk - fish - wish - 
disk - desk - dick - disc - dish - dusk - fisk - risk - 
diva - dive - kiva - siva - viva - 
dive - dave - dice - dime - dine - dire - diva - dove - five - give - hive - jive - live - wive - 
dock - bock - cock - deck - dick - duck - hock - jock - lock - mock - rock - sock - 
dodd - dodo - todd - 
dodo - dido - dodd - 
doff - duff - goff - hoff - 
doge - dole - dome - done - dope - dose - dote - dove - doze - loge - 
dole - bole - cole - dale - doge - doll - dolt - dome - done - dope - dose - dote - dove - doze - hole - mole - pole - role - sole - 
doll - dell - dill - dole - dolt - dull - loll - moll - noll - poll - roll - toll - 
dolt - bolt - colt - dole - doll - holt - jolt - molt - volt - 
dome - come - dame - dime - doge - dole - done - dope - dose - dote - dove - doze - home - lome - rome - some - tome - 
done - bone - cone - dane - dine - doge - dole - dome - dope - dose - dote - dove - doze - dune - dyne - gone - hone - lone - none - tone - zone - 
doom - boom - door - loom - room - zoom - 
door - boor - doom - dour - moor - poor - 
dope - cope - doge - dole - dome - done - dose - dote - dove - doze - dupe - hope - lope - pope - rope - 
dora - nora - sora - 
dose - bose - doge - dole - dome - done - dope - dote - dove - doze - hose - jose - lose - nose - pose - rose - 
dote - date - doge - dole - dome - done - dope - dose - dove - doze - note - rote - tote - vote - 
doug - dour - drug - 
dour - door - doug - four - hour - pour - sour - tour - your - 
dove - cove - dave - dive - doge - dole - dome - done - dope - dose - dote - doze - hove - jove - love - move - rove - wove - 
down - dawn - gown - sown - town - 
doze - daze - doge - dole - dome - done - dope - dose - dote - dove - ooze - 
drab - arab - crab - drag - dram - draw - drib - drub - grab - 
drag - brag - crag - drab - dram - draw - dreg - drug - trag - 
dram - cram - drab - drag - draw - drum - pram - tram - 
draw - craw - drab - drag - dram - drew - 
dreg - drag - drew - drug - greg - 
drew - brew - crew - draw - dreg - grew - 
drib - crib - drab - drip - drub - 
drip - drib - drop - grip - trip - 
drop - crop - drip - prop - 
drub - daub - drab - drib - drug - drum - grub - 
drug - doug - drag - dreg - drub - drum - 
drum - arum - dram - drub - drug - 
dual - deal - dial - duel - dull - 
duck - buck - deck - dick - dock - duct - dunk - dusk - huck - luck - muck - puck - suck - tuck - yuck - 
duct - duck - duet - dust - 
duel - dual - duet - dull - fuel - 
duet - diet - duct - duel - dust - 
duff - buff - cuff - doff - huff - muff - puff - ruff - tuff - 
duke - dune - dupe - dyke - juke - luke - puke - 
dull - bull - cull - dell - dill - doll - dual - duel - duly - full - gull - hull - lull - mull - null - pull - 
duly - daly - dull - duty - july - 
duma - dumb - dump - puma - 
dumb - duma - dump - numb - 
dump - bump - damp - duma - dumb - hump - jump - lump - pump - rump - 
dune - dane - dine - done - duke - dung - dunk - dunn - dupe - dyne - june - rune - tune - 
dung - dang - ding - dune - dunk - dunn - hung - lung - mung - rung - sung - tung - 
dunk - bunk - dank - duck - dune - dung - dunn - dusk - funk - gunk - hunk - junk - punk - sunk - 
dunn - dune - dung - dunk - 
dupe - dope - duke - dune - 
dusk - desk - disk - duck - dunk - dust - musk - rusk - tusk - 
dust - bust - duct - duet - dusk - gust - just - lust - must - oust - rust - 
duty - duly - 
dyad - dead - 
dyer - deer - 
dyke - duke - dyne - 
dyne - dane - dine - done - dune - dyke - 
e'er - o'er - 
each - bach - etch - mach - 
earl - carl - earn - karl - 
earn - barn - darn - earl - warn - yarn - 
ease - base - case - east - easy - eave - else - lase - vase - 
east - cast - ease - easy - fast - hast - last - mast - past - vast - wast - 
easy - ease - east - 
eave - cave - dave - ease - gave - have - nave - pave - rave - save - wave - 
eben - eden - even - 
echo - 
eddy - edgy - 
eden - aden - eben - even - 
edge - edgy - 
edgy - eddy - edge - 
edit - emit - exit - 
edna - 
eeoc - 
egan - elan - 
eire - dire - fire - hire - mire - sire - tire - wire - 
elan - alan - clan - egan - klan - plan - ulan - 
elba - alba - ella - 
ella - elba - 
else - ease - 
emil - emit - evil - 
emit - edit - emil - exit - omit - 
emma - 
enid - 
enol - enos - 
enos - enol - eros - 
envy - 
epic - eric - 
erda - 
eric - epic - erie - erik - 
erie - eric - erik - 
erik - eric - erie - 
eros - enos - 
etch - each - itch - 
even - eben - eden - oven - 
evil - emil - 
exam - 
exit - edit - emit - 
eyed - 
ezra - 
face - fact - fade - fake - fame - fare - fate - faze - lace - mace - pace - race - 
fact - face - fast - pact - tact - 
fade - bade - dade - face - fake - fame - fare - fate - faze - fide - jade - made - vade - wade - 
fail - bail - fain - fair - fall - foil - gail - hail - jail - mail - nail - pail - rail - sail - tail - vail - wail - 
fain - cain - fail - fair - faun - fawn - gain - lain - main - pain - rain - vain - 
fair - fail - fain - hair - lair - nair - pair - 
fake - bake - cake - face - fade - fame - fare - fate - faze - jake - lake - make - rake - sake - take - wake - 
fall - ball - call - fail - fell - fill - full - gall - hall - mall - pall - tall - wall - 
fame - came - dame - face - fade - fake - fare - fate - faze - fume - game - lame - name - same - tame - 
fang - bang - dang - gang - hang - lang - pang - rang - sang - tang - wang - yang - 
fare - bare - care - dare - face - fade - fake - fame - farm - faro - fate - faze - fire - fore - hare - mare - pare - rare - ware - 
farm - fare - faro - firm - form - harm - warm - 
faro - fare - farm - 
fast - cast - east - fact - fest - fist - hast - last - mast - past - vast - wast - 
fate - bate - date - face - fade - fake - fame - fare - faze - fete - gate - hate - kate - late - mate - nate - pate - rate - tate - 
faun - fain - fawn - 
fawn - dawn - fain - faun - lawn - pawn - yawn - 
faze - daze - face - fade - fake - fame - fare - fate - gaze - haze - laze - maze - raze - 
fear - bear - dear - feat - gear - hear - lear - near - pear - rear - sear - tear - wear - year - 
feat - beat - fear - feet - felt - fest - fiat - flat - heat - meat - neat - peat - seat - teat - 
feed - deed - feel - feet - fend - feud - fled - fred - heed - need - peed - reed - seed - weed - 
feel - feed - feet - fell - fuel - heel - keel - peel - reel - 
feet - beet - feat - feed - feel - felt - fest - fret - meet - teet - 
fell - bell - cell - dell - fall - feel - felt - fill - full - hell - nell - sell - tell - well - yell - 
felt - belt - feat - feet - fell - fest - melt - pelt - welt - 
fend - bend - feed - feud - find - fond - fund - lend - mend - pend - rend - send - tend - vend - 
fern - bern - cern - kern - tern - 
fest - best - fast - feat - feet - felt - fist - jest - lest - nest - pest - rest - test - vest - west - zest - 
fete - fate - mete - pete - tete - 
feud - feed - fend - 
fiat - feat - fist - flat - 
fide - aide - bide - fade - fife - file - fine - fire - five - hide - ride - side - tide - vide - wide - 
fief - 
fife - fide - fifo - file - fine - fire - five - life - wife - 
fifo - fife - lifo - 
file - aile - bile - fide - fife - fill - film - fine - fire - five - mile - nile - pile - tile - vile - wile - 
fill - bill - dill - fall - fell - file - film - full - gill - hill - jill - kill - mill - pill - rill - sill - till - will - 
film - file - fill - firm - 
find - bind - fend - fine - fink - finn - fond - fund - hind - kind - lind - mind - wind - 
fine - dine - fide - fife - file - find - fink - finn - fire - five - line - mine - nine - pine - sine - tine - vine - wine - 
fink - find - fine - finn - fisk - funk - kink - link - mink - pink - rink - sink - wink - 
finn - find - fine - fink - ginn - 
fire - dire - eire - fare - fide - fife - file - fine - firm - five - fore - hire - mire - sire - tire - wire - 
firm - farm - film - fire - form - 
fish - dish - fisk - fist - wish - 
fisk - disk - fink - fish - fist - risk - 
fist - fast - fest - fiat - fish - fisk - gist - list - mist - 
five - dive - fide - fife - file - fine - fire - give - hive - jive - live - wive - 
flag - flak - flam - flap - flat - flaw - flax - flog - slag - 
flak - flag - flam - flap - flat - flaw - flax - 
flam - clam - flag - flak - flap - flat - flaw - flax - foam - slam - 
flap - clap - flag - flak - flam - flat - flaw - flax - flip - flop - slap - 
flat - blat - feat - fiat - flag - flak - flam - flap - flaw - flax - flit - plat - slat - 
flaw - claw - flag - flak - flam - flap - flat - flax - flew - flow - 
flax - flag - flak - flam - flap - flat - flaw - flex - flux - 
flea - fled - flee - flew - flex - plea - 
fled - bled - feed - flea - flee - flew - flex - fred - sled - 
flee - flea - fled - flew - flex - floe - flue - free - glee - 
flew - blew - flaw - flea - fled - flee - flex - flow - slew - 
flex - alex - flax - flea - fled - flee - flew - flux - 
flip - blip - clip - flap - flit - flop - slip - 
flit - flat - flip - slit - 
floc - bloc - floe - flog - flop - flow - 
floe - aloe - flee - floc - flog - flop - flow - flue - sloe - 
flog - clog - flag - floc - floe - flop - flow - frog - slog - 
flop - flap - flip - floc - floe - flog - flow - plop - slop - 
flow - blow - flaw - flew - floc - floe - flog - flop - glow - slow - 
flub - club - flue - flux - 
flue - blue - clue - flee - floe - flub - flux - glue - 
flux - flax - flex - flub - flue - klux - 
foal - coal - foam - foil - fool - foul - fowl - goal - 
foam - flam - foal - form - loam - roam - 
foci - loci - 
fogy - bogy - foxy - 
foil - boil - coil - fail - foal - fool - foul - fowl - roil - soil - toil - 
fold - bold - cold - folk - fond - food - ford - gold - hold - mold - sold - told - wold - 
folk - fold - fork - polk - yolk - 
fond - bond - fend - find - fold - font - food - ford - fund - pond - yond - 
font - fond - foot - fort - mont - pont - wont - 
food - fold - fond - fool - foot - ford - good - hood - mood - rood - wood - 
fool - cool - foal - foil - food - foot - foul - fowl - pool - tool - wool - 
foot - boot - coot - font - food - fool - fort - hoot - loot - moot - root - soot - toot - 
ford - cord - fold - fond - food - fore - fork - form - fort - lord - word - 
fore - bore - core - fare - fire - ford - fork - form - fort - gore - lore - more - pore - sore - tore - wore - yore - 
fork - cork - folk - ford - fore - form - fort - pork - work - york - 
form - farm - firm - foam - ford - fore - fork - fort - norm - worm - 
fort - font - foot - ford - fore - fork - form - mort - port - sort - tort - 
foss - boss - fuss - joss - loss - moss - ross - toss - voss - 
foul - foal - foil - fool - four - fowl - soul - 
four - dour - foul - hour - pour - sour - tour - your - 
fowl - bowl - cowl - foal - foil - fool - foul - howl - jowl - 
foxy - boxy - fogy - 
fran - bran - frau - fray - iran - 
frau - fran - fray - 
fray - bray - fran - frau - frey - gray - pray - tray - 
fred - bred - feed - fled - free - fret - frey - 
free - flee - fred - fret - frey - frye - tree - 
fret - feet - fred - free - frey - 
frey - fray - fred - free - fret - grey - prey - 
frog - flog - from - 
from - frog - prom - 
frye - free - 
fuel - duel - feel - full - furl - 
fuji - 
full - bull - cull - dull - fall - fell - fill - fuel - furl - gull - hull - lull - mull - null - pull - 
fume - fame - fuse - 
fund - fend - find - fond - funk - lund - 
funk - bunk - dunk - fink - fund - gunk - hunk - junk - punk - sunk - 
furl - burl - curl - fuel - full - fury - hurl - purl - 
fury - bury - furl - jury - 
fuse - fume - fuss - muse - ruse - 
fuss - buss - foss - fuse - russ - 
fuzz - buzz - 
gaff - goff - 
gage - cage - gale - game - gape - gate - gave - gaze - page - rage - sage - wage - 
gail - bail - fail - gain - gait - gall - gaul - hail - jail - mail - nail - pail - rail - sail - tail - vail - wail - 
gain - cain - fain - gail - gait - grin - lain - main - pain - rain - vain - 
gait - bait - gail - gain - galt - grit - wait - 
gala - gale - gall - galt - gila - 
gale - bale - dale - gage - gala - gall - galt - game - gape - gate - gave - gaze - hale - kale - male - pale - sale - tale - vale - wale - yale - 
gall - ball - call - fall - gail - gala - gale - galt - gaul - gill - gull - hall - mall - pall - tall - wall - 
galt - gait - gala - gale - gall - gilt - halt - malt - salt - walt - 
game - came - dame - fame - gage - gale - gape - gate - gave - gaze - lame - name - same - tame - 
gang - bang - dang - fang - gong - hang - lang - pang - rang - sang - tang - wang - yang - 
gape - cape - gage - gale - game - gate - gave - gaze - nape - rape - tape - 
garb - barb - gary - 
gary - garb - gory - mary - nary - vary - wary - 
gash - bash - cash - dash - gasp - gosh - gush - hash - lash - mash - nash - rash - sash - wash - 
gasp - gash - hasp - rasp - wasp - 
gate - bate - date - fate - gage - gale - game - gape - gave - gaze - hate - kate - late - mate - nate - pate - rate - tate - 
gaul - gail - gall - gaur - haul - maul - paul - raul - saul - 
gaur - gaul - 
gave - cave - dave - eave - gage - gale - game - gape - gate - gaze - give - have - nave - pave - rave - save - wave - 
gawk - hawk - 
gaze - daze - faze - gage - gale - game - gape - gate - gave - haze - laze - maze - raze - 
gear - bear - dear - fear - hear - lear - near - pear - rear - sear - tear - wear - year - 
geld - gild - gold - held - meld - weld - 
gene - gent - gone - rene - 
gent - bent - cent - dent - gene - kent - lent - pent - rent - sent - tent - vent - went - 
germ - term - 
gibe - give - jibe - 
gift - gilt - gist - lift - rift - sift - tift - 
gila - gala - gild - gill - gilt - gina - lila - mila - 
gild - geld - gila - gill - gilt - gird - gold - mild - wild - 
gill - bill - dill - fill - gall - gila - gild - gilt - girl - gull - hill - jill - kill - mill - pill - rill - sill - till - will - 
gilt - galt - gift - gila - gild - gill - gist - hilt - jilt - lilt - milt - silt - tilt - wilt - 
gina - gila - ginn - gino - nina - tina - 
ginn - finn - gina - gino - 
gino - gina - ginn - wino - 
gird - bird - gild - girl - 
girl - gill - gird - 
gist - fist - gift - gilt - gust - list - mist - 
give - dive - five - gave - gibe - hive - jive - live - wive - 
glad - clad - goad - grad - 
glee - flee - glen - glue - 
glen - glee - gwen - 
glib - glob - 
glob - blob - glib - glom - glow - slob - 
glom - glob - glow - glum - 
glow - blow - flow - glob - glom - grow - slow - 
glue - blue - clue - flue - glee - glum - glut - 
glum - alum - blum - glom - glue - glut - plum - slum - 
glut - glue - glum - gout - slut - 
gnat - gnaw - goat - 
gnaw - gnat - 
goad - glad - goal - goat - gold - good - grad - load - road - toad - 
goal - coal - foal - goad - goat - 
goat - boat - coat - gnat - goad - goal - gout - moat - 
goer - goes - 
goes - goer - 
goff - doff - gaff - golf - goof - hoff - 
gogh - gogo - gosh - 
gogo - gogh - logo - pogo - togo - 
gold - bold - cold - fold - geld - gild - goad - golf - good - hold - mold - sold - told - wold - 
golf - goff - gold - goof - gulf - wolf - 
gone - bone - cone - done - gene - gong - gore - hone - lone - none - tone - zone - 
gong - bong - gang - gone - hong - kong - long - pong - song - tong - wong - 
good - food - goad - gold - goof - hood - mood - rood - wood - 
goof - goff - golf - good - hoof - roof - 
gore - bore - core - fore - gone - gory - lore - more - pore - sore - tore - wore - yore - 
gory - gary - gore - tory - 
gosh - cosh - gash - gogh - gush - posh - 
gout - bout - glut - goat - pout - rout - tout - 
gown - down - sown - town - 
grab - arab - crab - drab - grad - gray - grub - 
grad - brad - glad - goad - grab - gray - grid - 
gray - bray - fray - grab - grad - grey - pray - tray - 
greg - dreg - grew - grey - 
grew - brew - crew - drew - greg - grey - grow - 
grey - frey - gray - greg - grew - prey - 
grid - arid - grad - grim - grin - grip - grit - 
grim - brim - grid - grin - grip - grit - prim - trim - 
grin - gain - grid - grim - grip - grit - orin - 
grip - drip - grid - grim - grin - grit - trip - 
grit - gait - grid - grim - grin - grip - writ - 
grow - brow - crow - glow - grew - prow - 
grub - drub - grab - 
guam - 
gulf - golf - gull - gulp - 
gull - bull - cull - dull - full - gall - gill - gulf - gulp - hull - lull - mull - null - pull - 
gulp - gulf - gull - pulp - 
gunk - bunk - dunk - funk - hunk - junk - punk - sunk - 
guru - 
gush - bush - gash - gosh - gust - hush - lush - mush - push - rush - 
gust - bust - dust - gist - gush - just - lust - must - oust - rust - 
gwen - glen - gwyn - 
gwyn - gwen - 
gyro - 
haag - haas - hang - 
haas - aaas - haag - hans - hays - 
hack - back - hank - hark - hawk - heck - hick - hock - huck - jack - lack - mack - pack - rack - sack - tack - wack - 
hahn - kahn - 
hail - bail - fail - gail - hair - hall - haul - jail - mail - nail - pail - rail - sail - tail - vail - wail - 
hair - fair - hail - heir - lair - nair - pair - 
hale - bale - dale - gale - half - hall - halo - halt - hare - hate - have - haze - hole - kale - male - pale - sale - tale - vale - wale - yale - 
half - calf - hale - hall - halo - halt - 
hall - ball - call - fall - gall - hail - hale - half - halo - halt - haul - hell - hill - hull - mall - pall - tall - wall - 
halo - hale - half - hall - halt - palo - 
halt - galt - hale - half - hall - halo - hart - hast - hilt - holt - malt - salt - walt - 
hand - band - hang - hank - hans - hard - hind - land - rand - sand - wand - 
hang - bang - dang - fang - gang - haag - hand - hank - hans - hong - hung - lang - pang - rang - sang - tang - wang - yang - 
hank - bank - dank - hack - hand - hang - hans - hark - hawk - honk - hunk - lank - rank - sank - tank - yank - 
hans - haas - hand - hang - hank - hays - mans - sans - 
hard - bard - card - hand - hare - hark - harm - harp - hart - herd - hurd - lard - ward - yard - 
hare - bare - care - dare - fare - hale - hard - hark - harm - harp - hart - hate - have - haze - here - hire - mare - pare - rare - ware - 
hark - bark - dark - hack - hank - hard - hare - harm - harp - hart - hawk - lark - mark - park - 
harm - farm - hard - hare - hark - harp - hart - warm - 
harp - carp - hard - hare - hark - harm - hart - hasp - karp - warp - 
hart - bart - cart - dart - halt - hard - hare - hark - harm - harp - hast - hurt - mart - part - tart - wart - 
hash - bash - cash - dash - gash - hasp - hast - hath - hush - lash - mash - nash - rash - sash - wash - 
hasp - gasp - harp - hash - hast - rasp - wasp - 
hast - cast - east - fast - halt - hart - hash - hasp - host - last - mast - past - vast - wast - 
hate - bate - date - fate - gate - hale - hare - hath - have - haze - kate - late - mate - nate - pate - rate - tate - 
hath - bath - hash - hate - lath - math - oath - path - 
haul - gaul - hail - hall - maul - paul - raul - saul - 
have - cave - dave - eave - gave - hale - hare - hate - haze - hive - hove - nave - pave - rave - save - wave - 
hawk - gawk - hack - hank - hark - 
hays - haas - hans - 
haze - daze - faze - gaze - hale - hare - hate - have - hazy - laze - maze - raze - 
hazy - haze - lazy - 
he'd - head - heed - held - herd - we'd - 
head - bead - dead - he'd - heal - heap - hear - heat - heed - held - herd - lead - mead - read - 
heal - deal - head - heap - hear - heat - heel - hell - meal - neal - peal - real - seal - teal - veal - weal - zeal - 
heap - head - heal - hear - heat - help - hemp - leap - neap - reap - 
hear - bear - dear - fear - gear - head - heal - heap - heat - heir - herr - hoar - lear - near - pear - rear - sear - tear - wear - year - 
heat - beat - feat - head - heal - heap - hear - heft - meat - neat - peat - seat - teat - 
hebe - here - 
heck - beck - deck - hack - hick - hock - huck - neck - peck - reck - 
heed - deed - feed - he'd - head - heel - held - herd - hued - need - peed - reed - seed - weed - 
heel - feel - heal - heed - hell - keel - peel - reel - 
heft - deft - heat - left - 
heir - hair - hear - herr - weir - 
held - geld - he'd - head - heed - hell - helm - help - herd - hold - meld - weld - 
hell - bell - cell - dell - fell - hall - heal - heel - held - helm - help - hill - hull - nell - sell - tell - well - yell - 
helm - held - hell - help - holm - 
help - heap - held - hell - helm - hemp - kelp - yelp - 
hemp - heap - help - hump - kemp - 
hera - herb - herd - here - hero - herr - sera - vera - 
herb - hera - herd - here - hero - herr - verb - 
herd - hard - he'd - head - heed - held - hera - herb - here - hero - herr - hurd - 
here - hare - hebe - hera - herb - herd - hero - herr - hire - mere - were - 
hero - hera - herb - herd - here - herr - nero - zero - 
herr - hear - heir - hera - herb - herd - here - hero - kerr - 
hess - bess - hiss - jess - less - mess - ness - tess - 
hewn - sewn - 
hick - dick - hack - heck - hock - huck - kick - lick - nick - pick - rick - sick - tick - wick - 
hide - aide - bide - fide - hike - hire - hive - hyde - ride - side - tide - vide - wide - 
high - hugh - nigh - sigh - 
hike - bike - hide - hire - hive - like - mike - pike - 
hill - bill - dill - fill - gill - hall - hell - hilt - hull - jill - kill - mill - pill - rill - sill - till - will - 
hilt - gilt - halt - hill - hint - holt - jilt - lilt - milt - silt - tilt - wilt - 
hind - bind - find - hand - hint - kind - lind - mind - wind - 
hint - dint - hilt - hind - hunt - lint - mint - oint - pint - tint - 
hire - dire - eire - fire - hare - here - hide - hike - hive - mire - sire - tire - wire - 
hiss - hess - kiss - miss - piss - 
hive - dive - five - give - have - hide - hike - hire - hove - jive - live - wive - 
hoar - boar - hear - hour - roar - soar - 
hobo - homo - lobo - 
hock - bock - cock - dock - hack - heck - hick - honk - hook - huck - jock - lock - mock - rock - sock - 
hoff - doff - goff - hoof - huff - 
hold - bold - cold - fold - gold - held - hole - holm - holt - hood - mold - sold - told - wold - 
hole - bole - cole - dole - hale - hold - holm - holt - home - hone - hope - hose - hove - howe - mole - pole - role - sole - 
holm - helm - hold - hole - holt - 
holt - bolt - colt - dolt - halt - hilt - hold - hole - holm - hoot - host - hoyt - jolt - molt - volt - 
home - come - dome - hole - homo - hone - hope - hose - hove - howe - lome - rome - some - tome - 
homo - hobo - home - 
hone - bone - cone - done - gone - hole - home - hong - honk - hope - hose - hove - howe - lone - none - tone - zone - 
hong - bong - gong - hang - hone - honk - hung - kong - long - pong - song - tong - wong - 
honk - hank - hock - hone - hong - hook - hunk - monk - tonk - 
hood - food - good - hold - hoof - hook - hoop - hoot - mood - rood - wood - 
hoof - goof - hoff - hood - hook - hoop - hoot - roof - 
hook - book - cook - hock - honk - hood - hoof - hoop - hoot - look - nook - rook - took - 
hoop - coop - hood - hoof - hook - hoot - loop - poop - 
hoot - boot - coot - foot - holt - hood - hoof - hook - hoop - host - hoyt - loot - moot - root - soot - toot - 
hope - cope - dope - hole - home - hone - hose - hove - howe - lope - pope - rope - 
horn - born - corn - morn - torn - worn - zorn - 
hose - bose - dose - hole - home - hone - hope - host - hove - howe - jose - lose - nose - pose - rose - 
host - cost - hast - holt - hoot - hose - hoyt - lost - most - post - yost - 
hour - dour - four - hoar - pour - sour - tour - your - 
hove - cove - dove - have - hive - hole - home - hone - hope - hose - howe - jove - love - move - rove - wove - 
howe - hole - home - hone - hope - hose - hove - howl - lowe - rowe - 
howl - bowl - cowl - fowl - howe - jowl - 
hoyt - holt - hoot - host - 
huck - buck - duck - hack - heck - hick - hock - hulk - hunk - luck - muck - puck - suck - tuck - yuck - 
hued - heed - hurd - 
huff - buff - cuff - duff - hoff - muff - puff - ruff - tuff - 
huge - hugh - hugo - luge - 
hugh - high - huge - hugo - hush - pugh - 
hugo - huge - hugh - 
hulk - bulk - huck - hull - hunk - sulk - 
hull - bull - cull - dull - full - gull - hall - hell - hill - hulk - hurl - lull - mull - null - pull - 
hump - bump - dump - hemp - jump - lump - pump - rump - 
hung - dung - hang - hong - hunk - hunt - lung - mung - rung - sung - tung - 
hunk - bunk - dunk - funk - gunk - hank - honk - huck - hulk - hung - hunt - junk - punk - sunk - 
hunt - aunt - bunt - hint - hung - hunk - hurt - punt - runt - 
hurd - curd - hard - herd - hued - hurl - hurt - kurd - 
hurl - burl - curl - furl - hull - hurd - hurt - purl - 
hurt - burt - curt - hart - hunt - hurd - hurl - kurt - 
hush - bush - gush - hash - hugh - lush - mush - push - rush - 
hyde - hide - 
hymn - 
i'll - 
i've - 
ibex - 
ibid - ibis - 
ibis - ibid - iris - isis - 
icky - 
icon - iron - 
idea - 
idle - isle - 
idol - 
ieee - 
iffy - 
ifni - 
igor - 
inca - inch - 
inch - inca - itch - 
indy - andy - 
info - into - 
into - info - onto - 
iota - iowa - 
iowa - iota - 
ipso - 
iran - bran - fran - iraq - iron - ivan - 
iraq - iran - 
iris - ibis - isis - uris - 
irma - 
iron - icon - iran - 
isis - ibis - iris - 
isle - idle - 
it&t - at&t - 
it'd - 
itch - etch - inch - 
item - stem - 
ivan - iran - 
jack - back - hack - jacm - jock - lack - mack - pack - rack - sack - tack - wack - 
jacm - cacm - jack - 
jade - bade - dade - fade - jake - jane - jude - made - vade - wade - 
jail - bail - fail - gail - hail - mail - nail - pail - rail - sail - tail - vail - wail - 
jake - bake - cake - fake - jade - jane - joke - juke - lake - make - rake - sake - take - wake - 
jane - bane - cane - dane - jade - jake - june - kane - lane - mane - pane - sane - vane - wane - 
java - kava - lava - 
jazz - 
jean - bean - dean - joan - juan - lean - mean - sean - wean - 
jeep - beep - deep - keep - peep - seep - weep - 
jeff - neff - 
jerk - perk - 
jess - bess - hess - jest - joss - less - mess - ness - tess - 
jest - best - fest - jess - just - lest - nest - pest - rest - test - vest - west - zest - 
jibe - gibe - jive - 
jill - bill - dill - fill - gill - hill - jilt - kill - mill - pill - rill - sill - till - will - 
jilt - gilt - hilt - jill - jolt - lilt - milt - silt - tilt - wilt - 
jinx - 
jive - dive - five - give - hive - jibe - jove - live - wive - 
joan - jean - john - join - juan - loan - moan - 
jock - bock - cock - dock - hock - jack - lock - mock - rock - sock - 
joel - joey - jowl - noel - 
joey - joel - 
john - cohn - joan - join - 
join - coin - joan - john - loin - 
joke - coke - jake - jose - jove - juke - poke - woke - yoke - 
jolt - bolt - colt - dolt - holt - jilt - molt - volt - 
jose - bose - dose - hose - joke - joss - jove - lose - nose - pose - rose - 
joss - boss - foss - jess - jose - loss - moss - ross - toss - voss - 
jove - cove - dove - hove - jive - joke - jose - love - move - rove - wove - 
jowl - bowl - cowl - fowl - howl - joel - 
juan - jean - joan - 
judd - budd - jude - judo - judy - mudd - 
jude - jade - judd - judo - judy - juke - june - jure - jute - nude - rude - 
judo - judd - jude - judy - juno - kudo - 
judy - judd - jude - judo - july - jury - rudy - 
juju - 
juke - duke - jake - joke - jude - june - jure - jute - luke - puke - 
july - duly - judy - jury - 
jump - bump - dump - hump - lump - pump - rump - 
june - dune - jane - jude - juke - junk - juno - jure - jute - rune - tune - 
junk - bunk - dunk - funk - gunk - hunk - june - juno - punk - sunk - 
juno - judo - june - junk - 
jura - aura - jure - jury - lura - 
jure - cure - jude - juke - june - jura - jury - jute - lure - pure - sure - 
jury - bury - fury - judy - july - jura - jure - 
just - bust - dust - gust - jest - lust - must - oust - rust - 
jute - cute - jude - juke - june - jure - lute - mute - 
kahn - hahn - kuhn - 
kale - bale - dale - gale - hale - kane - kate - kyle - male - pale - sale - tale - vale - wale - yale - 
kane - bane - cane - dane - jane - kale - kant - kate - lane - mane - pane - sane - vane - wane - 
kant - cant - kane - kent - pant - rant - want - 
karl - carl - earl - karp - 
karp - carp - harp - karl - warp - 
kate - bate - date - fate - gate - hate - kale - kane - katz - kite - late - mate - nate - pate - rate - tate - 
katz - kate - 
kava - java - kiva - lava - 
kayo - mayo - 
keel - feel - heel - keen - keep - peel - reel - 
keen - been - keel - keep - kern - seen - teen - 
keep - beep - deep - jeep - keel - keen - kelp - kemp - peep - seep - weep - 
kelp - help - keep - kemp - yelp - 
kemp - hemp - keep - kelp - 
keno - kent - 
kent - bent - cent - dent - gent - kant - keno - kept - lent - pent - rent - sent - tent - vent - went - 
kept - kent - sept - wept - 
kern - bern - cern - fern - keen - kerr - tern - 
kerr - herr - kern - 
keys - 
khan - klan - than - 
kick - dick - hick - kink - kirk - lick - nick - pick - rick - sick - tick - wick - 
kiev - 
kill - bill - dill - fill - gill - hill - jill - kilo - mill - pill - rill - sill - till - will - 
kilo - kill - silo - 
kind - bind - find - hind - king - kink - lind - mind - wind - 
king - bing - ding - kind - kink - kong - ping - ring - sing - wing - zing - 
kink - fink - kick - kind - king - kirk - link - mink - pink - rink - sink - wink - 
kirk - kick - kink - 
kiss - hiss - miss - piss - 
kite - bite - cite - kate - mite - rite - site - 
kiva - diva - kava - kivu - siva - viva - 
kivu - kiva - 
kiwi - 
klan - alan - clan - elan - khan - plan - ulan - 
klux - flux - 
knee - knew - 
knew - anew - knee - know - 
knit - knot - unit - 
knob - knot - know - knox - snob - 
knot - knit - knob - know - knox - 
know - knew - knob - knot - knox - snow - 
knox - knob - knot - know - 
koch - 
kola - cola - lola - 
kong - bong - gong - hong - king - long - pong - song - tong - wong - 
kudo - judo - 
kuhn - kahn - 
kurd - curd - hurd - kurt - 
kurt - burt - curt - hurt - kurd - 
kyle - kale - lyle - pyle - 
lace - face - lack - lacy - lake - lame - lane - lase - late - laue - laze - lice - mace - pace - race - 
lack - back - hack - jack - lace - lacy - lank - lark - lick - lock - luck - mack - pack - rack - sack - tack - wack - 
lacy - lace - lack - lady - lazy - lucy - racy - 
lady - cady - lacy - lazy - 
laid - lain - lair - land - lard - laud - maid - paid - raid - said - 
lain - cain - fain - gain - laid - lair - lawn - loin - main - pain - rain - vain - 
lair - fair - hair - laid - lain - nair - pair - 
lake - bake - cake - fake - jake - lace - lame - lane - lase - late - laue - laze - like - luke - make - rake - sake - take - wake - 
lamb - lame - lamp - limb - lomb - 
lame - came - dame - fame - game - lace - lake - lamb - lamp - lane - lase - late - laue - laze - lime - lome - name - same - tame - 
lamp - camp - damp - lamb - lame - limp - lump - ramp - tamp - vamp - 
lana - dana - land - lane - lang - lank - lava - lena - mana - sana - 
land - band - hand - laid - lana - lane - lang - lank - lard - laud - lend - lind - lund - rand - sand - wand - 
lane - bane - cane - dane - jane - kane - lace - lake - lame - lana - land - lang - lank - lase - late - laue - laze - line - lone - mane - pane - sane - vane - wane - 
lang - bang - dang - fang - gang - hang - lana - land - lane - lank - long - lung - pang - rang - sang - tang - wang - yang - 
lank - bank - dank - hank - lack - lana - land - lane - lang - lark - link - rank - sank - tank - yank - 
laos - lars - lass - taos - 
lard - bard - card - hard - laid - land - lark - lars - laud - lord - ward - yard - 
lark - bark - dark - hark - lack - lank - lard - lars - lurk - mark - park - 
lars - laos - lard - lark - lass - mars - 
lase - base - case - ease - lace - lake - lame - lane - lash - lass - last - late - laue - laze - lise - lose - vase - 
lash - bash - cash - dash - gash - hash - lase - lass - last - lath - lush - mash - nash - rash - sash - wash - 
lass - bass - laos - lars - lase - lash - last - less - loss - mass - pass - tass - 
last - cast - east - fast - hast - lase - lash - lass - lest - list - lost - lust - mast - past - vast - wast - 
late - bate - date - fate - gate - hate - kate - lace - lake - lame - lane - lase - lath - laue - laze - lute - mate - nate - pate - rate - tate - 
lath - bath - hath - lash - late - math - oath - path - 
laud - baud - laid - land - lard - laue - loud - saud - 
laue - lace - lake - lame - lane - lase - late - laud - laze - 
lava - java - kava - lana - 
lawn - dawn - fawn - lain - pawn - yawn - 
laze - daze - faze - gaze - haze - lace - lake - lame - lane - lase - late - laue - lazy - maze - raze - 
lazy - hazy - lacy - lady - laze - 
lead - bead - dead - head - leaf - leak - lean - leap - lear - lend - lewd - load - mead - read - 
leaf - deaf - lead - leak - lean - leap - lear - loaf - 
leak - beak - lead - leaf - lean - leap - lear - leek - peak - weak - 
lean - bean - dean - jean - lead - leaf - leak - leap - lear - leon - loan - mean - sean - wean - 
leap - heap - lead - leaf - leak - lean - lear - neap - reap - 
lear - bear - dear - fear - gear - hear - lead - leaf - leak - lean - leap - leer - liar - near - pear - rear - sear - tear - wear - year - 
leek - leak - leer - meek - peek - reek - seek - week - 
leer - beer - deer - lear - leek - peer - veer - 
left - deft - heft - lent - lest - lift - loft - 
lena - lana - lend - lens - lent - rena - 
lend - bend - fend - land - lead - lena - lens - lent - lewd - lind - lund - mend - pend - rend - send - tend - vend - 
lens - lena - lend - lent - less - 
lent - bent - cent - dent - gent - kent - left - lena - lend - lens - lest - lint - pent - rent - sent - tent - vent - went - 
leon - lean - lion - loon - lyon - neon - 
less - bess - hess - jess - lass - lens - lest - loss - mess - ness - tess - 
lest - best - fest - jest - last - left - lent - less - list - lost - lust - nest - pest - rest - test - vest - west - zest - 
levi - levy - 
levy - bevy - levi - 
lewd - lead - lend - 
liar - lear - 
lice - dice - lace - lick - life - like - lime - line - lise - live - mice - nice - rice - vice - 
lick - dick - hick - kick - lack - lice - link - lock - luck - nick - pick - rick - sick - tick - wick - 
lied - died - lien - lieu - lind - tied - 
lien - bien - lied - lieu - lion - mien - 
lieu - lied - lien - 
life - fife - lice - lifo - lift - like - lime - line - lise - live - wife - 
lifo - fifo - life - lift - 
lift - gift - left - life - lifo - lilt - lint - list - loft - rift - sift - tift - 
like - bike - hike - lake - lice - life - lime - line - lise - live - luke - mike - pike - 
lila - gila - lilt - lily - lima - lisa - lola - mila - 
lilt - gilt - hilt - jilt - lift - lila - lily - lint - list - milt - silt - tilt - wilt - 
lily - lila - lilt - oily - wily - 
lima - lila - limb - lime - limp - lisa - sima - 
limb - lamb - lima - lime - limp - lomb - 
lime - dime - lame - lice - life - like - lima - limb - limp - line - lise - live - lome - rime - time - 
limp - lamp - lima - limb - lime - lisp - lump - pimp - 
lind - bind - find - hind - kind - land - lend - lied - line - link - lint - lund - mind - wind - 
line - dine - fine - lane - lice - life - like - lime - lind - link - lint - lise - live - lone - mine - nine - pine - sine - tine - vine - wine - 
link - fink - kink - lank - lick - lind - line - lint - mink - pink - rink - sink - wink - 
lint - dint - hint - lent - lift - lilt - lind - line - link - list - mint - oint - pint - tint - 
lion - leon - lien - loon - lyon - pion - zion - 
lisa - lila - lima - lise - lisp - list - visa - 
lise - lase - lice - life - like - lime - line - lisa - lisp - list - live - lose - rise - vise - wise - 
lisp - limp - lisa - lise - list - wisp - 
list - fist - gist - last - lest - lift - lilt - lint - lisa - lise - lisp - lost - lust - mist - 
live - dive - five - give - hive - jive - lice - life - like - lime - line - lise - love - wive - 
load - goad - lead - loaf - loam - loan - lord - loud - road - toad - 
loaf - leaf - load - loam - loan - 
loam - foam - load - loaf - loan - loom - roam - 
loan - joan - lean - load - loaf - loam - loin - loon - moan - 
lobe - lobo - loge - lome - lone - lope - lore - lose - love - lowe - robe - 
lobo - hobo - lobe - logo - 
loci - foci - lock - loki - 
lock - bock - cock - dock - hock - jock - lack - lick - loci - look - luck - mock - rock - sock - 
loeb - lomb - 
loft - left - lift - loot - lost - soft - 
loge - doge - lobe - logo - lome - lone - lope - lore - lose - love - lowe - luge - 
logo - gogo - lobo - loge - pogo - togo - 
loin - coin - join - lain - loan - lois - loon - 
lois - bois - loin - loss - luis - 
loki - loci - 
lola - cola - kola - lila - loll - 
loll - doll - lola - lull - moll - noll - poll - roll - toll - 
lomb - bomb - comb - lamb - limb - loeb - lome - tomb - womb - 
lome - come - dome - home - lame - lime - lobe - loge - lomb - lone - lope - lore - lose - love - lowe - rome - some - tome - 
lone - bone - cone - done - gone - hone - lane - line - lobe - loge - lome - long - lope - lore - lose - love - lowe - none - tone - zone - 
long - bong - gong - hong - kong - lang - lone - lung - pong - song - tong - wong - 
look - book - cook - hook - lock - loom - loon - loop - loot - nook - rook - took - 
loom - boom - doom - loam - look - loon - loop - loot - room - zoom - 
loon - boon - coon - leon - lion - loan - loin - look - loom - loop - loot - lyon - moon - noon - soon - 
loop - coop - hoop - look - loom - loon - loot - poop - 
loot - boot - coot - foot - hoot - loft - look - loom - loon - loop - lost - moot - root - soot - toot - 
lope - cope - dope - hope - lobe - loge - lome - lone - lore - lose - love - lowe - pope - rope - 
lord - cord - ford - lard - load - lore - loud - word - 
lore - bore - core - fore - gore - lobe - loge - lome - lone - lope - lord - lose - love - lowe - lure - more - pore - sore - tore - wore - yore - 
lose - bose - dose - hose - jose - lase - lise - lobe - loge - lome - lone - lope - lore - loss - lost - love - lowe - nose - pose - rose - 
loss - boss - foss - joss - lass - less - lois - lose - lost - moss - ross - toss - voss - 
lost - cost - host - last - lest - list - loft - loot - lose - loss - lust - most - post - yost - 
loud - laud - load - lord - 
love - cove - dove - hove - jove - live - lobe - loge - lome - lone - lope - lore - lose - lowe - move - rove - wove - 
lowe - howe - lobe - loge - lome - lone - lope - lore - lose - love - rowe - 
luck - buck - duck - huck - lack - lick - lock - lucy - lurk - muck - puck - suck - tuck - yuck - 
lucy - lacy - luck - 
luge - huge - loge - luke - lure - lute - luxe - 
luis - lois - 
luke - duke - juke - lake - like - luge - lure - lute - luxe - puke - 
lull - bull - cull - dull - full - gull - hull - loll - lulu - mull - null - pull - 
lulu - lull - 
lump - bump - dump - hump - jump - lamp - limp - pump - rump - 
lund - fund - land - lend - lind - lung - 
lung - dung - hung - lang - long - lund - mung - rung - sung - tung - 
lura - aura - jura - lure - lurk - lyra - 
lure - cure - jure - lore - luge - luke - lura - lurk - lute - luxe - pure - sure - 
lurk - lark - luck - lura - lure - murk - turk - 
lush - bush - gush - hush - lash - lust - mush - push - rush - 
lust - bust - dust - gust - just - last - lest - list - lost - lush - must - oust - rust - 
lute - cute - jute - late - luge - luke - lure - lutz - luxe - mute - 
lutz - lute - 
luxe - luge - luke - lure - lute - 
lyle - kyle - pyle - 
lynn - lynx - lyon - wynn - 
lynx - lynn - 
lyon - leon - lion - loon - lynn - 
lyra - lura - myra - 
mace - face - lace - mach - mack - made - make - male - mane - mare - mate - maze - mice - pace - race - 
mach - bach - each - mace - mack - mash - math - much - 
mack - back - hack - jack - lack - mace - mach - mark - mask - mock - muck - pack - rack - sack - tack - wack - 
made - bade - dade - fade - jade - mace - make - male - mane - mare - mate - maze - mode - vade - wade - 
magi - mali - 
maid - laid - mail - maim - main - paid - raid - said - 
mail - bail - fail - gail - hail - jail - maid - maim - main - mall - maul - nail - pail - rail - sail - tail - vail - wail - 
maim - maid - mail - main - 
main - cain - fain - gain - lain - maid - mail - maim - mann - pain - rain - vain - 
make - bake - cake - fake - jake - lake - mace - made - male - mane - mare - mate - maze - mike - rake - sake - take - wake - 
male - bale - dale - gale - hale - kale - mace - made - make - mali - mall - malt - mane - mare - mate - maze - mile - mole - mule - pale - sale - tale - vale - wale - yale - 
mali - bali - magi - male - mall - malt - 
mall - ball - call - fall - gall - hall - mail - male - mali - malt - maul - mill - moll - mull - pall - tall - wall - 
malt - galt - halt - male - mali - mall - mart - mast - melt - milt - molt - salt - walt - 
mana - dana - lana - mane - mann - mans - many - maya - mona - sana - 
mane - bane - cane - dane - jane - kane - lane - mace - made - make - male - mana - mann - mans - many - mare - mate - maze - mine - pane - sane - vane - wane - 
mann - main - mana - mane - mans - many - 
mans - hans - mana - mane - mann - many - mars - mass - sans - 
many - mana - mane - mann - mans - mary - 
marc - mare - mark - mars - mart - marx - mary - 
mare - bare - care - dare - fare - hare - mace - made - make - male - mane - marc - mark - mars - mart - marx - mary - mate - maze - mere - mire - more - pare - rare - ware - 
mark - bark - dark - hark - lark - mack - marc - mare - mars - mart - marx - mary - mask - murk - park - 
mars - lars - mans - marc - mare - mark - mart - marx - mary - mass - 
mart - bart - cart - dart - hart - malt - marc - mare - mark - mars - marx - mary - mast - mort - part - tart - wart - 
marx - marc - mare - mark - mars - mart - mary - 
mary - gary - many - marc - mare - mark - mars - mart - marx - nary - vary - wary - 
mash - bash - cash - dash - gash - hash - lash - mach - mask - mass - mast - math - mesh - mush - nash - rash - sash - wash - 
mask - bask - cask - mack - mark - mash - mass - mast - musk - task - 
mass - bass - lass - mans - mars - mash - mask - mast - mess - miss - moss - pass - tass - 
mast - cast - east - fast - hast - last - malt - mart - mash - mask - mass - mist - most - must - past - vast - wast - 
mate - bate - date - fate - gate - hate - kate - late - mace - made - make - male - mane - mare - math - maze - mete - mite - mute - nate - pate - rate - tate - 
math - bath - hath - lath - mach - mash - mate - moth - myth - oath - path - 
maul - gaul - haul - mail - mall - paul - raul - saul - 
mawr - 
maya - mana - mayo - 
mayo - kayo - maya - 
maze - daze - faze - gaze - haze - laze - mace - made - make - male - mane - mare - mate - raze - 
mead - bead - dead - head - lead - meal - mean - meat - meld - mend - read - 
meal - deal - heal - mead - mean - meat - neal - peal - real - seal - teal - veal - weal - zeal - 
mean - bean - dean - jean - lean - mead - meal - meat - moan - sean - wean - 
meat - beat - feat - heat - mead - meal - mean - meet - melt - moat - neat - peat - seat - teat - 
meek - leek - meet - peek - reek - seek - week - 
meet - beet - feet - meat - meek - melt - teet - 
meld - geld - held - mead - melt - mend - mild - mold - weld - 
melt - belt - felt - malt - meat - meet - meld - milt - molt - pelt - welt - 
memo - demo - 
mend - bend - fend - lend - mead - meld - menu - mind - pend - rend - send - tend - vend - 
menu - mend - 
mere - here - mare - mete - mire - more - were - 
mesa - mesh - mess - 
mesh - mash - mesa - mess - mush - 
mess - bess - hess - jess - less - mass - mesa - mesh - miss - moss - ness - tess - 
mete - fete - mate - mere - mite - mute - pete - tete - 
mica - mice - mila - mira - pica - rica - 
mice - dice - lice - mace - mica - mike - mile - mine - mire - mite - nice - rice - vice - 
mien - bien - lien - moen - 
miff - muff - 
mike - bike - hike - like - make - mice - mile - mine - mire - mite - pike - 
mila - gila - lila - mica - mild - mile - milk - mill - milt - mira - 
mild - gild - meld - mila - mile - milk - mill - milt - mind - mold - wild - 
mile - aile - bile - file - male - mice - mike - mila - mild - milk - mill - milt - mine - mire - mite - mole - mule - nile - pile - tile - vile - wile - 
milk - bilk - mila - mild - mile - mill - milt - mink - silk - 
mill - bill - dill - fill - gill - hill - jill - kill - mall - mila - mild - mile - milk - milt - moll - mull - pill - rill - sill - till - will - 
milt - gilt - hilt - jilt - lilt - malt - melt - mila - mild - mile - milk - mill - mint - mist - mitt - molt - silt - tilt - wilt - 
mimi - mini - 
mind - bind - find - hind - kind - lind - mend - mild - mine - mini - mink - mint - wind - 
mine - dine - fine - line - mane - mice - mike - mile - mind - mini - mink - mint - mire - mite - nine - pine - sine - tine - vine - wine - 
mini - bini - mimi - mind - mine - mink - mint - 
mink - fink - kink - link - milk - mind - mine - mini - mint - monk - pink - rink - sink - wink - 
mint - dint - hint - lint - milt - mind - mine - mini - mink - mist - mitt - mont - oint - pint - tint - 
mira - mica - mila - mire - myra - 
mire - dire - eire - fire - hire - mare - mere - mice - mike - mile - mine - mira - mite - more - sire - tire - wire - 
miss - hiss - kiss - mass - mess - mist - moss - piss - 
mist - fist - gist - list - mast - milt - mint - miss - mitt - most - must - 
mite - bite - cite - kite - mate - mete - mice - mike - mile - mine - mire - mitt - mute - rite - site - 
mitt - bitt - milt - mint - mist - mite - mutt - pitt - witt - 
moan - joan - loan - mean - moat - moen - moon - morn - 
moat - boat - coat - goat - meat - moan - molt - mont - moot - mort - most - 
mock - bock - cock - dock - hock - jock - lock - mack - monk - muck - rock - sock - 
mode - bode - code - made - mole - more - move - node - rode - 
moen - mien - moan - moon - morn - 
mohr - bohr - moor - 
mold - bold - cold - fold - gold - hold - meld - mild - mole - moll - molt - mood - sold - told - wold - 
mole - bole - cole - dole - hole - male - mile - mode - mold - moll - molt - more - move - mule - pole - role - sole - 
moll - doll - loll - mall - mill - mold - mole - molt - mull - noll - poll - roll - toll - 
molt - bolt - colt - dolt - holt - jolt - malt - melt - milt - moat - mold - mole - moll - mont - moot - mort - most - volt - 
mona - bona - mana - monk - mont - 
monk - honk - mink - mock - mona - mont - tonk - 
mont - font - mint - moat - molt - mona - monk - moot - mort - most - pont - wont - 
mood - food - good - hood - mold - moon - moor - moot - rood - wood - 
moon - boon - coon - loon - moan - moen - mood - moor - moot - morn - muon - noon - soon - 
moor - boor - door - mohr - mood - moon - moot - poor - 
moot - boot - coot - foot - hoot - loot - moat - molt - mont - mood - moon - moor - mort - most - root - soot - toot - 
more - bore - core - fore - gore - lore - mare - mere - mire - mode - mole - morn - mort - move - pore - sore - tore - wore - yore - 
morn - born - corn - horn - moan - moen - moon - more - mort - torn - worn - zorn - 
mort - fort - mart - moat - molt - mont - moot - more - morn - most - port - sort - tort - 
moss - boss - foss - joss - loss - mass - mess - miss - most - ross - toss - voss - 
most - cost - host - lost - mast - mist - moat - molt - mont - moot - mort - moss - must - post - yost - 
moth - both - math - myth - roth - 
move - cove - dove - hove - jove - love - mode - mole - more - rove - wove - 
much - mach - muck - mush - ouch - such - 
muck - buck - duck - huck - luck - mack - mock - much - murk - musk - puck - suck - tuck - yuck - 
mudd - budd - judd - 
muff - buff - cuff - duff - huff - miff - puff - ruff - tuff - 
muir - 
mule - male - mile - mole - mull - muse - mute - rule - yule - 
mull - bull - cull - dull - full - gull - hull - lull - mall - mill - moll - mule - null - pull - 
mung - dung - hung - lung - rung - sung - tung - 
muon - moon - 
murk - lurk - mark - muck - musk - turk - 
muse - fuse - mule - mush - musk - must - mute - ruse - 
mush - bush - gush - hush - lush - mash - mesh - much - muse - musk - must - push - rush - 
musk - dusk - mask - muck - murk - muse - mush - must - rusk - tusk - 
must - bust - dust - gust - just - lust - mast - mist - most - muse - mush - musk - mutt - oust - rust - 
mute - cute - jute - lute - mate - mete - mite - mule - muse - mutt - 
mutt - butt - mitt - must - mute - putt - 
muzo - ouzo - 
myel - 
myra - lyra - mira - 
myth - math - moth - 
nagy - nary - navy - 
nail - bail - fail - gail - hail - jail - mail - nair - neil - pail - rail - sail - tail - vail - wail - 
nair - fair - hair - lair - nail - pair - 
name - came - dame - fame - game - lame - nape - nate - nave - same - tame - 
nape - cape - gape - name - nate - nave - rape - tape - 
nary - gary - mary - nagy - navy - vary - wary - 
nasa - nash - rasa - 
nash - bash - cash - dash - gash - hash - lash - mash - nasa - rash - sash - wash - 
nate - bate - date - fate - gate - hate - kate - late - mate - name - nape - nato - nave - note - pate - rate - tate - 
nato - nate - 
nave - cave - dave - eave - gave - have - name - nape - nate - navy - neve - pave - rave - save - wave - 
navy - davy - nagy - nary - nave - wavy - 
nazi - 
ncaa - ncar - noaa - 
ncar - ncaa - near - scar - 
neal - deal - heal - meal - neap - near - neat - neil - nell - peal - real - seal - teal - veal - weal - zeal - 
neap - heap - leap - neal - near - neat - reap - 
near - bear - dear - fear - gear - hear - lear - ncar - neal - neap - neat - pear - rear - sear - tear - wear - year - 
neat - beat - feat - heat - meat - neal - neap - near - nest - newt - next - peat - seat - teat - 
neck - beck - deck - heck - nick - peck - reck - 
need - deed - feed - heed - peed - reed - seed - weed - 
neff - jeff - 
neil - ceil - nail - neal - nell - veil - 
nell - bell - cell - dell - fell - hell - neal - neil - noll - null - sell - tell - well - yell - 
neon - leon - noon - 
nero - hero - zero - 
ness - bess - hess - jess - less - mess - nest - tess - 
nest - best - fest - jest - lest - neat - ness - newt - next - pest - rest - test - vest - west - zest - 
neva - neve - nova - 
neve - nave - neva - 
newt - neat - nest - next - 
next - neat - nest - newt - text - 
nibs - 
nice - dice - lice - mice - nick - nile - nine - rice - vice - 
nick - dick - hick - kick - lick - neck - nice - pick - rick - sick - tick - wick - 
nigh - high - nimh - sigh - 
nile - aile - bile - file - mile - nice - nine - pile - tile - vile - wile - 
nimh - nigh - 
nina - gina - nine - tina - 
nine - dine - fine - line - mine - nice - nile - nina - none - pine - sine - tine - vine - wine - 
noaa - ncaa - noah - nora - nova - 
noah - noaa - 
node - bode - code - mode - none - nose - note - nude - rode - 
noel - joel - noll - 
noll - doll - loll - moll - nell - noel - nolo - null - poll - roll - toll - 
nolo - bolo - noll - novo - polo - solo - 
none - bone - cone - done - gone - hone - lone - nine - node - nose - note - tone - zone - 
nook - book - cook - hook - look - noon - rook - took - 
noon - boon - coon - loon - moon - neon - nook - noun - soon - 
nora - dora - noaa - norm - nova - sora - 
norm - form - nora - worm - 
nose - bose - dose - hose - jose - lose - node - none - note - pose - rose - 
note - dote - nate - node - none - nose - rote - tote - vote - 
noun - noon - 
nova - neva - noaa - nora - novo - 
novo - nolo - nova - 
ntis - otis - 
nude - jude - node - rude - 
null - bull - cull - dull - full - gull - hull - lull - mull - nell - noll - pull - 
numb - dumb - 
o'er - e'er - over - 
oath - bath - hath - lath - math - path - 
obey - 
oboe - 
odin - olin - orin - 
ogle - ogre - 
ogre - ogle - 
ohio - 
oily - lily - only - owly - wily - 
oint - dint - hint - lint - mint - pint - tint - 
okay - 
olaf - olav - 
olav - olaf - slav - 
oldy - 
olga - alga - 
olin - odin - orin - 
oman - omen - 
omen - amen - oman - open - oven - oxen - 
omit - emit - 
once - 
only - oily - owly - 
onto - into - otto - 
onus - anus - opus - 
onyx - 
ooze - doze - 
opal - opel - oral - oval - 
opec - opel - open - spec - 
opel - opal - opec - open - 
open - omen - opec - opel - oven - oxen - 
opus - onus - 
oral - opal - oval - 
orgy - 
orin - grin - odin - olin - 
osha - 
oslo - 
otis - ntis - 
otto - onto - 
ouch - much - such - 
oust - bust - dust - gust - just - lust - must - rust - 
ouzo - muzo - 
oval - opal - oral - 
oven - even - omen - open - over - oxen - 
over - aver - o'er - oven - 
ovid - avid - 
ovum - 
owly - oily - only - 
oxen - omen - open - oven - 
pace - face - lace - mace - pack - pact - page - pale - pane - pare - pate - pave - race - 
pack - back - hack - jack - lack - mack - pace - pact - park - peck - pick - puck - rack - sack - tack - wack - 
pact - fact - pace - pack - pant - part - past - tact - 
page - cage - gage - pace - pale - pane - pare - pate - pave - rage - sage - wage - 
paid - laid - maid - pail - pain - pair - raid - said - 
pail - bail - fail - gail - hail - jail - mail - nail - paid - pain - pair - pall - paul - phil - rail - sail - tail - vail - wail - 
pain - cain - fain - gain - lain - main - paid - pail - pair - pawn - rain - vain - 
pair - fair - hair - lair - nair - paid - pail - pain - parr - 
pale - bale - dale - gale - hale - kale - male - pace - page - pall - palm - palo - pane - pare - pate - pave - pile - pole - pyle - sale - tale - vale - wale - yale - 
pall - ball - call - fall - gall - hall - mall - pail - pale - palm - palo - paul - pill - poll - pull - tall - wall - 
palm - balm - calm - pale - pall - palo - 
palo - halo - pale - pall - palm - paso - polo - 
pane - bane - cane - dane - jane - kane - lane - mane - pace - page - pale - pang - pant - pare - pate - pave - pine - sane - vane - wane - 
pang - bang - dang - fang - gang - hang - lang - pane - pant - ping - pong - rang - sang - tang - wang - yang - 
pant - cant - kant - pact - pane - pang - part - past - pent - pint - pont - punt - rant - want - 
papa - tapa - 
pare - bare - care - dare - fare - hare - mare - pace - page - pale - pane - park - parr - part - pate - pave - pore - pure - pyre - rare - ware - 
park - bark - dark - hark - lark - mark - pack - pare - parr - part - perk - pork - 
parr - barr - carr - pair - pare - park - part - purr - 
part - bart - cart - dart - hart - mart - pact - pant - pare - park - parr - past - pert - port - tart - wart - 
paso - palo - pass - past - 
pass - bass - lass - mass - paso - past - piss - tass - 
past - cast - east - fast - hast - last - mast - pact - pant - part - paso - pass - pest - post - vast - wast - 
pate - bate - date - fate - gate - hate - kate - late - mate - nate - pace - page - pale - pane - pare - path - pave - pete - rate - tate - 
path - bath - hath - lath - math - oath - pate - pith - 
paul - gaul - haul - maul - pail - pall - raul - saul - 
pave - cave - dave - eave - gave - have - nave - pace - page - pale - pane - pare - pate - rave - save - wave - 
pawn - dawn - fawn - lawn - pain - yawn - 
peak - beak - leak - peal - pear - peat - peck - peek - perk - weak - 
peal - deal - heal - meal - neal - peak - pear - peat - peel - real - seal - teal - veal - weal - zeal - 
pear - bear - dear - fear - gear - hear - lear - near - peak - peal - peat - peer - rear - sear - tear - wear - year - 
peat - beat - feat - heat - meat - neat - peak - peal - pear - pelt - pent - pert - pest - plat - seat - teat - 
peck - beck - deck - heck - neck - pack - peak - peek - perk - pick - puck - reck - 
peed - deed - feed - heed - need - peek - peel - peep - peer - pend - reed - seed - weed - 
peek - leek - meek - peak - peck - peed - peel - peep - peer - perk - reek - seek - week - 
peel - feel - heel - keel - peal - peed - peek - peep - peer - reel - 
peep - beep - deep - jeep - keep - peed - peek - peel - peer - prep - seep - weep - 
peer - beer - deer - leer - pear - peed - peek - peel - peep - pier - veer - 
pelt - belt - felt - melt - peat - pent - pert - pest - welt - 
pend - bend - fend - lend - mend - peed - penh - penn - pent - pond - rend - send - tend - vend - 
penh - pend - penn - pent - 
penn - pend - penh - pent - 
pent - bent - cent - dent - gent - kent - lent - pant - peat - pelt - pend - penh - penn - pert - pest - pint - pont - punt - rent - sent - tent - vent - went - 
perk - jerk - park - peak - peck - peek - pert - peru - pork - 
pert - bert - part - peat - pelt - pent - perk - peru - pest - port - wert - 
peru - perk - pert - 
pest - best - fest - jest - lest - nest - past - peat - pelt - pent - pert - post - rest - test - vest - west - zest - 
pete - fete - mete - pate - tete - 
ph.d - 
phil - pail - 
phon - pion - 
pica - mica - pick - rica - 
pick - dick - hick - kick - lick - nick - pack - peck - pica - pink - puck - rick - sick - tick - wick - 
pier - peer - tier - wier - 
pike - bike - hike - like - mike - pile - pine - pipe - poke - puke - 
pile - aile - bile - file - mile - nile - pale - pike - pill - pine - pipe - pole - pyle - tile - vile - wile - 
pill - bill - dill - fill - gill - hill - jill - kill - mill - pall - pile - poll - pull - rill - sill - till - will - 
pimp - limp - pomp - pump - 
pine - dine - fine - line - mine - nine - pane - pike - pile - ping - pink - pint - pipe - sine - tine - vine - wine - 
ping - bing - ding - king - pang - pine - pink - pint - pong - ring - sing - wing - zing - 
pink - fink - kink - link - mink - pick - pine - ping - pint - punk - rink - sink - wink - 
pint - dint - hint - lint - mint - oint - pant - pent - pine - ping - pink - pitt - pont - punt - tint - 
pion - lion - phon - zion - 
pipe - pike - pile - pine - pope - ripe - wipe - 
piss - hiss - kiss - miss - pass - pius - 
pith - path - pitt - pity - with - 
pitt - bitt - mitt - pint - pith - pity - putt - witt - 
pity - city - pith - pitt - pixy - 
pius - piss - plus - 
pixy - pity - 
plan - alan - clan - elan - klan - plat - play - ulan - 
plat - blat - flat - peat - plan - play - plot - slat - 
play - clay - plan - plat - pray - slay - 
plea - flea - 
plod - clod - plop - plot - prod - 
plop - flop - plod - plot - poop - prop - slop - 
plot - blot - clot - plat - plod - plop - slot - 
plug - plum - plus - slug - 
plum - alum - blum - glum - plug - plus - slum - 
plus - pius - plug - plum - 
poem - poet - 
poet - poem - pont - port - post - pout - 
pogo - gogo - logo - polo - togo - 
poke - coke - joke - pike - pole - pope - pore - pose - puke - woke - yoke - 
pole - bole - cole - dole - hole - mole - pale - pile - poke - polk - poll - polo - pope - pore - pose - pyle - role - sole - 
polk - folk - pole - poll - polo - pork - yolk - 
poll - doll - loll - moll - noll - pall - pill - pole - polk - polo - pool - pull - roll - toll - 
polo - bolo - nolo - palo - pogo - pole - polk - poll - solo - 
pomp - pimp - poop - pump - romp - 
pond - bond - fond - pend - pong - pont - pony - yond - 
pong - bong - gong - hong - kong - long - pang - ping - pond - pont - pony - song - tong - wong - 
pont - font - mont - pant - pent - pint - poet - pond - pong - pony - port - post - pout - punt - wont - 
pony - bony - cony - pond - pong - pont - posy - puny - sony - tony - 
pooh - pool - poop - poor - posh - 
pool - cool - fool - poll - pooh - poop - poor - tool - wool - 
poop - coop - hoop - loop - plop - pomp - pooh - pool - poor - prop - 
poor - boor - door - moor - pooh - pool - poop - pour - 
pope - cope - dope - hope - lope - pipe - poke - pole - pore - pose - rope - 
pore - bore - core - fore - gore - lore - more - pare - poke - pole - pope - pork - port - pose - pure - pyre - sore - tore - wore - yore - 
pork - cork - fork - park - perk - polk - pore - port - work - york - 
port - fort - mort - part - pert - poet - pont - pore - pork - post - pout - sort - tort - 
pose - bose - dose - hose - jose - lose - nose - poke - pole - pope - pore - posh - post - posy - rose - 
posh - cosh - gosh - pooh - pose - post - posy - push - 
post - cost - host - lost - most - past - pest - poet - pont - port - pose - posh - posy - pout - yost - 
posy - cosy - pony - pose - posh - post - rosy - 
pour - dour - four - hour - poor - pout - sour - tour - your - 
pout - bout - gout - poet - pont - port - post - pour - rout - tout - 
pram - cram - dram - pray - prim - prom - tram - 
pray - bray - fray - gray - play - pram - prey - tray - 
prep - peep - prey - prop - 
prey - frey - grey - pray - prep - 
prig - brig - prim - trig - 
prim - brim - grim - pram - prig - prom - trim - 
prod - plod - prof - prom - prop - prow - trod - 
prof - prod - prom - prop - prow - 
prom - from - pram - prim - prod - prof - prop - prow - 
prop - crop - drop - plop - poop - prep - prod - prof - prom - prow - 
prow - brow - crow - grow - prod - prof - prom - prop - 
puck - buck - duck - huck - luck - muck - pack - peck - pick - punk - suck - tuck - yuck - 
puff - buff - cuff - duff - huff - muff - ruff - tuff - 
pugh - hugh - push - 
puke - duke - juke - luke - pike - poke - pure - 
pull - bull - cull - dull - full - gull - hull - lull - mull - null - pall - pill - poll - pulp - purl - 
pulp - gulp - pull - pump - 
puma - duma - pump - 
pump - bump - dump - hump - jump - lump - pimp - pomp - pulp - puma - rump - 
punk - bunk - dunk - funk - gunk - hunk - junk - pink - puck - punt - puny - sunk - 
punt - aunt - bunt - hunt - pant - pent - pint - pont - punk - puny - putt - runt - 
puny - cuny - pony - punk - punt - suny - 
pure - cure - jure - lure - pare - pore - puke - purl - purr - pyre - sure - 
purl - burl - curl - furl - hurl - pull - pure - purr - 
purr - burr - parr - pure - purl - 
push - bush - gush - hush - lush - mush - posh - pugh - rush - 
putt - butt - mutt - pitt - punt - 
pyle - kyle - lyle - pale - pile - pole - pyre - 
pyre - pare - pore - pure - pyle - 
quad - quay - quid - quod - 
quay - quad - 
quid - quad - quip - quit - quiz - quod - 
quip - quid - quit - quiz - 
quit - quid - quip - quiz - suit - 
quiz - quid - quip - quit - 
quod - quad - quid - 
race - face - lace - mace - pace - rack - racy - rage - rake - rape - rare - rate - rave - raze - rice - 
rack - back - hack - jack - lack - mack - pack - race - racy - rank - reck - rick - rock - sack - tack - wack - 
racy - lacy - race - rack - 
raft - rant - rapt - rift - taft - 
rage - cage - gage - page - race - rake - rape - rare - rate - rave - raze - sage - wage - 
raid - laid - maid - paid - rail - rain - rand - reid - said - 
rail - bail - fail - gail - hail - jail - mail - nail - pail - raid - rain - raul - roil - sail - tail - vail - wail - 
rain - cain - fain - gain - lain - main - pain - raid - rail - rein - ruin - vain - 
rake - bake - cake - fake - jake - lake - make - race - rage - rape - rare - rate - rave - raze - sake - take - wake - 
ramo - ramp - 
ramp - camp - damp - lamp - ramo - rasp - romp - rump - tamp - vamp - 
rand - band - hand - land - raid - rang - rank - rant - rend - sand - wand - 
rang - bang - dang - fang - gang - hang - lang - pang - rand - rank - rant - ring - rung - sang - tang - wang - yang - 
rank - bank - dank - hank - lank - rack - rand - rang - rant - rink - sank - tank - yank - 
rant - cant - kant - pant - raft - rand - rang - rank - rapt - rent - runt - want - 
rape - cape - gape - nape - race - rage - rake - rapt - rare - rate - rave - raze - ripe - rope - tape - 
rapt - raft - rant - rape - 
rare - bare - care - dare - fare - hare - mare - pare - race - rage - rake - rape - rate - rave - raze - ware - 
rasa - nasa - rash - rasp - rata - rosa - 
rash - bash - cash - dash - gash - hash - lash - mash - nash - rasa - rasp - rush - sash - wash - 
rasp - gasp - hasp - ramp - rasa - rash - wasp - 
rata - data - rasa - rate - 
rate - bate - date - fate - gate - hate - kate - late - mate - nate - pate - race - rage - rake - rape - rare - rata - rave - raze - rite - rote - tate - 
raul - gaul - haul - maul - paul - rail - saul - 
rave - cave - dave - eave - gave - have - nave - pave - race - rage - rake - rape - rare - rate - raze - rove - save - wave - 
raze - daze - faze - gaze - haze - laze - maze - race - rage - rake - rape - rare - rate - rave - 
read - bead - dead - head - lead - mead - real - ream - reap - rear - reed - reid - rend - road - 
real - deal - heal - meal - neal - peal - read - ream - reap - rear - reel - seal - teal - veal - weal - zeal - 
ream - beam - read - real - reap - rear - roam - seam - team - 
reap - heap - leap - neap - read - real - ream - rear - 
rear - bear - dear - fear - gear - hear - lear - near - pear - read - real - ream - reap - roar - sear - tear - wear - year - 
reck - beck - deck - heck - neck - peck - rack - reek - rick - rock - 
reed - deed - feed - heed - need - peed - read - reef - reek - reel - reid - rend - seed - weed - 
reef - beef - reed - reek - reel - 
reek - leek - meek - peek - reck - reed - reef - reel - seek - week - 
reel - feel - heel - keel - peel - real - reed - reef - reek - 
reid - raid - read - reed - rein - rend - 
rein - rain - reid - ruin - vein - 
rena - lena - rend - rene - rent - 
rend - bend - fend - lend - mend - pend - rand - read - reed - reid - rena - rene - rent - send - tend - vend - 
rene - gene - rena - rend - rent - rune - 
rent - bent - cent - dent - gent - kent - lent - pent - rant - rena - rend - rene - rest - runt - sent - tent - vent - went - 
rest - best - fest - jest - lest - nest - pest - rent - rust - test - vest - west - zest - 
reub - 
rhea - shea - thea - 
rica - mica - pica - rice - rich - rick - rico - riga - 
rice - dice - lice - mice - nice - race - rica - rich - rick - rico - ride - rime - ripe - rise - rite - vice - 
rich - rica - rice - rick - rico - 
rick - dick - hick - kick - lick - nick - pick - rack - reck - rica - rice - rich - rico - rink - risk - rock - sick - tick - wick - 
rico - rica - rice - rich - rick - 
ride - aide - bide - fide - hide - rice - rime - ripe - rise - rite - rode - rude - side - tide - vide - wide - 
rift - gift - lift - raft - riot - sift - tift - 
riga - rica - 
rill - bill - dill - fill - gill - hill - jill - kill - mill - pill - roll - sill - till - will - 
rime - dime - lime - rice - ride - rimy - ripe - rise - rite - rome - time - 
rimy - rime - 
ring - bing - ding - king - ping - rang - rink - rung - sing - wing - zing - 
rink - fink - kink - link - mink - pink - rank - rick - ring - risk - sink - wink - 
riot - rift - root - 
ripe - pipe - rape - rice - ride - rime - rise - rite - rope - wipe - 
rise - lise - rice - ride - rime - ripe - risk - rite - rose - ruse - vise - wise - 
risk - disk - fisk - rick - rink - rise - rusk - 
rite - bite - cite - kite - mite - rate - rice - ride - rime - ripe - rise - ritz - rote - site - 
ritz - rite - 
road - goad - load - read - roam - roar - rood - toad - 
roam - foam - loam - ream - road - roar - room - 
roar - boar - hoar - rear - road - roam - soar - 
robe - lobe - rode - role - rome - rope - rose - rote - rove - rowe - rube - 
rock - bock - cock - dock - hock - jock - lock - mock - rack - reck - rick - rook - sock - 
rode - bode - code - mode - node - ride - robe - role - rome - rope - rose - rote - rove - rowe - rude - 
roil - boil - coil - foil - rail - roll - soil - toil - 
role - bole - cole - dole - hole - mole - pole - robe - rode - roll - rome - rope - rose - rote - rove - rowe - rule - sole - 
roll - doll - loll - moll - noll - poll - rill - roil - role - toll - 
rome - come - dome - home - lome - rime - robe - rode - role - romp - rope - rose - rote - rove - rowe - some - tome - 
romp - pomp - ramp - rome - rump - 
rood - food - good - hood - mood - road - roof - rook - room - root - wood - 
roof - goof - hoof - rood - rook - room - root - 
rook - book - cook - hook - look - nook - rock - rood - roof - room - root - took - 
room - boom - doom - loom - roam - rood - roof - rook - root - zoom - 
root - boot - coot - foot - hoot - loot - moot - riot - rood - roof - rook - room - rout - soot - toot - 
rope - cope - dope - hope - lope - pope - rape - ripe - robe - rode - role - rome - rose - rote - rove - rowe - 
rosa - rasa - rose - ross - rosy - 
rose - bose - dose - hose - jose - lose - nose - pose - rise - robe - rode - role - rome - rope - rosa - ross - rosy - rote - rove - rowe - ruse - 
ross - boss - foss - joss - loss - moss - rosa - rose - rosy - russ - toss - voss - 
rosy - cosy - posy - rosa - rose - ross - 
rotc - rote - roth - 
rote - dote - note - rate - rite - robe - rode - role - rome - rope - rose - rotc - roth - rove - rowe - tote - vote - 
roth - both - moth - rotc - rote - ruth - 
rout - bout - gout - pout - root - tout - 
rove - cove - dove - hove - jove - love - move - rave - robe - rode - role - rome - rope - rose - rote - rowe - wove - 
rowe - howe - lowe - robe - rode - role - rome - rope - rose - rote - rove - 
rsvp - 
rube - cube - robe - ruby - rude - rule - rune - ruse - tube - 
ruby - rube - rudy - 
rude - jude - nude - ride - rode - rube - rudy - rule - rune - ruse - 
rudy - judy - ruby - rude - 
ruff - buff - cuff - duff - huff - muff - puff - tuff - 
ruin - rain - rein - 
rule - mule - role - rube - rude - rune - ruse - yule - 
rump - bump - dump - hump - jump - lump - pump - ramp - romp - 
rune - dune - june - rene - rube - rude - rule - rung - runt - ruse - tune - 
rung - dung - hung - lung - mung - rang - ring - rune - runt - sung - tung - 
runt - aunt - bunt - hunt - punt - rant - rent - rune - rung - rust - 
ruse - fuse - muse - rise - rose - rube - rude - rule - rune - rush - rusk - russ - rust - 
rush - bush - gush - hush - lush - mush - push - rash - ruse - rusk - russ - rust - ruth - 
rusk - dusk - musk - risk - ruse - rush - russ - rust - tusk - 
russ - buss - fuss - ross - ruse - rush - rusk - rust - 
rust - bust - dust - gust - just - lust - must - oust - rest - runt - ruse - rush - rusk - russ - 
ruth - roth - rush - 
ryan - 
sack - back - hack - jack - lack - mack - pack - rack - salk - sank - sick - sock - suck - tack - wack - 
safe - cafe - sage - sake - sale - same - sane - save - 
saga - sage - sago - sana - sara - 
sage - cage - gage - page - rage - safe - saga - sago - sake - sale - same - sane - save - wage - 
sago - saga - sage - 
said - laid - maid - paid - raid - sail - sand - saud - skid - slid - 
sail - bail - fail - gail - hail - jail - mail - nail - pail - rail - said - saul - soil - tail - vail - wail - 
sake - bake - cake - fake - jake - lake - make - rake - safe - sage - sale - same - sane - save - take - wake - 
sale - bale - dale - gale - hale - kale - male - pale - safe - sage - sake - salk - salt - same - sane - save - sole - tale - vale - wale - yale - 
salk - balk - sack - sale - salt - sank - silk - sulk - talk - walk - 
salt - galt - halt - malt - sale - salk - silt - walt - 
same - came - dame - fame - game - lame - name - safe - sage - sake - sale - sane - save - some - tame - 
sana - dana - lana - mana - saga - sand - sane - sang - sank - sans - sara - 
sand - band - hand - land - rand - said - sana - sane - sang - sank - sans - saud - send - wand - 
sane - bane - cane - dane - jane - kane - lane - mane - pane - safe - sage - sake - sale - same - sana - sand - sang - sank - sans - save - sine - vane - wane - 
sang - bang - dang - fang - gang - hang - lang - pang - rang - sana - sand - sane - sank - sans - sing - song - sung - tang - wang - yang - 
sank - bank - dank - hank - lank - rank - sack - salk - sana - sand - sane - sang - sans - sink - sunk - tank - yank - 
sans - hans - mans - sana - sand - sane - sang - sank - 
sara - saga - sana - sari - sera - sora - tara - 
sari - sara - 
sash - bash - cash - dash - gash - hash - lash - mash - nash - rash - wash - 
saud - baud - laud - said - sand - saul - scud - spud - stud - 
saul - gaul - haul - maul - paul - raul - sail - saud - soul - 
save - cave - dave - eave - gave - have - nave - pave - rave - safe - sage - sake - sale - same - sane - wave - 
scab - scam - scan - scar - scat - slab - stab - swab - 
scam - scab - scan - scar - scat - scum - seam - sham - siam - slam - swam - 
scan - scab - scam - scar - scat - sean - sian - span - stan - swan - 
scar - ncar - scab - scam - scan - scat - sear - soar - spar - star - 
scat - scab - scam - scan - scar - scot - seat - skat - slat - spat - swat - 
scot - scat - shot - slot - soot - spot - 
scud - saud - scum - spud - stud - 
scum - scam - scud - slum - swum - 
seal - deal - heal - meal - neal - peal - real - seam - sean - sear - seat - sell - sial - teal - veal - weal - zeal - 
seam - beam - ream - scam - seal - sean - sear - seat - seem - sham - siam - slam - swam - team - 
sean - bean - dean - jean - lean - mean - scan - seal - seam - sear - seat - seen - sewn - sian - span - stan - swan - wean - 
sear - bear - dear - fear - gear - hear - lear - near - pear - rear - scar - seal - seam - sean - seat - soar - spar - star - tear - wear - year - 
seat - beat - feat - heat - meat - neat - peat - scat - seal - seam - sean - sear - sect - sent - sept - skat - slat - spat - swat - teat - 
sect - seat - sent - sept - 
seed - deed - feed - heed - need - peed - reed - seek - seem - seen - seep - send - shed - sled - sped - weed - 
seek - leek - meek - peek - reek - seed - seem - seen - seep - week - 
seem - deem - seam - seed - seek - seen - seep - stem - teem - 
seen - been - keen - sean - seed - seek - seem - seep - sewn - teen - 
seep - beep - deep - jeep - keep - peep - seed - seek - seem - seen - step - weep - 
self - sell - serf - 
sell - bell - cell - dell - fell - hell - nell - seal - self - sill - tell - well - yell - 
semi - 
send - bend - fend - lend - mend - pend - rend - sand - seed - sent - tend - vend - 
sent - bent - cent - dent - gent - kent - lent - pent - rent - seat - sect - send - sept - tent - vent - went - 
sept - kept - seat - sect - sent - wept - 
sera - hera - sara - serf - sora - vera - 
serf - self - sera - surf - 
seth - beth - 
sewn - hewn - sean - seen - sown - 
sexy - 
shad - chad - shag - shah - sham - shaw - shay - shed - shod - 
shag - shad - shah - sham - shaw - shay - slag - snag - stag - swag - 
shah - shad - shag - sham - shaw - shay - 
sham - scam - seam - shad - shag - shah - shaw - shay - shim - siam - slam - swam - wham - 
shaw - chaw - shad - shag - shah - sham - shay - show - thaw - 
shay - shad - shag - shah - sham - shaw - slay - spay - stay - sway - 
shea - rhea - shed - thea - 
shed - seed - shad - shea - shod - sled - sped - 
shim - sham - shin - ship - shiv - skim - slim - swim - whim - 
shin - chin - shim - ship - shiv - shun - skin - spin - thin - 
ship - chip - shim - shin - shiv - shop - skip - slip - snip - whip - 
shiv - shim - shin - ship - 
shod - shad - shed - shoe - shoo - shop - shot - show - 
shoe - shod - shoo - shop - shot - show - sloe - 
shoo - shod - shoe - shop - shot - show - 
shop - chop - ship - shod - shoe - shoo - shot - show - slop - stop - whop - 
shot - scot - shod - shoe - shoo - shop - show - shut - slot - soot - spot - 
show - chow - shaw - shod - shoe - shoo - shop - shot - slow - snow - stow - 
shun - shin - shut - spun - stun - 
shut - shot - shun - slut - smut - 
sial - dial - seal - siam - sian - sill - vial - 
siam - scam - seam - sham - sial - sian - slam - swam - 
sian - scan - sean - sial - siam - sign - span - stan - swan - 
sick - dick - hick - kick - lick - nick - pick - rick - sack - silk - sink - sock - suck - tick - wick - 
side - aide - bide - fide - hide - ride - sine - sire - site - size - tide - vide - wide - 
sift - gift - lift - rift - silt - soft - tift - 
sigh - high - nigh - sign - sinh - 
sign - sian - sigh - 
silk - bilk - milk - salk - sick - sill - silo - silt - sink - sulk - 
sill - bill - dill - fill - gill - hill - jill - kill - mill - pill - rill - sell - sial - silk - silo - silt - till - will - 
silo - kilo - silk - sill - silt - solo - 
silt - gilt - hilt - jilt - lilt - milt - salt - sift - silk - sill - silo - tilt - wilt - 
sima - lima - sims - siva - soma - 
sims - sima - 
sine - dine - fine - line - mine - nine - pine - sane - side - sing - sinh - sink - sire - site - size - tine - vine - wine - 
sing - bing - ding - king - ping - ring - sang - sine - sinh - sink - song - sung - wing - zing - 
sinh - sigh - sine - sing - sink - 
sink - fink - kink - link - mink - pink - rink - sank - sick - silk - sine - sing - sinh - sunk - wink - 
sire - dire - eire - fire - hire - mire - side - sine - site - size - sore - sure - tire - wire - 
site - bite - cite - kite - mite - rite - side - sine - sire - situ - size - 
situ - site - 
siva - diva - kiva - sima - viva - 
size - side - sine - sire - site - 
skat - scat - seat - skit - slat - spat - swat - 
skew - slew - spew - stew - 
skid - said - skim - skin - skip - skit - slid - 
skim - shim - skid - skin - skip - skit - slim - swim - 
skin - akin - shin - skid - skim - skip - skit - spin - 
skip - ship - skid - skim - skin - skit - slip - snip - 
skit - skat - skid - skim - skin - skip - slit - spit - suit - 
skye - 
slab - blab - scab - slag - slam - slap - slat - slav - slay - slob - stab - swab - 
slag - flag - shag - slab - slam - slap - slat - slav - slay - slog - slug - snag - stag - swag - 
slam - clam - flam - scam - seam - sham - siam - slab - slag - slap - slat - slav - slay - slim - slum - swam - 
slap - clap - flap - slab - slag - slam - slat - slav - slay - slip - slop - snap - soap - swap - 
slat - blat - flat - plat - scat - seat - skat - slab - slag - slam - slap - slav - slay - slit - slot - slut - spat - swat - 
slav - olav - slab - slag - slam - slap - slat - slay - 
slay - clay - play - shay - slab - slag - slam - slap - slat - slav - spay - stay - sway - 
sled - bled - fled - seed - shed - slew - slid - sped - 
slew - blew - flew - skew - sled - slow - spew - stew - 
slid - said - skid - sled - slim - slip - slit - 
slim - shim - skim - slam - slid - slip - slit - slum - swim - 
slip - blip - clip - flip - ship - skip - slap - slid - slim - slit - slop - snip - 
slit - flit - skit - slat - slid - slim - slip - slot - slut - spit - suit - 
slob - blob - glob - slab - sloe - slog - slop - slot - slow - snob - 
sloe - aloe - floe - shoe - slob - slog - slop - slot - slow - 
slog - clog - flog - slag - slob - sloe - slop - slot - slow - slug - smog - 
slop - flop - plop - shop - slap - slip - slob - sloe - slog - slot - slow - stop - 
slot - blot - clot - plot - scot - shot - slat - slit - slob - sloe - slog - slop - slow - slut - soot - spot - 
slow - blow - flow - glow - show - slew - slob - sloe - slog - slop - slot - snow - stow - 
slug - plug - slag - slog - slum - slur - slut - smug - snug - 
slum - alum - blum - glum - plum - scum - slam - slim - slug - slur - slut - swum - 
slur - blur - slug - slum - slut - sour - spur - 
slut - glut - shut - slat - slit - slot - slug - slum - slur - smut - 
smog - slog - smug - 
smug - slug - smog - smut - snug - 
smut - shut - slut - smug - 
snag - shag - slag - snap - snug - stag - swag - 
snap - slap - snag - snip - soap - swap - 
snip - ship - skip - slip - snap - 
snob - knob - slob - snow - snub - 
snow - know - show - slow - snob - stow - 
snub - snob - snug - stub - 
snug - slug - smug - snag - snub - 
soak - soap - soar - sock - 
soap - slap - snap - soak - soar - soup - swap - 
soar - boar - hoar - roar - scar - sear - soak - soap - sour - spar - star - 
sock - bock - cock - dock - hock - jock - lock - mock - rock - sack - sick - soak - suck - 
soda - coda - sofa - soma - sora - soya - 
sofa - soda - soft - soma - sora - soya - 
soft - loft - sift - sofa - soot - sort - 
soil - boil - coil - foil - roil - sail - soul - toil - 
sold - bold - cold - fold - gold - hold - mold - sole - solo - told - wold - 
sole - bole - cole - dole - hole - mole - pole - role - sale - sold - solo - some - sore - 
solo - bolo - nolo - polo - silo - sold - sole - 
soma - coma - sima - soda - sofa - some - sora - soya - 
some - come - dome - home - lome - rome - same - sole - soma - sore - tome - 
song - bong - gong - hong - kong - long - pong - sang - sing - sony - sung - tong - wong - 
sony - bony - cony - pony - song - suny - tony - 
soon - boon - coon - loon - moon - noon - soot - sown - 
soot - boot - coot - foot - hoot - loot - moot - root - scot - shot - slot - soft - soon - sort - spot - toot - 
sora - dora - nora - sara - sera - soda - sofa - soma - sorb - sore - sort - soya - 
sorb - sora - sore - sort - 
sore - bore - core - fore - gore - lore - more - pore - sire - sole - some - sora - sorb - sort - sure - tore - wore - yore - 
sort - fort - mort - port - soft - soot - sora - sorb - sore - tort - 
soul - foul - saul - soil - soup - sour - 
soup - coup - soap - soul - sour - 
sour - dour - four - hour - pour - slur - soar - soul - soup - spur - tour - your - 
sown - down - gown - sewn - soon - town - 
soya - soda - sofa - soma - sora - 
span - scan - sean - sian - spar - spat - spay - spin - spun - stan - swan - 
spar - scar - sear - soar - span - spat - spay - spur - star - 
spat - scat - seat - skat - slat - span - spar - spay - spit - spot - swat - 
spay - shay - slay - span - spar - spat - stay - sway - 
spec - opec - sped - spew - 
sped - seed - shed - sled - spec - spew - spud - 
spew - skew - slew - spec - sped - stew - 
spin - shin - skin - span - spit - spun - 
spit - skit - slit - spat - spin - spot - suit - 
spot - scot - shot - slot - soot - spat - spit - 
spud - saud - scud - sped - spun - spur - stud - 
spun - shun - span - spin - spud - spur - stun - 
spur - slur - sour - spar - spud - spun - 
stab - scab - slab - stag - stan - star - stay - stub - swab - 
stag - shag - slag - snag - stab - stan - star - stay - swag - 
stan - scan - sean - sian - span - stab - stag - star - stay - stun - swan - 
star - scar - sear - soar - spar - stab - stag - stan - stay - stir - 
stay - shay - slay - spay - stab - stag - stan - star - sway - 
stem - item - seem - step - stew - 
step - seep - stem - stew - stop - 
stew - skew - slew - spew - stem - step - stow - 
stir - star - 
stop - atop - shop - slop - step - stow - 
stow - show - slow - snow - stew - stop - 
stub - snub - stab - stud - stun - 
stud - saud - scud - spud - stub - stun - 
stun - shun - spun - stan - stub - stud - 
styx - 
such - much - ouch - suck - 
suck - buck - duck - huck - luck - muck - puck - sack - sick - sock - such - sulk - sunk - tuck - yuck - 
suds - 
suey - suez - suny - 
suez - suey - 
suit - quit - skit - slit - spit - 
sulk - bulk - hulk - salk - silk - suck - sunk - 
sung - dung - hung - lung - mung - rung - sang - sing - song - sunk - suny - tung - 
sunk - bunk - dunk - funk - gunk - hunk - junk - punk - sank - sink - suck - sulk - sung - suny - 
suny - cuny - puny - sony - suey - sung - sunk - 
sure - cure - jure - lure - pure - sire - sore - surf - 
surf - serf - sure - turf - 
swab - scab - slab - stab - swag - swam - swan - swap - swat - sway - 
swag - shag - slag - snag - stag - swab - swam - swan - swap - swat - sway - swig - 
swam - scam - seam - sham - siam - slam - swab - swag - swan - swap - swat - sway - swim - swum - 
swan - scan - sean - sian - span - stan - swab - swag - swam - swap - swat - sway - 
swap - slap - snap - soap - swab - swag - swam - swan - swat - sway - 
swat - scat - seat - skat - slat - spat - swab - swag - swam - swan - swap - sway - 
sway - away - shay - slay - spay - stay - swab - swag - swam - swan - swap - swat - 
swig - swag - swim - twig - 
swim - shim - skim - slim - swam - swig - swum - 
swum - scum - slum - swam - swim - 
tabu - 
tack - back - hack - jack - lack - mack - pack - rack - sack - tact - talk - tank - task - tick - tuck - wack - 
tact - fact - pact - tack - taft - tart - taut - 
taft - raft - tact - tart - taut - tift - tuft - 
tail - bail - fail - gail - hail - jail - mail - nail - pail - rail - sail - tall - toil - vail - wail - 
take - bake - cake - fake - jake - lake - make - rake - sake - tale - tame - tape - tate - wake - 
talc - tale - talk - tall - 
tale - bale - dale - gale - hale - kale - male - pale - sale - take - talc - talk - tall - tame - tape - tate - tile - vale - wale - yale - 
talk - balk - salk - tack - talc - tale - tall - tank - task - walk - 
tall - ball - call - fall - gall - hall - mall - pall - tail - talc - tale - talk - tell - till - toll - wall - 
tame - came - dame - fame - game - lame - name - same - take - tale - tamp - tape - tate - time - tome - 
tamp - camp - damp - lamp - ramp - tame - vamp - 
tang - bang - dang - fang - gang - hang - lang - pang - rang - sang - tanh - tank - tong - tung - wang - yang - 
tanh - tang - tank - 
tank - bank - dank - hank - lank - rank - sank - tack - talk - tang - tanh - task - tonk - yank - 
taos - laos - tass - 
tapa - papa - tape - tara - 
tape - cape - gape - nape - rape - take - tale - tame - tapa - tate - type - 
tara - sara - tapa - tart - 
tart - bart - cart - dart - hart - mart - part - tact - taft - tara - taut - tort - wart - 
task - bask - cask - mask - tack - talk - tank - tass - tusk - 
tass - bass - lass - mass - pass - taos - task - tess - toss - 
tate - bate - date - fate - gate - hate - kate - late - mate - nate - pate - rate - take - tale - tame - tape - tete - tote - 
taut - tact - taft - tart - tout - 
taxi - 
teal - deal - heal - meal - neal - peal - real - seal - team - tear - teat - tell - veal - weal - zeal - 
team - beam - ream - seam - teal - tear - teat - teem - term - tram - 
tear - bear - dear - fear - gear - hear - lear - near - pear - rear - sear - teal - team - teat - tsar - wear - year - 
teat - beat - feat - heat - meat - neat - peat - seat - teal - team - tear - teet - tent - test - text - that - 
tech - 
teem - deem - seem - team - teen - teet - term - them - 
teen - been - keen - seen - teem - teet - tern - then - 
teet - beet - feet - meet - teat - teem - teen - tent - test - text - 
tell - bell - cell - dell - fell - hell - nell - sell - tall - teal - till - toll - well - yell - 
tend - bend - fend - lend - mend - pend - rend - send - tent - vend - 
tent - bent - cent - dent - gent - kent - lent - pent - rent - sent - teat - teet - tend - test - text - tint - vent - went - 
term - germ - team - teem - tern - 
tern - bern - cern - fern - kern - teen - term - torn - turn - 
tess - bess - hess - jess - less - mess - ness - tass - test - toss - 
test - best - fest - jest - lest - nest - pest - rest - teat - teet - tent - tess - text - vest - west - zest - 
tete - fete - mete - pete - tate - tote - 
text - next - teat - teet - tent - test - 
thai - than - that - thaw - 
than - khan - thai - that - thaw - then - thin - 
that - chat - teat - thai - than - thaw - what - 
thaw - chaw - shaw - thai - than - that - 
thea - rhea - shea - thee - them - then - they - 
thee - thea - them - then - they - tree - whee - 
them - ahem - teem - thea - thee - then - they - 
then - chen - teen - than - thea - thee - them - they - thin - when - 
they - thea - thee - them - then - 
thin - chin - shin - than - then - this - twin - 
this - thin - thus - 
thor - thou - 
thou - chou - thor - 
thud - thug - thus - 
thug - chug - thud - thus - 
thus - this - thud - thug - 
tick - dick - hick - kick - lick - nick - pick - rick - sick - tack - tuck - wick - 
tide - aide - bide - fide - hide - ride - side - tidy - tile - time - tine - tire - vide - wide - 
tidy - tide - tiny - 
tied - died - lied - tier - 
tier - pier - tied - wier - 
tift - gift - lift - rift - sift - taft - tilt - tint - tuft - 
tile - aile - bile - file - mile - nile - pile - tale - tide - till - tilt - time - tine - tire - vile - wile - 
till - bill - dill - fill - gill - hill - jill - kill - mill - pill - rill - sill - tall - tell - tile - tilt - toll - will - 
tilt - gilt - hilt - jilt - lilt - milt - silt - tift - tile - till - tint - wilt - 
time - dime - lime - rime - tame - tide - tile - tine - tire - tome - 
tina - gina - nina - tine - tint - tiny - tuna - 
tine - dine - fine - line - mine - nine - pine - sine - tide - tile - time - tina - tint - tiny - tire - tone - tune - vine - wine - 
tint - dint - hint - lint - mint - oint - pint - tent - tift - tilt - tina - tine - tiny - 
tiny - tidy - tina - tine - tint - tony - winy - 
tire - dire - eire - fire - hire - mire - sire - tide - tile - time - tine - tore - wire - 
toad - goad - load - road - todd - told - 
toby - tony - tory - 
todd - dodd - toad - told - 
tofu - 
togo - gogo - logo - pogo - togs - 
togs - togo - toss - 
toil - boil - coil - foil - roil - soil - tail - toll - tool - 
told - bold - cold - fold - gold - hold - mold - sold - toad - todd - toll - wold - 
toll - doll - loll - moll - noll - poll - roll - tall - tell - till - toil - told - tool - 
tomb - bomb - comb - lomb - tome - womb - 
tome - come - dome - home - lome - rome - some - tame - time - tomb - tone - tore - tote - 
tone - bone - cone - done - gone - hone - lone - none - tine - tome - tong - toni - tonk - tony - tore - tote - tune - zone - 
tong - bong - gong - hong - kong - long - pong - song - tang - tone - toni - tonk - tony - tung - wong - 
toni - tone - tong - tonk - tony - tori - 
tonk - honk - monk - tank - tone - tong - toni - tony - took - 
tony - bony - cony - pony - sony - tiny - toby - tone - tong - toni - tonk - tory - 
took - book - cook - hook - look - nook - rook - tonk - tool - toot - 
tool - cool - fool - pool - toil - toll - took - toot - wool - 
toot - boot - coot - foot - hoot - loot - moot - root - soot - took - tool - tort - tout - trot - 
tore - bore - core - fore - gore - lore - more - pore - sore - tire - tome - tone - tori - torn - torr - tort - tory - tote - wore - yore - 
tori - toni - tore - torn - torr - tort - tory - 
torn - born - corn - horn - morn - tern - tore - tori - torr - tort - tory - town - turn - worn - zorn - 
torr - tore - tori - torn - tort - tory - tour - 
tort - fort - mort - port - sort - tart - toot - tore - tori - torn - torr - tory - tout - 
tory - gory - toby - tony - tore - tori - torn - torr - tort - 
toss - boss - foss - joss - loss - moss - ross - tass - tess - togs - voss - 
tote - dote - note - rote - tate - tete - tome - tone - tore - vote - 
tour - dour - four - hour - pour - sour - torr - tout - your - 
tout - bout - gout - pout - rout - taut - toot - tort - tour - 
town - down - gown - sown - torn - 
trag - brag - crag - drag - tram - trap - tray - trig - 
tram - cram - dram - pram - team - trag - trap - tray - trim - 
trap - crap - trag - tram - tray - trip - wrap - 
tray - bray - fray - gray - pray - trag - tram - trap - troy - 
tree - free - thee - trek - true - 
trek - tree - 
trig - brig - prig - trag - trim - trio - trip - twig - 
trim - brim - grim - prim - tram - trig - trio - trip - 
trio - trig - trim - trip - 
trip - drip - grip - trap - trig - trim - trio - 
trod - prod - trot - troy - 
trot - toot - trod - troy - 
troy - tray - trod - trot - 
true - tree - 
tsar - tear - 
tuba - cuba - tube - tuna - 
tube - cube - rube - tuba - tune - 
tuck - buck - duck - huck - luck - muck - puck - suck - tack - tick - turk - tusk - yuck - 
tuff - buff - cuff - duff - huff - muff - puff - ruff - tuft - turf - 
tuft - taft - tift - tuff - 
tuna - tina - tuba - tune - tung - 
tune - dune - june - rune - tine - tone - tube - tuna - tung - 
tung - dung - hung - lung - mung - rung - sung - tang - tong - tuna - tune - 
turf - surf - tuff - turk - turn - 
turk - lurk - murk - tuck - turf - turn - tusk - 
turn - burn - tern - torn - turf - turk - 
tusk - dusk - musk - rusk - task - tuck - turk - 
tutu - 
twig - swig - trig - twin - twit - 
twin - thin - twig - twit - 
twit - twig - twin - 
type - tape - typo - 
typo - type - 
ucla - 
ugly - 
ulan - alan - clan - elan - klan - plan - 
unit - knit - unix - 
unix - unit - 
upon - 
urea - area - ursa - 
urge - 
uris - iris - 
ursa - urea - 
usaf - 
usda - usia - 
usgs - usps - 
usia - asia - usda - 
usps - usgs - 
ussr - 
utah - 
vade - bade - dade - fade - jade - made - vale - vane - vase - vide - wade - 
vail - bail - fail - gail - hail - jail - mail - nail - pail - rail - sail - tail - vain - veil - wail - 
vain - cain - fain - gain - lain - main - pain - rain - vail - vein - 
vale - bale - dale - gale - hale - kale - male - pale - sale - tale - vade - vane - vase - vile - wale - yale - 
vamp - camp - damp - lamp - ramp - tamp - 
vane - bane - cane - dane - jane - kane - lane - mane - pane - sane - vade - vale - vase - vine - wane - 
vary - gary - mary - nary - very - wary - 
vase - base - case - ease - lase - vade - vale - vane - vast - vise - 
vast - cast - east - fast - hast - last - mast - past - vase - vest - wast - 
veal - deal - heal - meal - neal - peal - real - seal - teal - veil - vial - weal - zeal - 
veda - vega - vera - vida - 
veer - beer - deer - leer - peer - 
vega - veda - vera - 
veil - ceil - neil - vail - veal - vein - 
vein - rein - vain - veil - 
vend - bend - fend - lend - mend - pend - rend - send - tend - vent - 
vent - bent - cent - dent - gent - kent - lent - pent - rent - sent - tent - vend - vest - went - 
vera - hera - sera - veda - vega - verb - very - 
verb - herb - vera - very - 
very - vary - vera - verb - 
vest - best - fest - jest - lest - nest - pest - rest - test - vast - vent - west - zest - 
veto - vito - 
vial - dial - sial - veal - 
vice - dice - lice - mice - nice - rice - vide - vile - vine - vise - 
vida - aida - veda - vide - visa - vita - viva - 
vide - aide - bide - fide - hide - ride - side - tide - vade - vice - vida - vile - vine - vise - wide - 
viet - diet - view - 
view - viet - 
viii - 
vile - aile - bile - file - mile - nile - pile - tile - vale - vice - vide - vine - vise - wile - 
vine - dine - fine - line - mine - nine - pine - sine - tine - vane - vice - vide - vile - vise - wine - 
visa - lisa - vida - vise - vita - viva - 
vise - lise - rise - vase - vice - vide - vile - vine - visa - wise - 
vita - vida - visa - vito - viva - 
vito - veto - vita - vivo - 
viva - diva - kiva - siva - vida - visa - vita - vivo - 
vivo - vito - viva - 
void - 
volt - bolt - colt - dolt - holt - jolt - molt - 
voss - boss - foss - joss - loss - moss - ross - toss - 
vote - dote - note - rote - tote - 
wack - back - hack - jack - lack - mack - pack - rack - sack - tack - waco - walk - wick - 
waco - wack - weco - 
wade - bade - dade - fade - jade - made - vade - wadi - wage - wake - wale - wane - ware - wave - wide - 
wadi - wade - 
wage - cage - gage - page - rage - sage - wade - wake - wale - wane - ware - wave - 
wahl - dahl - wail - wall - 
wail - bail - fail - gail - hail - jail - mail - nail - pail - rail - sail - tail - vail - wahl - wait - wall - 
wait - bait - gait - wail - walt - want - wart - wast - watt - whit - writ - 
wake - bake - cake - fake - jake - lake - make - rake - sake - take - wade - wage - wale - wane - ware - wave - woke - 
wale - bale - dale - gale - hale - kale - male - pale - sale - tale - vale - wade - wage - wake - walk - wall - walt - wane - ware - wave - wile - yale - 
walk - balk - salk - talk - wack - wale - wall - walt - 
wall - ball - call - fall - gall - hall - mall - pall - tall - wahl - wail - wale - walk - walt - well - will - 
walt - galt - halt - malt - salt - wait - wale - walk - wall - want - wart - wast - watt - welt - wilt - 
wand - band - hand - land - rand - sand - wane - wang - want - ward - wind - 
wane - bane - cane - dane - jane - kane - lane - mane - pane - sane - vane - wade - wage - wake - wale - wand - wang - want - ware - wave - wine - 
wang - bang - dang - fang - gang - hang - lang - pang - rang - sang - tang - wand - wane - want - wing - wong - yang - 
want - cant - kant - pant - rant - wait - walt - wand - wane - wang - wart - wast - watt - went - wont - 
ward - bard - card - hard - lard - wand - ware - warm - warn - warp - wart - wary - word - yard - 
ware - bare - care - dare - fare - hare - mare - pare - rare - wade - wage - wake - wale - wane - ward - warm - warn - warp - wart - wary - wave - were - wire - wore - 
warm - farm - harm - ward - ware - warn - warp - wart - wary - worm - 
warn - barn - darn - earn - ward - ware - warm - warp - wart - wary - worn - yarn - 
warp - carp - harp - karp - ward - ware - warm - warn - wart - wary - wasp - 
wart - bart - cart - dart - hart - mart - part - tart - wait - walt - want - ward - ware - warm - warn - warp - wary - wast - watt - wert - 
wary - gary - mary - nary - vary - ward - ware - warm - warn - warp - wart - wavy - waxy - wiry - 
wash - bash - cash - dash - gash - hash - lash - mash - nash - rash - sash - wasp - wast - wish - 
wasp - gasp - hasp - rasp - warp - wash - wast - wisp - 
wast - cast - east - fast - hast - last - mast - past - vast - wait - walt - want - wart - wash - wasp - watt - west - 
watt - batt - wait - walt - want - wart - wast - witt - 
wave - cave - dave - eave - gave - have - nave - pave - rave - save - wade - wage - wake - wale - wane - ware - wavy - wive - wove - 
wavy - davy - navy - wary - wave - waxy - 
waxy - wary - wavy - 
we'd - he'd - weed - weld - 
weak - beak - leak - peak - weal - wean - wear - week - 
weal - deal - heal - meal - neal - peal - real - seal - teal - veal - weak - wean - wear - well - zeal - 
wean - bean - dean - jean - lean - mean - sean - weak - weal - wear - 
wear - bear - dear - fear - gear - hear - lear - near - pear - rear - sear - tear - weak - weal - wean - wehr - weir - year - 
webb - 
weco - waco - 
weed - deed - feed - heed - need - peed - reed - seed - we'd - week - weep - weld - 
week - leek - meek - peek - reek - seek - weak - weed - weep - 
weep - beep - deep - jeep - keep - peep - seep - weed - week - 
wehr - wear - weir - 
weir - heir - wear - wehr - whir - 
weld - geld - held - meld - we'd - weed - well - welt - wild - wold - 
well - bell - cell - dell - fell - hell - nell - sell - tell - wall - weal - weld - welt - will - yell - 
welt - belt - felt - melt - pelt - walt - weld - well - went - wept - wert - west - wilt - 
went - bent - cent - dent - gent - kent - lent - pent - rent - sent - tent - vent - want - welt - wept - wert - west - wont - 
wept - kept - sept - welt - went - wert - west - 
were - here - mere - ware - wert - wire - wore - 
wert - bert - pert - wart - welt - went - wept - were - west - 
west - best - fest - jest - lest - nest - pest - rest - test - vest - wast - welt - went - wept - wert - zest - 
wham - sham - what - whim - whom - 
what - chat - that - wham - whet - whit - 
whee - thee - when - whet - 
when - chen - then - whee - whet - 
whet - what - whee - when - whit - 
whig - whim - whip - whir - whit - whiz - 
whim - shim - wham - whig - whip - whir - whit - whiz - whom - 
whip - chip - ship - whig - whim - whir - whit - whiz - whop - whup - 
whir - weir - whig - whim - whip - whit - whiz - 
whit - chit - wait - what - whet - whig - whim - whip - whir - whiz - writ - 
whiz - whig - whim - whip - whir - whit - 
whoa - whom - whop - 
whom - wham - whim - whoa - whop - 
whop - chop - shop - whip - whoa - whom - whup - 
whup - whip - whop - 
wick - dick - hick - kick - lick - nick - pick - rick - sick - tick - wack - wink - 
wide - aide - bide - fide - hide - ride - side - tide - vide - wade - wife - wile - wine - wipe - wire - wise - wive - 
wier - pier - tier - 
wife - fife - life - wide - wile - wine - wipe - wire - wise - wive - 
wild - gild - mild - weld - wile - will - wilt - wily - wind - wold - 
wile - aile - bile - file - mile - nile - pile - tile - vile - wale - wide - wife - wild - will - wilt - wily - wine - wipe - wire - wise - wive - 
will - bill - dill - fill - gill - hill - jill - kill - mill - pill - rill - sill - till - wall - well - wild - wile - wilt - wily - 
wilt - gilt - hilt - jilt - lilt - milt - silt - tilt - walt - welt - wild - wile - will - wily - witt - 
wily - lily - oily - wild - wile - will - wilt - winy - wiry - 
wind - bind - find - hind - kind - lind - mind - wand - wild - wine - wing - wink - wino - winy - 
wine - dine - fine - line - mine - nine - pine - sine - tine - vine - wane - wide - wife - wile - wind - wing - wink - wino - winy - wipe - wire - wise - wive - 
wing - bing - ding - king - ping - ring - sing - wang - wind - wine - wink - wino - winy - wong - zing - 
wink - fink - kink - link - mink - pink - rink - sink - wick - wind - wine - wing - wino - winy - 
wino - gino - wind - wine - wing - wink - winy - 
winy - tiny - wily - wind - wine - wing - wink - wino - wiry - 
wipe - pipe - ripe - wide - wife - wile - wine - wire - wise - wive - 
wire - dire - eire - fire - hire - mire - sire - tire - ware - were - wide - wife - wile - wine - wipe - wiry - wise - wive - wore - 
wiry - airy - wary - wily - winy - wire - 
wise - lise - rise - vise - wide - wife - wile - wine - wipe - wire - wish - wisp - wive - 
wish - dish - fish - wash - wise - wisp - with - 
wisp - lisp - wasp - wise - wish - 
with - pith - wish - witt - 
witt - bitt - mitt - pitt - watt - wilt - with - 
wive - dive - five - give - hive - jive - live - wave - wide - wife - wile - wine - wipe - wire - wise - wove - 
woke - coke - joke - poke - wake - wore - wove - yoke - 
wold - bold - cold - fold - gold - hold - mold - sold - told - weld - wild - wolf - wood - word - 
wolf - golf - wold - 
womb - bomb - comb - lomb - tomb - 
wong - bong - gong - hong - kong - long - pong - song - tong - wang - wing - wont - 
wont - font - mont - pont - want - went - wong - 
wood - food - good - hood - mood - rood - wold - wool - word - 
wool - cool - fool - pool - tool - wood - 
word - cord - ford - lord - ward - wold - wood - wore - work - worm - worn - 
wore - bore - core - fore - gore - lore - more - pore - sore - tore - ware - were - wire - woke - word - work - worm - worn - wove - yore - 
work - cork - fork - pork - word - wore - worm - worn - york - 
worm - form - norm - warm - word - wore - work - worn - 
worn - born - corn - horn - morn - torn - warn - word - wore - work - worm - zorn - 
wove - cove - dove - hove - jove - love - move - rove - wave - wive - woke - wore - 
wrap - crap - trap - 
writ - grit - wait - whit - 
wynn - lynn - 
yale - bale - dale - gale - hale - kale - male - pale - sale - tale - vale - wale - yule - 
yang - bang - dang - fang - gang - hang - lang - pang - rang - sang - tang - wang - yank - 
yank - bank - dank - hank - lank - rank - sank - tank - yang - 
yard - bard - card - hard - lard - ward - yarn - 
yarn - barn - darn - earn - warn - yard - yawn - 
yawl - bawl - yawn - 
yawn - dawn - fawn - lawn - pawn - yarn - yawl - 
yeah - year - 
year - bear - dear - fear - gear - hear - lear - near - pear - rear - sear - tear - wear - yeah - 
yell - bell - cell - dell - fell - hell - nell - sell - tell - well - yelp - 
yelp - help - kelp - yell - 
ymca - ywca - 
yoga - yogi - 
yogi - yoga - 
yoke - coke - joke - poke - woke - yore - 
yolk - folk - polk - york - 
yond - bond - fond - pond - 
yore - bore - core - fore - gore - lore - more - pore - sore - tore - wore - yoke - york - 
york - cork - fork - pork - work - yolk - yore - 
yost - cost - host - lost - most - post - 
your - dour - four - hour - pour - sour - tour - 
yuck - buck - duck - huck - luck - muck - puck - suck - tuck - 
yuki - 
yule - mule - rule - yale - 
yves - 
ywca - ymca - 
zeal - deal - heal - meal - neal - peal - real - seal - teal - veal - weal - 
zero - hero - nero - 
zest - best - fest - jest - lest - nest - pest - rest - test - vest - west - 
zeta - beta - 
zeus - deus - 
zinc - zing - 
zing - bing - ding - king - ping - ring - sing - wing - zinc - 
zion - lion - pion - 
zone - bone - cone - done - gone - hone - lone - none - tone - 
zoom - boom - doom - loom - room - 
zorn - born - corn - horn - morn - torn - worn - 
aaron - akron - apron - baron - 
ababa - 
aback - 
abase - abash - abate - abuse - 
abash - abase - awash - 
abate - abase - agate - 
abbas - 
abbey - 
abbot - 
abide - abode - amide - aside - 
abner - 
abode - abide - above - anode - 
abort - about - amort - 
about - abort - 
above - abode - 
abram - 
abuse - abase - amuse - 
abyss - 
accra - 
acorn - adorn - scorn - 
acrid - 
acton - actor - alton - anton - 
actor - acton - astor - 
acute - 
adage - 
adair - 
adams - 
adapt - adept - adopt - 
added - 
addis - 
addle - adele - 
adele - addle - 
adept - adapt - adopt - 
adieu - 
adler - 
admit - admix - 
admix - admit - 
adobe - adore - 
adopt - adapt - adept - 
adore - adobe - adorn - 
adorn - acorn - adore - 
adult - 
aegis - regis - 
affix - 
afire - 
afoot - 
afoul - 
again - 
agate - abate - agave - 
agave - agate - 
agent - anent - 
agile - 
aging - 
agnes - agnew - 
agnew - agnes - 
agone - agony - alone - atone - 
agony - agone - 
agree - 
agway - alway - 
ahead - 
aides - aires - andes - 
aiken - liken - 
ain't - 
aires - aides - 
aisle - lisle - 
akers - ayers - 
akron - aaron - apron - 
alamo - 
alarm - 
album - 
alcoa - 
alden - alder - alien - allen - arden - olden - 
alder - alden - alger - alter - elder - 
aleck - fleck - 
aleph - 
alert - avert - 
algae - algal - 
algal - algae - algol - 
alger - alder - alter - anger - auger - 
algol - algal - 
alias - 
alibi - 
alice - alike - alive - slice - 
alien - alden - align - allen - 
align - alien - 
alike - alice - alive - 
alive - alice - alike - clive - olive - 
allah - allan - allay - 
allan - allah - allay - allen - allyn - 
allay - allah - allan - alley - alloy - alway - 
allen - alden - alien - allan - alley - allyn - arlen - ellen - 
alley - allay - allen - alloy - 
allis - ellis - 
allot - allow - alloy - 
allow - allot - alloy - 
alloy - allay - alley - allot - allow - 
allyl - allyn - 
allyn - allan - allen - allyl - 
aloft - 
aloha - alpha - 
alone - agone - along - atone - clone - 
along - alone - among - 
aloof - 
aloud - cloud - 
alpha - aloha - 
alsop - 
altar - alter - 
alter - alder - alger - altar - aster - 
alton - acton - anton - elton - 
alvin - 
alway - agway - allay - 
amass - amiss - 
amaze - 
amber - ember - umber - 
amble - ample - 
amend - 
amide - abide - aside - 
amigo - amino - 
amino - amigo - 
amiss - amass - 
amity - 
amman - 
amoco - 
among - along - 
amort - abort - 
ampex - 
ample - amble - amply - apple - 
amply - ample - apply - 
amuse - abuse - 
andes - aides - 
andre - 
anent - agent - 
angel - anger - engel - 
anger - alger - angel - auger - 
angie - angle - annie - 
angle - angie - anglo - ankle - engle - 
anglo - angle - 
angry - 
angst - 
angus - argus - 
anion - anton - onion - union - 
anise - arise - 
anita - 
ankle - angle - 
annal - annul - 
annex - 
annie - angie - 
annoy - 
annul - annal - annum - 
annum - annul - 
anode - abode - 
antic - attic - 
anton - acton - alton - anion - 
anvil - 
aorta - 
apace - space - 
apart - 
aphid - 
apple - ample - apply - 
apply - amply - apple - 
april - 
apron - aaron - akron - 
araby - 
arden - alden - arlen - 
arena - 
argon - argot - arson - 
argot - argon - 
argue - argus - 
argus - angus - argue - 
arhat - 
aries - 
arise - anise - arose - 
arlen - allen - arden - 
armco - 
aroma - 
arose - arise - prose - 
array - 
arrow - 
arson - argon - 
artie - 
aruba - 
ashen - asher - aspen - 
asher - ashen - aster - usher - 
aside - abide - amide - 
askew - 
aspen - ashen - 
assai - assam - assay - 
assam - assai - assay - 
assay - assai - assam - essay - 
asset - 
aster - alter - asher - astor - ester - 
astor - actor - aster - 
atlas - 
atone - agone - alone - stone - 
attic - antic - 
audio - audit - 
audit - audio - 
auger - alger - anger - augur - luger - 
augur - auger - 
aural - mural - rural - 
auric - 
avail - 
avert - alert - avery - overt - 
avery - avert - every - 
avoid - 
await - 
awake - aware - awoke - 
award - aware - 
aware - awake - award - 
awash - abash - 
awful - 
awoke - awake - 
axial - 
axiom - 
ayers - akers - byers - myers - 
aztec - 
azure - 
babel - bagel - basel - label - mabel - 
bacon - baron - baton - macon - 
baden - laden - 
badge - barge - budge - 
bagel - babel - basel - 
baggy - boggy - buggy - 
baird - 
baldy - balky - balmy - bandy - bawdy - 
balky - baldy - balmy - bulky - talky - 
balmy - baldy - balky - 
balsa - 
bambi - 
banal - basal - canal - 
bandy - baldy - bawdy - bundy - candy - dandy - handy - randy - sandy - 
banjo - 
banks - 
bantu - 
barge - badge - barre - large - 
baron - aaron - bacon - baton - boron - byron - 
barre - barge - barry - 
barry - barre - berry - carry - darry - garry - harry - larry - marry - parry - tarry - 
barth - berth - birth - earth - garth - 
basal - banal - basel - basil - nasal - 
basel - babel - bagel - basal - basil - easel - 
basic - basil - basin - basis - 
basil - basal - basel - basic - basin - basis - 
basin - basic - basil - basis - 
basis - basic - basil - basin - oasis - 
bassi - basso - 
basso - bassi - lasso - 
baste - caste - haste - paste - taste - waste - 
batch - bitch - botch - butch - catch - hatch - latch - match - patch - watch - 
bater - bates - bator - bauer - cater - dater - eater - hater - later - mater - pater - rater - tater - water - 
bates - bater - gates - yates - 
bathe - lathe - 
batik - 
baton - bacon - baron - bator - eaton - 
bator - bater - baton - gator - 
bauer - bater - 
bawdy - baldy - bandy - 
bayda - 
bayed - 
bayou - 
beach - beech - belch - bench - leach - peach - reach - teach - 
beady - brady - heady - ready - 
beard - board - heard - 
beast - blast - boast - feast - least - yeast - 
beaux - 
bebop - 
becky - 
bedim - 
beebe - 
beech - beach - belch - bench - leech - 
beefy - 
befit - 
befog - 
began - begin - begun - beman - 
beget - beret - beset - 
begin - began - begun - 
begun - began - begin - 
beige - 
being - bring - 
belch - beach - beech - bench - welch - 
belie - belle - 
bella - belle - belly - della - vella - 
belle - belie - bella - belly - 
belly - bella - belle - billy - bully - jelly - kelly - 
below - 
beman - began - reman - 
bench - beach - beech - belch - bunch - 
benny - bunny - denny - jenny - lenny - penny - 
berea - beret - berra - 
beret - beget - berea - beset - buret - 
berne - borne - byrne - verne - 
berra - berea - berry - terra - 
berry - barry - berra - ferry - gerry - jerry - kerry - merry - perry - terry - 
berth - barth - birth - perth - 
beryl - 
beset - beget - beret - 
betel - bevel - bezel - 
betsy - betty - 
bette - betty - butte - 
betty - betsy - bette - getty - hetty - petty - 
bevel - betel - bezel - level - revel - 
bezel - betel - bevel - 
bible - 
bicep - 
biddy - buddy - giddy - 
biggs - riggs - 
bigot - 
bilge - binge - bulge - 
billy - belly - bully - filly - hilly - lilly - rilly - silly - 
binge - bilge - hinge - singe - tinge - 
biota - 
birch - birth - bitch - burch - 
birth - barth - berth - birch - girth - mirth - 
bison - boson - 
bitch - batch - birch - botch - butch - ditch - fitch - hitch - pitch - witch - 
bizet - 
black - blank - block - flack - slack - 
blade - blake - blame - blare - blaze - glade - 
blair - flair - 
blake - blade - blame - blare - blaze - bloke - brake - flake - slake - 
blame - blade - blake - blare - blaze - flame - 
blanc - bland - blank - 
bland - blanc - blank - blend - blind - blond - brand - gland - 
blank - black - blanc - bland - blink - clank - flank - plank - 
blare - blade - blake - blame - blaze - clare - flare - glare - 
blast - beast - blest - boast - 
blatz - blitz - 
blaze - blade - blake - blame - blare - glaze - 
bleak - bleat - break - 
bleat - bleak - blest - bloat - cleat - pleat - 
bleed - blend - breed - 
blend - bland - bleed - blind - blond - 
bless - blest - bliss - 
blest - blast - bleat - bless - brest - 
blimp - 
blind - bland - blend - blink - blinn - blond - 
blink - blank - blind - blinn - brink - clink - 
blinn - blind - blink - 
bliss - bless - 
blitz - blatz - 
bloat - bleat - float - gloat - 
bloch - block - 
block - black - bloch - brock - clock - flock - 
bloke - blake - broke - 
blond - bland - blend - blind - blood - 
blood - blond - bloom - bloop - brood - flood - 
bloom - blood - bloop - broom - gloom - 
bloop - blood - bloom - sloop - 
blown - brown - clown - flown - 
bluet - blunt - blurt - 
bluff - fluff - 
blunt - bluet - blurt - brunt - 
blurb - blurt - 
blurt - bluet - blunt - blurb - 
blush - brush - flush - plush - 
board - beard - hoard - 
boast - beast - blast - boost - coast - roast - toast - 
bobby - booby - hobby - lobby - 
bogey - boggy - 
boggy - baggy - bogey - buggy - foggy - soggy - 
bogus - bonus - 
boise - noise - poise - 
bongo - congo - 
bonus - bogus - 
bonze - booze - 
booby - bobby - booky - booty - 
booky - booby - booty - cooky - rooky - 
boone - booze - borne - 
boost - boast - roost - 
booth - booty - broth - sooth - tooth - 
booty - booby - booky - booth - 
booze - bonze - boone - 
borax - 
boric - boris - doric - 
boris - boric - doris - 
borne - berne - boone - byrne - 
boron - baron - boson - byron - moron - 
bosch - botch - busch - 
bosom - boson - 
boson - bison - boron - bosom - 
botch - batch - bitch - bosch - butch - notch - 
bough - cough - dough - hough - rough - sough - tough - 
boule - boyle - joule - 
bound - found - hound - mound - pound - round - sound - wound - 
bourn - mourn - 
bowel - bowen - dowel - towel - vowel - 
bowen - bowel - 
bowie - 
boyar - 
boyce - boyle - bryce - joyce - royce - 
boyle - boule - boyce - doyle - 
brace - bract - brake - brave - brice - bruce - bryce - grace - trace - 
bract - brace - brant - tract - 
brady - beady - grady - 
bragg - 
braid - brain - brand - 
brain - braid - braun - drain - grain - train - 
brake - blake - brace - brave - broke - drake - 
brand - bland - braid - brant - grand - 
brant - bract - brand - brent - brunt - grant - 
brash - brass - brush - crash - trash - 
brass - brash - crass - grass - 
braun - brain - 
brave - brace - brake - bravo - breve - crave - grave - 
bravo - brave - 
brawl - crawl - drawl - trawl - 
bread - break - bream - breed - broad - dread - tread - 
break - bleak - bread - bream - creak - freak - wreak - 
bream - bread - break - cream - dream - 
breed - bleed - bread - creed - freed - greed - 
brent - brant - brest - brett - brunt - 
brest - blest - brent - brett - crest - wrest - 
brett - brent - brest - 
breve - brave - 
brian - briar - bryan - 
briar - brian - friar - 
bribe - brice - bride - brine - tribe - 
brice - brace - bribe - brick - bride - brine - bruce - bryce - price - 
brick - brice - brink - brisk - brock - buick - frick - prick - trick - 
bride - bribe - brice - brine - pride - 
brief - grief - 
brine - bribe - brice - bride - bring - brink - briny - urine - 
bring - being - brine - brink - briny - wring - 
brink - blink - brick - brine - bring - briny - brisk - drink - 
briny - brine - bring - brink - 
brisk - brick - brink - 
broad - bread - brood - 
brock - block - brick - brook - crock - frock - 
broil - 
broke - bloke - brake - 
bronx - 
brood - blood - broad - brook - broom - 
brook - brock - brood - broom - crook - 
broom - bloom - brood - brook - groom - 
broth - booth - froth - 
brown - blown - crown - drown - frown - grown - 
bruce - brace - brice - brute - bryce - truce - 
bruit - brunt - fruit - 
bruno - brunt - 
brunt - blunt - brant - brent - bruit - bruno - grunt - 
brush - blush - brash - crush - 
brute - bruce - 
bryan - brian - 
bryce - boyce - brace - brice - bruce - 
buddy - biddy - bundy - muddy - ruddy - 
budge - badge - bulge - fudge - judge - nudge - 
buena - 
buggy - baggy - boggy - muggy - 
bugle - 
buick - brick - quick - 
build - built - guild - 
built - build - guilt - quilt - 
bulge - bilge - budge - 
bulky - balky - bully - sulky - 
bully - belly - billy - bulky - burly - dully - fully - gully - sully - 
bunch - bench - burch - busch - butch - hunch - lunch - munch - punch - 
bundy - bandy - buddy - bunny - 
bunny - benny - bundy - funny - gunny - sunny - 
burch - birch - bunch - busch - butch - lurch - 
buret - beret - burnt - burst - burtt - 
burke - 
burly - bully - 
burma - 
burnt - buret - burst - burtt - 
burro - 
burst - buret - burnt - burtt - hurst - 
burtt - buret - burnt - burst - 
busch - bosch - bunch - burch - butch - 
buses - 
bushy - mushy - 
butch - batch - bitch - botch - bunch - burch - busch - dutch - hutch - 
buteo - 
butte - bette - 
butyl - 
buxom - 
buyer - 
buzzy - fuzzy - 
byers - ayers - myers - 
bylaw - 
byrne - berne - borne - 
byron - baron - boron - myron - 
byway - 
cabal - canal - 
cabin - rabin - 
cable - fable - gable - sable - table - 
cabot - 
cacao - 
cache - 
cacti - 
caddy - candy - daddy - paddy - 
cadet - caret - 
cadre - padre - 
cagey - carey - casey - 
caine - carne - chine - maine - paine - 
cairn - cairo - 
cairo - cairn - 
caleb - 
calla - carla - 
calve - carve - halve - salve - valve - 
camel - cameo - 
cameo - camel - 
can't - canst - 
canal - banal - cabal - 
candy - bandy - caddy - canny - cindy - dandy - handy - randy - sandy - 
canis - 
canna - canny - hanna - manna - 
canny - candy - canna - danny - fanny - 
canoe - canon - 
canon - canoe - 
canst - can't - 
canto - santo - 
caper - cater - paper - taper - 
caret - cadet - carey - 
carey - cagey - caret - carry - casey - corey - 
cargo - carlo - fargo - margo - 
carib - carob - 
carla - calla - carlo - 
carlo - cargo - carla - 
carne - caine - carte - carve - 
carob - carib - carol - 
carol - carob - karol - 
carry - barry - carey - curry - darry - garry - harry - larry - marry - parry - tarry - 
carte - carne - carve - caste - 
carve - calve - carne - carte - curve - 
casey - cagey - carey - 
caste - baste - carte - haste - paste - taste - waste - 
catch - batch - hatch - latch - match - patch - watch - 
cater - bater - caper - dater - eater - hater - later - mater - pater - rater - tater - water - 
cathy - kathy - 
caulk - 
cause - pause - 
cavil - civil - 
cease - chase - lease - pease - tease - 
cecil - 
cedar - 
celia - cilia - delia - 
ceres - jeres - 
cetus - fetus - 
chafe - chaff - chase - 
chaff - chafe - chuff - 
chain - chair - 
chair - chain - choir - 
chalk - 
champ - chomp - chump - clamp - cramp - 
chang - chant - clang - 
chant - chang - chart - 
chaos - 
chard - charm - chart - chord - shard - 
charm - chard - chart - chasm - 
chart - chant - chard - charm - chert - 
chase - cease - chafe - chasm - chose - phase - 
chasm - charm - chase - 
cheap - cheat - 
cheat - cheap - chert - chest - cleat - wheat - 
check - cheek - chick - chock - chuck - 
cheek - check - cheer - creek - 
cheer - cheek - sheer - 
chert - chart - cheat - chest - 
chess - chest - cress - 
chest - cheat - chert - chess - crest - 
chevy - 
chick - check - chink - chock - chuck - click - thick - 
chide - chile - chime - chine - chive - 
chief - thief - 
child - chile - chili - chill - 
chile - chide - child - chili - chill - chime - chine - chive - while - 
chili - child - chile - chill - 
chill - child - chile - chili - shill - 
chime - chide - chile - chine - chive - clime - crime - 
china - chine - chink - 
chine - caine - chide - chile - chime - china - chink - chive - rhine - shine - thine - whine - 
chink - chick - china - chine - chunk - clink - think - 
chirp - 
chive - chide - chile - chime - chine - clive - 
chock - check - chick - chuck - clock - crock - shock - 
choir - chair - 
choke - chore - chose - cooke - 
chomp - champ - chump - clomp - 
chord - chard - chore - 
chore - choke - chord - chose - shore - whore - 
chose - chase - choke - chore - close - those - whose - 
chris - 
chuck - check - chick - chock - chunk - cluck - shuck - 
chuff - chaff - 
chump - champ - chomp - clump - crump - thump - 
chunk - chink - chuck - 
churn - 
chute - 
cider - eider - 
cigar - 
cilia - celia - 
cinch - conch - finch - pinch - winch - 
cindy - candy - windy - 
circa - circe - 
circe - circa - 
civet - covet - rivet - 
civic - civil - 
civil - cavil - civic - 
claim - 
clamp - champ - clasp - clomp - clump - cramp - 
clang - chang - clank - cling - clung - slang - 
clank - blank - clang - clark - clink - crank - flank - plank - 
clara - clare - clark - 
clare - blare - clara - clark - flare - glare - 
clark - clank - clara - clare - clerk - 
clash - clasp - class - crash - flash - slash - 
clasp - clamp - clash - class - 
class - clash - clasp - claus - crass - glass - 
claus - class - klaus - 
clean - clear - cleat - glean - 
clear - clean - cleat - 
cleat - bleat - cheat - clean - clear - cleft - pleat - 
cleft - cleat - 
clerk - clark - 
click - chick - clink - clock - cluck - flick - slick - 
cliff - 
climb - clime - 
clime - chime - climb - clive - crime - slime - 
cling - clang - clink - clint - clung - fling - sling - 
clink - blink - chink - clank - click - cling - clint - 
clint - cling - clink - flint - glint - 
clive - alive - chive - clime - clove - olive - 
cloak - clock - croak - 
clock - block - chock - click - cloak - cluck - crock - flock - 
clomp - chomp - clamp - clump - 
clone - alone - close - clove - crone - 
close - chose - clone - clove - 
cloth - sloth - 
cloud - aloud - clout - 
clout - cloud - flout - 
clove - clive - clone - close - glove - 
clown - blown - crown - flown - 
cluck - chuck - click - clock - pluck - 
clump - chump - clamp - clomp - crump - plump - slump - 
clung - clang - cling - flung - slung - 
clyde - 
coach - conch - couch - poach - roach - 
coast - boast - roast - toast - 
cobol - 
cobra - copra - 
cocky - cooky - rocky - 
cocoa - 
codon - colon - 
cohen - coven - cozen - 
colby - 
colon - codon - solon - 
colza - 
comet - coset - covet - 
comic - conic - 
comma - 
conch - cinch - coach - couch - 
coney - corey - honey - money - 
congo - bongo - 
conic - comic - cynic - ionic - monic - sonic - tonic - 
cooke - choke - cooky - 
cooky - booky - cocky - cooke - rooky - 
coors - 
copra - cobra - 
coral - moral - 
corey - carey - coney - corny - 
corny - corey - horny - 
corps - 
cosec - coset - 
coset - comet - cosec - covet - 
costa - cotta - 
cotta - costa - cotty - 
cotty - cotta - 
couch - coach - conch - cough - pouch - touch - vouch - 
cough - bough - couch - dough - hough - rough - sough - tough - 
could - gould - mould - would - 
count - court - fount - mount - 
coupe - 
court - count - 
coven - cohen - cover - covet - cozen - woven - 
cover - coven - covet - hover - 
covet - civet - comet - coset - coven - cover - 
cowan - 
cowry - dowry - lowry - 
coypu - 
cozen - cohen - coven - dozen - 
crack - crank - crock - track - wrack - 
craft - croft - draft - graft - kraft - 
craig - 
cramp - champ - clamp - crimp - crump - tramp - 
crane - crank - crate - crave - craze - crone - 
crank - clank - crack - crane - drank - frank - prank - 
crash - brash - clash - crass - crush - trash - 
crass - brass - class - crash - cress - criss - cross - grass - 
crate - crane - crave - craze - crete - grate - irate - orate - 
crave - brave - crane - crate - craze - grave - 
crawl - brawl - drawl - trawl - 
craze - crane - crate - crave - crazy - graze - 
crazy - craze - 
creak - break - cream - creek - croak - freak - wreak - 
cream - bream - creak - dream - 
credo - 
creed - breed - creek - creep - cried - freed - greed - 
creek - cheek - creak - creed - creep - greek - 
creep - creed - creek - 
creon - croon - freon - 
crepe - crept - crete - 
crept - crepe - crest - crypt - 
cress - chess - crass - crest - criss - cross - dress - press - tress - 
crest - brest - chest - crept - cress - crust - wrest - 
crete - crate - crepe - 
cried - creed - dried - fried - tried - 
crime - chime - clime - crimp - grime - prime - 
crimp - cramp - crime - crisp - crump - primp - 
crisp - crimp - criss - 
criss - crass - cress - crisp - cross - 
croak - cloak - creak - crock - crook - 
crock - brock - chock - clock - crack - croak - crook - frock - 
croft - craft - 
croix - 
crone - clone - crane - crony - drone - prone - 
crony - crone - irony - 
crook - brook - croak - crock - croon - 
croon - creon - crook - crown - 
cross - crass - cress - criss - dross - gross - 
crowd - crown - 
crown - brown - clown - croon - crowd - drown - frown - grown - 
crude - 
cruel - 
crumb - crump - 
crump - chump - clump - cramp - crimp - crumb - trump - 
crush - brush - crash - crust - 
crust - crest - crush - trust - 
crypt - crept - 
csnet - 
cubic - 
culpa - 
cumin - 
cupid - 
curia - curie - curio - 
curie - curia - curio - curse - curve - 
curio - curia - curie - 
curry - carry - furry - hurry - 
curse - curie - curve - nurse - purse - 
curve - carve - curie - curse - 
cycad - 
cycle - 
cynic - conic - 
cyril - 
cyrus - 
czech - 
d'art - 
dacca - decca - 
daddy - caddy - dandy - paddy - 
daffy - duffy - taffy - 
dairy - daisy - darry - fairy - hairy - 
daisy - dairy - 
dakar - 
daley - dally - haley - 
dally - daley - dolly - dully - rally - sally - tally - wally - 
damon - demon - 
dance - dante - dunce - lance - vance - 
dandy - bandy - candy - daddy - danny - handy - randy - sandy - 
danny - canny - dandy - denny - fanny - 
dante - dance - 
darpa - 
darry - barry - carry - dairy - garry - harry - larry - marry - parry - tarry - 
dater - bater - cater - deter - eater - hater - later - mater - pater - rater - tater - water - 
datum - 
daunt - gaunt - haunt - taunt - vaunt - 
david - davis - davit - 
davis - david - davit - mavis - 
davit - david - davis - 
dealt - 
deane - diane - duane - 
death - depth - heath - neath - 
debar - dewar - 
debby - derby - 
debit - debut - demit - 
debra - zebra - 
debug - debut - 
debut - debit - debug - rebut - 
decal - decay - 
decay - decal - decoy - decry - delay - 
decca - dacca - mecca - 
decor - decoy - 
decoy - decay - decor - decry - 
decry - decay - decoy - 
deere - 
defer - deter - refer - 
degas - 
degum - 
deify - deity - 
deign - feign - reign - 
deity - deify - 
delay - decay - 
delft - 
delhi - 
delia - celia - della - delta - 
della - bella - delia - delta - vella - 
delta - delia - della - 
delve - 
demit - debit - remit - 
demon - damon - devon - lemon - 
demur - femur - 
deneb - 
denny - benny - danny - jenny - lenny - penny - 
dense - sense - tense - 
depot - 
depth - death - 
derby - debby - 
derek - 
deter - dater - defer - meter - 
deuce - douce - 
devil - 
devon - demon - 
dewar - debar - 
dewey - 
dhabi - 
diana - diane - 
diane - deane - diana - duane - 
diary - 
dicta - 
diego - dingo - 
diety - dietz - dirty - ditty - piety - 
dietz - diety - 
digit - 
dinah - 
dingo - diego - dingy - lingo - 
dingy - dingo - 
diode - 
dirac - 
dirge - 
dirty - diety - ditty - 
disco - 
ditch - bitch - dutch - fitch - hitch - pitch - witch - 
ditto - ditty - 
ditty - diety - dirty - ditto - kitty - nitty - witty - 
divan - 
dixie - 
dixon - nixon - 
dizzy - 
dobbs - hobbs - 
dodge - hodge - lodge - podge - 
dogma - 
dolan - dylan - nolan - 
dolce - douce - 
dolly - dally - dully - folly - golly - holly - jolly - lolly - molly - 
don't - won't - 
donna - 
donor - 
doria - doric - doris - 
doric - boric - doria - doris - 
doris - boris - doria - doric - 
doubt - 
douce - deuce - dolce - douse - 
dough - bough - cough - hough - rough - sough - tough - 
douse - douce - house - louse - mouse - rouse - 
dowel - bowel - towel - vowel - 
downs - 
dowry - cowry - lowry - 
doyle - boyle - 
dozen - cozen - 
draco - 
draft - craft - drift - graft - kraft - 
drain - brain - drawn - grain - train - 
drake - brake - drape - 
drama - 
drank - crank - drink - drunk - frank - prank - 
drape - drake - grape - 
drawl - brawl - crawl - drawn - trawl - 
drawn - drain - drawl - drown - 
dread - bread - dream - dryad - tread - 
dream - bream - cream - dread - 
dress - cress - dross - press - tress - 
dried - cried - drier - fried - tried - 
drier - dried - 
drift - draft - 
drill - droll - frill - grill - trill - 
drink - brink - drank - drunk - 
drive - drove - 
droll - drill - drool - troll - 
drone - crone - drove - prone - 
drool - droll - droop - 
droop - drool - troop - 
dross - cross - dress - gross - 
drove - drive - drone - grove - prove - 
drown - brown - crown - drawn - frown - grown - 
druid - 
drunk - drank - drink - trunk - 
drury - 
dryad - dread - 
duane - deane - diane - 
dubhe - 
ducat - 
duffy - daffy - puffy - 
dugan - 
dully - bully - dally - dolly - fully - gully - sully - 
dulse - pulse - 
dummy - dumpy - gummy - mummy - rummy - 
dumpy - dummy - jumpy - lumpy - 
dunce - dance - ounce - 
durer - 
dusky - dusty - husky - 
dusty - dusky - fusty - gusty - lusty - musty - rusty - 
dutch - butch - ditch - hutch - 
dwarf - 
dwell - dwelt - swell - 
dwelt - dwell - swelt - 
dwyer - 
dying - hying - lying - tying - vying - 
dylan - dolan - 
eagan - pagan - 
eager - eater - hager - lager - 
eagle - engle - 
earth - barth - garth - 
easel - basel - 
eaten - eater - eaton - 
eater - bater - cater - dater - eager - eaten - enter - ester - hater - later - mater - pater - rater - tater - water - 
eaton - baton - eaten - elton - 
ebony - 
eclat - 
ecole - 
eddie - 
edgar - 
edict - evict - 
edify - 
edith - 
edwin - erwin - 
eerie - 
effie - 
egret - 
egypt - 
eider - cider - elder - 
eight - fight - light - might - night - right - sight - tight - 
eject - elect - erect - 
elate - elite - elute - plate - slate - 
elbow - 
elder - alder - eider - elmer - 
eldon - elton - 
elect - eject - erect - 
elegy - 
elena - 
elfin - elgin - 
elgin - elfin - 
elide - elite - elude - glide - slide - 
eliot - 
elite - elate - elide - elute - 
ellen - allen - 
ellis - allis - 
elmer - elder - 
elope - slope - 
elsie - 
elton - alton - eaton - eldon - 
elude - elide - elute - etude - exude - 
elute - elate - elite - elude - flute - 
elves - 
embed - ember - 
ember - amber - embed - umber - 
emcee - 
emery - emory - every - 
emile - emily - exile - smile - 
emily - emile - 
emory - emery - 
empty - 
endow - 
enemy - 
engel - angel - 
engle - angle - eagle - 
enoch - epoch - 
enter - eater - ester - inter - 
entry - 
envoy - 
epoch - enoch - 
epoxy - 
epsom - 
equal - 
equip - 
erase - 
erato - 
erect - eject - elect - 
erich - 
ernie - 
ernst - 
erode - 
errol - error - 
error - errol - 
erupt - 
ervin - erwin - irvin - 
erwin - edwin - ervin - irwin - 
essay - assay - 
essen - essex - 
essex - essen - 
ester - aster - eater - enter - estes - 
estes - ester - 
estop - 
ethan - 
ethel - ether - ethyl - 
ether - ethel - other - 
ethic - 
ethos - 
ethyl - ethel - 
etude - elude - exude - 
eucre - lucre - 
euler - 
evade - 
evans - 
event - 
every - avery - emery - 
evict - edict - 
evoke - 
ewing - owing - swing - 
exact - exalt - 
exalt - exact - exult - 
excel - expel - 
exert - 
exile - emile - 
exist - 
expel - excel - 
extol - 
extra - 
exude - elude - etude - 
exult - exalt - 
exxon - 
faber - 
fable - cable - gable - sable - table - 
facet - 
facto - 
faery - fairy - fiery - 
fahey - 
faint - feint - flint - paint - saint - taint - 
fairy - dairy - faery - hairy - 
faith - 
false - 
fancy - fanny - nancy - 
fanny - canny - danny - fancy - finny - funny - 
farad - 
farce - force - 
fargo - cargo - forgo - margo - 
fatal - fetal - natal - 
fatty - natty - patty - ratty - tatty - 
fault - faust - sault - vault - 
fauna - 
faust - fault - 
feast - beast - least - yeast - 
feign - deign - reign - 
feint - faint - flint - 
felix - helix - 
felon - melon - 
femur - demur - 
fence - hence - pence - 
fermi - 
ferry - berry - furry - gerry - jerry - kerry - merry - perry - terry - 
fetal - fatal - metal - petal - 
fetch - fitch - ketch - retch - vetch - 
fetid - 
fetus - cetus - 
fever - lever - never - rever - sever - 
fiche - niche - 
field - fiend - wield - yield - 
fiend - field - 
fiery - faery - 
fifth - fifty - filth - 
fifty - fifth - 
fight - eight - light - might - night - right - sight - tight - 
filch - filth - finch - fitch - milch - zilch - 
filet - 
filly - billy - filmy - folly - fully - hilly - lilly - rilly - silly - 
filmy - filly - 
filth - fifth - filch - tilth - 
final - 
finch - cinch - filch - fitch - pinch - winch - 
finny - fanny - funny - 
first - 
fishy - wishy - 
fiske - 
fitch - bitch - ditch - fetch - filch - finch - hitch - pitch - witch - 
fjord - 
flack - black - flank - flask - fleck - flick - flock - slack - 
flail - flair - frail - 
flair - blair - flail - 
flake - blake - flaky - flame - flare - fluke - slake - 
flaky - flake - 
flame - blame - flake - flare - frame - 
flank - blank - clank - flack - flask - flunk - frank - plank - 
flare - blare - clare - flake - flame - glare - 
flash - clash - flask - flesh - flush - slash - 
flask - flack - flank - flash - 
fleck - aleck - flack - flick - flock - 
fleet - sleet - 
flesh - flash - flush - fresh - 
flick - click - flack - fleck - flock - frick - slick - 
flier - flyer - 
fling - cling - flint - flung - sling - 
flint - clint - faint - feint - fling - flirt - glint - 
flirt - flint - 
float - bloat - flout - gloat - 
flock - block - clock - flack - fleck - flick - frock - 
flood - blood - floor - floyd - 
floor - flood - flour - 
flora - 
flour - floor - flout - 
flout - clout - float - flour - 
flown - blown - clown - frown - 
floyd - flood - lloyd - 
fluff - bluff - 
fluid - 
fluke - flake - flute - 
flung - clung - fling - flunk - slung - 
flunk - flank - flung - plunk - 
flush - blush - flash - flesh - plush - 
flute - elute - fluke - 
flyer - flier - foyer - 
flynn - 
foamy - loamy - 
focal - local - vocal - 
focus - hocus - locus - pocus - 
foggy - boggy - soggy - 
foist - moist - 
foley - folly - 
folio - polio - 
folly - dolly - filly - foley - fully - golly - holly - jolly - lolly - molly - 
foote - forte - 
foray - forty - 
force - farce - forge - forte - 
forge - force - forgo - forte - gorge - jorge - 
forgo - fargo - forge - 
forte - foote - force - forge - forth - forty - porte - 
forth - forte - forty - north - worth - 
forty - foray - forte - forth - 
forum - 
found - bound - fount - hound - mound - pound - round - sound - wound - 
fount - count - found - mount - 
fovea - 
foyer - flyer - moyer - 
frail - flail - grail - trail - 
frame - flame - 
franc - frank - franz - 
frank - crank - drank - flank - franc - franz - prank - 
franz - franc - frank - 
fraud - freud - 
freak - break - creak - wreak - 
freed - breed - creed - freer - freud - fried - greed - 
freer - freed - greer - 
freon - creon - 
fresh - flesh - 
freud - fraud - freed - 
freya - 
friar - briar - 
frick - brick - flick - frock - prick - trick - 
fried - cried - dried - freed - tried - 
frill - drill - grill - trill - 
fritz - 
frock - brock - crock - flock - frick - 
front - frost - 
frost - front - 
froth - broth - 
frown - brown - crown - drown - flown - grown - 
froze - 
fruit - bruit - 
fuchs - 
fudge - budge - judge - nudge - 
fugal - 
fugue - 
fully - bully - dully - filly - folly - gully - sully - 
fungi - 
funny - bunny - fanny - finny - gunny - sunny - 
furry - curry - ferry - hurry - 
furze - 
fussy - fusty - pussy - 
fusty - dusty - fussy - gusty - lusty - musty - rusty - 
fuzzy - buzzy - 
gable - cable - fable - sable - table - 
gabon - 
gaffe - 
galen - 
gamin - gavin - 
gamma - gemma - mamma - 
gamut - 
garry - barry - carry - darry - gerry - harry - larry - marry - parry - tarry - 
garth - barth - earth - girth - 
gases - gates - oases - 
gassy - 
gates - bates - gases - yates - 
gator - bator - 
gaudy - 
gauge - gauze - gouge - 
gaunt - daunt - grunt - haunt - taunt - vaunt - 
gauss - 
gauze - gauge - 
gavel - navel - ravel - 
gavin - gamin - 
gawky - 
gecko - 
geese - reese - 
geigy - 
gemma - gamma - lemma - 
genie - genii - genre - 
genii - genie - 
genoa - 
genre - genie - 
genus - venus - 
gerry - berry - ferry - garry - jerry - kerry - merry - perry - terry - 
getty - betty - hetty - petty - 
ghana - 
ghent - 
ghost - 
ghoul - 
giant - grant - 
gibbs - gibby - 
gibby - gibbs - 
giddy - biddy - 
giles - gules - miles - 
gimpy - 
girth - birth - garth - mirth - 
given - liven - riven - 
glade - blade - glare - glaze - glide - grade - 
gland - bland - glans - grand - 
glans - gland - glass - 
glare - blare - clare - flare - glade - glaze - 
glass - class - glans - gloss - grass - 
glaze - blaze - glade - glare - graze - 
gleam - glean - 
glean - clean - gleam - glenn - 
glenn - glean - 
glide - elide - glade - guide - slide - 
glint - clint - flint - 
gloat - bloat - float - groat - 
globe - glove - 
gloom - bloom - groom - 
glory - 
gloss - glass - gross - 
glove - clove - globe - grove - 
glued - gluey - 
gluey - glued - 
glyph - 
gnarl - snarl - 
gnash - 
gnome - 
golly - dolly - folly - gully - holly - jolly - lolly - molly - 
goode - goody - goose - 
goody - goode - goofy - moody - woody - 
goofy - goody - 
goose - goode - gorse - loose - moose - noose - 
goren - loren - 
gorge - forge - gorse - gouge - jorge - 
gorky - 
gorse - goose - gorge - horse - morse - worse - 
gouda - 
gouge - gauge - gorge - rouge - 
gould - could - gourd - mould - would - 
gourd - gould - 
grace - brace - grade - grape - grate - grave - graze - trace - 
grade - glade - grace - grady - grape - grate - grave - graze - trade - 
grady - brady - grade - gravy - 
graff - graft - gruff - 
graft - craft - draft - graff - grant - kraft - 
grail - frail - grain - trail - 
grain - brain - drain - grail - groin - train - 
grand - brand - gland - grant - grind - 
grant - brant - giant - graft - grand - grunt - 
grape - drape - grace - grade - graph - grate - grave - graze - gripe - grope - 
graph - grape - 
grasp - grass - 
grass - brass - crass - glass - grasp - gross - 
grata - grate - greta - 
grate - crate - grace - grade - grape - grata - grave - graze - irate - orate - 
grave - brave - crave - grace - grade - grape - grate - gravy - graze - grove - 
gravy - grady - grave - 
graze - craze - glaze - grace - grade - grape - grate - grave - 
great - greet - groat - treat - 
grebe - 
greed - breed - creed - freed - greek - green - greer - greet - 
greek - creek - greed - green - greer - greet - 
green - greed - greek - greer - greet - preen - 
greer - freer - greed - greek - green - greet - 
greet - great - greed - greek - green - greer - 
gregg - 
greta - grata - 
grief - brief - 
grill - drill - frill - trill - 
grime - crime - grimm - gripe - prime - 
grimm - grime - 
grind - grand - 
gripe - grape - grime - grope - tripe - 
grist - wrist - 
groan - groat - groin - grown - 
groat - gloat - great - groan - grout - 
groin - grain - groan - grown - 
groom - broom - gloom - 
grope - grape - gripe - grove - 
gross - cross - dross - gloss - grass - 
group - grout - 
grout - groat - group - trout - 
grove - drove - glove - grave - grope - prove - 
growl - grown - prowl - 
grown - brown - crown - drown - frown - groan - groin - growl - 
gruff - graff - 
grunt - brunt - gaunt - grant - 
guano - 
guard - 
guess - guest - 
guest - guess - quest - 
guide - glide - guile - guise - 
guild - build - guile - guilt - 
guile - guide - guild - guilt - guise - 
guilt - built - guild - guile - quilt - 
guise - guide - guile - 
gules - giles - jules - 
gully - bully - dully - fully - golly - sully - 
gumbo - jumbo - 
gummy - dummy - mummy - rummy - 
gunky - gunny - junky - punky - 
gunny - bunny - funny - gunky - sunny - 
gusto - gusty - 
gusty - dusty - fusty - gusto - lusty - musty - rusty - 
gutsy - 
gypsy - 
habib - habit - 
habit - habib - 
hades - hayes - 
hagen - hager - haven - 
hager - eager - hagen - hater - lager - 
hague - vague - 
haifa - 
haiku - 
hairy - dairy - fairy - harry - 
haiti - 
haley - daley - haney - 
halma - 
halve - calve - salve - valve - 
hamal - 
handy - bandy - candy - dandy - haney - hardy - randy - sandy - 
haney - haley - handy - honey - 
hanna - canna - manna - 
hanoi - 
happy - harpy - hippy - pappy - sappy - 
hardy - handy - harpy - harry - tardy - 
harem - 
harpy - happy - hardy - harry - 
harry - barry - carry - darry - garry - hairy - hardy - harpy - hurry - larry - marry - parry - tarry - 
harsh - marsh - 
haste - baste - caste - hasty - paste - taste - waste - 
hasty - haste - nasty - pasty - tasty - 
hatch - batch - catch - hitch - hutch - latch - match - patch - watch - 
hater - bater - cater - dater - eater - hager - later - mater - pater - rater - tater - water - 
haunt - daunt - gaunt - taunt - vaunt - 
haven - hagen - raven - 
havoc - 
haydn - 
hayes - hades - 
hazel - 
he'll - we'll - 
heady - beady - healy - heavy - ready - 
healy - heady - heavy - mealy - 
heard - beard - heart - hoard - 
heart - heard - 
heath - death - neath - 
heave - heavy - leave - reave - weave - 
heavy - heady - healy - heave - 
hedge - hodge - ledge - sedge - wedge - 
hefty - hetty - lefty - 
heigh - leigh - weigh - 
heine - heinz - 
heinz - heine - 
helen - 
helga - 
helix - felix - 
hello - 
hence - fence - pence - 
henri - henry - 
henry - henri - 
heron - huron - 
hertz - 
hesse - jesse - 
hetty - betty - getty - hefty - petty - 
hiatt - 
hicks - 
hilly - billy - filly - holly - lilly - rilly - silly - 
hilum - 
hindu - 
hines - 
hinge - binge - singe - tinge - 
hippo - hippy - 
hippy - happy - hippo - tippy - zippy - 
hiram - 
hitch - bitch - ditch - fitch - hatch - hutch - pitch - witch - 
hoagy - 
hoard - board - heard - 
hobbs - dobbs - hobby - 
hobby - bobby - hobbs - hubby - lobby - 
hocus - focus - horus - locus - pocus - 
hodge - dodge - hedge - lodge - podge - 
hogan - hokan - logan - 
hokan - hogan - 
holly - dolly - folly - golly - hilly - jolly - lolly - molly - 
holst - 
honda - hondo - 
hondo - honda - rondo - 
honey - coney - haney - money - 
hooch - pooch - 
horde - horse - 
horny - corny - 
horse - gorse - horde - house - morse - worse - 
horus - hocus - torus - 
hotel - hovel - motel - 
hough - bough - cough - dough - rough - sough - tough - 
hound - bound - found - mound - pound - round - sound - wound - 
house - douse - horse - louse - mouse - rouse - 
hovel - hotel - hover - novel - 
hover - cover - hovel - 
howdy - rowdy - 
hubby - hobby - 
huber - 
human - hyman - 
humid - 
humus - 
hunch - bunch - hutch - lunch - munch - punch - 
huron - heron - 
hurry - curry - furry - harry - hurty - 
hurst - burst - 
hurty - hurry - 
husky - dusky - 
hutch - butch - dutch - hatch - hitch - hunch - 
hydra - hydro - 
hydro - hydra - 
hyena - 
hying - dying - lying - tying - vying - 
hyman - human - hymen - lyman - wyman - 
hymen - hyman - 
idaho - 
ideal - 
idiom - idiot - 
idiot - idiom - 
idyll - 
igloo - 
ileum - 
iliac - iliad - 
iliad - iliac - 
ilona - 
image - 
imbue - 
impel - 
inane - 
inapt - inept - 
incur - 
index - 
india - 
inept - inapt - inert - 
inert - inept - 
infer - inner - inter - 
infix - 
infra - 
ingot - 
injun - 
inlay - 
inlet - inset - 
inman - 
inner - infer - inter - 
input - 
inset - inlet - onset - 
inter - enter - infer - inner - 
inure - 
ionic - conic - monic - sonic - tonic - 
irate - crate - grate - orate - 
irene - 
irish - 
irony - crony - 
irvin - ervin - irwin - 
irwin - erwin - irvin - 
isaac - 
ising - 
islam - 
isn't - 
issue - 
it'll - 
italy - 
ivory - 
jacky - tacky - wacky - 
jacob - 
jaime - 
james - 
janet - 
janos - janus - 
janus - janos - 
japan - 
jason - mason - 
jazzy - 
jelly - belly - jolly - kelly - 
jenny - benny - denny - lenny - penny - 
jeres - ceres - 
jerky - jerry - perky - 
jerry - berry - ferry - gerry - jerky - kerry - merry - perry - terry - 
jesse - hesse - 
jesus - 
jewel - newel - 
jiffy - 
jimmy - 
johns - 
joint - point - 
jolla - jolly - 
jolly - dolly - folly - golly - holly - jelly - jolla - jowly - lolly - molly - 
jonas - jones - 
jones - jonas - 
jorge - forge - gorge - 
josef - 
joule - boule - 
joust - 
jowly - jolly - 
joyce - boyce - royce - 
judas - 
judge - budge - fudge - nudge - 
juice - juicy - 
juicy - juice - 
jukes - jules - 
julep - jules - 
jules - gules - jukes - julep - 
julia - julie - julio - 
julie - julia - julio - 
julio - julia - julie - 
jumbo - gumbo - 
jumpy - dumpy - lumpy - 
junco - 
junky - gunky - punky - 
junta - 
juror - 
kabul - 
kafka - 
kajar - 
kapok - 
kappa - tappa - 
karen - 
karma - 
karol - carol - 
kathy - cathy - 
katie - 
kazoo - 
keats - yeats - 
keith - 
kelly - belly - jelly - 
kenya - 
kerry - berry - ferry - gerry - jerry - merry - perry - terry - 
ketch - fetch - retch - vetch - 
kevin - levin - 
keyed - keyes - 
keyes - keyed - 
khaki - 
khmer - 
kidde - 
kinky - 
kiosk - 
kiowa - 
kirby - 
kirov - 
kitty - ditty - nitty - witty - 
klaus - claus - 
klein - 
kline - 
knack - knick - knock - snack - 
knapp - 
knead - 
kneel - knell - 
knell - kneel - knelt - knoll - snell - 
knelt - knell - 
knick - knack - knock - snick - 
knife - 
knock - knack - knick - 
knoll - knell - 
knott - 
known - 
knurl - 
koala - 
kodak - 
kombu - 
koran - moran - 
korea - 
kraft - craft - draft - graft - kraut - 
kraut - kraft - 
krebs - 
kruse - 
kudzu - 
kulak - 
kyoto - 
l'vov - 
laban - 
label - babel - lapel - libel - mabel - 
labia - 
laden - baden - 
ladle - 
lager - eager - hager - later - luger - 
lagos - 
laity - 
lamar - 
lance - dance - lange - vance - 
lange - lance - large - lunge - mange - range - 
lanka - lanky - 
lanky - lanka - 
lapel - label - 
lapse - 
larch - latch - lurch - march - parch - 
lares - 
large - barge - lange - 
larry - barry - carry - darry - garry - harry - marry - parry - tarry - 
larva - 
lasso - basso - 
latch - batch - catch - hatch - larch - match - patch - watch - 
later - bater - cater - dater - eater - hater - lager - latex - mater - pater - rater - tater - water - 
latex - later - 
lathe - bathe - lethe - lithe - 
latin - satin - 
latus - lotus - 
laugh - 
laura - 
layup - 
leach - beach - leash - leech - peach - reach - teach - 
leafy - leaky - 
leaky - leafy - peaky - 
leapt - least - 
learn - yearn - 
lease - cease - leash - least - leave - pease - tease - 
leash - leach - lease - least - 
least - beast - feast - leapt - lease - leash - yeast - 
leave - heave - lease - reave - weave - 
ledge - hedge - lodge - sedge - wedge - 
leech - beech - leach - 
leeds - 
leery - veery - 
lefty - hefty - lofty - 
legal - regal - 
leggy - peggy - 
leigh - heigh - weigh - 
leila - 
lemma - gemma - 
lemon - demon - 
lenin - levin - 
lenny - benny - denny - jenny - penny - 
leona - leone - 
leone - leona - 
leper - lever - 
leroy - 
lethe - lathe - lithe - 
levee - level - lever - 
level - bevel - levee - lever - revel - 
lever - fever - leper - levee - level - never - rever - sever - 
levin - kevin - lenin - levis - 
levis - levin - lewis - 
lewis - levis - 
libel - label - 
libya - 
light - eight - fight - might - night - right - sight - tight - 
liken - aiken - linen - liven - 
lilac - 
lilly - billy - filly - hilly - lolly - rilly - silly - 
limbo - 
limit - 
linda - 
linen - liken - liven - 
lingo - dingo - 
linus - minus - sinus - 
lipid - livid - 
lisle - aisle - 
lithe - lathe - lethe - tithe - withe - 
liven - given - liken - linen - riven - 
livid - lipid - vivid - 
livre - 
lloyd - floyd - 
loamy - foamy - 
loath - 
lobar - 
lobby - bobby - hobby - 
local - focal - loyal - vocal - 
locke - 
locus - focus - hocus - lotus - pocus - 
lodge - dodge - hodge - ledge - podge - 
loess - 
lofty - lefty - 
logan - hogan - 
logic - 
loire - moire - 
lolly - dolly - folly - golly - holly - jolly - lilly - molly - 
loose - goose - louse - moose - noose - 
lopez - 
loren - goren - 
lossy - lousy - mossy - 
lotte - 
lotus - latus - locus - 
louis - 
louse - douse - house - loose - lousy - mouse - rouse - 
lousy - lossy - louse - mousy - 
lower - power - tower - 
lowry - cowry - dowry - 
loyal - local - royal - 
lucas - 
lucia - lucid - 
lucid - lucia - lurid - 
lucky - 
lucre - eucre - 
luger - auger - lager - 
lumen - rumen - 
lumpy - dumpy - jumpy - 
lunar - 
lunch - bunch - hunch - lurch - lynch - munch - punch - 
lunge - lange - runge - 
lurch - burch - larch - lunch - 
lurid - lucid - 
lusty - dusty - fusty - gusty - musty - rusty - 
luzon - 
lydia - 
lying - dying - hying - tying - vying - 
lykes - sykes - 
lyman - hyman - wyman - 
lymph - nymph - 
lynch - lunch - 
lyons - 
lyric - 
mabel - babel - label - 
macho - macro - 
macon - bacon - mason - 
macro - macho - micro - 
madam - 
mafia - mania - maria - 
magic - manic - 
magma - magna - mamma - 
magna - magma - manna - 
magog - 
maier - maser - mater - mayer - meier - 
maine - caine - paine - 
major - manor - mayor - 
malay - 
malta - yalta - 
mambo - 
mamma - gamma - magma - 
mange - lange - manse - range - 
mania - mafia - manic - manna - maria - 
manic - magic - mania - monic - panic - 
manna - canna - hanna - magna - mania - 
manor - major - mayor - minor - 
manse - mange - 
maori - 
maple - 
march - larch - marco - marcy - marsh - match - parch - 
marco - march - marcy - margo - mario - 
marcy - march - marco - marry - marty - mercy - 
mardi - 
margo - cargo - fargo - marco - mario - 
maria - mafia - mania - marie - marin - mario - 
marie - maria - marin - mario - 
marin - maria - marie - mario - 
mario - marco - margo - maria - marie - marin - 
marks - parks - 
marry - barry - carry - darry - garry - harry - larry - marcy - marty - merry - parry - tarry - 
marsh - harsh - march - 
marty - marcy - marry - party - warty - 
maser - maier - mater - mayer - miser - moser - 
mason - jason - macon - meson - 
match - batch - catch - hatch - latch - march - patch - watch - 
mateo - mater - 
mater - bater - cater - dater - eater - hater - later - maier - maser - mateo - mayer - meter - pater - rater - tater - water - 
matte - 
mauve - 
mavis - davis - 
maxim - 
maybe - 
mayer - maier - maser - mater - mayor - meyer - moyer - 
mayor - major - manor - mayer - 
mayst - 
mazda - 
mccoy - 
mcgee - mckee - 
mckay - 
mckee - mcgee - 
mealy - healy - meaty - 
meant - 
meaty - mealy - 
mecca - decca - 
mecum - tecum - 
medal - metal - modal - pedal - 
medea - media - 
media - medea - medic - 
medic - media - 
meier - maier - meter - meyer - 
melee - 
melon - felon - meson - 
menlo - 
merck - mercy - 
mercy - marcy - merck - merry - percy - 
merge - merle - serge - verge - 
merit - 
merle - merge - perle - 
merry - berry - ferry - gerry - jerry - kerry - marry - mercy - perry - terry - 
meson - mason - melon - 
messy - missy - mossy - 
metal - fetal - medal - petal - 
meter - deter - mater - meier - meyer - 
metro - 
meyer - mayer - meier - meter - moyer - 
mezzo - 
miami - 
micky - milky - picky - vicky - 
micro - macro - 
midas - 
midge - ridge - 
midst - 
might - eight - fight - light - night - right - sight - tight - 
milan - 
milch - filch - mulch - zilch - 
miles - giles - mills - 
milky - micky - silky - 
mills - miles - wills - 
mimic - 
mince - since - wince - 
minim - 
minor - manor - minos - minot - 
minos - minor - minot - minus - 
minot - minor - minos - 
minsk - 
minus - linus - minos - sinus - 
mirth - birth - girth - 
miser - maser - moser - 
missy - messy - misty - mossy - 
misty - missy - musty - 
mitre - 
mixup - 
mizar - 
mobil - 
modal - medal - model - molal - moral - nodal - 
model - modal - modem - monel - morel - motel - yodel - 
modem - model - 
modus - 
moire - loire - moore - 
moist - foist - 
molal - modal - molar - moral - 
molar - molal - mylar - polar - solar - 
molly - dolly - folly - golly - holly - jolly - lolly - 
mommy - mummy - tommy - 
monad - 
monel - model - money - morel - motel - 
money - coney - honey - monel - monty - 
monic - conic - ionic - manic - sonic - tonic - 
monte - month - monty - 
month - monte - monty - mouth - 
monty - money - monte - month - 
moody - goody - woody - 
moore - moire - moose - 
moose - goose - loose - moore - morse - mouse - noose - 
moral - coral - modal - molal - moran - morel - mural - 
moran - koran - moral - moron - 
morel - model - monel - moral - motel - 
moron - boron - moran - myron - 
morse - gorse - horse - moose - mouse - worse - 
moser - maser - miser - moses - moyer - 
moses - moser - 
mossy - lossy - messy - missy - mousy - 
motel - hotel - model - monel - morel - motet - 
motet - motel - 
motif - 
motor - rotor - 
motto - 
mould - could - gould - mound - would - 
mound - bound - found - hound - mould - mount - pound - round - sound - wound - 
mount - count - fount - mound - 
mourn - bourn - 
mouse - douse - house - louse - moose - morse - mousy - rouse - 
mousy - lousy - mossy - mouse - 
mouth - month - south - youth - 
movie - 
moyer - foyer - mayer - meyer - moser - 
mucus - 
muddy - buddy - ruddy - 
muggy - buggy - 
mugho - 
mulch - milch - mulct - munch - 
mulct - mulch - 
multi - 
mummy - dummy - gummy - mommy - rummy - 
munch - bunch - hunch - lunch - mulch - punch - 
muong - 
mural - aural - moral - rural - 
murky - 
murre - 
mushy - bushy - musty - 
music - 
musty - dusty - fusty - gusty - lusty - misty - mushy - rusty - 
muzak - 
myers - ayers - byers - 
mylar - molar - 
mynah - 
myron - byron - moron - 
myrrh - 
naacp - 
nabla - 
nadia - nadir - 
nadir - nadia - 
naiad - 
naive - waive - 
naked - 
nancy - fancy - 
naomi - 
nasal - basal - natal - naval - 
nasty - hasty - natty - pasty - tasty - 
natal - fatal - nasal - naval - 
natty - fatty - nasty - nitty - patty - ratty - tatty - 
naval - nasal - natal - navel - 
navel - gavel - naval - novel - ravel - 
neath - death - heath - 
needy - reedy - seedy - weedy - 
negro - 
nehru - 
nepal - sepal - 
nerve - serve - verve - 
never - fever - lever - rever - sever - 
newel - jewel - 
niche - fiche - 
niece - piece - 
niger - tiger - 
night - eight - fight - light - might - right - sight - tight - 
nikko - 
ninth - 
niobe - 
nitty - ditty - kitty - natty - witty - 
nixon - dixon - 
nobel - novel - 
noble - 
nodal - modal - 
noise - boise - noisy - noose - poise - 
noisy - noise - 
nolan - dolan - 
nomad - 
nonce - ponce - 
noose - goose - loose - moose - noise - 
norma - 
north - forth - worth - 
notch - botch - 
notre - 
novak - 
novel - hovel - navel - nobel - 
nubia - 
nudge - budge - fudge - judge - 
nurse - curse - purse - 
nylon - 
nymph - lymph - 
oaken - taken - waken - 
oases - gases - oasis - 
oasis - basis - oases - 
obese - 
objet - 
occur - 
ocean - 
octal - 
octet - 
odium - opium - 
offal - 
offer - 
often - 
ogden - olden - 
ohmic - 
olden - alden - ogden - olsen - 
olive - alive - clive - 
olsen - olden - olson - 
olson - olsen - 
omaha - 
omega - 
onion - anion - orion - union - 
onset - inset - 
opera - 
opine - spine - 
opium - odium - 
optic - 
orate - crate - grate - irate - ovate - 
orbit - 
order - 
organ - 
orion - onion - 
orono - 
osaka - 
oscar - 
osier - 
other - ether - otter - 
otter - other - utter - 
ought - 
ounce - dunce - 
ouvre - 
ouzel - 
ovary - 
ovate - orate - 
overt - avert - 
owens - 
owing - ewing - swing - 
oxeye - 
oxide - 
ozark - 
ozone - 
pablo - paulo - 
pabst - 
paddy - caddy - daddy - 
padre - cadre - 
paean - pagan - 
pagan - eagan - paean - 
paine - caine - maine - paint - payne - 
paint - faint - paine - point - print - saint - taint - 
palsy - pansy - patsy - 
pampa - tampa - 
panda - 
panel - 
panic - manic - punic - 
pansy - palsy - panty - patsy - tansy - 
panty - pansy - party - pasty - patty - 
paoli - pauli - 
papal - papaw - pupal - 
papaw - papal - 
paper - caper - pater - piper - taper - 
pappy - happy - peppy - poppy - puppy - sappy - 
papua - 
parch - larch - march - patch - perch - porch - 
paris - parks - 
parke - parks - parse - 
parks - marks - paris - parke - 
parry - barry - carry - darry - garry - harry - larry - marry - party - perry - tarry - 
parse - parke - passe - pause - purse - 
party - marty - panty - parry - pasty - patty - warty - 
pasha - 
passe - parse - paste - pause - posse - 
paste - baste - caste - haste - passe - pasty - peste - taste - waste - 
pasty - hasty - nasty - panty - party - paste - patty - tasty - 
patch - batch - catch - hatch - latch - match - parch - pitch - watch - 
pater - bater - cater - dater - eater - hater - later - mater - paper - rater - tater - water - 
patio - ratio - 
patsy - palsy - pansy - patty - 
patti - patty - 
patty - fatty - natty - panty - party - pasty - patsy - patti - petty - putty - ratty - tatty - 
paula - pauli - paulo - 
pauli - paoli - paula - paulo - 
paulo - pablo - paula - pauli - 
pause - cause - parse - passe - 
payne - paine - wayne - 
peace - peach - peale - pease - pence - place - 
peach - beach - leach - peace - perch - poach - reach - teach - 
peaky - leaky - perky - 
peale - peace - pease - perle - 
pearl - 
pease - cease - lease - peace - peale - phase - tease - 
pecan - 
pecos - 
pedal - medal - penal - petal - 
pedro - 
peepy - peppy - 
peggy - leggy - piggy - 
penal - pedal - petal - renal - venal - 
pence - fence - hence - peace - ponce - 
penis - 
penna - penny - 
penny - benny - denny - jenny - lenny - penna - peony - 
peony - penny - phony - 
peppy - pappy - peepy - poppy - puppy - 
pepsi - 
perch - parch - peach - percy - perth - porch - 
percy - mercy - perch - perky - perry - 
perez - 
peril - 
perky - jerky - peaky - percy - perry - 
perle - merle - peale - 
perry - berry - ferry - gerry - jerry - kerry - merry - parry - percy - perky - terry - 
perth - berth - perch - 
peste - paste - 
petal - fetal - metal - pedal - penal - 
petit - 
petri - 
petty - betty - getty - hetty - patty - putty - 
pewee - 
phage - phase - 
phase - chase - pease - phage - 
phlox - 
phone - phony - prone - shone - 
phony - peony - phone - 
photo - 
phyla - 
piano - 
picky - micky - vicky - 
piece - niece - 
piety - diety - 
piggy - peggy - 
pilot - pivot - 
pinch - cinch - finch - pitch - punch - winch - 
pinto - 
piotr - 
pious - 
piper - paper - 
pique - 
pitch - bitch - ditch - fitch - hitch - patch - pinch - witch - 
pithy - withy - 
pivot - pilot - 
pixel - 
pizza - 
place - peace - plane - plate - 
plaid - plain - 
plain - plaid - slain - 
plane - place - plank - plant - plate - 
plank - blank - clank - flank - plane - plant - plunk - prank - 
plant - plane - plank - slant - 
plasm - 
plate - elate - place - plane - plato - slate - 
plato - plate - pluto - 
playa - plaza - 
plaza - playa - 
plead - pleat - 
pleat - bleat - cleat - plead - 
pliny - 
pluck - cluck - plunk - 
plumb - plume - plump - 
plume - plumb - plump - 
plump - clump - plumb - plume - slump - 
plunk - flunk - plank - pluck - 
plush - blush - flush - 
pluto - plato - 
poach - coach - peach - pooch - porch - pouch - roach - 
pobox - 
pocus - focus - hocus - locus - 
podge - dodge - hodge - lodge - 
podia - 
poesy - 
point - joint - paint - print - 
poise - boise - noise - posse - 
polar - molar - solar - 
polio - folio - polis - 
polis - polio - 
polka - 
ponce - nonce - pence - 
pooch - hooch - poach - porch - pouch - 
poole - 
poppy - pappy - peppy - puppy - 
porch - parch - perch - poach - pooch - pouch - torch - 
porte - forte - porto - 
porto - porte - 
posey - pusey - 
posit - 
posse - passe - poise - 
potts - 
pouch - couch - poach - pooch - porch - touch - vouch - 
pound - bound - found - hound - mound - round - sound - wound - 
power - lower - tower - 
prado - 
prank - crank - drank - frank - plank - 
pratt - 
preen - green - 
press - cress - dress - tress - 
prexy - proxy - 
priam - prism - 
price - brice - prick - pride - prime - prize - 
prick - brick - frick - price - trick - 
pride - bride - price - prime - prize - 
prima - prime - primp - 
prime - crime - grime - price - pride - prima - primp - prize - 
primp - crimp - prima - prime - 
print - paint - point - 
prior - 
prism - priam - 
privy - 
prize - price - pride - prime - 
probe - prone - prose - prove - 
prone - crone - drone - phone - probe - prong - prose - prove - prune - 
prong - prone - wrong - 
proof - 
prose - arose - probe - prone - prove - 
proud - 
prove - drove - grove - probe - prone - prose - 
prowl - growl - 
proxy - prexy - 
prune - prone - 
psalm - 
psych - 
puffy - duffy - 
pulse - dulse - purse - 
punch - bunch - hunch - lunch - munch - pinch - 
punic - panic - runic - tunic - 
punky - gunky - junky - 
pupal - papal - pupil - 
pupil - pupal - 
puppy - pappy - peppy - poppy - 
purge - purse - surge - 
purse - curse - nurse - parse - pulse - purge - 
pusan - susan - 
pusey - posey - pussy - 
pussy - fussy - pusey - 
putty - patty - petty - rutty - 
pygmy - 
pyrex - 
qatar - 
quack - quark - quick - 
quaff - 
quail - 
quake - 
qualm - 
quark - quack - quart - quirk - 
quart - quark - quirt - 
quash - quasi - 
quasi - quash - 
queen - queer - 
queer - queen - 
quell - quill - 
query - 
quest - guest - 
queue - 
quick - buick - quack - quirk - 
quiet - quilt - quint - quirt - 
quill - quell - quilt - 
quilt - built - guilt - quiet - quill - quint - quirt - 
quinn - quint - 
quint - quiet - quilt - quinn - quirt - 
quirk - quark - quick - quirt - 
quirt - quart - quiet - quilt - quint - quirk - 
quite - quito - quote - suite - 
quito - quite - 
quota - quote - 
quote - quite - quota - 
rabat - 
rabbi - 
rabid - rabin - rapid - 
rabin - cabin - rabid - robin - rubin - 
radar - 
radii - radio - radix - 
radio - radii - radix - ratio - 
radix - radii - radio - 
radon - 
rainy - 
raise - 
rajah - 
rally - dally - rilly - sally - tally - wally - 
ralph - 
raman - reman - roman - 
ranch - 
randy - bandy - candy - dandy - handy - rangy - sandy - 
range - lange - mange - rangy - runge - 
rangy - randy - range - tangy - 
raoul - 
rapid - rabid - vapid - 
rater - bater - cater - dater - eater - hater - later - mater - pater - tater - water - 
ratio - patio - radio - 
ratty - fatty - natty - patty - rutty - tatty - 
ravel - gavel - navel - raven - revel - 
raven - haven - ravel - riven - 
razor - 
reach - beach - leach - peach - reich - retch - roach - teach - 
ready - beady - heady - reedy - 
realm - 
reave - heave - leave - reeve - weave - 
rebel - repel - revel - 
rebut - debut - 
recur - 
reedy - needy - ready - seedy - weedy - 
reese - geese - reeve - 
reeve - reave - reese - 
refer - defer - rever - 
regal - legal - renal - 
regis - aegis - 
reich - reach - retch - 
reign - deign - feign - 
relic - 
reman - beman - raman - roman - 
remit - demit - 
remus - 
renal - penal - regal - venal - 
repel - rebel - revel - 
resin - 
retch - fetch - ketch - reach - reich - vetch - 
revel - bevel - level - ravel - rebel - repel - rever - revet - 
rever - fever - lever - never - refer - revel - revet - river - sever - 
revet - revel - rever - rivet - 
rheum - 
rhine - chine - rhino - shine - thine - whine - 
rhino - rhine - 
rhoda - rhode - 
rhode - rhoda - 
rhyme - thyme - 
ridge - midge - 
rifle - 
rigel - 
riggs - biggs - 
right - eight - fight - light - might - night - sight - tight - 
rigid - 
riley - rilly - wiley - 
rilly - billy - filly - hilly - lilly - rally - riley - silly - 
rinse - 
ripen - risen - riven - 
risen - ripen - riven - rosen - 
risky - 
rival - 
riven - given - liven - raven - ripen - risen - river - rivet - 
river - rever - riven - rivet - 
rivet - civet - revet - riven - river - 
roach - coach - poach - reach - 
roast - boast - coast - roost - toast - 
robin - rabin - rubin - 
robot - 
rocco - 
rocky - cocky - rooky - 
rodeo - romeo - 
roger - 
rogue - vogue - 
roman - raman - reman - woman - 
romeo - rodeo - 
rondo - hondo - 
rooky - booky - cooky - rocky - roomy - 
roomy - rooky - 
roost - boost - roast - 
rosen - risen - 
rotor - motor - 
rouge - gouge - rough - rouse - route - 
rough - bough - cough - dough - hough - rouge - sough - tough - 
round - bound - found - hound - mound - pound - sound - wound - 
rouse - douse - house - louse - mouse - rouge - route - 
route - rouge - rouse - 
rowdy - howdy - 
royal - loyal - 
royce - boyce - joyce - 
ruben - rubin - rumen - 
rubin - rabin - robin - ruben - 
ruddy - buddy - muddy - 
rufus - 
rumen - lumen - ruben - 
rummy - dummy - gummy - mummy - 
runge - lunge - range - 
runic - punic - tunic - 
runty - rusty - rutty - 
rupee - 
rural - aural - mural - 
russo - 
rusty - dusty - fusty - gusty - lusty - musty - runty - rutty - 
rutty - putty - ratty - runty - rusty - 
ryder - 
sable - cable - fable - gable - salle - table - 
sabra - 
sachs - 
sadie - 
saint - faint - paint - stint - taint - 
salad - 
salem - 
salle - sable - sally - salve - 
sally - dally - rally - salle - salty - silly - sully - tally - wally - 
salon - saxon - solon - talon - 
salty - sally - silty - 
salve - calve - halve - salle - salvo - solve - valve - 
salvo - salve - 
samba - samoa - 
sammy - 
samoa - samba - 
sandy - bandy - candy - dandy - handy - randy - 
santa - santo - 
santo - canto - santa - 
sappy - happy - pappy - 
sarah - saran - 
saran - sarah - satan - 
satan - saran - satin - 
satin - latin - satan - 
satyr - 
sauce - saucy - saute - 
saucy - sauce - 
saudi - 
sault - fault - vault - 
saute - sauce - 
savoy - savvy - 
savvy - savoy - 
saxon - salon - 
scala - scald - scale - scalp - 
scald - scala - scale - scalp - scold - 
scale - scala - scald - scalp - scare - shale - stale - 
scalp - scala - scald - scale - scamp - scaup - 
scamp - scalp - scaup - stamp - swamp - 
scant - scent - slant - 
scare - scale - scarf - scary - score - share - snare - spare - stare - 
scarf - scare - scary - 
scary - scare - scarf - 
scaup - scalp - scamp - 
scene - scent - 
scent - scant - scene - spent - 
scion - 
scoff - scuff - 
scold - scald - 
scoop - scoot - sloop - snoop - stoop - swoop - 
scoot - scoop - scott - scout - shoot - 
scope - scops - score - slope - 
scops - scope - 
score - scare - scope - scorn - shore - snore - spore - store - swore - 
scorn - acorn - score - sworn - 
scott - scoot - scout - 
scour - scout - 
scout - scoot - scott - scour - shout - snout - spout - stout - 
scowl - 
scram - scrap - scrim - 
scrap - scram - strap - 
screw - shrew - 
scrim - scram - 
scrub - shrub - 
scuba - 
scuff - scoff - snuff - stuff - 
scull - skull - 
seamy - 
sears - 
sedan - sudan - 
seder - sever - 
sedge - hedge - ledge - serge - wedge - 
seedy - needy - reedy - weedy - 
seize - 
selma - 
senor - tenor - 
sense - dense - tense - 
seoul - 
sepal - nepal - 
sepia - septa - 
sepoy - 
septa - sepia - 
serge - merge - sedge - serve - surge - verge - 
serif - 
serum - strum - 
serve - nerve - serge - servo - verve - 
servo - serve - 
seton - 
setup - 
seven - sever - 
sever - fever - lever - never - rever - seder - seven - 
shack - shank - shark - shock - shuck - slack - smack - snack - stack - whack - 
shade - shady - shake - shale - shame - shape - share - shave - spade - 
shady - shade - shaky - 
shaft - shift - 
shake - shade - shako - shaky - shale - shame - shape - share - shave - slake - snake - stake - 
shako - shake - shaky - 
shaky - shady - shake - shako - 
shale - scale - shade - shake - shall - shame - shape - share - shave - stale - whale - 
shall - shale - shawl - shell - shill - small - stall - 
shame - shade - shake - shale - shape - share - shave - 
shank - shack - shark - stank - swank - thank - 
shape - shade - shake - shale - shame - share - shave - 
shard - chard - share - shari - shark - sharp - 
share - scare - shade - shake - shale - shame - shape - shard - shari - shark - sharp - shave - shire - shore - snare - spare - stare - 
shari - shard - share - shark - sharp - 
shark - shack - shank - shard - share - shari - sharp - shirk - snark - spark - stark - 
sharp - shard - share - shari - shark - 
shave - shade - shake - shale - shame - shape - share - shove - slave - stave - suave - 
shawl - shall - 
she'd - 
sheaf - shear - shelf - 
shear - sheaf - sheer - smear - spear - swear - 
sheen - sheep - sheer - sheet - steen - 
sheep - sheen - sheer - sheet - sleep - steep - sweep - 
sheer - cheer - shear - sheen - sheep - sheet - sneer - steer - 
sheet - sheen - sheep - sheer - skeet - sleet - sweet - 
sheik - 
shelf - sheaf - shell - 
shell - shall - shelf - shill - smell - snell - spell - swell - 
shied - shred - skied - 
shift - shaft - shirt - swift - 
shill - chill - shall - shell - skill - spill - still - 
shine - chine - rhine - shiny - shire - shone - spine - swine - thine - whine - 
shiny - shine - spiny - 
shire - share - shine - shirk - shirt - shore - spire - 
shirk - shark - shire - shirt - smirk - 
shirt - shift - shire - shirk - short - skirt - 
shish - swish - whish - 
shoal - 
shock - chock - shack - shook - shuck - stock - 
shoji - 
shone - phone - shine - shore - shove - stone - 
shook - shock - shoot - snook - spook - 
shoot - scoot - shook - short - shout - 
shore - chore - score - share - shire - shone - short - shove - snore - spore - store - swore - whore - 
short - shirt - shoot - shore - shout - snort - sport - 
shout - scout - shoot - short - snout - spout - stout - 
shove - shave - shone - shore - stove - 
shown - showy - 
showy - shown - snowy - 
shred - shied - shrew - 
shrew - screw - shred - threw - 
shrub - scrub - shrug - 
shrug - shrub - 
shuck - chuck - shack - shock - stuck - 
shunt - stunt - 
sibyl - 
sidle - 
siege - sieve - singe - 
siena - 
sieve - siege - steve - 
sight - eight - fight - light - might - night - right - tight - 
sigma - 
silas - 
silky - milky - silly - silty - sulky - 
silly - billy - filly - hilly - lilly - rilly - sally - silky - silty - sully - 
silty - salty - silky - silly - sixty - 
simon - timon - 
sinai - 
since - mince - singe - wince - 
sinew - 
singe - binge - hinge - siege - since - synge - tinge - 
sinus - linus - minus - situs - 
sioux - 
siren - 
sisal - 
situs - sinus - titus - 
sixth - sixty - 
sixty - silty - sixth - 
skate - slate - spate - state - 
skeet - sheet - sleet - sweet - 
skied - shied - 
skiff - sniff - stiff - 
skill - shill - skull - spill - still - 
skimp - 
skirt - shirt - 
skulk - skull - skunk - 
skull - scull - skill - skulk - 
skunk - skulk - spunk - stunk - 
slack - black - flack - shack - slick - smack - snack - stack - 
slain - plain - spain - stain - swain - 
slake - blake - flake - shake - slate - slave - snake - stake - 
slang - clang - slant - sling - slung - 
slant - plant - scant - slang - 
slash - clash - flash - slosh - smash - stash - 
slate - elate - plate - skate - slake - slave - spate - state - 
slave - shave - slake - slate - stave - suave - 
sleek - sleep - sleet - 
sleep - sheep - sleek - sleet - steep - sweep - 
sleet - fleet - sheet - skeet - sleek - sleep - slept - sweet - 
slept - sleet - swept - 
slice - alice - slick - slide - slime - spice - 
slick - click - flick - slack - slice - snick - stick - 
slide - elide - glide - slice - slime - 
slime - clime - slice - slide - slimy - 
slimy - slime - 
sling - cling - fling - slang - slung - sting - swing - 
sloan - 
sloop - bloop - scoop - snoop - stoop - swoop - 
slope - elope - scope - 
slosh - slash - sloth - 
sloth - cloth - slosh - sooth - 
slump - clump - plump - slurp - stump - 
slung - clung - flung - slang - sling - stung - swung - 
slurp - slump - 
smack - shack - slack - snack - stack - 
small - shall - smell - stall - 
smart - start - swart - 
smash - slash - stash - 
smear - shear - spear - swear - 
smell - shell - small - smelt - snell - spell - swell - 
smelt - smell - swelt - 
smile - emile - stile - 
smirk - shirk - 
smith - 
smoke - smoky - spoke - stoke - 
smoky - smoke - 
snack - knack - shack - slack - smack - snark - snick - stack - 
snafu - 
snail - snarl - 
snake - shake - slake - snare - stake - 
snare - scare - share - snake - snark - snarl - snore - spare - stare - 
snark - shark - snack - snare - snarl - spark - stark - 
snarl - gnarl - snail - snare - snark - 
sneak - speak - steak - 
sneer - sheer - steer - 
snell - knell - shell - smell - spell - swell - 
snick - knick - slick - snack - stick - 
sniff - skiff - snuff - stiff - 
snipe - swipe - 
snook - shook - snoop - spook - 
snoop - scoop - sloop - snook - stoop - swoop - 
snore - score - shore - snare - snort - spore - store - swore - 
snort - short - snore - snout - sport - 
snout - scout - shout - snort - spout - stout - 
snowy - showy - 
snuff - scuff - sniff - stuff - 
soapy - 
sober - 
sofia - 
soggy - boggy - foggy - 
solar - molar - polar - sonar - 
solid - 
solon - colon - salon - 
solve - salve - wolve - 
somal - 
sonar - solar - 
sonic - conic - ionic - monic - tonic - 
sonny - sunny - 
sooth - booth - sloth - south - tooth - 
sorry - worry - 
sough - bough - cough - dough - hough - rough - south - tough - 
sound - bound - found - hound - mound - pound - round - wound - 
sousa - 
south - mouth - sooth - sough - youth - 
space - apace - spade - spare - spate - spice - 
spade - shade - space - spare - spate - 
spain - slain - spawn - stain - swain - 
spare - scare - share - snare - space - spade - spark - spate - spire - spore - stare - 
spark - shark - snark - spare - stark - 
spasm - 
spate - skate - slate - space - spade - spare - spite - state - 
spawn - spain - 
speak - sneak - spear - speck - steak - 
spear - shear - smear - speak - swear - 
speck - speak - 
speed - spend - steed - 
spell - shell - smell - snell - spill - swell - 
spend - speed - spent - upend - 
spent - scent - spend - 
sperm - 
spica - spice - spicy - 
spice - slice - space - spica - spicy - spike - spine - spire - spite - 
spicy - spica - spice - spiky - spiny - 
spike - spice - spiky - spine - spire - spite - spoke - 
spiky - spicy - spike - spiny - 
spill - shill - skill - spell - spilt - still - 
spilt - spill - stilt - 
spine - opine - shine - spice - spike - spiny - spire - spite - swine - 
spiny - shiny - spicy - spiky - spine - 
spire - shire - spare - spice - spike - spine - spiro - spite - spore - 
spiro - spire - 
spite - spate - spice - spike - spine - spire - spitz - suite - 
spitz - spite - 
splat - splay - split - 
splay - splat - spray - 
split - splat - 
spoil - spool - 
spoke - smoke - spike - spore - stoke - 
spoof - spook - spool - spoon - 
spook - shook - snook - spoof - spool - spoon - 
spool - spoil - spoof - spook - spoon - stool - 
spoon - spoof - spook - spool - 
spore - score - shore - snore - spare - spire - spoke - sport - store - swore - 
sport - short - snort - spore - spout - spurt - 
spout - scout - shout - snout - sport - stout - 
spray - splay - stray - 
spree - sprue - 
sprig - 
sprue - spree - 
spume - 
spunk - skunk - stunk - 
spurn - spurt - 
spurt - sport - spurn - 
squad - squat - squaw - squid - 
squat - squad - squaw - 
squaw - squad - squat - 
squid - squad - 
stack - shack - slack - smack - snack - stacy - stalk - stank - stark - stick - stock - stuck - 
stacy - stack - stagy - 
staff - stiff - stuff - 
stage - stagy - stake - stale - stare - state - stave - swage - 
stagy - stacy - stage - 
stahl - stall - 
staid - stain - stair - stand - 
stain - slain - spain - staid - stair - stein - swain - 
stair - staid - stain - starr - 
stake - shake - slake - snake - stage - stale - stare - state - stave - stoke - 
stale - scale - shale - stage - stake - stalk - stall - stare - state - stave - stile - stole - style - 
stalk - stack - stale - stall - stank - stark - 
stall - shall - small - stahl - stale - stalk - still - 
stamp - scamp - stomp - stump - swamp - 
stand - staid - stank - 
stank - shank - stack - stalk - stand - stark - stink - stunk - swank - 
staph - stash - 
stare - scare - share - snare - spare - stage - stake - stale - stark - starr - start - state - stave - store - 
stark - shark - snark - spark - stack - stalk - stank - stare - starr - start - stork - 
starr - stair - stare - stark - start - 
start - smart - stare - stark - starr - swart - 
stash - slash - smash - staph - 
state - skate - slate - spate - stage - stake - stale - stare - stave - 
stave - shave - slave - stage - stake - stale - stare - state - steve - stove - suave - 
stead - steak - steal - steam - steed - 
steak - sneak - speak - stead - steal - steam - 
steal - stead - steak - steam - steel - 
steam - stead - steak - steal - 
steed - speed - stead - steel - steen - steep - steer - 
steel - steal - steed - steen - steep - steer - 
steen - sheen - steed - steel - steep - steer - stein - stern - 
steep - sheep - sleep - steed - steel - steen - steer - sweep - 
steer - sheer - sneer - steed - steel - steen - steep - 
stein - stain - steen - stern - 
stern - steen - stein - 
steve - sieve - stave - stove - 
stick - slick - snick - stack - stink - stock - stuck - 
stiff - skiff - sniff - staff - stuff - 
stile - smile - stale - still - stilt - stole - style - utile - 
still - shill - skill - spill - stall - stile - stilt - 
stilt - spilt - stile - still - stint - 
sting - sling - stink - stint - stung - swing - 
stink - stank - stick - sting - stint - stunk - 
stint - saint - stilt - sting - stink - stunt - 
stock - shock - stack - stick - stork - stuck - 
stoic - 
stoke - smoke - spoke - stake - stole - stone - store - stove - 
stole - stale - stile - stoke - stone - store - stove - style - 
stomp - stamp - stoop - stump - 
stone - atone - shone - stoke - stole - stony - store - stove - 
stony - stone - story - 
stood - stool - stoop - 
stool - spool - stood - stoop - 
stoop - scoop - sloop - snoop - stomp - stood - stool - strop - swoop - 
store - score - shore - snore - spore - stare - stoke - stole - stone - stork - storm - story - stove - swore - 
stork - stark - stock - store - storm - story - 
storm - store - stork - story - sturm - 
story - stony - store - stork - storm - 
stout - scout - shout - snout - spout - strut - 
stove - shove - stave - steve - stoke - stole - stone - store - 
strap - scrap - straw - stray - strip - strop - 
straw - strap - stray - 
stray - spray - strap - straw - 
strip - strap - strop - 
strom - strop - strum - 
strop - stoop - strap - strip - strom - 
strum - serum - strom - strut - 
strut - stout - strum - 
stuck - shuck - stack - stick - stock - stunk - 
study - 
stuff - scuff - snuff - staff - stiff - 
stump - slump - stamp - stomp - 
stung - slung - sting - stunk - stunt - swung - 
stunk - skunk - spunk - stank - stink - stuck - stung - stunt - 
stunt - shunt - stint - stung - stunk - 
sturm - storm - 
style - stale - stile - stole - styli - 
styli - style - 
suave - shave - slave - stave - 
sudan - sedan - susan - 
sugar - 
suite - quite - spite - 
sulfa - 
sulky - bulky - silky - sully - 
sully - bully - dully - fully - gully - sally - silly - sulky - 
sumac - 
sunny - bunny - funny - gunny - sonny - 
super - 
supra - 
surge - purge - serge - 
susan - pusan - sudan - 
sushi - 
susie - 
swage - stage - 
swain - slain - spain - stain - twain - 
swami - swamp - 
swamp - scamp - stamp - swami - 
swank - shank - stank - 
swarm - swart - 
swart - smart - start - swarm - 
swath - 
swear - shear - smear - spear - sweat - 
sweat - swear - sweet - swelt - swept - 
swede - 
sweep - sheep - sleep - steep - sweet - 
sweet - sheet - skeet - sleet - sweat - sweep - swelt - swept - 
swell - dwell - shell - smell - snell - spell - swelt - 
swelt - dwelt - smelt - sweat - sweet - swell - swept - 
swept - slept - sweat - sweet - swelt - 
swift - shift - 
swine - shine - spine - swing - swipe - twine - 
swing - ewing - owing - sling - sting - swine - swung - 
swipe - snipe - swine - 
swirl - twirl - 
swish - shish - swiss - 
swiss - swish - 
swoop - scoop - sloop - snoop - stoop - 
sword - swore - sworn - 
swore - score - shore - snore - spore - store - sword - sworn - 
sworn - scorn - sword - swore - 
swung - slung - stung - swing - 
sybil - 
sykes - lykes - 
sylow - 
synge - singe - 
synod - 
syria - 
syrup - 
table - cable - fable - gable - sable - 
taboo - 
tacit - 
tacky - jacky - talky - wacky - 
taffy - daffy - 
tahoe - 
taint - faint - paint - saint - taunt - 
taken - oaken - token - waken - 
talky - balky - tacky - tally - 
tally - dally - rally - sally - talky - wally - 
talon - salon - 
talus - 
tampa - pampa - tappa - 
tango - tangy - 
tangy - rangy - tango - tansy - 
tansy - pansy - tangy - 
tanya - 
taper - caper - paper - tapir - tater - 
tapir - taper - tapis - 
tapis - tapir - 
tappa - kappa - tampa - 
tardy - hardy - tarry - 
tarry - barry - carry - darry - garry - harry - larry - marry - parry - tardy - terry - 
taste - baste - caste - haste - paste - tasty - waste - 
tasty - hasty - nasty - pasty - taste - tatty - testy - 
tater - bater - cater - dater - eater - hater - later - mater - pater - rater - taper - water - 
tatty - fatty - natty - patty - ratty - tasty - 
taunt - daunt - gaunt - haunt - taint - vaunt - 
tawny - 
teach - beach - leach - peach - reach - 
tease - cease - lease - pease - tense - terse - 
tecum - mecum - 
teddy - 
teeth - tenth - 
telex - 
tempo - tempt - 
tempt - tempo - 
tenet - 
tenon - tenor - xenon - 
tenor - senor - tenon - 
tense - dense - sense - tease - terse - 
tenth - teeth - 
tepee - 
tepid - 
terra - berra - terre - terry - 
terre - terra - terry - terse - 
terry - berry - ferry - gerry - jerry - kerry - merry - perry - tarry - terra - terre - 
terse - tease - tense - terre - verse - 
testy - tasty - zesty - 
texan - texas - 
texas - texan - 
thank - shank - think - 
theft - 
their - 
theme - there - these - thyme - 
there - theme - these - where - 
these - theme - there - those - 
theta - 
thick - chick - think - trick - 
thief - chief - 
thigh - 
thine - chine - rhine - shine - thing - think - twine - whine - 
thing - thine - think - thong - tying - 
think - chink - thank - thick - thine - thing - 
third - 
thong - thing - 
thorn - 
those - chose - these - whose - 
three - threw - 
threw - shrew - three - throw - 
throb - throw - 
throw - threw - throb - 
thrum - 
thule - 
thumb - thump - 
thump - chump - thumb - trump - 
thyme - rhyme - theme - 
tiber - tibet - tiger - 
tibet - tiber - 
tibia - 
tidal - 
tiger - niger - tiber - 
tight - eight - fight - light - might - night - right - sight - 
tilde - 
tilth - filth - 
timex - 
timid - 
timon - simon - 
tinge - binge - hinge - singe - 
tioga - 
tippy - hippy - tipsy - zippy - 
tipsy - tippy - topsy - 
titan - 
tithe - lithe - title - withe - 
title - tithe - 
titus - situs - 
toady - 
toast - boast - coast - roast - 
today - 
toefl - 
token - taken - 
tokyo - 
tommy - mommy - 
tonal - total - 
tonic - conic - ionic - monic - sonic - topic - toxic - tunic - 
tooth - booth - sooth - 
topaz - 
topic - tonic - toxic - typic - 
topsy - tipsy - 
torah - torch - 
torch - porch - torah - touch - 
torso - 
torus - horus - 
total - tonal - 
totem - 
touch - couch - pouch - torch - tough - vouch - 
tough - bough - cough - dough - hough - rough - sough - touch - 
towel - bowel - dowel - tower - vowel - 
tower - lower - power - towel - 
toxic - tonic - topic - toxin - 
toxin - toxic - 
trace - brace - grace - track - tract - tracy - trade - truce - 
track - crack - trace - tract - tracy - trick - truck - wrack - 
tract - bract - trace - track - tracy - trait - 
tracy - trace - track - tract - 
trade - grade - trace - 
trail - frail - grail - train - trait - trawl - 
train - brain - drain - grain - trail - trait - twain - 
trait - tract - trail - train - 
tramp - cramp - trump - 
trash - brash - crash - 
trawl - brawl - crawl - drawl - trail - 
tread - bread - dread - treat - trend - triad - 
treat - great - tread - 
trend - tread - 
tress - cress - dress - press - truss - 
triac - triad - trial - 
triad - tread - triac - trial - tried - 
trial - triac - triad - trill - 
tribe - bribe - tripe - trite - 
trick - brick - frick - prick - thick - track - truck - 
tried - cried - dried - fried - triad - 
trill - drill - frill - grill - trial - troll - twill - 
tripe - gripe - tribe - trite - 
trite - tribe - tripe - write - 
troll - droll - trill - 
troop - droop - 
trout - grout - 
truce - bruce - trace - truck - 
truck - track - trick - truce - trunk - 
trudy - truly - 
truly - trudy - 
trump - crump - thump - tramp - 
trunk - drunk - truck - 
truss - tress - trust - 
trust - crust - truss - 
truth - 
tudor - tutor - 
tulip - 
tulle - tuple - 
tulsa - 
tunic - punic - runic - tonic - tunis - 
tunis - tunic - 
tuple - tulle - 
turin - 
turvy - 
tutor - tudor - 
twain - swain - train - 
tweak - 
tweed - 
twice - twine - 
twill - trill - twirl - 
twine - swine - thine - twice - 
twirl - swirl - twill - 
twist - 
tying - dying - hying - lying - thing - vying - 
tyler - 
typic - topic - 
tyson - 
u.s.a - 
ulcer - 
ultra - 
umber - amber - ember - 
umbra - 
unary - 
uncle - 
under - 
unify - unity - 
union - anion - onion - 
unite - unity - 
unity - unify - unite - 
until - 
upend - spend - 
upper - 
upset - 
upton - 
urban - 
urine - brine - 
usage - 
usher - asher - 
usual - 
usurp - usury - 
usury - usurp - 
utica - 
utile - stile - 
utter - otter - 
vacua - vacuo - 
vacuo - vacua - 
vaduz - 
vague - hague - value - vogue - 
valet - 
valid - vapid - 
value - vague - valve - 
valve - calve - halve - salve - value - 
vance - dance - lance - 
vapid - rapid - valid - 
vault - fault - sault - vaunt - 
vaunt - daunt - gaunt - haunt - taunt - vault - 
veery - leery - 
velar - 
veldt - 
vella - bella - della - villa - 
venal - penal - renal - 
venom - 
venus - genus - 
verde - verdi - verge - verne - verse - verve - 
verdi - verde - 
verge - merge - serge - verde - verne - verse - verve - 
verna - verne - versa - 
verne - berne - verde - verge - verna - verse - verve - 
versa - verna - verse - 
verse - terse - verde - verge - verne - versa - verve - 
verve - nerve - serve - verde - verge - verne - verse - 
vetch - fetch - ketch - retch - 
vicar - 
vichy - vicky - 
vicky - micky - picky - vichy - 
video - 
vigil - 
villa - vella - viola - willa - 
vinyl - 
viola - villa - 
virgo - 
virus - 
visit - 
visor - 
vista - 
vitae - vital - 
vital - vitae - 
vitro - 
vivid - livid - 
vixen - 
vocal - focal - local - 
vogel - vowel - 
vogue - rogue - vague - 
voice - 
volta - 
volvo - 
vomit - 
vouch - couch - pouch - touch - 
vowel - bowel - dowel - towel - vogel - 
vying - dying - hying - lying - tying - 
waals - walls - 
wacke - wacky - 
wacky - jacky - tacky - wacke - 
wafer - water - 
waist - wrist - 
waite - waive - waste - white - write - 
waive - naive - waite - 
waken - oaken - taken - waxen - 
waldo - 
walls - waals - wally - wells - wills - 
wally - dally - rally - sally - tally - walls - 
walsh - welsh - 
waltz - 
warty - marty - party - 
washy - wishy - 
waste - baste - caste - haste - paste - taste - waite - 
watch - batch - catch - hatch - latch - match - patch - witch - 
water - bater - cater - dater - eater - hater - later - mater - pater - rater - tater - wafer - 
watts - 
waxen - waken - 
wayne - payne - 
we'll - he'll - 
we're - we've - 
we've - we're - weave - 
weary - 
weave - heave - leave - reave - we've - 
weber - 
wedge - hedge - ledge - sedge - 
weedy - needy - reedy - seedy - wendy - 
weeks - 
weigh - heigh - leigh - 
weird - 
weiss - zeiss - 
welch - belch - welsh - 
wells - walls - wills - 
welsh - walsh - welch - 
wendy - weedy - windy - 
whack - shack - wrack - 
whale - shale - while - whole - 
wharf - 
wheat - cheat - 
wheel - 
whelk - whelm - whelp - 
whelm - whelk - whelp - 
whelp - whelk - whelm - 
where - there - whore - 
which - whish - 
whiff - 
while - chile - whale - whine - white - whole - 
whine - chine - rhine - shine - thine - while - white - 
whirl - 
whish - shish - which - whisk - 
whisk - whish - 
white - waite - while - whine - write - 
who'd - 
whole - whale - while - whore - whose - 
whoop - 
whore - chore - shore - where - whole - whose - 
whose - chose - those - whole - whore - 
widen - 
widow - 
width - 
wield - field - yield - 
wiley - riley - 
willa - villa - wills - wilma - 
wills - mills - walls - wells - willa - 
wilma - willa - 
wince - mince - since - winch - 
winch - cinch - finch - pinch - wince - witch - 
windy - cindy - wendy - 
wishy - fishy - washy - wispy - withy - 
wispy - wishy - 
witch - bitch - ditch - fitch - hitch - pitch - watch - winch - 
withe - lithe - tithe - withy - 
withy - pithy - wishy - withe - witty - 
witty - ditty - kitty - nitty - withy - 
wolfe - wolff - wolve - 
wolff - wolfe - 
wolve - solve - wolfe - 
woman - roman - women - wotan - wyman - 
women - woman - woven - 
won't - don't - 
woods - woody - 
woody - goody - moody - woods - wordy - 
wordy - woody - wormy - worry - 
world - would - 
wormy - wordy - worry - 
worry - sorry - wordy - wormy - 
worse - gorse - horse - morse - worst - 
worst - worse - 
worth - forth - north - 
wotan - woman - 
would - could - gould - mould - world - wound - 
wound - bound - found - hound - mound - pound - round - sound - would - 
woven - coven - women - 
wrack - crack - track - whack - wreck - 
wrath - 
wreak - break - creak - freak - wreck - 
wreck - wrack - wreak - 
wrest - brest - crest - wrist - 
wring - bring - wrong - 
wrist - grist - waist - wrest - 
write - trite - waite - white - wrote - 
wrong - prong - wring - 
wrote - write - 
wuhan - 
wyatt - 
wyeth - 
wylie - 
wyman - hyman - lyman - woman - 
wyner - 
xenon - tenon - 
xerox - 
xylem - 
yacht - 
yalta - malta - 
yaqui - 
yates - bates - gates - 
yearn - learn - 
yeast - beast - feast - least - 
yeats - keats - 
yemen - 
yield - field - wield - 
yodel - model - yoder - yokel - 
yoder - yodel - 
yokel - yodel - 
you'd - 
young - 
youth - mouth - south - 
yucca - 
yukon - 
zaire - 
zazen - 
zebra - debra - 
zeiss - weiss - 
zesty - testy - 
zilch - filch - milch - 
zippy - hippy - tippy - 
zloty - 
zomba - 
aarhus - 
abacus - 
abater - 
abbott - 
abduct - 
abject - adject - object - 
ablate - ablaze - oblate - 
ablaze - ablate - 
aboard - 
abound - around - 
abrade - 
abroad - 
abrupt - 
absent - assent - 
absorb - adsorb - 
absurd - 
acadia - 
accede - 
accent - accept - ascent - 
accept - accent - 
access - 
accord - 
accost - 
accrue - 
accuse - 
acetic - 
aching - 
acidic - 
ackley - 
acquit - 
across - 
actual - 
acuity - 
acumen - 
adagio - 
addend - 
addict - 
adduce - 
adelia - amelia - 
adhere - 
adipic - 
adject - abject - 
adjoin - 
adjust - 
adkins - atkins - 
admire - 
adolph - 
adonis - 
adrian - 
adrift - 
adroit - 
adsorb - absorb - 
advent - advert - 
adverb - advert - 
advert - advent - adverb - 
advice - advise - 
advise - advice - 
aegean - augean - 
aeneas - 
aeneid - 
aeolus - 
aerate - berate - derate - 
aerial - serial - 
affair - 
affect - effect - 
affine - 
affirm - 
afford - 
afghan - 
afield - 
aflame - 
afloat - 
afraid - 
afresh - 
africa - 
agatha - 
agenda - 
aghast - 
agleam - 
agouti - 
agreed - 
aileen - eileen - 
airman - airmen - 
airmen - airman - 
airway - 
aitken - 
alaska - 
albany - 
albeit - albert - 
albert - albeit - alpert - 
alcott - 
alcove - 
aldrin - 
alexei - 
alexis - 
alfred - 
alicia - 
alight - blight - flight - plight - slight - 
alison - 
alkali - 
alkane - alkene - 
alkene - alkane - 
allege - allele - 
allele - allege - 
allied - 
allude - allure - 
allure - allude - 
almond - 
almost - 
alpert - albert - 
alpine - 
altair - 
altern - 
althea - 
alumna - alumni - 
alumni - alumna - 
always - 
amazon - 
ambush - 
amelia - adelia - 
amende - 
amidst - 
amoeba - 
amoral - 
amount - 
ampere - 
amtrak - 
amulet - 
anabel - 
anarch - 
anchor - 
andean - 
andrea - andrei - andrew - 
andrei - andrea - andrew - 
andrew - andrea - andrei - 
angela - angelo - angola - 
angelo - angela - 
angles - 
angola - angela - angora - 
angora - angola - 
animal - 
ankara - 
annale - annals - 
annals - annale - 
anneal - annual - 
annual - anneal - 
annuli - 
anodic - 
anomie - 
anselm - 
answer - 
anthem - anther - 
anther - anthem - antler - 
antler - anther - 
antony - 
anyhow - 
anyone - 
anyway - 
apache - 
apathy - 
apices - 
apiece - 
aplomb - 
apogee - 
apollo - 
appall - 
appeal - appear - 
appear - appeal - 
append - 
appian - 
apport - 
aquila - 
arabia - arabic - 
arabic - arabia - 
arcade - arcane - 
arcana - arcane - 
arcane - arcade - arcana - 
arccos - 
archae - 
archer - 
arcing - 
arcsin - 
arctan - 
arctic - 
ardent - 
aren't - 
argive - arrive - 
arisen - 
arlene - 
armada - armata - 
armata - armada - 
armful - artful - 
armonk - 
armour - 
armpit - 
arnold - 
around - abound - ground - 
arouse - 
arrack - 
arrear - 
arrest - 
arrive - argive - 
arroyo - 
arsine - 
artery - 
artful - armful - 
arthur - 
arturo - 
ascend - ascent - 
ascent - accent - ascend - assent - 
ashame - 
ashley - 
ashman - ashmen - 
ashmen - ashman - 
ashore - 
asleep - 
aspect - 
aspire - 
assail - 
assent - absent - ascent - assert - 
assert - assent - assort - 
assess - 
assign - 
assist - 
assort - assert - 
assume - assure - 
assure - assume - 
asthma - 
astral - astray - 
astray - astral - 
astute - 
asylum - 
athena - athens - 
athens - athena - 
atkins - adkins - 
atomic - 
atonal - 
atreus - 
atrium - 
attach - attack - 
attack - attach - 
attain - 
attend - 
attest - 
attica - 
attire - 
attune - 
atwood - 
atypic - 
aubrey - audrey - 
auburn - 
audrey - aubrey - 
augean - aegean - 
augend - 
augite - 
august - 
auntie - 
auriga - 
aurora - 
austin - 
author - 
autism - 
autumn - 
avenge - avenue - 
avenue - avenge - 
averse - 
avesta - 
aviary - 
aviate - 
avocet - 
avowal - 
awaken - 
awhile - 
azalea - 
babble - bauble - bobble - bubble - dabble - gabble - rabble - 
baboon - 
backup - 
baffin - 
baffle - raffle - waffle - 
bagley - bailey - barley - 
bahama - 
bailey - bagley - barley - dailey - 
bakery - 
balboa - 
baleen - 
balkan - 
ballad - balled - 
balled - ballad - ballet - 
ballet - balled - ballot - billet - bullet - mallet - pallet - wallet - 
ballot - ballet - 
balsam - 
baltic - 
balzac - 
bamako - 
bamboo - 
banach - 
banana - 
bandit - 
bangle - bingle - bungle - dangle - jangle - mangle - tangle - wangle - 
bangor - 
bangui - 
banish - danish - vanish - 
bantam - 
banter - barter - baxter - 
bantus - 
barber - barter - farber - 
barfly - 
barium - 
barley - bagley - bailey - barney - burley - farley - harley - parley - 
barlow - barrow - 
barnes - barnet - barney - 
barnet - barnes - barney - bernet - garnet - 
barney - barley - barnes - barnet - carney - 
barony - 
barrel - barren - carrel - 
barren - barrel - warren - 
barrow - barlow - borrow - burrow - harrow - marrow - narrow - yarrow - 
barter - banter - barber - baxter - garter - 
bartok - barton - 
barton - bartok - burton - carton - 
basalt - 
bashaw - 
basket - casket - gasket - 
bateau - 
bathos - pathos - 
batten - bitten - fatten - 
battle - bottle - cattle - rattle - tattle - wattle - 
bauble - babble - 
bausch - 
baxter - banter - barter - 
baylor - taylor - 
bazaar - 
beacon - deacon - 
beadle - 
beaten - beater - 
beater - beaten - beaver - heater - neater - seater - 
beauty - 
beaver - beater - 
becalm - 
became - become - 
becker - becket - bicker - decker - 
becket - becker - bucket - 
beckon - reckon - 
become - became - 
bedbug - 
bedlam - 
beetle - 
befall - befell - 
befell - befall - 
before - 
befoul - 
beggar - 
behalf - 
behave - 
behead - beheld - 
beheld - behead - behold - 
behest - 
behind - 
behold - beheld - 
beirut - 
belate - berate - relate - 
belfry - 
belief - belies - relief - 
belies - belief - 
bellow - billow - fellow - mellow - yellow - 
bellum - vellum - 
beloit - 
belong - 
belove - 
bemoan - 
bemuse - 
bender - gender - render - 
bendix - 
bengal - 
benign - 
benson - benton - 
benton - benson - denton - fenton - kenton - 
berate - aerate - belate - borate - derate - 
bereft - 
bergen - 
berlin - merlin - 
berman - german - herman - 
bernet - barnet - 
bernie - bertie - 
bertha - 
bertie - bernie - 
beside - betide - reside - 
bessel - vessel - 
bessie - jessie - 
bestir - 
bestow - 
bethel - 
betide - beside - 
betony - 
betray - 
betsey - 
bettor - 
bewail - 
beware - 
beyond - 
bhutan - 
bianco - 
biceps - 
bicker - becker - 
bidden - hidden - ridden - 
bikini - bimini - 
billet - ballet - bullet - fillet - millet - 
billie - millie - willie - 
billow - bellow - pillow - willow - 
bimini - bikini - 
binary - 
bindle - bingle - bundle - kindle - 
bingle - bangle - bindle - bungle - jingle - mingle - single - tingle - 
biopsy - 
biotic - 
birdie - 
birgit - 
bisect - 
bishop - 
bisque - 
bissau - 
bitnet - 
bitten - batten - kitten - mitten - 
blaine - elaine - 
blanch - branch - 
blazon - 
bleach - breach - 
bleary - 
blight - alight - bright - flight - plight - slight - 
blithe - blythe - 
blocky - 
blonde - 
bloody - broody - 
blotch - 
blouse - 
blowup - 
bluish - 
blurry - flurry - slurry - 
blythe - blithe - 
bobbie - bobbin - bobble - 
bobbin - bobbie - dobbin - robbin - 
bobble - babble - bobbie - bubble - cobble - gobble - hobble - wobble - 
bobcat - 
bodice - 
bodied - 
boeing - 
boggle - goggle - joggle - toggle - 
bogota - 
bolton - boston - 
bombay - 
bonito - 
bonnet - sonnet - 
bonnie - connie - ronnie - 
boogie - bookie - 
bookie - boogie - cookie - rookie - 
bootes - 
borate - berate - 
borden - border - burden - 
border - borden - 
boreas - 
borneo - 
borrow - barrow - burrow - morrow - sorrow - 
boston - bolton - 
botany - 
botfly - 
bottle - battle - mottle - 
bottom - 
bought - fought - sought - vought - 
bounce - bouncy - jounce - pounce - 
bouncy - bounce - bounty - 
bounty - bouncy - county - 
bovine - 
bowfin - 
bowman - bowmen - cowman - 
bowmen - bowman - cowmen - 
boxcar - 
boyish - 
brahms - 
brainy - grainy - 
branch - blanch - brunch - 
brandt - brandy - 
brandy - brandt - 
brassy - grassy - 
brazen - 
brazil - 
breach - bleach - breath - breech - broach - preach - 
breast - 
breath - breach - wreath - 
breech - breach - 
breeze - breezy - freeze - 
breezy - breeze - 
bremen - 
brenda - 
breton - briton - 
brevet - 
bridal - 
bridge - bridle - 
bridle - bridge - 
briggs - 
bright - blight - fright - wright - 
briton - breton - triton - 
broach - breach - 
broken - 
bronco - 
bronze - bronzy - 
bronzy - bronze - 
broody - bloody - 
brooke - 
browne - browse - 
browse - browne - drowse - 
bruise - cruise - 
brunch - branch - crunch - 
brushy - 
brutal - 
bryant - 
bubble - babble - bobble - bumble - rubble - 
bucket - becket - 
buckle - 
buddha - 
budget - 
buenos - 
buffet - 
bullet - ballet - billet - gullet - 
bumble - bubble - fumble - humble - jumble - mumble - rumble - tumble - 
bundle - bindle - bungle - 
bungle - bangle - bingle - bundle - jungle - 
bunsen - 
bunyan - 
burden - borden - 
bureau - 
burial - 
buried - 
burlap - 
burley - barley - hurley - 
burrow - barrow - borrow - furrow - 
bursty - 
burton - barton - button - buxton - 
busboy - 
bushel - 
bustle - hustle - rustle - 
butane - butene - 
butene - butane - 
butler - cutler - 
button - burton - buxton - dutton - mutton - sutton - 
buxton - burton - button - 
buzzer - 
bygone - 
byline - 
bypass - 
bypath - 
byroad - 
byword - 
cabana - 
cackle - cockle - hackle - tackle - 
cactus - 
caddis - 
cadent - 
caesar - 
cahill - 
cahoot - 
caiman - 
cajole - 
calais - 
calder - caller - 
calico - 
caliph - 
caller - calder - waller - 
callus - gallus - 
calvin - 
camber - 
camden - 
camera - 
camino - casino - 
campus - 
canaan - 
canada - 
canary - 
cancel - cancer - cannel - 
cancer - cancel - canker - 
candid - 
candle - cantle - handle - 
canine - 
canker - cancer - 
cannel - cancel - 
cannon - cannot - canton - canyon - 
cannot - cannon - 
canoga - 
canopy - 
cantle - candle - castle - cattle - mantle - 
canton - cannon - cantor - canyon - carton - wanton - 
cantor - canton - captor - castor - 
canvas - 
canyon - cannon - canton - 
capita - 
captor - cantor - castor - 
caputo - 
carbon - carboy - carson - carton - 
carboy - carbon - 
careen - career - carmen - carven - 
career - careen - 
caress - 
carlin - marlin - 
carmen - careen - carven - 
carnal - 
carney - barney - 
carpet - 
carrel - barrel - cartel - 
carrie - 
carrot - parrot - 
carson - carbon - carton - larson - parson - 
cartel - carrel - 
carton - barton - canton - carbon - carson - 
caruso - 
carven - careen - carmen - 
casbah - 
casein - 
cashew - 
casino - camino - 
casket - basket - gasket - 
castle - cantle - cattle - 
castor - cantor - captor - pastor - 
castro - 
casual - 
catchy - cauchy - patchy - 
cation - nation - 
catkin - 
catnip - 
catsup - 
cattle - battle - cantle - castle - rattle - tattle - wattle - 
cauchy - catchy - 
caucus - 
caught - taught - 
causal - 
caveat - 
cavern - tavern - 
caviar - 
cavort - 
cayley - 
cayuga - 
cedric - 
celery - 
cellar - collar - 
celtic - 
cement - 
censor - sensor - tensor - 
census - 
centum - 
cereal - 
cereus - 
cerise - 
cerium - cesium - curium - 
cervix - 
cesare - 
cesium - cerium - 
cessna - 
cetera - 
ceylon - 
chaise - 
chalet - 
chalky - 
chance - chancy - change - 
chancy - chance - 
change - chance - charge - 
chapel - 
charge - change - 
charon - sharon - 
charta - 
chaste - 
chatty - 
cheeky - cheery - cheesy - 
cheery - cheeky - cheesy - cherry - 
cheese - cheesy - 
cheesy - cheeky - cheery - cheese - 
chemic - 
cheney - 
cherry - cheery - sherry - 
cherub - 
cheryl - 
chiang - 
chilly - 
chinch - clinch - 
chisel - 
chiton - 
choice - 
choose - choosy - 
choosy - choose - 
chopin - 
choppy - 
choral - 
chorus - 
chosen - 
christ - 
chrome - 
chubby - 
chummy - crummy - 
chunky - 
church - 
cicada - 
cicero - 
cinder - tinder - 
cinema - 
cipher - 
circle - 
circus - 
citric - nitric - 
citron - 
citrus - 
claire - 
clammy - 
claret - 
clarke - 
classy - glassy - 
claude - clause - 
clause - claude - 
cleave - 
clench - clinch - 
clergy - 
cleric - 
clever - 
cliche - 
client - 
climax - 
clinch - chinch - clench - flinch - 
clinic - clonic - 
clique - 
clonic - clinic - 
closet - 
clothe - clotho - 
clotho - clothe - 
cloudy - 
cloven - sloven - 
clumsy - 
clutch - crutch - 
coarse - course - hoarse - 
coates - 
cobalt - 
cobble - bobble - gobble - hobble - wobble - 
cobweb - 
cockle - cackle - 
cocoon - 
coddle - cuddle - toddle - 
codify - modify - 
coerce - 
coffee - coffer - coffey - toffee - 
coffer - coffee - coffey - confer - 
coffey - coffee - coffer - 
coffin - 
cogent - 
cognac - 
cohere - 
cohort - 
cohosh - 
coleus - 
collar - cellar - dollar - 
collet - 
collie - mollie - 
colloq - 
colony - 
column - 
combat - wombat - 
comedy - 
cometh - 
commit - 
common - 
compel - 
comply - 
conant - sonant - 
concur - 
confer - coffer - conner - 
conley - convey - cooley - 
conner - confer - donner - 
connie - bonnie - ronnie - 
conrad - konrad - 
consul - 
convex - convey - 
convey - conley - convex - convoy - 
convoy - convey - 
conway - 
cookie - bookie - rookie - 
cooley - conley - dooley - 
copter - 
corbel - 
cordon - gordon - 
cornea - cornet - 
cornet - cornea - corset - hornet - 
corona - 
corpse - 
corpus - corvus - 
corral - 
corset - cornet - dorset - 
cortex - vortex - 
corvus - corpus - 
cosine - eosine - 
cosmic - 
cosmos - 
cotman - cowman - 
cotton - 
cougar - 
county - bounty - 
couple - 
coupon - 
course - coarse - 
cousin - 
covary - 
covert - 
coward - howard - toward - 
cowboy - lowboy - 
cowman - bowman - cotman - cowmen - 
cowmen - bowmen - cowman - 
cowpea - 
cowpox - 
coyote - 
cradle - 
crafty - drafty - 
craggy - 
cramer - crater - kramer - 
crania - urania - 
cranky - cranny - 
cranny - cranky - granny - 
crater - cramer - grater - 
cravat - 
craven - graven - 
crayon - 
creaky - creamy - 
creamy - creaky - dreamy - 
crease - create - grease - 
create - crease - 
creche - 
credit - 
creepy - 
creole - 
cretan - cretin - 
cretin - cretan - 
crewel - 
crimea - 
cringe - fringe - 
crises - crisis - 
crisis - crises - 
critic - 
crocus - 
crosby - 
crotch - crouch - crutch - 
crouch - crotch - 
cruddy - 
cruise - bruise - 
crummy - chummy - 
crunch - brunch - crutch - 
crusoe - 
crusty - 
crutch - clutch - crotch - crunch - 
cuckoo - 
cuddle - coddle - cuddly - curdle - huddle - muddle - puddle - 
cuddly - cuddle - puddly - 
cudgel - 
culver - 
cunard - 
cupful - 
cupric - 
curate - 
curdle - cuddle - hurdle - 
curfew - curlew - 
curium - cerium - 
curlew - curfew - 
curran - 
cursor - 
curtis - 
custer - 
custom - 
cutesy - 
cutler - butler - cutlet - 
cutlet - cutler - cutset - 
cutoff - 
cutout - 
cutset - cutlet - 
cyanic - 
cyclic - 
cygnus - 
cyprus - 
d'etat - 
dabble - babble - dibble - gabble - rabble - 
dactyl - 
dagger - danger - 
dahlia - 
dailey - bailey - 
dainty - 
dakota - 
dallas - 
dalton - dayton - malton - walton - 
damage - 
damask - 
dampen - 
damsel - 
danger - dagger - 
dangle - bangle - jangle - mangle - tangle - wangle - 
daniel - 
danish - banish - vanish - 
danube - 
danzig - 
daphne - 
dapper - 
dapple - 
darius - 
darken - 
darkle - 
darwin - 
datsun - 
davies - 
dawson - lawson - 
daybed - 
dayton - dalton - layton - 
dazzle - razzle - 
deacon - beacon - 
deaden - deafen - leaden - 
deafen - deaden - 
deanna - 
dearie - 
dearth - hearth - 
debase - debate - 
debate - debase - derate - 
debbie - 
debris - 
debtor - 
debunk - 
decade - decide - decode - 
decant - decent - secant - 
deceit - decent - 
decent - decant - deceit - detent - recent - 
decide - decade - decile - decode - deride - 
decile - decide - docile - 
decker - becker - 
decode - decade - decide - 
decree - degree - 
deduce - deduct - reduce - seduce - 
deduct - deduce - 
deepen - 
deface - 
defeat - defect - 
defect - defeat - deject - detect - 
defend - depend - 
define - 
deform - 
defray - 
defuse - 
degree - decree - 
deject - defect - detect - reject - 
delano - 
delete - 
delphi - 
delude - deluge - deluxe - denude - 
deluge - delude - deluxe - 
deluxe - delude - deluge - 
demand - remand - 
demark - remark - 
demean - 
demise - devise - 
demote - denote - devote - remote - 
demure - 
denial - dental - genial - menial - venial - 
dennis - tennis - 
denote - demote - devote - 
dental - denial - mental - rental - 
denton - benton - fenton - kenton - 
denude - delude - 
denver - 
depart - deport - 
depend - defend - 
depict - 
deploy - 
deport - depart - report - 
depose - 
depute - deputy - repute - 
deputy - depute - 
derail - detail - 
derate - aerate - berate - debate - 
deride - decide - derive - 
derive - deride - 
desert - 
design - resign - 
desire - 
desist - resist - 
despot - 
detach - 
detail - derail - detain - retail - 
detain - detail - retain - 
detect - defect - deject - detent - detest - 
detent - decent - detect - detest - 
detest - detect - detent - 
detour - devour - 
device - devise - 
devise - demise - device - revise - 
devoid - 
devote - demote - denote - 
devour - detour - devout - 
devout - devour - 
dewitt - hewitt - 
dexter - 
dharma - 
diadem - 
dialup - 
dianne - 
diaper - 
diatom - 
dibble - dabble - nibble - 
dickey - hickey - mickey - 
dictum - 
diddle - fiddle - middle - piddle - riddle - 
didn't - 
diesel - 
differ - 
digest - divest - 
digram - 
dilate - dilute - pilate - 
dillon - 
dilute - dilate - 
dimple - pimple - simple - 
dinghy - 
dipole - 
direct - 
discus - 
dishes - 
dismal - distal - 
disney - 
dispel - 
distal - dismal - 
dither - either - hither - wither - 
ditzel - 
divert - divest - 
divest - digest - divert - 
divide - divine - 
divine - divide - 
dobbin - bobbin - robbin - 
dobson - dodson - 
docile - decile - 
docket - pocket - rocket - socket - 
doctor - 
dodson - dobson - godson - 
dogleg - 
dollar - collar - 
dollop - 
domain - 
domino - 
donald - ronald - 
donate - 
doneck - 
donkey - monkey - 
donner - conner - 
doodle - noodle - poodle - toodle - 
dooley - cooley - 
dopant - 
dorado - 
dorcas - 
doreen - noreen - 
dorset - corset - 
dosage - 
double - 
downey - 
drafty - crafty - 
dragon - 
dreamt - dreamy - 
dreamy - creamy - dreamt - dreary - 
dreary - dreamy - 
dredge - drudge - 
drench - french - trench - wrench - 
dressy - 
drexel - 
drippy - 
driven - 
droopy - 
drowse - browse - drowsy - 
drowsy - drowse - 
drudge - dredge - grudge - trudge - 
dryden - 
dublin - 
dudley - 
duffel - 
dugout - 
dulcet - 
duluth - 
dumpty - humpty - 
dunbar - 
duncan - 
dunham - durham - 
dunlap - dunlop - 
dunlop - dunlap - 
duplex - 
dupont - 
duress - 
durham - dunham - 
during - turing - 
durkee - 
durkin - 
dutton - button - mutton - sutton - 
dwight - 
dyadic - 
dyeing - 
dynamo - 
dynast - 
earthy - 
earwig - 
eccles - 
echoes - 
edging - 
edible - 
edison - 
editor - 
edmund - 
edward - 
edwina - 
eerily - 
efface - 
effect - affect - 
effete - 
effort - 
egress - ogress - 
eighth - eighty - 
eighty - eighth - mighty - 
eileen - aileen - 
eisner - 
either - dither - esther - hither - wither - 
elaine - blaine - 
elapse - 
eldest - 
eleven - 
elicit - 
elijah - 
elinor - 
elisha - 
elliot - 
elmira - 
eloise - 
eluate - equate - 
elysee - 
embalm - 
embank - embark - 
embark - embank - 
emblem - 
embody - 
emboss - 
embryo - 
emerge - 
emilio - 
emmett - 
empire - expire - umpire - 
employ - 
enable - 
enamel - 
encore - 
endure - 
energy - 
enfant - infant - 
engage - 
engine - 
enigma - 
enmity - entity - 
enough - 
enrico - 
entice - entire - 
entire - entice - 
entity - enmity - 
enzyme - 
eocene - 
eosine - cosine - 
equate - eluate - 
equine - 
equity - 
erbium - 
ernest - 
erotic - exotic - 
errand - errant - 
errant - errand - 
errata - 
ersatz - 
escape - 
eschew - 
escort - 
escrow - 
eskimo - 
esmark - 
esprit - 
estate - 
esteem - 
esther - either - 
ethane - 
ethnic - 
euclid - 
eugene - 
eulogy - 
eunice - 
eureka - 
europa - europe - 
europe - europa - 
evelyn - 
evince - 
evolve - 
evzone - 
exceed - 
except - 
excess - 
excise - excite - excuse - 
excite - excise - 
excuse - excise - 
exempt - 
exeter - 
exhale - 
exhort - export - extort - 
exhume - 
exodus - 
exotic - erotic - 
expand - expend - 
expect - expert - 
expend - expand - extend - 
expert - expect - export - 
expire - empire - 
export - exhort - expert - extort - 
expose - 
extant - extent - 
extend - expend - extent - 
extent - extant - extend - 
extort - exhort - export - 
eyeful - 
eyelet - 
eyelid - 
fabian - 
fabric - 
facade - 
facial - racial - 
facile - 
factor - 
fafnir - 
falcon - 
fallen - 
fallow - fellow - follow - hallow - mallow - sallow - tallow - wallow - 
falter - filter - walter - 
family - 
famine - 
famish - 
famous - 
fanout - 
fantod - 
farber - barber - ferber - 
farina - marina - 
farkas - 
farley - barley - harley - parley - 
fasten - fatten - hasten - 
father - gather - rather - 
fathom - 
fatima - 
fatten - batten - fasten - 
faucet - 
faulty - 
fealty - realty - 
fecund - 
fedora - 
feeble - 
feeney - 
felice - feline - 
feline - felice - 
fellow - bellow - fallow - follow - mellow - yellow - 
felony - 
female - 
fennel - funnel - kennel - 
fenton - benton - denton - kenton - 
ferber - farber - ferrer - gerber - 
fermat - format - 
ferrer - ferber - ferret - 
ferret - ferrer - 
ferric - ferris - 
ferris - ferric - 
fescue - rescue - 
fetish - 
fetter - 
fettle - kettle - mettle - nettle - settle - 
feudal - 
fiance - france - 
fiasco - 
fibrin - 
fickle - pickle - sickle - tickle - 
fiddle - diddle - middle - piddle - riddle - 
fidget - midget - widget - 
fields - 
fierce - pierce - 
fiesta - siesta - 
figaro - 
figure - 
filial - finial - 
filled - filler - fillet - 
filler - filled - fillet - filter - miller - 
fillet - billet - filled - filler - millet - 
fillip - 
filter - falter - filler - 
filthy - 
finale - 
finery - winery - 
finger - ginger - linger - 
finial - filial - 
finish - 
finite - 
finley - 
fiscal - 
fitful - 
fixate - 
fizeau - 
fizzle - sizzle - 
flabby - 
flange - 
flashy - fleshy - 
flatus - 
flaunt - 
flaxen - 
fledge - pledge - sledge - 
fleece - 
fleshy - flashy - 
fletch - 
flight - alight - blight - fright - plight - slight - 
flimsy - 
flinch - clinch - 
flinty - 
floppy - sloppy - 
floral - 
florid - florin - 
florin - florid - 
floury - 
fluent - 
fluffy - 
flurry - blurry - slurry - 
flyway - 
fodder - 
foible - 
folksy - 
follow - fallow - fellow - hollow - 
fondle - fondly - 
fondly - fondle - 
forage - 
forbes - 
forbid - morbid - 
forest - 
forget - forgot - 
forgot - forget - 
formal - format - normal - 
format - fermat - formal - 
formic - 
fortin - 
fossil - 
foster - roster - 
fought - bought - sought - vought - 
fourth - 
franca - france - franco - 
france - fiance - franca - franco - prance - trance - 
franco - franca - france - 
fraser - 
frayed - 
freddy - 
freest - 
freeze - breeze - frieze - 
french - drench - trench - wrench - 
frenzy - 
fresco - fresno - 
fresno - fresco - 
friday - 
friend - 
frieze - freeze - 
frigga - 
fright - bright - flight - wright - 
frigid - 
frilly - 
fringe - cringe - 
frisky - 
frolic - 
frosty - 
frothy - 
frowzy - 
frozen - 
frugal - 
fulton - 
fumble - bumble - humble - jumble - mumble - rumble - tumble - 
fungal - 
fungus - 
funnel - fennel - tunnel - 
furman - 
furrow - burrow - 
fusion - 
futile - rutile - 
future - suture - 
gabble - babble - dabble - gamble - garble - gobble - rabble - 
gabbro - 
gadfly - 
gadget - 
gaelic - garlic - 
gaggle - gargle - giggle - goggle - haggle - waggle - 
gaiety - 
gaines - haines - 
galaxy - 
galena - 
galley - halley - valley - 
gallon - gallop - 
gallop - gallon - gallup - wallop - 
gallup - gallop - gallus - 
gallus - callus - gallup - 
galois - valois - 
galway - 
gambia - gambit - zambia - 
gambit - gambia - 
gamble - gabble - garble - ramble - 
gambol - 
gander - gender - pander - wander - 
ganges - 
gannet - garnet - 
gantry - gentry - pantry - 
garage - 
garble - gabble - gamble - gargle - marble - warble - 
garcia - marcia - 
garden - harden - warden - 
gargle - gaggle - garble - gurgle - 
garish - parish - 
garlic - gaelic - 
garner - garnet - garter - 
garnet - barnet - gannet - garner - 
garter - barter - garner - 
garvey - harvey - 
gasify - 
gasket - basket - casket - 
gaspee - 
gaston - 
gather - father - rather - 
gauche - 
gaulle - 
geiger - 
geisha - 
gemini - 
gender - bender - gander - render - 
genera - geneva - 
geneva - genera - 
genial - denial - menial - venial - 
genius - 
gentle - 
gentry - gantry - sentry - 
george - 
gerald - gerard - herald - 
gerard - gerald - 
gerber - ferber - 
gerbil - 
german - berman - herman - 
gerund - 
geyser - 
ghetto - 
gibbet - giblet - 
gibbon - gibson - ribbon - 
giblet - gibbet - goblet - 
gibson - gibbon - 
giddap - 
gideon - 
giggle - gaggle - goggle - jiggle - niggle - wiggle - 
gilead - 
gimbal - gimbel - 
gimbel - gimbal - 
ginger - finger - linger - 
gingko - 
ginkgo - 
girdle - 
girlie - 
giveth - liveth - 
glacis - 
gladdy - 
gladys - 
glamor - 
glance - 
glassy - classy - glossy - grassy - 
glenda - 
glitch - 
global - 
gloomy - 
gloria - 
glossy - glassy - 
gluing - 
glycol - 
gneiss - 
gnomon - 
gobble - bobble - cobble - gabble - hobble - wobble - 
goblet - giblet - 
godkin - godwin - 
godson - dodson - 
godwin - godkin - godwit - 
godwit - godwin - 
goethe - 
goggle - boggle - gaggle - giggle - joggle - toggle - 
golden - holden - 
goleta - 
goober - 
gopher - 
gordon - cordon - gorgon - gorton - 
gorgon - gordon - gorton - 
gorham - gotham - 
gorton - gordon - gorgon - horton - morton - norton - 
gospel - 
gossip - 
gotham - gorham - 
gothic - 
gotten - rotten - 
govern - 
graham - 
grainy - brainy - granny - 
granny - cranny - grainy - 
grassy - brassy - glassy - 
grater - crater - 
gratis - 
gravel - graven - graves - grovel - travel - 
graven - craven - gravel - graves - 
graves - gravel - graven - 
gravid - 
grease - crease - greasy - 
greasy - grease - 
greece - greene - 
greedy - 
greene - greece - 
grieve - 
grille - 
grimes - 
grippe - 
grisly - 
gritty - 
grocer - grover - 
groggy - 
groove - 
groton - proton - 
ground - around - 
grovel - gravel - grover - 
grover - grocer - grovel - 
growth - 
grubby - 
grudge - drudge - trudge - 
guelph - 
guffaw - 
guiana - guyana - 
guilty - 
guinea - 
guitar - 
gullah - mullah - 
gullet - bullet - 
gunman - gunmen - 
gunmen - gunman - 
gurgle - gargle - 
gurkha - 
gusset - russet - 
gustav - 
guyana - guiana - 
guzzle - muzzle - nuzzle - puzzle - 
gypsum - 
gyrate - 
habeas - 
hackle - cackle - heckle - tackle - 
haddad - 
hadley - halley - hanley - harley - hawley - 
hadn't - hasn't - 
hadron - 
haggle - gaggle - waggle - 
haines - gaines - haynes - 
hairdo - 
halide - halite - 
halite - halide - 
halley - galley - hadley - halsey - hanley - harley - hawley - valley - 
hallow - fallow - hollow - mallow - sallow - tallow - wallow - 
halsey - halley - 
halvah - 
hamlet - 
hamlin - 
hamper - pamper - 
handel - hankel - hansel - 
handle - candle - 
hangar - 
hankel - handel - hansel - 
hanley - hadley - halley - harley - hawley - henley - manley - 
hanlon - hanson - 
hannah - 
hansel - handel - hankel - hansen - 
hansen - hansel - hanson - 
hansom - hanson - ransom - 
hanson - hanlon - hansen - hansom - 
happen - 
harass - 
harbin - hardin - 
harden - garden - hardin - hayden - warden - 
hardin - harbin - harden - 
harlan - 
harlem - harley - 
harley - barley - farley - hadley - halley - hanley - harlem - harvey - hawley - hurley - parley - 
harmon - 
harold - 
harris - 
harrow - barrow - marrow - narrow - yarrow - 
harvey - garvey - harley - 
hasn't - hadn't - wasn't - 
hassle - 
hasten - fasten - 
hatred - 
hattie - hettie - 
haugen - 
haunch - launch - paunch - 
havana - 
hawaii - 
hawley - hadley - halley - hanley - harley - 
hayden - harden - hoyden - 
haynes - haines - 
hazard - 
healey - henley - 
health - hearth - wealth - 
hearse - hearst - hoarse - 
hearst - hearse - 
hearth - dearth - health - hearty - 
hearty - hearth - 
heater - beater - hester - neater - seater - 
heaven - leaven - 
hebrew - 
hecate - 
heckle - hackle - 
hectic - 
hector - rector - sector - vector - 
hecuba - 
height - weight - 
helena - helene - selena - 
helene - helena - 
helium - 
helmet - helmut - 
helmut - helmet - 
henley - hanley - healey - 
herald - gerald - 
hereby - heresy - 
herein - heroin - 
hereof - 
heresy - hereby - 
hereto - 
herman - berman - german - hetman - 
hermes - heroes - herpes - 
heroes - hermes - herpes - zeroes - 
heroic - heroin - 
heroin - herein - heroic - 
herpes - hermes - heroes - 
hester - heater - lester - 
hetman - herman - 
hettie - hattie - 
heusen - heuser - 
heuser - heusen - 
hewett - hewitt - jewett - 
hewitt - dewitt - hewett - 
hexane - 
heyday - 
hiatus - 
hickey - dickey - hockey - mickey - 
hidden - bidden - ridden - 
hijack - 
hillel - 
hilton - milton - 
hinman - 
hirsch - 
hither - dither - either - hitler - wither - 
hitler - hither - 
hoagie - 
hoarse - coarse - hearse - 
hobart - 
hobbes - 
hobble - bobble - cobble - gobble - wobble - 
hockey - hickey - jockey - 
hodges - 
holden - golden - hoyden - 
holdup - 
holler - 
hollow - follow - hallow - 
holman - 
holmes - 
homage - 
homily - 
honest - 
honshu - 
hookup - lookup - 
hoopla - 
hoover - hooves - 
hooves - hoover - 
hopple - topple - 
horace - 
hornet - cornet - 
horrid - torrid - 
horror - 
horton - gorton - morton - norton - 
hotbed - 
hotbox - 
hotrod - 
howard - coward - toward - 
howell - lowell - powell - 
hoyden - hayden - holden - 
hubbub - 
hubert - 
hubris - 
huddle - cuddle - hurdle - muddle - puddle - 
hudson - judson - 
hughes - 
humane - 
humble - bumble - fumble - jumble - mumble - rumble - tumble - 
hummel - pummel - 
humpty - dumpty - 
hungry - 
hunter - 
hurdle - curdle - huddle - hurtle - 
hurley - burley - harley - huxley - 
hurrah - hurray - 
hurray - hurrah - murray - 
hurtle - hurdle - hustle - turtle - 
hustle - bustle - hurtle - rustle - 
huston - 
huxley - hurley - 
huzzah - 
hyades - 
hybrid - 
hymnal - 
hyphen - 
iambic - 
iberia - 
icarus - 
icebox - 
icicle - 
iconic - ironic - 
ideate - 
idiocy - 
ignite - 
ignore - 
illume - 
imagen - 
imbibe - 
imbrue - 
immune - 
impact - impart - 
impair - 
impale - 
impart - impact - import - 
impede - 
impend - 
impish - 
import - impart - impost - 
impose - impost - 
impost - import - impose - 
impugn - 
impure - impute - 
impute - impure - 
inborn - 
inbred - 
incant - infant - 
incest - infest - ingest - invest - 
incise - incite - 
incite - incise - invite - 
income - 
incubi - 
indeed - 
indent - intent - invent - 
indian - 
indict - induct - 
indies - 
indigo - 
indira - 
indium - 
indoor - 
induce - induct - 
induct - indict - induce - 
infamy - 
infant - enfant - incant - 
infect - infest - inject - insect - 
infest - incest - infect - ingest - invest - 
infima - 
infirm - inform - 
inflow - 
influx - 
inform - infirm - 
infuse - 
ingest - incest - infest - invest - 
ingram - 
inhale - 
inhere - 
inject - infect - insect - 
injure - injury - insure - 
injury - injure - 
inlaid - inland - 
inland - inlaid - island - 
inmate - innate - 
innate - inmate - 
inroad - 
insane - 
insect - infect - inject - insert - 
insert - insect - invert - 
inside - 
insist - 
instep - 
insult - 
insure - injure - 
intact - 
intake - 
intend - intent - 
intent - indent - intend - invent - 
intern - 
intone - 
intuit - 
invade - 
invent - indent - intent - invert - invest - 
invert - insert - invent - invest - 
invest - incest - infest - ingest - invent - invert - 
invite - incite - 
invoke - 
inward - onward - 
iodate - 
iodide - iodine - 
iodine - iodide - 
ipecac - 
ironic - iconic - 
irvine - irving - 
irving - irvine - 
isabel - 
isaiah - 
island - inland - 
isolde - 
isomer - 
israel - 
istvan - 
italic - 
ithaca - 
itself - 
jacket - packet - racket - 
jackie - 
jacobi - jacobs - 
jacobs - jacobi - 
jaeger - 
jaguar - 
jalopy - 
jangle - bangle - dangle - jingle - jungle - mangle - tangle - wangle - 
janice - 
jargon - 
jarvin - marvin - 
jasper - 
jaunty - 
jejune - 
jennie - 
jensen - 
jeremy - 
jerome - 
jersey - 
jessie - bessie - 
jesuit - 
jewell - newell - 
jewett - hewett - 
jewish - 
jiggle - giggle - jingle - joggle - juggle - niggle - wiggle - 
jigsaw - 
jimmie - 
jingle - bingle - jangle - jiggle - jungle - mingle - single - tingle - 
jitter - ritter - 
joanna - joanne - 
joanne - joanna - 
jockey - hockey - 
jocose - 
jocund - 
joggle - boggle - goggle - jiggle - juggle - toggle - 
johann - 
johnny - 
joliet - juliet - 
jordan - 
joseph - 
joshua - 
josiah - 
jostle - 
jounce - bounce - pounce - 
jovial - jovian - 
jovian - jovial - 
joyful - 
joyous - 
judith - 
judson - hudson - 
jugate - 
juggle - jiggle - joggle - jungle - 
jujube - 
juliet - joliet - 
julius - 
jumble - bumble - fumble - humble - mumble - rumble - tumble - 
juneau - 
jungle - bungle - jangle - jingle - juggle - 
junior - 
jutish - 
kabuki - 
kaiser - 
kalmia - 
kalmuk - 
kansas - 
kaolin - 
kaplan - 
karate - 
keaton - kenton - 
keddah - 
keenan - kennan - 
keller - kelley - kepler - seller - teller - weller - 
kelley - keller - kelsey - 
kelsey - kelley - 
kelvin - melvin - 
kennan - keenan - 
kennel - fennel - kenney - kernel - 
kenney - kennel - kinney - tenney - 
kenton - benton - denton - fenton - keaton - kenyon - 
kenyon - kenton - 
kepler - keller - 
kermit - permit - 
kernel - kennel - 
ketone - 
kettle - fettle - kittle - mettle - nettle - settle - 
keynes - 
kibitz - 
kiddie - 
kidnap - 
kidney - kinney - sidney - 
kiewit - 
kigali - 
kikuyu - 
kilohm - 
kimono - 
kindle - bindle - 
kinney - kenney - kidney - 
kitten - bitten - mitten - 
kittle - kettle - little - 
klaxon - 
knauer - 
knight - 
knives - 
knobby - 
knotty - snotty - 
kochab - 
kodiak - 
koenig - 
konrad - conrad - 
kosher - 
kovacs - 
krakow - 
kramer - cramer - 
krause - 
kresge - 
kruger - 
kuwait - 
l'oeil - 
labial - 
labile - 
labour - 
lackey - mackey - 
lacuna - 
lagoon - 
lahore - 
lambda - 
lament - latent - 
landau - 
landis - 
lappet - tappet - 
laredo - 
lariat - 
larkin - 
larsen - larson - 
larson - carson - larsen - lawson - parson - 
larvae - larval - 
larval - larvae - 
larynx - 
lascar - 
laszlo - 
latent - lament - patent - 
latera - 
latter - 
latvia - 
launch - haunch - paunch - 
laurel - lauren - 
lauren - laurel - 
laurie - 
lavabo - 
lavish - ravish - 
lawful - 
lawman - lawmen - layman - 
lawmen - lawman - laymen - 
lawson - dawson - larson - 
lawyer - sawyer - 
layman - lawman - laymen - 
laymen - lawmen - layman - 
layoff - payoff - 
layout - 
layton - dayton - 
leaden - deaden - leaven - leyden - 
league - 
leaven - heaven - leaden - 
lecher - 
leeway - 
legacy - 
legate - legato - negate - 
legato - legate - 
legend - 
legion - lesion - region - 
legume - 
lehigh - 
lehman - 
leland - 
lemuel - 
length - 
lennox - 
lenore - 
lenten - 
lentil - 
leonid - 
lesion - legion - lesson - 
leslie - 
lessee - lessen - 
lessen - lessee - lesson - 
lesson - lesion - lessen - lessor - 
lessor - lesson - 
lester - hester - 
lethal - 
levine - 
levitt - levity - 
levity - levitt - 
leyden - leaden - 
liable - 
libido - 
lichen - 
ligand - 
ligget - 
lignum - 
lilian - 
limbic - 
limpet - 
limpid - 
linden - 
lineal - linear - 
linear - lineal - 
lineup - 
linger - finger - ginger - 
lingua - 
lionel - 
lipton - litton - 
liquid - 
liquor - 
lisbon - 
listen - 
litany - 
lithic - 
litmus - 
little - kittle - 
litton - lipton - 
livery - 
liveth - giveth - 
lizard - wizard - 
lizzie - 
loathe - 
loaves - 
lobule - 
locale - locate - 
locate - locale - vocate - 
lockup - lookup - mockup - 
locust - 
logjam - 
loiter - 
london - 
longue - tongue - 
lookup - hookup - lockup - 
loomis - 
loosen - 
loquat - 
lorenz - 
lotion - motion - notion - potion - 
lottie - 
louisa - louise - 
louise - louisa - 
lounge - 
louver - 
louvre - 
lowboy - cowboy - 
lowell - howell - powell - 
lubell - 
lucian - 
lucius - 
ludlow - 
ludwig - 
lumbar - lumber - 
lumber - lumbar - 
lummox - 
lumpur - 
lunacy - lunary - 
lunary - lunacy - 
lunate - 
lupine - supine - 
lusaka - 
luther - 
luxury - 
lysine - 
mackey - lackey - mickey - 
madame - 
madcap - 
madden - madmen - madsen - maiden - malden - sadden - 
maddox - 
madman - madmen - 
madmen - madden - madman - madsen - 
madras - 
madrid - 
madsen - madden - madmen - 
maggie - magpie - 
maggot - 
magnet - 
magnum - 
magpie - maggie - 
maiden - madden - malden - 
maitre - 
makeup - wakeup - 
malady - 
malawi - 
malden - madden - maiden - walden - 
malice - 
malign - 
mallet - ballet - millet - pallet - wallet - 
mallow - fallow - hallow - mellow - sallow - tallow - wallow - 
malone - 
malton - dalton - milton - walton - 
mammal - 
manage - 
manama - panama - 
mangel - mantel - manuel - 
mangle - bangle - dangle - jangle - mantle - mingle - tangle - wangle - 
maniac - 
manila - 
manley - hanley - 
mantel - mangel - manuel - 
mantic - mantis - mastic - 
mantis - mantic - 
mantle - cantle - mangle - 
manual - manuel - 
manuel - mangel - mantel - manual - 
manure - mature - 
maraud - 
marble - garble - warble - 
marcel - marvel - parcel - 
marcia - garcia - 
marcus - 
margin - marlin - martin - marvin - 
marina - farina - marine - marino - 
marine - marina - marino - maxine - 
marino - marina - marine - 
marion - maroon - 
market - 
markov - 
marlin - carlin - margin - martin - marvin - merlin - 
marmot - 
maroon - marion - 
marque - masque - 
marrow - barrow - harrow - morrow - narrow - yarrow - 
marsha - martha - 
marten - martin - 
martha - marsha - 
martin - margin - marlin - marten - marvin - 
martyr - 
marvel - marcel - 
marvin - jarvin - margin - marlin - martin - mervin - 
maseru - 
masque - marque - mosque - 
massey - 
massif - 
mastic - mantic - mystic - 
matins - 
matrix - 
matron - matson - patron - 
matson - matron - watson - 
mature - manure - nature - 
maxima - 
maxine - marine - 
mayhem - 
mccabe - 
mccall - 
mccann - 
mcgill - 
mcgraw - 
mchugh - 
mckeon - 
mclean - 
mcleod - 
mcneil - 
meadow - 
meager - yeager - 
measle - 
meddle - middle - muddle - peddle - 
medial - median - menial - 
median - medial - 
medici - medico - 
medico - medici - mexico - 
medium - tedium - 
medlar - 
medley - 
medusa - 
megohm - 
mekong - 
mellon - mellow - 
mellow - bellow - fellow - mallow - mellon - yellow - 
melody - 
melvin - kelvin - mervin - 
member - 
memoir - 
memory - 
menace - 
mendel - 
menial - denial - genial - medial - mental - venial - 
mental - dental - menial - rental - 
mentor - 
mercer - 
merlin - berlin - marlin - mervin - 
mervin - marvin - melvin - merlin - 
mescal - 
messrs - 
meteor - 
method - 
methyl - 
metier - 
metric - 
mettle - fettle - kettle - mottle - nettle - settle - 
mexico - medico - 
meyers - 
miasma - 
michel - 
mickey - dickey - hickey - mackey - 
micron - 
midday - midway - 
middle - diddle - fiddle - meddle - muddle - piddle - riddle - 
midget - fidget - widget - 
midway - midday - 
mighty - eighty - 
mignon - 
miguel - 
mildew - 
milieu - 
miller - filler - millet - 
millet - billet - fillet - mallet - miller - 
millie - billie - mollie - willie - 
milord - 
milton - hilton - malton - 
mingle - bingle - jingle - mangle - single - tingle - 
minima - 
minion - pinion - 
minnie - winnie - 
minnow - winnow - 
minoan - 
minsky - pinsky - 
minuet - 
minute - 
mirage - 
mirfak - 
miriam - 
mirror - 
misery - 
mitral - 
mitten - bitten - kitten - 
mobcap - 
mobile - 
mockup - lockup - 
modern - 
modest - molest - 
modify - codify - 
modish - 
module - moduli - modulo - nodule - 
moduli - module - modulo - 
modulo - module - moduli - 
mohawk - 
moiety - 
moines - 
molest - modest - 
moline - 
mollie - collie - millie - 
moloch - 
molten - 
moment - 
monaco - 
monash - 
monday - 
monica - 
monies - 
monkey - donkey - 
monoid - 
monroe - 
mooney - 
morale - 
morass - 
morbid - forbid - 
morgan - morgen - 
morgen - morgan - 
morgue - 
morley - motley - 
mormon - morton - 
morose - 
morris - norris - 
morrow - borrow - marrow - sorrow - 
morsel - 
mortal - mortar - portal - 
mortar - mortal - 
mortem - 
morton - gorton - horton - mormon - mouton - norton - 
mosaic - 
moscow - 
moslem - 
mosque - masque - 
mother - 
motion - lotion - notion - potion - 
motive - votive - 
motley - morley - 
mottle - bottle - mettle - 
mouton - morton - 
mozart - 
mucosa - 
muddle - cuddle - huddle - meddle - middle - puddle - 
muffin - puffin - 
muffle - ruffle - 
mukden - 
mulish - 
mullah - gullah - 
mullen - sullen - 
mumble - bumble - fumble - humble - jumble - rumble - tumble - 
muncie - 
munich - 
munson - 
murder - 
muriel - 
murmur - 
murphy - 
murray - hurray - 
muscat - 
muscle - 
museum - 
musket - 
muskox - 
muslim - muslin - 
muslin - muslim - 
mussel - 
mutant - 
mutate - nutate - 
mutiny - 
mutter - 
mutton - button - dutton - sutton - 
mutual - mutuel - 
mutuel - mutual - 
muzzle - guzzle - nuzzle - puzzle - 
myopia - myopic - 
myopic - myopia - 
myosin - 
myriad - 
myrtle - 
myself - 
mystic - mastic - 
mythic - 
nadine - 
nagoya - 
napkin - 
naples - 
narrow - barrow - harrow - marrow - yarrow - 
nashua - 
nassau - 
nathan - 
nation - cation - notion - 
native - 
nature - mature - 
nausea - 
navajo - 
nazism - 
nearby - 
neater - beater - heater - neuter - seater - 
nebula - 
nectar - 
needle - 
negate - legate - 
nellie - 
nelsen - nelson - 
nelson - nelsen - 
nephew - 
nereid - 
nestle - nettle - pestle - 
nestor - 
nether - tether - 
nettle - fettle - kettle - mettle - nestle - settle - 
neural - 
neuron - 
neuter - neater - 
nevada - 
nevins - 
newark - 
newell - jewell - 
newman - 
newton - 
nguyen - 
niacin - 
niamey - 
nibble - dibble - nimble - 
nicety - ninety - 
nickel - 
nigger - 
niggle - giggle - jiggle - wiggle - 
nimble - nibble - 
nimbus - 
ninety - nicety - 
nipple - ripple - tipple - 
nippon - 
nitric - citric - 
nobody - 
nodule - module - 
noodle - doodle - poodle - toodle - 
noreen - doreen - 
normal - formal - norman - 
norman - normal - 
norris - morris - 
norton - gorton - horton - morton - 
norway - 
notary - rotary - votary - 
notate - nutate - rotate - 
notice - novice - 
notify - 
notion - lotion - motion - nation - potion - 
novice - notice - 
nowise - 
nozzle - nuzzle - 
nuance - 
nubile - 
nuclei - 
nugget - 
nutate - mutate - notate - 
nutmeg - 
nutria - 
nuzzle - guzzle - muzzle - nozzle - puzzle - 
o'dell - 
o'hare - 
o'shea - 
oakley - 
object - abject - 
oblate - ablate - 
oblige - 
oblong - 
oboist - 
obsess - 
obtain - 
occult - 
occupy - 
ocelot - 
octane - octant - octave - 
octant - octane - 
octave - octane - 
octile - 
ocular - 
odessa - 
odious - 
offend - 
office - 
offset - 
ogress - egress - 
oilman - oilmen - 
oilmen - oilman - 
olefin - 
oliver - sliver - 
olivia - 
omelet - 
oneida - 
onlook - 
onrush - 
onward - inward - 
oocyte - 
oodles - 
opaque - 
operon - 
opiate - 
oppose - 
optima - 
option - 
oracle - 
orange - 
orchid - orchis - 
orchis - orchid - 
ordain - 
ordeal - 
oregon - 
orgasm - 
orient - 
origin - 
oriole - 
orkney - 
ornate - 
ornery - 
orphan - 
orphic - 
ortega - 
orwell - 
osborn - 
osgood - 
osiris - 
osmium - 
osprey - 
ossify - 
oswald - 
otiose - 
ottawa - 
oxalic - 
oxcart - 
oxford - 
oxnard - 
oxygen - 
oyster - 
pacify - 
packet - jacket - picket - pocket - racket - 
paddle - peddle - piddle - puddle - saddle - waddle - 
pagoda - 
palace - palate - 
palate - palace - pilate - 
pallet - ballet - mallet - pellet - wallet - 
pallid - 
pamela - 
pamper - hamper - pauper - 
panama - manama - 
pancho - poncho - rancho - sancho - 
pander - gander - ponder - wander - 
pantry - gantry - pastry - 
papacy - 
papery - 
pappas - 
papyri - 
parade - 
parcel - marcel - 
pardon - parson - 
parent - patent - 
pareto - 
pariah - parish - 
parish - garish - pariah - perish - 
parlay - parley - 
parley - barley - farley - harley - parlay - 
parody - 
parole - 
parrot - carrot - 
parson - carson - larson - pardon - person - 
pascal - rascal - 
passer - 
pastel - 
pastor - castor - 
pastry - pantry - 
patchy - catchy - 
patent - latent - parent - potent - 
pathos - bathos - 
patina - 
patrol - patron - petrol - 
patron - matron - patrol - patton - 
patton - patron - 
paulus - 
paunch - haunch - launch - 
pauper - pamper - 
pavlov - 
payday - 
payoff - layoff - 
peanut - 
pearce - 
pebble - 
pedant - 
peddle - meddle - paddle - piddle - puddle - 
peking - 
pelham - 
pellet - pallet - 
peltry - 
pelvic - pelvis - 
pelvis - pelvic - 
pencil - 
penman - penmen - 
penmen - penman - 
penury - 
people - 
peoria - 
period - 
perish - parish - 
permit - kermit - 
persia - 
person - parson - 
peruse - 
pestle - nestle - 
petite - 
petrel - petrol - 
petrol - patrol - petrel - 
pewter - 
pfizer - 
phelps - 
phenol - phenyl - 
phenyl - phenol - 
philip - 
phipps - 
phloem - 
phobic - phonic - 
phoebe - 
phonic - phobic - 
phonon - photon - 
photon - phonon - proton - 
phrase - 
physic - physik - 
physik - physic - 
piazza - 
picket - packet - pocket - ticket - wicket - 
pickle - fickle - sickle - tickle - 
pickup - 
picnic - 
piddle - diddle - fiddle - middle - paddle - peddle - puddle - riddle - 
pidgin - 
pierce - fierce - pierre - 
pierre - pierce - 
pigeon - 
pigpen - 
pilate - dilate - palate - pirate - 
pilfer - 
pillar - 
pillow - billow - willow - 
pimple - dimple - simple - 
pinion - minion - 
pinkie - 
pinsky - minsky - 
piracy - 
pirate - pilate - 
pisces - 
pistol - piston - 
piston - pistol - 
pitman - 
pitney - 
placid - 
plague - plaque - prague - 
planar - 
planck - 
planet - 
plaque - plague - 
plasma - 
platen - 
platte - 
please - 
pledge - fledge - sledge - 
plenty - 
plenum - 
pleura - 
pliant - 
pliers - 
plight - alight - blight - flight - slight - 
plover - 
plucky - 
plunge - 
plural - 
plushy - 
pluton - 
pocket - docket - packet - picket - rocket - socket - 
pocono - 
podium - sodium - 
poetic - 
poetry - 
pogrom - 
poison - prison - 
poland - roland - 
police - policy - polite - 
policy - police - polity - 
polish - popish - 
polite - police - polity - 
polity - policy - polite - 
pollen - 
polloi - 
pollux - 
pomade - 
pomona - 
pompey - 
pompon - 
poncho - pancho - 
ponder - pander - powder - wonder - 
poodle - doodle - noodle - toodle - 
popish - polish - 
poplar - 
poplin - 
porous - 
portal - mortal - postal - 
portia - 
poseur - 
posner - 
possum - 
postal - portal - 
potash - 
potato - 
potent - patent - 
potion - lotion - motion - notion - 
pounce - bounce - jounce - 
powder - ponder - 
powell - howell - lowell - 
powers - 
prague - plague - 
praise - 
prance - france - prince - trance - 
pravda - 
prayer - 
preach - breach - 
precis - 
prefab - 
prefer - 
prefix - 
presto - 
pretty - 
priest - 
primal - 
prince - prance - 
priori - priory - 
priory - priori - 
prison - poison - 
prissy - 
privet - 
profit - 
prolix - 
prompt - 
pronto - 
propel - proper - propyl - 
proper - propel - 
propos - 
propyl - propel - 
proton - groton - photon - 
proust - 
proven - 
pseudo - 
psyche - psycho - 
psycho - psyche - 
public - 
puddle - cuddle - huddle - muddle - paddle - peddle - piddle - puddly - 
puddly - cuddly - puddle - 
pueblo - 
puerto - 
puffed - 
puffin - muffin - 
pulley - 
pulpit - 
pulsar - 
pumice - 
pummel - hummel - 
pundit - 
punish - 
pupate - 
puppet - 
purdue - pursue - 
purify - 
purina - purine - 
purine - purina - 
purple - 
pursue - purdue - 
purvey - survey - 
putnam - 
puzzle - guzzle - muzzle - nuzzle - 
pyrite - 
python - 
quahog - 
quaint - 
quanta - 
quarry - 
quartz - 
quasar - 
quaver - quiver - 
queasy - 
quebec - 
quench - 
quezon - 
quince - 
quirky - 
quiver - quaver - 
quorum - 
rabbet - rabbit - 
rabbit - rabbet - 
rabble - babble - dabble - gabble - ramble - rubble - 
rabies - 
rachel - 
racial - facial - radial - 
racket - jacket - packet - rocket - 
radial - racial - radian - 
radian - radial - 
radish - rakish - ravish - 
radium - radius - 
radius - radium - 
rafael - 
raffia - 
raffle - baffle - riffle - ruffle - waffle - 
ragout - 
raisin - 
rakish - radish - ravish - 
ramada - 
ramble - gamble - rabble - rumble - 
ramify - ratify - 
ramrod - 
ramsey - 
rancho - pancho - sancho - 
rancid - 
random - ransom - 
ranier - rapier - 
rankin - 
rankle - 
ransom - hansom - random - 
rapier - ranier - 
rarefy - 
rascal - pascal - 
raster - roster - 
rastus - 
rather - father - gather - 
ratify - ramify - 
rattle - battle - cattle - tattle - wattle - 
ravage - savage - 
ravine - 
ravish - lavish - radish - rakish - 
razzle - dazzle - 
reagan - 
realty - fealty - 
reason - season - 
rebuke - 
recent - decent - regent - repent - resent - 
recess - 
recife - recipe - 
recipe - recife - 
reckon - beckon - 
rector - hector - sector - vector - 
recuse - 
redact - 
redbud - 
redden - ridden - 
redtop - 
reduce - deduce - seduce - 
reeves - 
refuge - refute - 
refute - refuge - repute - 
regale - 
regard - retard - reward - 
regent - recent - repent - resent - 
regime - 
regina - retina - 
region - legion - 
regret - 
reilly - 
reject - deject - 
relate - belate - 
relict - 
relief - belief - 
relish - 
remand - demand - 
remark - demark - 
remedy - 
remiss - 
remote - demote - 
render - bender - gender - 
renoir - 
renown - 
rental - dental - mental - 
repeal - repeat - reveal - 
repeat - repeal - repent - 
repent - recent - regent - repeat - resent - 
report - deport - resort - retort - 
repute - depute - refute - 
rescue - fescue - 
resent - recent - regent - repent - 
reside - beside - 
resign - design - 
resiny - 
resist - desist - 
resort - report - retort - 
result - 
resume - 
retail - detail - retain - 
retain - detain - retail - 
retard - regard - reward - 
retina - regina - 
retire - 
retort - report - resort - 
return - 
reuben - 
reveal - repeal - 
revere - revert - revery - severe - 
revert - revere - revery - 
revery - revere - revert - 
revile - revise - revive - 
revise - devise - revile - revive - 
revive - revile - revise - 
revoke - 
revolt - 
revved - 
reward - regard - retard - seward - 
rhesus - 
rhodes - 
rhombi - 
rhythm - 
ribald - 
ribbon - gibbon - 
ribose - 
ridden - bidden - hidden - redden - 
riddle - diddle - fiddle - middle - piddle - 
riffle - raffle - ruffle - 
ripley - 
ripoff - tipoff - 
ripple - nipple - tipple - 
ritter - jitter - 
ritual - 
riyadh - 
robbin - bobbin - dobbin - 
robert - 
robust - 
rocket - docket - pocket - racket - socket - 
rococo - 
rodent - 
rodney - 
rogers - 
roland - poland - 
romano - 
ronald - donald - 
ronnie - bonnie - connie - 
rookie - bookie - cookie - 
rosary - rotary - 
roster - foster - raster - 
rotary - notary - rosary - votary - 
rotate - notate - 
rotten - gotten - 
rotund - 
rowena - 
rowley - 
ruanda - rwanda - 
rubble - bubble - rabble - rumble - 
rubric - 
ruckus - 
rudder - 
rudolf - 
rueful - 
ruffle - muffle - raffle - riffle - 
rufous - 
rumble - bumble - fumble - humble - jumble - mumble - ramble - rubble - rumple - tumble - 
rumple - rumble - 
rumpus - 
runoff - 
runway - 
runyon - 
russet - gusset - 
russia - 
rustic - 
rustle - bustle - hustle - 
rutile - futile - 
rwanda - ruanda - 
sabina - sabine - salina - 
sabine - sabina - saline - 
sachem - 
sacral - 
sacred - 
sadden - madden - sodden - sudden - 
saddle - paddle - waddle - 
sadism - sadist - 
sadist - sadism - 
sadler - 
safari - 
safety - 
sahara - 
saigon - 
sailor - tailor - 
salaam - 
salami - 
salary - 
salina - sabina - saline - saliva - 
saline - sabine - salina - spline - valine - 
salish - 
saliva - salina - 
sallow - fallow - hallow - mallow - tallow - wallow - 
salmon - saloon - 
saloon - salmon - 
salute - solute - 
sample - simple - 
samson - 
samuel - shmuel - 
sancho - pancho - rancho - 
sandal - vandal - 
sandia - sandra - 
sandra - sandia - 
sashay - 
satire - 
saturn - 
savage - ravage - 
savant - 
sawfly - 
sawyer - lawyer - 
saxony - 
scalar - 
scanty - shanty - 
scarce - 
scathe - scythe - swathe - 
scenic - 
schema - scheme - 
scheme - schema - 
schism - schist - 
schist - schism - 
school - 
schulz - 
schwab - 
scopic - 
scorch - scotch - 
scoria - scotia - 
scotch - scorch - 
scotia - scoria - 
scotty - snotty - spotty - 
scrape - serape - 
scrawl - sprawl - 
scream - stream - 
screed - screen - 
screen - screed - 
scribe - 
script - 
scroll - stroll - 
sculpt - 
scurry - scurvy - slurry - 
scurvy - scurry - 
scutum - 
scylla - 
scythe - scathe - smythe - 
seaman - seamen - 
seamen - seaman - stamen - 
seance - stance - 
search - starch - 
season - reason - 
seater - beater - heater - neater - skater - slater - stater - 
secant - decant - 
secede - 
second - 
secret - 
sector - hector - rector - vector - 
secure - 
sedate - senate - 
seduce - deduce - reduce - 
seeing - teeing - 
seethe - teethe - 
seidel - 
seldom - 
select - 
selena - helena - 
seller - keller - teller - weller - 
selves - 
selwyn - 
semite - 
semper - simper - temper - 
senate - sedate - 
seneca - 
senile - 
senior - sensor - 
senora - sonora - 
sensor - censor - senior - tensor - 
sentry - gentry - 
septic - 
septum - 
sequel - 
sequin - 
serape - scrape - 
serbia - 
serene - serine - 
sergei - 
serial - aerial - 
series - 
serine - serene - shrine - 
sermon - 
sesame - 
settle - fettle - kettle - mettle - nettle - 
severe - revere - severn - 
severn - severe - 
sewage - 
seward - reward - 
sextet - 
sexton - 
sexual - 
shabby - swabby - 
shadow - 
shafer - 
shaggy - 
shaken - shaven - 
shalom - 
shan't - 
shanty - scanty - 
sharon - charon - 
sharpe - 
shasta - 
shaven - shaken - 
she'll - 
sheath - 
sheave - shelve - 
shedir - 
sheila - 
shelby - 
shelve - sheave - 
sherry - cherry - sperry - 
shield - 
shifty - 
shiloh - 
shimmy - 
shinto - 
shiver - sliver - 
shmuel - samuel - 
shoddy - 
should - 
shovel - 
shrank - shrink - shrunk - 
shrewd - 
shriek - shrink - 
shrift - thrift - 
shrike - shrine - shrive - strike - 
shrill - thrill - 
shrimp - 
shrine - serine - shrike - shrink - shrive - 
shrink - shrank - shriek - shrine - shrunk - 
shrive - shrike - shrine - shrove - strive - thrive - 
shroud - 
shrove - shrive - strove - 
shrunk - shrank - shrink - 
sibley - 
sicily - 
sicken - silken - 
sickle - fickle - pickle - tickle - 
sidney - kidney - sydney - 
siegel - 
sienna - vienna - 
sierra - 
siesta - fiesta - 
signal - 
signet - 
signor - 
silage - silane - 
silane - silage - 
silent - 
silica - 
silken - sicken - 
silver - 
simile - simple - 
simmer - simper - 
simons - 
simper - semper - simmer - 
simple - dimple - pimple - sample - simile - simply - 
simply - simple - 
sinewy - 
sinful - 
single - bingle - jingle - mingle - tingle - 
sinter - sister - winter - 
sirius - 
siskin - 
sister - sinter - 
sixgun - 
sizzle - fizzle - 
skater - seater - slater - stater - 
sketch - 
skiddy - 
skimpy - skippy - 
skinny - 
skippy - skimpy - snippy - 
skopje - 
skyway - 
slater - seater - skater - stater - 
slavic - 
sledge - fledge - pledge - sludge - 
sleepy - sleety - 
sleety - sleepy - 
sleeve - steeve - 
sleigh - 
sleuth - 
slight - alight - blight - flight - plight - 
sliver - oliver - shiver - 
sloane - 
slocum - 
slogan - 
sloppy - floppy - 
slouch - slough - 
slough - slouch - 
sloven - cloven - 
sludge - sledge - smudge - 
sluice - 
slurry - blurry - flurry - scurry - 
smithy - 
smooch - smooth - 
smooth - smooch - 
smudge - sludge - smudgy - 
smudgy - smudge - 
smutty - 
smyrna - 
smythe - scythe - 
snappy - snippy - 
snatch - swatch - 
snazzy - 
sneaky - 
sneeze - 
snider - snyder - spider - 
snippy - skippy - snappy - 
snivel - swivel - 
snoopy - 
snotty - knotty - scotty - spotty - 
snyder - snider - 
soccer - 
social - 
socket - docket - pocket - rocket - 
sodden - sadden - sudden - 
sodium - podium - 
soffit - 
soften - 
soiree - 
solace - 
solder - 
solemn - 
solute - salute - 
somali - 
somber - 
sombre - 
somers - 
sonant - conant - 
sonata - 
sonnet - bonnet - 
sonoma - sonora - 
sonora - senora - sonoma - 
soothe - 
sophia - sophie - 
sophie - sophia - 
sordid - 
sorrel - 
sorrow - borrow - morrow - 
sortie - 
sought - bought - fought - vought - 
source - 
soviet - 
sparge - sparse - spurge - 
sparky - 
sparse - sparge - 
sparta - 
spavin - 
spayed - stayed - 
specie - 
speech - 
speedy - 
sperry - sherry - 
sphere - 
sphinx - 
spider - snider - 
spigot - 
spinal - spiral - 
spiral - spinal - 
spirit - 
splash - 
spleen - 
splice - spline - 
spline - saline - splice - splint - 
splint - spline - sprint - 
spoken - 
sponge - spongy - 
spongy - sponge - 
spooky - 
sporty - spotty - 
spotty - scotty - snotty - sporty - 
spouse - 
sprain - strain - 
sprang - spring - sprung - 
sprawl - scrawl - 
spread - 
spring - sprang - sprint - sprung - string - 
sprint - splint - spring - 
sprite - 
sproul - sprout - 
sprout - sproul - 
spruce - 
sprung - sprang - spring - strung - 
spurge - sparge - 
squall - squill - 
square - squire - 
squash - 
squawk - 
squeak - squeal - 
squeal - squeak - 
squibb - 
squill - squall - 
squint - squirt - 
squire - square - squirm - squirt - 
squirm - squire - squirt - 
squirt - squint - squire - squirm - 
stable - staple - 
stadia - 
staley - 
stalin - 
stamen - seamen - staten - 
stance - seance - stanch - 
stanch - stance - starch - stench - 
stanza - 
staple - stable - 
starch - search - stanch - 
starve - 
stasis - 
staten - stamen - stater - 
stater - seater - skater - slater - staten - stator - 
static - 
stator - stater - 
statue - status - 
status - statue - 
stayed - spayed - 
steady - steamy - 
steamy - steady - 
steele - steely - steeve - 
steely - steele - 
steeve - sleeve - steele - 
stefan - 
stella - 
stench - stanch - 
steppe - 
stereo - sterno - 
sterno - stereo - 
steven - 
sticky - stinky - stocky - 
stifle - 
stigma - 
stingy - stinky - swingy - 
stinky - sticky - stingy - 
stitch - switch - 
stocky - sticky - 
stodgy - 
stokes - 
stolen - 
stolid - 
stooge - 
storey - stormy - 
stormy - storey - 
strafe - strife - 
strain - sprain - strait - 
strait - strain - 
strand - 
strata - 
streak - stream - 
stream - scream - streak - 
street - 
stress - 
strewn - 
strict - 
stride - strife - strike - stripe - strive - strode - 
strife - strafe - stride - strike - stripe - strive - 
strike - shrike - stride - strife - stripe - strive - stroke - 
string - spring - strong - strung - 
stripe - stride - strife - strike - stripy - strive - 
stripy - stripe - 
strive - shrive - stride - strife - strike - stripe - strove - 
strobe - strode - stroke - strove - 
strode - stride - strobe - stroke - strove - 
stroke - strike - strobe - strode - strove - 
stroll - scroll - 
strong - string - strung - 
strove - shrove - strive - strobe - strode - stroke - 
struck - 
strung - sprung - string - strong - 
stuart - 
stubby - 
stucco - 
studio - 
stuffy - 
stumpy - 
stupid - 
stupor - 
sturdy - 
stylus - 
stymie - 
submit - summit - 
subtle - subtly - 
subtly - subtle - 
suburb - 
sudden - sadden - sodden - 
suffer - 
suffix - 
suitor - 
sulfur - 
sullen - mullen - 
sultan - suntan - 
sultry - 
summit - submit - 
summon - 
sumner - sumter - 
sumter - sumner - 
sunday - sundry - 
sunder - sundew - 
sundew - sunder - 
sundry - sunday - 
sunken - 
sunlit - 
sunset - 
suntan - sultan - 
superb - 
supine - lupine - 
supple - supply - 
supply - supple - 
surety - 
surrey - survey - 
surtax - 
survey - purvey - surrey - 
sussex - 
sutton - button - dutton - mutton - 
suture - future - 
suzuki - 
svelte - 
swabby - shabby - 
swampy - 
swanky - 
swatch - snatch - switch - 
swathe - scathe - 
sweaty - 
sweden - 
swerve - 
swingy - stingy - 
swirly - twirly - 
swishy - 
switch - stitch - swatch - twitch - 
swivel - snivel - 
sydney - sidney - 
sylvan - 
sylvia - 
symbol - 
syndic - 
syntax - 
syrinx - 
syrupy - 
system - 
syzygy - 
tablet - 
tabula - 
tackle - cackle - hackle - tickle - 
tacoma - 
tactic - 
tahiti - 
tailor - sailor - taylor - 
taipei - 
taiwan - 
taketh - 
talcum - 
talent - valent - 
talkie - walkie - 
tallow - fallow - hallow - mallow - sallow - wallow - 
talmud - 
tamale - 
tampon - tarpon - 
tanaka - 
tandem - 
tangle - bangle - dangle - jangle - mangle - tingle - wangle - 
tannin - 
taoist - 
tappet - lappet - 
target - 
tariff - 
tarpon - tampon - 
tartar - 
tarzan - 
tassel - 
tattle - battle - cattle - rattle - tuttle - wattle - 
tattoo - 
taught - caught - 
taurus - 
tavern - cavern - 
tawdry - 
taxied - 
taylor - baylor - tailor - 
teacup - 
teapot - 
teasel - weasel - 
tedium - medium - 
teeing - seeing - 
teensy - 
teeter - 
teethe - seethe - 
teflon - 
tehran - 
teller - keller - seller - weller - 
temper - semper - 
temple - 
tenant - 
tendon - 
tenney - kenney - 
tennis - dennis - 
tensor - censor - sensor - 
tenure - 
tercel - 
teresa - 
terror - 
testes - 
tether - nether - 
texaco - 
thalia - 
that'd - what'd - 
thatch - 
thayer - 
thebes - theses - 
theism - theist - 
theist - theism - 
thelma - 
thence - whence - 
theory - 
thermo - 
theses - thebes - thesis - 
thesis - theses - thetis - 
thetis - thesis - 
they'd - 
thimbu - 
thirst - 
thirty - 
thomas - 
thorny - 
thorpe - 
though - trough - 
thrall - thrill - 
thrash - thresh - thrush - 
thread - threat - 
threat - thread - throat - 
thresh - thrash - thrush - 
thrice - thrive - 
thrift - shrift - 
thrill - shrill - thrall - 
thrips - 
thrive - shrive - thrice - 
throat - threat - 
throes - 
throne - throng - 
throng - throne - 
thrown - 
thrush - thrash - thresh - thrust - 
thrust - thrush - 
thuban - 
thwack - 
thwart - 
thymus - 
ticket - picket - wicket - 
tickle - fickle - pickle - sickle - tackle - tinkle - 
tidbit - 
tigris - 
timber - 
timbre - 
tinder - cinder - tinker - 
tingle - bingle - jingle - mingle - single - tangle - tinkle - 
tinker - tinder - 
tinkle - tickle - tingle - winkle - 
tinsel - 
tipoff - ripoff - 
tipple - nipple - ripple - topple - 
tiptoe - 
tirade - 
tirana - 
tissue - 
titian - 
tobago - 
toddle - coddle - toodle - 
toffee - coffee - 
toggle - boggle - goggle - joggle - 
toilet - 
toledo - 
tomato - 
tommie - 
tongue - longue - 
tonsil - 
toodle - doodle - noodle - poodle - toddle - tootle - 
tootle - toodle - 
topeka - 
topple - hopple - tipple - 
toroid - torpid - torrid - 
torpid - toroid - torrid - 
torpor - 
torque - 
torrid - horrid - toroid - torpid - 
touchy - 
tousle - 
toward - coward - howard - 
towhee - 
toyota - 
tragic - 
trance - france - prance - 
trashy - 
trauma - 
travel - gravel - 
travis - 
treaty - 
treble - 
tremor - 
trench - drench - french - wrench - 
trendy - 
tribal - 
tricky - 
trifle - triple - 
trimer - 
triode - 
triple - trifle - 
tripod - 
triton - briton - 
triune - 
trivia - 
troika - 
trojan - 
trompe - troupe - 
trophy - 
tropic - 
trough - though - 
troupe - trompe - 
truant - 
trudge - drudge - grudge - 
truism - 
truman - 
tubule - 
tucker - 
tucson - 
tulane - 
tumble - bumble - fumble - humble - jumble - mumble - rumble - 
tumult - 
tundra - 
tunnel - funnel - 
tupelo - 
turban - 
turbid - turgid - 
turgid - turbid - 
turing - during - 
turkey - 
turnip - 
turret - 
turtle - hurtle - tuttle - 
tuscan - 
tussle - 
tuttle - tattle - turtle - 
tuxedo - 
tweedy - 
tweeze - 
twelve - 
twenty - 
twinge - 
twirly - swirly - 
twisty - 
twitch - switch - 
tyburn - 
tycoon - 
typhon - 
typhus - 
typify - 
tyrant - 
uganda - 
ullman - 
ulster - 
umlaut - 
umpire - empire - 
unesco - 
unique - 
unisex - 
unison - 
unital - 
univac - 
unruly - 
upbeat - 
upcome - 
update - 
upheld - uphold - 
uphill - 
uphold - upheld - 
upkeep - 
upland - 
uplift - 
uprise - 
uproar - 
uproot - 
upshot - 
upside - 
uptake - 
uptown - 
upturn - 
upward - 
upwind - 
uracil - 
urania - crania - 
uranus - 
uranyl - 
urbana - urbane - 
urbane - urbana - 
urchin - 
uremia - 
urgent - 
urging - 
urinal - 
ursula - 
usable - 
usc&gs - 
useful - 
usurer - 
uterus - 
utmost - 
utopia - 
vacant - 
vacate - vocate - 
vacuum - 
vagary - 
vagina - 
valent - talent - 
valery - 
valeur - 
valine - saline - 
valley - galley - halley - volley - 
valois - galois - 
vandal - sandal - 
vanish - banish - danish - 
vanity - 
variac - varian - 
varian - variac - 
vassal - vassar - 
vassar - vassal - 
vaughn - 
vector - hector - rector - sector - victor - 
vellum - bellum - 
velvet - 
vendor - 
veneer - 
veneto - 
venial - denial - genial - menial - 
venice - 
venous - 
verbal - vernal - 
verify - verity - 
verity - verify - 
verlag - 
vermin - 
vernal - verbal - 
vernon - 
verona - 
versus - 
vertex - vortex - 
vesper - 
vessel - bessel - 
vestal - 
vestry - 
victim - 
victor - vector - 
vienna - sienna - 
viking - 
vilify - vivify - 
vinson - 
violet - 
violin - 
virgil - virgin - 
virgin - virgil - 
virile - 
virtue - 
visage - 
vishnu - 
vision - 
visual - 
vivace - 
vivian - 
vivify - vilify - 
vocate - locate - vacate - 
volley - valley - 
volume - 
voodoo - 
vortex - cortex - vertex - 
votary - notary - rotary - 
votive - motive - 
vought - bought - fought - sought - 
voyage - 
vulcan - 
vulgar - 
wabash - 
waddle - paddle - saddle - 
waffle - baffle - raffle - 
waggle - gaggle - haggle - wangle - wiggle - 
wagner - 
wakeup - makeup - 
walden - malden - warden - 
walkie - talkie - wilkie - 
waller - caller - wallet - walter - weller - 
wallet - ballet - mallet - pallet - waller - 
wallis - willis - 
wallop - gallop - wallow - 
wallow - fallow - hallow - mallow - sallow - tallow - wallop - willow - 
walnut - 
walrus - 
walter - falter - waller - 
walton - dalton - malton - wanton - 
wander - gander - pander - wonder - 
wangle - bangle - dangle - jangle - mangle - tangle - waggle - 
wanton - canton - walton - 
wapato - 
wapiti - 
warble - garble - marble - 
warden - garden - harden - walden - warren - 
waring - 
warmth - 
warmup - 
warren - barren - warden - 
warsaw - 
wasn't - hasn't - 
waters - watery - 
watery - waters - 
watson - matson - 
wattle - battle - cattle - rattle - tattle - 
waylay - 
weaken - 
wealth - health - 
weapon - 
weasel - teasel - 
weight - height - wright - 
weldon - 
weller - keller - seller - teller - waller - welles - 
welles - weller - 
werner - 
wesley - 
weston - 
whalen - 
what'd - that'd - 
wheeze - wheezy - 
wheezy - wheeze - 
whelan - 
whence - thence - 
whinny - 
whiten - 
who'll - 
who've - 
wholly - 
whoosh - 
wicket - picket - ticket - 
widget - fidget - midget - 
wiener - 
wiggle - giggle - jiggle - niggle - waggle - wiggly - 
wiggly - wiggle - 
wigwam - 
wilbur - 
wilcox - 
wilful - 
wilkes - 
wilkie - walkie - willie - 
willie - billie - millie - wilkie - willis - 
willis - wallis - willie - 
willow - billow - pillow - wallow - 
wilson - 
window - winnow - 
windup - 
winery - finery - wintry - 
winkle - tinkle - 
winnie - minnie - 
winnow - minnow - window - 
winter - sinter - 
wintry - winery - 
wisdom - 
withal - 
wither - dither - either - hither - 
within - 
wizard - lizard - 
wobble - bobble - cobble - gobble - hobble - 
woeful - 
wolves - 
wombat - combat - 
wonder - ponder - wander - 
wooden - 
worsen - 
worthy - 
wraith - 
wrapup - 
wreath - breath - 
wrench - drench - french - trench - wretch - 
wretch - wrench - 
wright - bright - fright - weight - 
writhe - 
xavier - 
xerxes - 
xylene - 
yakima - 
yamaha - 
yankee - 
yarrow - barrow - harrow - marrow - narrow - 
yeager - meager - 
yeasty - 
yellow - bellow - fellow - mellow - 
yeoman - 
yerkes - 
yogurt - 
yokuts - 
you'll - 
you're - you've - 
you've - you're - 
yvette - 
zagreb - 
zambia - gambia - 
zealot - 
zenith - 
zeroes - heroes - 
zeroth - 
zigzag - 
zircon - 
zodiac - 
zombie - 
zounds - 
zurich - 
zygote - 
abalone - 
abandon - 
abdomen - 
abelian - 
abelson - 
abetted - abutted - 
abeyant - 
abidjan - 
abigail - 
abolish - 
abraham - 
abreact - abreast - 
abreast - abreact - 
abridge - 
abscess - 
absence - 
absolve - 
abstain - 
abusive - 
abutted - abetted - 
abysmal - 
academe - academy - 
academy - academe - 
acclaim - 
account - 
accrual - 
acerbic - 
acetate - 
acetone - 
achieve - 
acolyte - 
acquire - 
acreage - 
acrobat - 
acronym - 
acrylic - 
actaeon - 
actinic - 
actress - 
actuate - 
acyclic - 
adamant - 
adamson - 
addenda - 
addison - 
address - 
adenine - 
adenoma - 
adjoint - 
adjourn - 
adjudge - 
adjunct - 
admiral - 
adrenal - 
adulate - 
advance - 
adverse - 
advisee - 
advisor - 
aeolian - 
aerobic - 
aerosol - 
affable - 
afflict - 
affront - 
against - 
agitate - 
agnomen - 
aileron - 
airdrop - 
airfare - 
airflow - 
airfoil - 
airlift - 
airline - 
airlock - 
airmail - 
airmass - 
airpark - 
airport - 
alabama - 
alameda - 
albania - 
alberta - alberto - 
alberto - alberta - 
albumin - 
alchemy - 
alcmena - 
alcohol - 
aldrich - 
alewife - 
alfalfa - 
alfonso - 
alfredo - 
algebra - 
algenib - 
algeria - 
algiers - 
alimony - 
aliquot - 
allegra - allegro - 
allegro - allegra - 
allergy - 
allison - ellison - 
almaden - 
almanac - 
already - 
alumina - 
alumnae - 
alumnus - 
alundum - 
alvarez - 
alveoli - 
alyssum - 
amadeus - 
amalgam - 
amanita - 
amateur - 
amatory - 
ambient - 
ambling - 
ambrose - 
amerada - 
america - 
ameslan - 
amherst - 
ammeter - 
ammonia - 
amnesia - 
amoebae - 
amongst - 
amorous - 
amplify - 
amputee - 
anagram - 
anaheim - 
analogy - 
analyst - 
anarchy - 
anatole - 
anatomy - 
anchovy - 
ancient - 
andiron - 
andorra - 
andover - 
andrews - 
anemone - 
angeles - 
angelic - 
angling - 
anguish - 
angular - annular - 
aniline - 
animate - 
animism - 
anionic - avionic - 
annalen - 
annette - 
annuity - 
annular - angular - 
annulus - 
anomaly - 
another - 
anselmo - 
antacid - 
antaeus - 
antares - 
antenna - 
anthony - 
antigen - 
antioch - 
antique - 
antoine - 
antonio - 
antonym - 
antwerp - 
anxiety - 
anxious - 
anybody - 
apatite - 
aphasia - aphasic - 
aphasic - aphasia - 
apology - 
apostle - 
apparel - 
appease - 
applaud - 
appleby - 
applied - 
appoint - 
apprise - 
approve - 
apricot - 
apropos - atropos - 
aquatic - 
aqueous - 
aquinas - 
arachne - 
arbiter - 
arbutus - 
arcadia - 
archaic - 
archery - 
arching - 
archive - 
arcsine - 
ardency - 
arduous - 
areaway - 
argonne - 
ariadne - 
arizona - 
armenia - 
armhole - 
armload - 
armoire - 
arousal - 
arragon - 
arraign - 
arrange - 
arrival - 
arsenal - 
arsenic - 
artemis - 
article - 
artisan - 
artwork - 
ascetic - 
ascribe - 
aseptic - 
asexual - 
ashamed - 
ashland - 
ashtray - 
asiatic - 
asinine - 
askance - 
asocial - 
asphalt - 
aspirin - 
assault - 
assuage - 
assyria - 
astarte - 
asteria - astoria - 
astoria - asteria - 
astound - 
astride - 
asunder - 
atavism - 
atheism - atheist - 
atheist - atheism - 
athlete - 
athwart - 
atlanta - 
atrophy - 
atropos - apropos - 
attache - 
attempt - 
attract - 
atwater - 
auberge - 
auction - suction - 
audible - 
auditor - 
audubon - 
augment - 
augusta - 
aurochs - 
austere - 
austria - 
automat - 
autopsy - 
avarice - 
average - 
averred - 
avionic - anionic - 
avocado - 
avocate - evocate - 
awesome - 
awkward - 
axolotl - 
azimuth - 
aztecan - 
babbitt - 
babcock - 
babylon - 
babysat - babysit - 
babysit - babysat - 
bacchus - 
bacilli - 
backlog - 
badland - 
baggage - 
bagging - begging - bogging - bugging - gagging - jagging - lagging - nagging - ragging - sagging - tagging - wagging - zagging - 
baghdad - 
bagpipe - 
bahrein - 
bailiff - 
bainite - 
baklava - 
balance - 
balcony - 
baldwin - 
baleful - baneful - 
balfour - 
ballard - mallard - 
ballast - 
balloon - 
banbury - danbury - 
bandage - bondage - 
bandgap - 
baneful - baleful - 
bangkok - 
banquet - 
banshee - 
baptism - baptist - 
baptist - baptism - 
barbara - 
barbell - tarbell - 
barbour - 
barbudo - 
barclay - 
bargain - 
barkeep - 
barnard - bernard - 
barnett - barrett - burnett - 
baronet - bayonet - 
baroque - 
barrack - 
barrage - 
barrett - barnett - garrett - 
barrier - 
barstow - 
bartend - 
baseman - basemen - bateman - 
basemen - baseman - 
bashful - 
basilar - 
bassett - 
bastard - bustard - dastard - 
bastion - 
batavia - 
bateman - baseman - 
bathtub - 
battery - buttery - 
batwing - 
bauhaus - 
bauxite - 
bavaria - 
bayonet - baronet - 
bayonne - 
bayport - 
bearish - 
beastie - 
beatify - 
beatnik - 
because - 
bechtel - 
beckman - heckman - 
becloud - 
bedevil - 
bedfast - belfast - 
bedford - medford - 
bedpost - 
bedrock - 
bedroom - 
bedside - 
bedtime - 
beecham - 
beehive - 
beggary - 
begging - bagging - bogging - bugging - legging - pegging - 
begonia - 
beguile - 
beijing - 
belfast - bedfast - 
belgian - 
belgium - 
believe - relieve - 
bellamy - 
bellboy - 
bellhop - 
bellini - 
bellman - bellmen - 
bellmen - bellman - 
belmont - 
belying - 
beneath - 
benefit - 
benelux - 
bengali - 
benight - 
bennett - 
bentham - 
benthic - 
bentley - 
benzene - 
beograd - 
beowulf - 
bequest - request - 
bereave - 
bergman - 
bergson - 
berlioz - berlitz - 
berlitz - berlioz - 
bermuda - 
bernard - barnard - 
bernice - 
bernini - 
berserk - 
bertram - 
berwick - 
beseech - 
besiege - 
bespeak - 
bespoke - 
bestial - 
betoken - 
betroth - 
between - 
betwixt - 
beverly - 
bewitch - 
biaxial - 
bicycle - 
bifocal - 
bigelow - 
bigotry - 
bilayer - 
billion - million - 
bimodal - 
bindery - 
bingham - gingham - 
biology - 
biotite - 
biplane - 
bipolar - 
biscuit - 
bismark - 
bismuth - 
bistate - 
bittern - 
bitumen - 
bitwise - 
bivalve - 
bivouac - 
bizarre - 
blacken - bracken - slacken - 
bladder - 
blanche - 
blanket - 
blatant - 
blather - 
bleeker - 
blemish - flemish - 
blister - bluster - 
blossom - 
blubber - 
blunder - plunder - 
bluster - blister - cluster - fluster - 
boatman - boatmen - 
boatmen - boatman - 
boeotia - 
bogging - bagging - begging - bugging - dogging - fogging - hogging - jogging - logging - togging - 
bohemia - 
boletus - 
bolivar - 
bolivia - 
bologna - 
bolshoi - 
bolster - holster - 
bombard - lombard - 
bombast - 
bonanza - 
bondage - bandage - 
bonfire - 
bookend - 
bookish - boorish - 
booklet - 
boolean - 
boorish - bookish - moorish - 
bootleg - 
boredom - 
borough - 
bosonic - 
boswell - 
botanic - 
botulin - 
boucher - goucher - 
boulder - 
bouquet - 
bourbon - 
bowdoin - 
bowline - 
boxwood - 
boycott - 
boyhood - 
bracken - blacken - bracket - 
bracket - bracken - 
bradley - 
braille - 
bramble - 
brandon - 
braniff - 
bravado - 
bravery - 
bravura - 
brazier - frazier - 
breadth - 
breakup - 
breathe - breathy - wreathe - 
breathy - breathe - 
breccia - 
brendan - brennan - 
brennan - brendan - 
brenner - 
brevity - 
brewery - 
bribery - 
bridget - 
brigade - 
brigham - 
brimful - 
brindle - 
bristle - brittle - 
bristol - 
britain - 
british - 
britten - written - 
brittle - bristle - 
broaden - 
brocade - 
brockle - 
broglie - 
bromide - bromine - 
bromine - bromide - 
bromley - 
bronchi - 
brothel - brother - 
brother - brothel - 
brought - drought - wrought - 
brownie - 
bruegel - 
brumidi - 
brusque - 
bryozoa - 
buckeye - 
buckley - 
bucolic - 
buffalo - 
buffoon - 
bugaboo - 
bugeyed - 
bugging - bagging - begging - bogging - hugging - jugging - lugging - mugging - tugging - 
buildup - 
builtin - 
bulblet - 
bulldog - 
bullish - 
bullock - 
bulrush - 
bulwark - 
buoyant - 
burbank - 
burdock - 
burette - 
burgeon - surgeon - 
burgess - 
burgher - 
burglar - 
burmese - 
burnett - barnett - 
burnham - 
burnish - furnish - 
burnout - turnout - 
burundi - 
bustard - bastard - mustard - 
buttery - battery - 
buttock - 
butyric - 
buzzard - 
buzzing - 
buzzsaw - 
byronic - 
cabaret - 
cabbage - 
cabinet - 
cadaver - 
cadenza - 
cadmium - 
calamus - 
calcify - 
calcine - calcite - 
calcite - calcine - 
calcium - 
calculi - 
caldera - 
calgary - calvary - 
calhoun - 
caliber - caliper - 
calibre - 
caliper - caliber - 
calkins - 
callous - 
caloric - calorie - 
calorie - caloric - 
calumet - 
calumny - 
calvary - calgary - 
calvert - culvert - 
calypso - 
cambric - 
camelot - 
cameron - 
camilla - camille - 
camille - camilla - 
campion - 
candace - 
candela - 
candide - 
cannery - 
canonic - 
canteen - 
canvass - 
capella - 
capital - capitol - 
capitol - capital - 
caprice - 
capsize - 
capstan - 
capsule - 
captain - 
caption - caution - 
captive - 
capture - rapture - 
carabao - 
caracas - 
caramel - 
caravan - 
caraway - 
carbide - carbine - 
carbine - carbide - carbone - carmine - 
carbone - carbine - 
carboxy - 
carcass - 
cardiac - 
cardiff - 
cardiod - 
careful - 
carfare - warfare - 
cargill - 
cargoes - 
caribou - 
carload - 
carlson - carlton - 
carlton - carlson - 
carlyle - 
carmela - 
carmine - carbine - 
carnage - 
carolyn - 
carouse - 
carport - 
carrara - 
carrion - 
carroll - 
cartoon - 
cascade - 
cascara - mascara - 
cashier - 
caspian - 
cassius - 
cassock - 
casteth - 
catalpa - 
catawba - 
catbird - 
catcall - 
catchup - 
catfish - 
cathode - 
catlike - 
cattail - rattail - 
causate - 
caustic - 
caution - caption - 
cavalry - 
caveman - cavemen - 
cavemen - caveman - 
cayenne - 
cecilia - 
cedilla - 
celebes - 
celesta - celeste - 
celeste - celesta - 
celsius - 
censure - 
centaur - 
central - 
centrex - 
centric - 
century - 
cepheus - 
ceramic - 
certain - curtain - pertain - 
certify - 
cession - session - 
cezanne - 
chablis - 
chagrin - 
chalice - 
chamber - chamfer - clamber - 
chamfer - chamber - 
chamois - 
chancel - channel - 
channel - chancel - 
chanson - 
chantey - chantry - 
chantry - chantey - 
chaotic - 
chaplin - 
chapman - 
chapter - 
chariot - 
charity - clarity - 
charles - charley - 
charley - charles - 
charlie - 
chassis - 
chateau - 
chatham - 
chattel - 
chaucer - 
cheater - chester - 
checkup - 
cheetah - 
chelate - 
chemise - chemist - 
chemist - chemise - 
cherish - 
chester - cheater - 
chevron - 
chianti - 
chicago - chicano - 
chicano - chicago - 
chicken - thicken - 
chicory - 
chiffon - 
chigger - 
chignon - 
chilean - 
chimera - 
chimney - 
chinese - 
chinook - 
choctaw - 
cholera - 
chomsky - 
chorale - chortle - 
chordal - 
chorine - 
chortle - chorale - 
chowder - 
christy - 
chromic - chronic - 
chronic - chromic - 
chuckle - 
chutney - 
ciliate - 
circlet - 
circuit - 
cistern - 
citadel - 
citizen - 
citrate - nitrate - titrate - 
citroen - 
clamber - chamber - 
clarify - clarity - 
clarity - charity - clarify - 
classic - 
clatter - clutter - 
claudia - claudio - 
claudio - claudia - 
clausen - 
clayton - 
cleanse - 
cleanup - 
clement - element - 
clemson - 
clifton - clinton - 
climate - 
clinton - clifton - 
clobber - 
closeup - 
closure - cloture - 
cloture - closure - 
cluster - bluster - clutter - fluster - 
clutter - clatter - cluster - flutter - 
coarsen - 
coastal - 
coaxial - 
cocaine - 
cochlea - 
cochran - 
cockeye - sockeye - 
cockpit - 
coconut - 
codfish - 
codicil - 
coequal - 
coexist - 
coffman - hoffman - 
cognate - 
coinage - 
coleman - 
colette - 
colgate - collate - 
colicky - 
collage - collate - college - 
collard - pollard - 
collate - colgate - collage - 
collect - 
college - collage - 
collide - collude - 
collier - 
collins - rollins - 
collude - collide - 
cologne - 
colombo - 
colonel - 
colossi - 
coltish - doltish - 
combine - 
comfort - comport - 
command - commend - 
commend - command - comment - 
comment - commend - 
commune - commute - 
commute - commune - compute - 
compact - 
company - 
compare - 
compass - 
compete - compote - compute - 
compile - 
complex - 
comport - comfort - compost - 
compose - compost - compote - 
compost - comport - compose - 
compote - compete - compose - compute - 
compton - 
compute - commute - compete - compote - 
comrade - 
conakry - 
concave - 
conceal - congeal - 
concede - 
conceit - concept - concert - 
concept - conceit - concert - 
concern - concert - 
concert - conceit - concept - concern - convert - 
concise - 
concoct - 
concord - 
condemn - 
condone - 
conduce - conduct - 
conduct - conduce - conduit - 
conduit - conduct - 
confect - connect - convect - 
confess - 
confide - confine - 
confine - confide - 
confirm - conform - 
conform - confirm - 
confuse - confute - 
confute - confuse - 
congeal - conceal - 
congest - contest - 
conifer - 
conjoin - 
conjure - 
conklin - 
connect - confect - convect - 
connive - 
connors - 
connote - 
conquer - 
conrail - 
consent - content - convent - 
consign - 
consist - 
console - 
consort - contort - 
consult - 
consume - 
contact - 
contain - 
contend - content - 
content - consent - contend - contest - context - convent - 
contest - congest - content - context - 
context - content - contest - 
contort - consort - 
contour - 
control - 
convair - 
convect - confect - connect - convent - convert - convict - 
convene - convent - 
convent - consent - content - convect - convene - convert - 
convert - concert - convect - convent - 
convict - convect - 
convoke - 
cookery - 
coolant - 
copious - 
coppery - 
coquina - 
corbett - 
cordage - corsage - 
cordial - 
cordite - 
corinth - 
cornell - 
cornish - 
coroner - coronet - 
coronet - coroner - 
corpora - 
correct - 
corrode - 
corrupt - 
corsage - cordage - 
cortege - 
cossack - 
costume - 
cottage - 
cottony - 
coulomb - 
coulter - 
council - 
counsel - 
country - 
courage - 
courier - fourier - 
cowbell - 
cowbird - 
cowgirl - 
cowhand - 
cowherd - 
cowhide - 
cowlick - 
cowpoke - 
cowpony - 
cowslip - 
coxcomb - 
crackle - grackle - 
cranium - uranium - 
crappie - 
credent - 
creedal - 
cremate - 
crevice - 
crewcut - 
crewman - crewmen - 
crewmen - crewman - 
cricket - 
crimson - 
crinkle - wrinkle - 
cripple - 
crispin - 
critter - fritter - 
croatia - 
crochet - 
croquet - 
crowley - 
croydon - 
crucial - 
crucify - 
cruelty - 
crumble - crumple - grumble - 
crumple - crumble - 
crupper - 
crusade - 
cryptic - 
crystal - 
cuisine - 
culprit - 
culture - vulture - 
culvert - calvert - 
cummins - 
cumulus - 
cunning - 
cuprous - 
curious - furious - 
currant - current - 
current - currant - 
cursive - 
cursory - 
curtail - curtain - 
curtain - certain - curtail - 
curtsey - 
cushing - 
cushion - 
cushman - 
custody - 
cutback - 
cutlass - 
cutover - 
cutworm - 
cyanate - 
cyanide - 
cyclist - 
cyclone - 
cyclops - 
cynthia - 
cypress - 
cyprian - 
cypriot - 
czarina - 
dadaism - dadaist - 
dadaist - dadaism - 
dahomey - 
daimler - 
dalzell - 
danbury - banbury - 
darlene - marlene - 
darling - 
darrell - durrell - farrell - 
dastard - bastard - 
dauphin - 
davison - 
daytime - 
daytona - 
debacle - 
debater - 
debauch - 
deborah - 
debrief - 
debussy - 
decatur - 
decease - 
deceive - receive - 
decibel - 
decimal - 
declaim - 
declare - 
decline - recline - 
decorum - 
decrypt - 
default - 
defiant - deviant - 
deficit - 
deflate - 
deflect - reflect - 
defocus - 
defraud - 
defrock - 
defrost - 
defunct - 
degrade - 
delaney - 
delicti - 
delight - 
delilah - 
delimit - 
deliver - 
delouse - 
delphic - 
deltoid - 
demerit - 
demigod - 
demonic - 
dempsey - 
denizen - 
denmark - 
denture - venture - 
deplete - replete - 
deplore - 
deposit - 
deprave - deprive - 
depress - 
deprive - deprave - 
derange - 
derrick - 
dervish - 
descant - descent - 
descend - descent - 
descent - descant - descend - 
deserve - reserve - 
desmond - despond - 
despair - 
despise - despite - 
despite - despise - respite - 
despoil - 
despond - desmond - respond - 
dessert - 
destine - destiny - 
destiny - destine - 
destroy - 
detente - 
detract - retract - 
detroit - 
develop - 
deviant - defiant - 
deviate - 
devious - 
devisee - 
devolve - revolve - 
devotee - 
dewdrop - 
diabase - 
diagram - 
dialect - 
diamond - 
dickens - 
dickson - 
dictate - 
diction - fiction - 
diebold - 
diehard - 
dietary - 
diffuse - 
digging - dogging - gigging - jigging - pigging - rigging - wigging - zigging - 
digital - 
dignify - dignity - signify - 
dignity - dignify - 
digress - tigress - 
dilemma - 
diluent - 
diocese - 
diopter - 
diorama - 
diorite - 
dioxide - 
diploid - 
diploma - 
discern - 
discoid - 
discuss - 
disdain - 
dispute - 
disrupt - 
distaff - 
distant - 
distort - 
disturb - 
diurnal - 
diverge - diverse - 
diverse - diverge - 
divisor - 
divorce - 
divulge - 
dnieper - 
doesn't - 
dogbane - 
dogfish - 
dogging - bogging - digging - fogging - hogging - jogging - logging - togging - 
doggone - 
dogtrot - 
dogwood - 
doherty - 
doldrum - 
doleful - 
dolores - 
dolphin - 
doltish - coltish - 
domingo - 
dominic - 
donahue - 
donovan - 
doorman - doormen - 
doormen - doorman - 
doorway - 
doppler - 
dormant - formant - 
dorothy - 
dossier - 
doublet - 
douglas - 
dovekie - 
dowager - 
dowling - downing - 
downing - dowling - 
draftee - 
dragnet - 
dragoon - 
drapery - 
drastic - 
dribble - 
drizzle - drizzly - frizzle - grizzle - 
drizzly - drizzle - grizzly - 
droplet - 
dropout - 
drought - brought - wrought - 
drumlin - 
drunken - 
dualism - 
dubious - 
duchess - 
ductile - 
dukedom - 
dunedin - 
dungeon - 
dunkirk - 
duopoly - 
durable - 
durance - 
durango - 
durrell - darrell - 
durward - 
dustbin - 
dutiful - 
dwarves - 
dwindle - swindle - 
dynamic - 
dynasty - 
eardrum - 
earmark - 
earnest - 
earring - 
earthen - 
eastern - 
eastman - 
echelon - 
echidna - 
eclipse - ellipse - 
eclogue - 
ecology - 
economy - 
ecstasy - 
ectopic - 
ecuador - 
edifice - 
edition - 
edmonds - 
eduardo - 
educate - 
edwards - 
egghead - 
egotism - egotist - 
egotist - egotism - 
ehrlich - 
eidetic - 
ejector - elector - 
ekstrom - 
elastic - plastic - 
eleanor - 
eleazar - 
elector - ejector - 
electra - electro - 
electro - electra - 
elegant - 
elegiac - 
element - clement - 
elevate - 
elision - 
elkhart - 
elliott - 
ellipse - eclipse - 
ellison - allison - 
ellwood - 
elusive - 
elution - 
elysian - 
emanate - 
emanuel - 
embargo - 
embassy - 
embower - empower - 
embrace - 
embroil - 
emerald - 
emeriti - 
emerson - 
eminent - 
emirate - 
emitted - emitter - omitted - 
emitter - emitted - 
emotion - 
empathy - 
emperor - 
empiric - 
emplace - 
empower - embower - 
empress - express - impress - 
emulate - 
enclave - 
encomia - 
endemic - 
endgame - 
endorse - indorse - 
enfield - infield - 
england - 
english - 
enhance - 
enliven - 
enquire - enquiry - esquire - inquire - 
enquiry - enquire - inquiry - 
entrant - 
entropy - 
envelop - 
envious - 
environ - 
epaulet - 
ephesus - 
ephraim - 
epicure - 
epigram - 
episode - 
epistle - 
epitaph - 
epitaxy - 
epithet - 
epitome - 
epochal - 
epsilon - upsilon - 
epstein - 
equable - 
equinox - 
erasmus - erastus - 
erastus - erasmus - 
erasure - 
ergodic - 
erosion - 
erosive - 
erotica - exotica - 
errancy - 
erratic - 
erratum - 
erskine - 
erudite - 
escapee - 
escheat - 
espouse - 
esquire - enquire - 
essence - 
estella - 
estonia - 
estuary - 
eternal - sternal - 
ethanol - 
eugenia - eugenic - 
eugenic - eugenia - 
eurasia - 
euterpe - 
evangel - 
evasion - 
evasive - 
everett - 
evident - 
evocate - avocate - 
exacter - 
examine - 
example - 
excerpt - 
exciton - 
exclaim - 
exclude - 
excrete - 
execute - 
exegete - 
exhaust - 
exhibit - 
exigent - 
exogamy - 
exotica - erotica - 
expanse - expense - 
expense - expanse - 
expiate - 
explain - 
explode - explore - 
exploit - 
explore - explode - 
exposit - 
expound - 
express - empress - 
expunge - 
extinct - 
extract - 
extrema - extreme - 
extreme - extrema - 
extrude - 
exudate - 
eyeball - 
eyebrow - 
eyelash - 
eyesore - 
ezekiel - 
factory - 
factual - tactual - 
faculty - 
fadeout - 
failure - 
fairfax - 
fairway - 
fallacy - 
falloff - 
fallout - 
falsify - salsify - 
fanatic - 
fanfare - 
fanfold - 
fangled - 
fantasy - 
faraday - 
farrell - darrell - 
farther - further - 
fascism - fascist - 
fascist - fascism - 
fashion - 
fateful - hateful - 
fatigue - 
fatuous - 
faustus - 
fayette - layette - 
fearful - tearful - 
feather - leather - weather - 
feature - 
febrile - 
fedders - 
federal - 
feldman - 
felicia - 
felsite - 
ferment - fervent - 
fermion - 
fermium - 
fernery - 
ferrite - 
ferrous - 
ferrule - 
fertile - 
fervent - ferment - 
festive - restive - 
fiancee - 
fibrous - 
fiction - diction - 
fictive - 
fiefdom - 
fifteen - 
figural - 
filbert - gilbert - hilbert - 
filmdom - 
finance - 
finesse - 
finicky - 
finland - 
finnish - 
firearm - 
firebug - 
firefly - 
fireman - firemen - wireman - 
firemen - fireman - wiremen - 
fischer - 
fishery - 
fissile - missile - 
fission - mission - 
fissure - 
fitzroy - 
fixture - mixture - 
flagler - 
flannel - 
flatbed - 
flatten - 
fleeing - fleming - freeing - 
fleming - fleeing - 
flemish - blemish - 
flexure - 
florida - 
florist - 
flounce - 
flowery - 
fluency - 
fluster - bluster - cluster - flutter - 
flutter - clutter - fluster - 
fluvial - 
fogarty - 
fogging - bogging - dogging - hogging - jogging - logging - togging - 
foldout - holdout - 
foliage - foliate - 
foliate - foliage - 
foolish - 
footage - 
footman - footmen - 
footmen - footman - 
footpad - 
foppish - 
forbade - 
forbear - 
forbore - 
fordham - 
foreign - 
forever - 
forfeit - 
forfend - 
forgave - forgive - 
forgery - 
forgive - forgave - 
forlorn - 
formant - dormant - 
formate - 
formica - 
formosa - 
formula - 
forrest - 
forsake - 
forsook - 
fortify - mortify - 
fortran - 
fortune - 
forward - 
forwent - 
foundry - 
fourier - courier - 
foxhall - 
foxhole - 
foxtail - 
fragile - 
frailty - 
frances - francis - 
francis - frances - 
frankel - 
frantic - 
fraught - 
frazier - brazier - 
frazzle - frizzle - 
freckle - 
freddie - 
freedom - 
freeing - fleeing - 
freeman - freemen - 
freemen - freeman - 
freeway - 
freight - 
freshen - 
fresnel - 
friable - triable - 
frigate - 
fritter - critter - 
frizzle - drizzle - frazzle - grizzle - 
frontal - 
frustum - 
fuchsia - 
fujitsu - 
fulcrum - 
fulfill - 
fulsome - 
functor - junctor - 
funeral - 
fungoid - 
furbish - furnish - 
furious - curious - 
furlong - 
furnace - 
furnish - burnish - furbish - 
furrier - 
further - farther - 
furtive - 
fusible - 
gabriel - 
gadwall - 
gagging - bagging - gigging - jagging - lagging - nagging - ragging - sagging - tagging - wagging - zagging - 
gainful - painful - 
galatea - galatia - 
galatia - galatea - 
galilee - 
gallant - 
gallery - 
gallium - 
gallows - 
gangway - 
gannett - 
gantlet - 
garbage - 
gardner - 
garland - 
garrett - barrett - 
gascony - 
gaseous - 
gasohol - 
gateway - 
gauguin - 
gavotte - 
gaylord - 
gazelle - 
gazette - 
gelable - 
gelatin - 
gemlike - 
general - 
generic - genetic - 
genesco - 
genesis - 
genetic - generic - 
genital - 
genteel - 
gentian - 
gentile - 
genuine - 
geodesy - 
geoduck - 
geology - 
georgia - 
gerhard - 
germane - germany - 
germany - germane - 
gestalt - 
gestapo - 
gesture - 
getaway - 
ghastly - ghostly - 
gherkin - 
ghostly - ghastly - 
giacomo - 
gibbons - gibbous - 
gibbous - gibbons - 
gifford - 
gigabit - 
gigging - digging - gagging - jigging - pigging - rigging - wigging - zigging - 
gilbert - filbert - hilbert - 
gilmore - 
gimmick - 
gingham - bingham - 
ginmill - 
ginseng - 
giraffe - 
girlish - 
glacial - 
glacier - 
gladden - glidden - 
glamour - 
glasgow - 
gleason - 
gleeful - 
glidden - gladden - 
glimmer - 
glimpse - 
glisten - 
glitter - 
globule - 
glorify - 
glossed - 
glottal - 
glottis - 
glucose - 
glutton - 
glycine - 
gnostic - 
goddard - 
goddess - 
godfrey - 
godhead - 
godlike - 
godsend - 
goldman - goodman - 
goliath - 
gondola - 
goodbye - 
goodman - goldman - 
goodwin - 
gordian - 
gorilla - 
goshawk - 
gosling - 
goucher - boucher - 
gourmet - 
grackle - crackle - 
gradate - 
gradual - 
grammar - 
granary - 
grandma - grandpa - 
grandpa - grandma - 
granite - 
granola - 
grantee - 
grantor - 
granule - 
graphic - 
grapple - 
gratify - 
grayish - 
grayson - 
greater - 
grecian - 
gregory - 
gremlin - kremlin - 
grenade - 
grendel - 
gresham - 
greylag - 
griddle - 
griffin - 
grilled - 
grimace - 
grizzle - drizzle - frizzle - grizzly - 
grizzly - drizzly - grizzle - 
grocery - 
grommet - 
grosset - 
grownup - 
grumble - crumble - 
grumman - 
gryphon - 
guanine - 
guardia - 
guerdon - 
guiding - 
guignol - 
gumdrop - 
gumshoe - 
gunfire - 
gunnery - 
gunplay - 
gunshot - 
gunther - 
gustave - 
guthrie - 
gymnast - 
gypsite - 
habitat - 
hackett - 
hackney - 
hacksaw - 
haddock - paddock - 
hadrian - 
hafnium - 
haggard - 
haircut - 
hairpin - 
haitian - 
halcyon - 
halfway - hallway - 
halibut - 
halifax - 
hallway - halfway - 
halogen - 
halpern - 
hamburg - 
hammock - hummock - 
hammond - 
hampton - 
hamster - 
hancock - 
handbag - sandbag - 
handful - 
handgun - 
handout - hangout - 
handset - 
hanford - sanford - 
hangman - hangmen - 
hangmen - hangman - 
hangout - handout - 
hanover - 
haploid - 
hardhat - 
harding - 
hardtop - 
harelip - 
harmful - 
harmony - 
harness - 
harpoon - 
harriet - 
harshen - 
hartley - 
hartman - 
harvard - 
harvest - 
hashish - 
hatchet - 
hateful - fateful - 
haughty - naughty - 
haulage - 
haven't - 
hawkins - 
hayward - wayward - 
headset - 
headway - 
healthy - wealthy - 
hearken - hearten - 
hearsay - 
hearten - hearken - 
heathen - 
hebraic - 
heckman - beckman - hickman - 
heiress - 
helical - 
hellish - 
helpful - 
hemlock - 
henbane - 
henpeck - 
hepburn - 
heptane - 
herbert - 
heretic - 
hermann - 
hermite - termite - 
hermosa - 
heroine - 
heroism - 
herself - 
hershel - hershey - 
hershey - hershel - 
hertzog - 
hessian - 
hewlett - 
hexagon - 
hibachi - hitachi - 
hibbard - hubbard - 
hickman - heckman - pickman - 
hickory - 
hidalgo - 
hideous - hideout - 
hideout - hideous - 
higgins - huggins - wiggins - 
highboy - 
highest - 
highway - 
hijinks - 
hilbert - filbert - gilbert - 
hillman - hillmen - 
hillmen - hillman - 
hillock - 
hilltop - 
himself - 
hipster - 
hiroshi - 
hirsute - 
history - 
hitachi - hibachi - 
hoboken - 
hodgkin - 
hoffman - coffman - huffman - 
hogging - bogging - dogging - fogging - hugging - jogging - logging - togging - 
holcomb - 
holdout - foldout - 
holiday - 
holland - 
holmdel - 
holmium - 
holster - bolster - 
holyoke - 
homeown - 
homeric - 
homonym - 
honesty - 
honoree - 
hoodlum - 
hoosier - 
hopeful - 
hopkins - 
horatio - 
horizon - 
hormone - 
horrify - 
hosiery - 
hospice - 
hostage - postage - 
hostess - 
hostile - 
hostler - 
hothead - 
hotshot - 
houdini - 
houston - 
however - 
hubbard - hibbard - 
hubbell - 
huffman - hoffman - 
hugging - bugging - hogging - huggins - jugging - lugging - mugging - tugging - 
huggins - higgins - hugging - 
humerus - 
hummock - hammock - 
hundred - 
hungary - 
huntley - 
hurwitz - 
husband - 
hyaline - 
hyannis - 
hydrant - 
hydrate - 
hydride - 
hydrous - 
hydroxy - 
hygiene - 
iceberg - 
iceland - ireland - 
idiotic - 
idyllic - 
igneous - 
ignoble - 
illegal - 
illicit - 
illogic - 
imagery - 
imagine - 
imbrium - 
imitate - 
immense - immerse - 
immerse - immense - 
immoral - 
impasse - 
impeach - 
imperil - 
impetus - 
impiety - 
impinge - 
impious - 
implant - 
implode - implore - 
implore - implode - 
impound - 
impress - empress - 
imprint - 
improve - 
impulse - 
inboard - 
inbreed - 
incense - intense - 
incline - 
inclose - 
include - 
incubus - 
indiana - 
indices - 
indorse - endorse - 
indulge - 
indwell - 
inertia - 
inexact - 
infancy - 
infarct - 
inferno - 
infidel - 
infield - enfield - 
infight - insight - 
infimum - 
inflame - inflate - 
inflate - inflame - 
inflect - inflict - 
inflict - inflect - 
infract - 
ingrate - 
ingrown - 
inhabit - inhibit - 
inherit - 
inhibit - inhabit - 
inhuman - 
initial - 
injunct - 
inkling - 
innards - 
inquest - 
inquire - enquire - inquiry - 
inquiry - enquiry - inquire - 
inshore - 
insight - infight - 
insipid - 
insofar - 
inspect - 
inspire - 
install - instill - 
instant - 
instead - 
instill - install - 
insular - 
insulin - 
integer - 
intense - incense - 
interim - 
intimal - 
introit - 
intrude - 
invalid - 
inveigh - 
inverse - 
invitee - 
invoice - 
involve - 
iranian - 
ireland - iceland - 
iridium - 
irksome - 
isadore - 
isfahan - 
islamic - 
isolate - 
isotope - 
israeli - 
issuant - 
italian - 
iterate - 
ivanhoe - 
iverson - 
jackass - 
jackdaw - 
jackman - 
jackpot - 
jackson - 
jacobus - 
jacques - 
jagging - bagging - gagging - jigging - jogging - jugging - lagging - nagging - ragging - sagging - tagging - wagging - zagging - 
jakarta - 
jamaica - 
janeiro - 
janitor - 
january - 
javelin - 
jawbone - 
jealous - zealous - 
jeannie - 
jeffrey - 
jehovah - 
jejunum - 
jenkins - 
jeopard - leopard - 
jericho - 
jessica - 
jewelry - 
jigging - digging - gigging - jagging - jogging - jugging - pigging - rigging - wigging - zigging - 
jimenez - 
jittery - 
joaquin - 
jocular - 
jogging - bogging - dogging - fogging - hogging - jagging - jigging - jugging - logging - togging - 
johnsen - johnson - 
johnson - johnsen - 
jonquil - 
journal - 
journey - 
joyride - 
juanita - 
jubilee - 
judaism - 
jugging - bugging - hugging - jagging - jigging - jogging - lugging - mugging - tugging - 
junctor - functor - 
juniper - 
jupiter - 
juridic - 
justice - justine - 
justify - 
justine - justice - 
kaddish - 
kampala - 
karachi - 
kaufman - 
keelson - 
kellogg - 
kendall - 
kennedy - 
kenneth - 
kerygma - 
kessler - 
kestrel - 
ketchup - 
ketosis - 
keyhole - 
keynote - 
keyword - 
kickoff - pickoff - 
kieffer - 
kilgore - 
killjoy - 
kimball - 
kindred - 
kinesic - kinetic - 
kinetic - kinesic - 
kingdom - 
kinglet - ringlet - singlet - 
kingpin - 
kipling - 
kissing - 
kitchen - 
kiwanis - 
kleenex - 
kneecap - 
knoweth - 
knowhow - 
knowles - 
knuckle - 
knudsen - knudson - knutsen - 
knudson - knudsen - knutson - 
knutsen - knudsen - knutson - 
knutson - knudson - knutsen - 
kolkhoz - 
koppers - 
kowloon - 
kremlin - gremlin - 
krieger - krueger - 
krishna - 
kristin - 
krueger - krieger - 
krypton - 
kumquat - 
lacerta - 
laconic - 
lacquer - 
lactate - 
lactose - 
lacunae - 
lagging - bagging - gagging - jagging - legging - logging - lugging - nagging - ragging - sagging - tagging - wagging - zagging - 
laidlaw - 
laissez - 
lamarck - 
lambert - 
laminar - 
lampoon - 
lamprey - 
langley - 
languid - 
lansing - 
lantern - 
laocoon - 
laotian - 
laplace - 
laramie - 
larceny - 
lateral - lateran - literal - 
lateran - lateral - 
lathrop - 
latrobe - 
lattice - 
launder - 
laundry - 
laurent - 
lawgive - 
lawmake - 
lawsuit - 
layette - fayette - 
lazarus - 
leadeth - 
leaflet - 
leakage - 
leander - meander - 
leather - feather - weather - 
lebanon - 
lechery - 
lectern - 
lecture - 
leeward - 
legatee - 
legging - begging - lagging - logging - lugging - pegging - 
leghorn - 
legible - 
leisure - 
lemming - 
lengthy - 
lenient - 
leonard - leopard - 
leonine - 
leopard - jeopard - leonard - 
leopold - 
leprosy - 
lesbian - 
lesotho - 
letitia - 
lettuce - 
leucine - 
lexical - 
lexicon - 
liaison - 
liberal - literal - 
liberia - siberia - 
liberty - 
library - 
librate - vibrate - 
liggett - 
lighten - tighten - 
lignite - 
lillian - 
limpkin - 
lincoln - 
lindsay - lindsey - 
lindsey - lindsay - 
lineage - linkage - 
lineman - linemen - 
linemen - lineman - 
lingual - 
linkage - lineage - 
linseed - 
lioness - 
lipread - 
liquefy - 
liqueur - 
literal - lateral - liberal - 
lithium - 
liturgy - 
lobster - mobster - 
lobular - 
lockian - 
locknut - lockout - 
lockout - locknut - lookout - 
locutor - 
logging - bogging - dogging - fogging - hogging - jogging - lagging - legging - lugging - togging - 
lombard - bombard - 
longish - 
longleg - 
lookout - lockout - 
lopseed - 
lorelei - 
loretta - 
lorinda - 
losable - posable - 
lottery - pottery - 
lourdes - 
lowdown - 
lowland - rowland - 
loyalty - royalty - 
lozenge - 
lubbock - 
lucerne - 
lucifer - 
lucille - 
luggage - 
lugging - bugging - hugging - jugging - lagging - legging - logging - mugging - tugging - 
lukemia - 
lullaby - 
lumpish - 
lunatic - 
lustful - 
lysenko - 
macabre - 
macaque - 
macbeth - 
macedon - 
machine - 
macrame - 
madeira - 
madison - 
madonna - 
maestro - 
magenta - 
maggoty - 
magnate - 
magneto - 
magnify - 
mahoney - maloney - 
mailbox - 
mailman - mailmen - 
mailmen - mailman - 
majesty - 
malabar - 
malaise - 
malaria - 
malcolm - 
maldive - 
mallard - ballard - millard - 
mallory - 
maloney - mahoney - 
malraux - 
maltese - maltose - 
maltose - maltese - 
mammoth - 
managua - 
manatee - 
mandate - 
mandrel - 
manfred - 
manhole - 
manhood - 
manikin - 
mankind - 
mansion - 
mantrap - 
manumit - 
marceau - 
margery - 
marilyn - 
marimba - 
marital - 
marjory - 
markham - 
marlene - darlene - 
marlowe - 
marquee - 
marquis - 
married - 
marshal - 
martial - martian - partial - 
martian - martial - 
martini - 
mascara - cascara - 
masonic - 
masonry - 
massage - message - passage - 
masseur - 
massive - missive - passive - 
mastery - mystery - 
mastiff - 
mathews - 
mathias - 
mathieu - 
matilda - 
matinal - 
matinee - 
matisse - 
matroid - 
matthew - 
mattock - 
mattson - 
maudlin - 
maureen - 
maurice - maurine - 
maurine - maurice - 
mawkish - 
maximal - 
maximum - 
maxwell - 
mayfair - 
maynard - 
mayoral - 
mazurka - 
mbabane - 
mcadams - 
mcbride - 
mccarty - 
mcclain - 
mcclure - 
mcelroy - 
mcgowan - 
mcgrath - 
mcguire - 
mckenna - 
mcmahon - 
mcnally - 
mcnulty - 
meander - leander - 
measure - 
medford - bedford - 
mediate - 
megabit - 
megaton - 
meiosis - 
melange - melanie - 
melanie - melange - melanin - 
melanin - melanie - 
melcher - 
melinda - 
melissa - 
melodic - 
memento - 
memphis - 
menfolk - 
mention - 
menzies - 
mercury - 
mermaid - 
merriam - 
merrill - morrill - 
merritt - 
message - massage - 
messiah - 
metcalf - 
methane - 
methuen - 
metzler - 
mexican - 
miasmal - 
michael - 
michele - 
midband - midland - 
midland - midband - 
midmorn - 
midspan - 
midterm - 
midweek - 
midwest - 
midwife - 
migrant - 
migrate - 
mildred - 
mileage - 
militia - 
millard - mallard - willard - 
million - billion - mullion - 
mimesis - 
mimetic - 
minaret - 
mindful - 
mineral - 
minerva - 
minimal - minimax - 
minimax - minimal - 
minimum - 
minuend - 
miocene - 
miracle - 
miranda - 
missile - fissile - missive - 
mission - fission - 
missive - massive - missile - 
mitosis - 
mixture - fixture - 
mobster - lobster - monster - 
mockery - 
modesto - modesty - 
modesty - modesto - 
modicum - 
modular - nodular - 
modulus - 
moisten - 
moliere - 
mollify - 
mollusk - 
momenta - 
monadic - 
monarch - 
monitor - 
monkish - 
monomer - 
monsoon - 
monster - mobster - 
montage - 
montana - 
moonlit - 
moorish - boorish - 
moraine - 
moravia - 
moresby - 
morocco - 
morrill - merrill - 
mortify - fortify - 
mortise - 
moulton - 
mueller - 
muezzin - 
mugging - bugging - hugging - jugging - lugging - tugging - 
mulatto - 
mullein - 
mullion - million - 
mumford - rumford - 
mundane - 
muscovy - 
muskrat - 
mustang - 
mustard - bustard - 
mustn't - 
mutagen - 
mutatis - 
mycenae - 
myeline - 
myeloid - 
mynheer - 
mystery - mastery - 
mystify - 
nabisco - 
nagging - bagging - gagging - jagging - lagging - ragging - sagging - tagging - wagging - zagging - 
nairobi - 
naivete - 
nanette - 
nanking - 
narrate - 
nascent - 
natalie - 
natchez - 
natural - 
naughty - haughty - 
nauseum - 
nearest - 
nebulae - nebular - 
nebular - nebulae - 
necktie - 
nectary - 
needful - 
needham - 
needn't - 
neglect - 
negroes - 
negroid - 
neither - 
nemesis - 
neonate - 
neptune - 
nervous - 
network - 
neumann - 
neutral - 
neutron - 
newbold - 
newborn - 
newline - 
newport - 
newsboy - 
newsman - newsmen - 
newsmen - newsman - 
niagara - 
nichols - 
nicosia - 
nielsen - nielson - 
nielson - nielsen - 
nigeria - 
nikolai - 
nineveh - 
niobium - 
nirvana - 
nitpick - 
nitrate - citrate - nitrite - titrate - 
nitride - nitrite - 
nitrite - nitrate - nitride - 
nitrous - 
nodular - modular - 
nomadic - 
nominal - 
nominee - 
norfolk - 
norwalk - 
norwich - 
nosebag - 
nostril - 
nothing - 
nourish - 
nouveau - 
novelty - 
nowaday - 
nowhere - 
noxious - 
nuclear - 
nucleic - 
nucleus - 
nuclide - 
nullify - 
numeral - 
numeric - 
nuptial - 
nursery - 
nurture - 
nyquist - 
o'brien - 
o'clock - 
o'dwyer - 
o'leary - 
o'neill - 
oakland - 
oakwood - 
oatmeal - 
obelisk - 
oberlin - 
oblique - 
obscene - 
obscure - 
obsequy - 
observe - 
obtrude - 
obverse - 
obviate - 
obvious - 
ocarina - 
occlude - 
oceania - oceanic - 
oceanic - oceania - 
octagon - 
octavia - 
october - 
octopus - 
odorous - 
odyssey - 
oedipal - 
oedipus - 
oersted - 
offbeat - 
offhand - 
officio - 
offload - 
oilseed - 
okinawa - 
oldster - 
olivine - 
olympia - olympic - 
olympic - olympia - 
omicron - 
ominous - 
omitted - emitted - 
omnibus - 
onerous - 
oneself - 
onetime - 
ongoing - 
ontario - 
opacity - 
operand - operant - 
operant - operand - 
operate - 
opinion - 
opossum - 
oppress - 
optimal - 
optimum - 
opulent - 
oratory - 
orbital - 
orchard - 
orderly - 
ordinal - 
oregano - 
orestes - 
organdy - 
organic - 
orifice - 
orinoco - 
orlando - 
orleans - 
orpheus - 
orthant - 
orville - 
osborne - 
oshkosh - 
osmosis - 
osmotic - 
osseous - 
ostrich - 
othello - 
ottoman - 
oviform - 
oxalate - 
oxidant - 
oxidate - 
oxonian - 
pacific - 
package - 
packard - 
paddock - haddock - padlock - 
padlock - paddock - 
pageant - 
painful - gainful - 
palazzi - palazzo - 
palazzo - palazzi - 
palermo - 
palette - 
palfrey - 
palmate - 
palmyra - 
palomar - 
panacea - 
pancake - 
pandora - 
panicky - 
panicle - sanicle - 
panoply - 
panther - 
papoose - 
paprika - 
papyrus - 
paradox - 
paragon - 
paramus - 
parapet - 
parasol - 
parboil - 
parkish - parrish - 
parkway - 
parolee - 
parquet - 
parrish - parkish - 
parsley - 
parsnip - 
parsons - 
partake - 
partial - martial - 
partner - 
partook - 
parvenu - 
paschal - 
passage - massage - 
passaic - 
passion - 
passive - massive - 
pasteup - pasteur - 
pasteur - pasteup - 
pastime - 
pasture - posture - 
pathway - 
patient - 
patrice - patrick - 
patrick - patrice - 
patriot - 
pattern - 
paucity - 
pauline - 
paulsen - paulson - 
paulson - paulsen - 
paunchy - 
pavanne - 
payroll - 
peabody - 
peacock - 
peafowl - 
pearson - 
peasant - 
peccary - 
pegasus - 
pegging - begging - legging - pigging - 
pelican - 
penalty - 
penance - 
penates - 
pendant - pennant - 
penguin - 
pennant - pendant - 
penrose - 
pension - tension - 
pensive - 
pentane - 
peppery - 
pepsico - 
peptide - 
percent - percept - 
percept - percent - 
perfect - 
perfidy - 
perform - 
perfume - perfuse - 
perfuse - perfume - 
perhaps - 
perilla - 
perjure - perjury - 
perjury - perjure - 
perkins - 
permian - persian - 
permute - 
perplex - 
perseus - 
persian - permian - 
persist - 
persona - 
pertain - certain - 
perturb - 
perusal - 
pervade - 
pervert - 
petrify - 
petunia - 
peugeot - 
pfennig - 
phalanx - 
phantom - 
pharaoh - 
phillip - 
phoenix - 
phoneme - 
phyllis - 
pianist - 
picasso - 
piccolo - 
pickaxe - 
pickett - 
pickman - hickman - 
pickoff - kickoff - 
picture - 
pierson - 
pietism - 
pigging - digging - gigging - jigging - pegging - rigging - wigging - zigging - 
piggish - 
pigment - 
pigroot - 
pigskin - 
pigtail - pintail - 
pilgrim - 
pillage - village - 
pillory - 
pinball - 
pinhead - 
pinhole - 
pinkish - 
pinnate - 
pintail - pigtail - 
pinxter - 
pioneer - 
pipette - 
piquant - 
piraeus - 
pirogue - 
pistole - 
piteous - 
pitfall - 
pitiful - 
pivotal - 
placate - 
placebo - 
plagued - plaguey - 
plaguey - plagued - 
plasmon - 
plaster - 
plastic - elastic - 
plateau - 
platoon - 
playboy - 
playful - 
playoff - 
plebian - 
plenary - 
pleural - 
pliable - 
pliancy - 
plowman - 
plumage - 
plummet - 
plunder - blunder - 
plywood - 
poisson - 
polaris - 
polaron - 
polecat - 
polemic - 
politic - 
pollard - collard - 
pollock - 
pollute - 
polygon - 
polymer - 
pompano - 
pompeii - 
pompous - 
pontiac - 
pontiff - 
popcorn - 
popular - 
porcine - 
portage - postage - 
portend - portent - 
portent - portend - 
portico - 
portray - 
posable - losable - potable - 
possess - 
postage - hostage - portage - 
postfix - 
postman - postmen - 
postmen - postman - 
posture - pasture - 
postwar - 
potable - posable - 
potboil - 
pothole - 
potomac - 
pottery - lottery - 
poultry - 
poverty - 
powdery - 
praecox - 
prairie - 
preachy - 
precede - 
precept - 
precess - process - 
precise - premise - 
predict - 
preempt - 
preface - 
prefect - 
prelude - 
premier - 
premise - precise - promise - 
premium - 
prepare - 
presage - 
present - prevent - 
preside - 
preston - 
presume - 
pretend - 
pretext - 
prevail - 
prevent - present - 
preview - 
prickle - trickle - 
primacy - primary - privacy - 
primary - primacy - 
primate - private - 
privacy - primacy - 
private - primate - 
probate - prolate - prorate - 
probity - 
problem - 
proceed - 
process - precess - profess - prowess - 
procter - proctor - 
proctor - procter - 
procure - 
procyon - 
prodigy - 
produce - product - 
product - produce - 
profane - propane - 
profess - process - prowess - 
proffer - 
profile - 
profuse - 
progeny - 
project - protect - 
prolate - probate - prorate - 
proline - 
prolong - 
promise - premise - 
promote - 
pronoun - 
propane - profane - 
prophet - 
propose - 
prorate - probate - prolate - 
prosaic - 
prosody - 
prosper - 
protean - protein - 
protect - project - protest - 
protege - 
protein - protean - 
protest - protect - 
proverb - 
provide - 
proviso - 
provoke - 
provost - 
prowess - process - profess - 
prudent - 
prussia - 
psalter - 
psychic - 
ptolemy - 
puberty - 
publish - 
puccini - 
puckish - 
pudding - 
puerile - 
puffery - 
pulaski - 
pullman - 
pulsate - 
pumpkin - 
pungent - 
punster - 
purcell - 
puritan - 
purloin - 
purport - 
purpose - 
pursuer - 
pursuit - 
purview - 
pushout - 
pushpin - 
pyhrric - 
pyramid - 
pyrrhic - 
quadric - 
qualify - quality - 
quality - qualify - 
quantum - 
quarrel - 
quartet - 
quartic - 
quetzal - 
quibble - 
quicken - 
quickie - 
quietus - quintus - 
quinine - 
quintet - 
quintic - 
quintus - quietus - 
quixote - 
quizzes - 
quonset - 
raccoon - 
raceway - 
rackety - rickety - 
radiant - 
radiate - 
radical - 
radices - 
raffish - 
ragging - bagging - gagging - jagging - lagging - nagging - rigging - sagging - tagging - wagging - zagging - 
ragweed - 
railway - 
rainbow - 
raleigh - 
ralston - 
rampage - 
rampant - rampart - 
rampart - rampant - 
randall - 
rangoon - 
rankine - 
ransack - 
raphael - 
rapport - 
rapture - capture - rupture - 
raritan - 
rattail - cattail - 
raucous - 
rawhide - 
raymond - 
readout - 
realtor - 
rebecca - 
receipt - 
receive - deceive - 
recital - 
recline - decline - 
recluse - 
recruit - 
rectify - 
rectory - 
redbird - 
redcoat - 
reddish - 
redhead - 
redmond - 
redneck - 
redound - 
redpoll - 
redwood - 
referee - 
reflect - deflect - 
refract - retract - 
refrain - 
refugee - 
refusal - 
regalia - 
regatta - 
regimen - 
regress - 
regular - 
regulus - 
rejoice - 
relayed - 
reliant - 
relieve - believe - 
remnant - 
remorse - 
removal - 
renault - 
renewal - 
replete - deplete - 
replica - 
reprise - 
reptile - 
request - bequest - 
require - 
reredos - 
rescind - 
reserve - deserve - 
residue - 
resolve - revolve - 
respect - 
respire - respite - 
respite - despite - respire - 
respond - despond - 
restful - 
restive - festive - 
retinal - 
retinue - 
retiree - 
retract - detract - refract - 
reuters - 
revelry - 
revenge - revenue - 
revenue - revenge - 
reverie - reverse - 
reverse - reverie - 
revisal - revival - 
revival - revisal - 
revolve - devolve - resolve - 
revving - 
rhenish - 
rhenium - 
rhodium - 
rhombic - 
rhombus - 
rhubarb - 
richard - 
richter - 
rickets - rickety - 
rickety - rackety - rickets - 
ridgway - 
riemann - 
rigging - digging - gigging - jigging - pigging - ragging - wigging - zigging - 
ringlet - kinglet - singlet - 
riordan - 
riotous - 
risible - visible - 
ritchie - 
rivalry - 
riviera - 
rivulet - 
roadbed - 
roadway - 
robbery - rubbery - 
robbins - 
roberta - roberto - roberts - 
roberto - roberta - roberts - 
roberts - roberta - roberto - 
robotic - 
rockies - 
rodgers - 
roebuck - 
roister - 
rollick - 
rollins - collins - 
romance - 
romania - rumania - 
romulus - 
rooftop - 
roomful - 
rosalie - 
rosebud - 
rosetta - rosette - 
rosette - rosetta - 
rostrum - 
rotunda - 
roughen - 
roundup - 
routine - 
rowboat - towboat - 
rowland - lowland - 
roxbury - 
royalty - loyalty - 
rubbery - robbery - 
rubbish - 
rubdown - rundown - 
rudolph - 
rudyard - 
ruffian - 
ruinous - 
rumania - romania - 
rumford - mumford - 
rummage - 
runaway - 
rundown - rubdown - sundown - 
runneth - 
rupture - rapture - 
russell - 
russula - 
rutgers - 
rutland - 
rydberg - 
sabbath - 
saccade - 
saffron - 
sagging - bagging - gagging - jagging - lagging - nagging - ragging - tagging - wagging - zagging - 
saginaw - 
saguaro - 
salerno - 
salient - sapient - 
salsify - falsify - 
salvage - 
samovar - 
sampson - simpson - 
sanborn - 
sanchez - 
sandbag - handbag - 
sanders - 
sandman - 
sanford - hanford - 
sanicle - panicle - 
sapiens - sapient - 
sapient - salient - sapiens - 
sapling - 
saracen - 
sarcasm - 
sarcoma - 
sardine - 
sargent - 
satanic - 
satiate - 
satiety - 
satiric - 
satisfy - 
sausage - 
saviour - 
sawdust - 
sawfish - 
sawmill - 
scallop - 
scandal - 
scapula - 
scarify - 
scarlet - starlet - 
scarves - 
scenery - 
sceptic - skeptic - 
schafer - 
schantz - 
scherzo - 
schlitz - 
schloss - 
schmidt - schmitt - 
schmitt - schmidt - 
scholar - 
schultz - 
science - 
scissor - 
scorpio - 
scourge - 
scratch - 
scrawny - 
screech - 
scripps - 
scriven - striven - 
scrooge - 
scrotum - 
scruple - 
scuffle - shuffle - snuffle - souffle - 
sculpin - 
scuttle - shuttle - 
scythia - 
seafare - 
seafood - 
seagram - 
seagull - 
sealant - 
seaport - 
seaside - 
seattle - 
seaward - 
seaweed - 
seclude - 
secrecy - 
secrete - 
section - suction - 
secular - 
seeable - 
seedbed - 
seepage - 
seethed - teethed - 
segment - 
segovia - 
segundo - 
seismic - 
seizure - 
selfish - 
selkirk - 
sellout - 
seltzer - 
seminal - seminar - 
seminar - seminal - 
semitic - 
senegal - 
sensate - 
sensory - 
sensual - 
septate - 
sequent - 
sequoia - 
serfdom - 
seriate - striate - 
serious - 
serpens - serpent - 
serpent - serpens - 
servant - 
service - servile - 
servile - service - 
session - cession - 
setback - 
seventh - seventy - 
seventy - seventh - 
several - 
seville - 
sextans - 
seymour - 
shackle - 
shadowy - 
shaffer - 
shallot - shallow - 
shallow - shallot - swallow - 
shamble - 
shampoo - 
shannon - 
shapiro - 
sharpen - 
shatter - smatter - 
shawnee - 
shearer - 
sheathe - 
sheehan - 
sheldon - shelton - 
shelley - 
shelter - swelter - 
shelton - sheldon - 
shepard - 
sherbet - 
sheriff - 
sherman - 
sherwin - 
shields - 
shingle - 
shiplap - 
shipley - shirley - 
shipman - shipmen - 
shipmen - shipman - 
shirley - shipley - 
shivery - slivery - 
shoofly - 
shorten - 
shotgun - 
showman - showmen - 
showmen - showman - 
shrilly - 
shrivel - 
shudder - 
shuffle - scuffle - snuffle - souffle - 
shulman - 
shutoff - 
shutout - 
shuttle - scuttle - 
shylock - 
siamese - 
siberia - liberia - 
sibling - 
sickish - 
sidearm - 
sidecar - 
sideman - sidemen - 
sidemen - sideman - 
sideway - 
siemens - 
sigmund - 
signify - dignify - 
signora - 
silicic - 
silicon - 
silvery - 
similar - 
simmons - 
simplex - 
simpson - sampson - 
sincere - 
singlet - kinglet - ringlet - 
sinuous - 
sistine - 
situate - 
sixfold - 
sixteen - 
skeptic - sceptic - 
sketchy - 
skillet - 
skittle - spittle - 
skyhook - 
skyjack - 
skylark - 
skyline - 
skyward - 
skywave - 
slacken - blacken - 
sladang - 
slander - slender - 
slavery - slivery - 
slavish - 
sleight - 
slender - slander - 
slither - 
slivery - shivery - slavery - 
slumber - 
smaller - smalley - 
smalley - smaller - 
smatter - shatter - 
smitten - 
smolder - 
smother - 
smucker - 
smuggle - snuggle - 
sniffle - sniffly - snuffle - 
sniffly - sniffle - snuffly - 
snifter - 
snigger - 
snippet - 
snorkel - 
snuffer - 
snuffle - scuffle - shuffle - sniffle - snuffly - souffle - 
snuffly - sniffly - snuffle - 
snuggle - smuggle - snuggly - 
snuggly - snuggle - 
soapsud - 
societe - society - 
society - societe - 
sockeye - cockeye - 
soignee - 
sojourn - 
soldier - 
solicit - 
solidus - 
soliton - 
solomon - 
soluble - voluble - 
solvate - 
solvent - 
somatic - 
someday - 
somehow - 
someone - 
songbag - 
songful - 
sophism - 
soprano - 
sorcery - 
sorghum - 
souffle - scuffle - shuffle - snuffle - 
soulful - 
soutane - 
southey - 
sovkhoz - 
soybean - 
spangle - 
spaniel - 
spanish - 
sparkle - 
sparrow - 
spartan - 
spastic - 
spatial - 
spatlum - 
spatula - 
special - 
species - 
specify - 
speckle - 
spector - 
spectra - 
speedup - 
spencer - 
spheric - 
spidery - 
spiegel - 
spinach - 
spindle - swindle - 
spinoff - 
spittle - skittle - 
splashy - 
splayed - 
splotch - 
splurge - 
spokane - 
sponsor - 
sprague - 
springe - springy - syringe - 
springy - springe - stringy - 
spumoni - 
sputnik - 
sputter - stutter - 
squalid - 
squashy - squishy - 
squeaky - 
squeeze - 
squelch - 
squirmy - 
squishy - squashy - 
stabile - 
stadium - 
stamina - 
stammer - 
standby - 
stanley - 
stannic - 
stanton - 
starchy - 
stardom - 
starkey - 
starlet - scarlet - 
startle - 
startup - 
statler - 
stature - statute - 
statute - stature - 
staunch - 
stealth - 
stearic - 
stearns - 
steepen - 
steeple - 
steiner - 
stellar - 
stencil - 
stephen - 
stepson - stetson - 
sterile - 
sternal - eternal - 
sternum - 
steroid - 
stetson - stepson - 
steuben - 
stevens - 
steward - stewart - 
stewart - steward - 
stickle - 
stiffen - 
stimuli - 
stipend - 
stipple - 
stirrup - 
stomach - 
stopgap - 
storage - stowage - 
stowage - storage - 
strange - 
stratum - 
strauss - 
stretch - 
striate - seriate - 
stringy - springy - 
striven - scriven - 
strophe - 
stubble - stumble - 
student - 
stumble - stubble - 
stupefy - 
stutter - sputter - 
stygian - 
stylish - 
styrene - 
subject - 
subsidy - 
subsist - 
subsume - 
subvert - 
succeed - 
success - 
succumb - 
sucrose - 
suction - auction - section - 
suffice - 
suffolk - 
suffuse - 
suggest - 
suicide - 
sulfate - sulfite - 
sulfide - sulfite - 
sulfite - sulfate - sulfide - 
sulphur - 
sumatra - 
sumeria - 
summand - 
summary - 
summate - 
summers - 
sunbeam - 
sunburn - 
sundial - 
sundown - rundown - 
sunfish - 
sunrise - 
sunspot - 
support - 
suppose - 
supreme - 
surface - 
surfeit - 
surgeon - burgeon - 
surgery - 
surmise - 
surname - 
surpass - 
surplus - 
surreal - 
surtout - 
survive - 
susanne - suzanne - 
suspect - 
suspend - 
sustain - 
suzanne - susanne - 
swahili - 
swallow - shallow - 
swanson - swenson - 
swarthy - 
sweater - swelter - 
swedish - 
sweeney - 
sweeten - 
swelter - shelter - sweater - 
swenson - swanson - 
swindle - dwindle - spindle - 
switzer - 
swizzle - 
swollen - 
syenite - 
syllabi - 
symptom - 
synapse - 
synergy - 
synonym - 
syringa - syringe - 
syringe - springe - syringa - 
szilard - 
tableau - 
tabloid - 
tabular - tubular - 
tacitus - 
tactful - 
tactile - 
tactual - factual - 
tadpole - 
taffeta - 
tagging - bagging - gagging - jagging - lagging - nagging - ragging - sagging - togging - tugging - wagging - zagging - 
takeoff - 
tallyho - 
tammany - 
tanager - 
tangent - 
tantrum - 
tarbell - barbell - 
tarnish - varnish - 
tartary - 
tasting - 
tattler - 
taverna - 
taxicab - 
taxiway - 
teacart - 
tearful - fearful - 
technic - 
tedious - 
teenage - 
teethed - seethed - 
teheran - 
tektite - 
teleost - 
tempera - 
tempest - 
tenable - 
tenfold - 
tenneco - 
tensile - 
tension - pension - 
tenspot - 
tenuous - 
terbium - 
termini - 
termite - hermite - 
ternary - 
terrace - 
terrain - 
terrier - 
terrify - 
testate - 
testbed - 
testify - 
tetanus - 
textile - 
textron - 
textual - 
texture - 
that'll - 
theorem - 
therapy - 
there'd - where'd - 
thereat - 
thereby - whereby - 
therein - thereon - wherein - 
thereof - thereon - whereof - 
thereon - therein - thereof - whereon - 
theresa - 
thereto - 
thermal - 
theseus - 
they'll - 
they're - they've - 
they've - they're - 
thiamin - 
thicken - chicken - thicket - 
thicket - thicken - 
thieves - 
thimble - 
thirsty - 
this'll - 
thistle - whistle - 
thither - whither - 
thomson - 
thoreau - 
thorium - 
thought - 
thrifty - 
throaty - 
through - 
thruway - 
thuggee - 
thulium - 
thunder - 
thurman - 
thymine - 
thyroid - 
tibetan - 
tiffany - 
tighten - lighten - 
tigress - digress - 
timeout - 
timothy - 
tinfoil - 
tintype - 
titanic - 
titrate - citrate - nitrate - 
titular - 
tobacco - 
toccata - 
toenail - 
togging - bogging - dogging - fogging - hogging - jogging - logging - tagging - tugging - 
tokamak - 
tolstoy - 
toluene - 
tonight - 
tonnage - 
toolkit - 
topcoat - 
topmost - 
topsoil - 
tornado - 
toronto - 
torpedo - 
torrent - 
torsion - 
torture - 
toshiba - 
totemic - 
towboat - rowboat - 
towhead - 
tracery - 
trachea - 
tractor - traitor - 
traffic - 
tragedy - 
trainee - 
traipse - 
traitor - tractor - 
trammel - 
trample - 
tramway - 
transit - 
transom - 
travail - 
treadle - 
treason - 
treetop - 
trefoil - 
trellis - 
tremble - 
trenton - 
trestle - wrestle - 
triable - friable - 
trianon - 
tribune - tribute - 
tribute - tribune - 
trickle - prickle - 
trident - 
trigram - 
trilogy - 
trinity - 
trinket - 
triplet - triplex - 
triplex - triplet - 
tripoli - 
tristan - 
tritium - trivium - 
triumph - 
trivial - 
trivium - tritium - 
trodden - 
trolley - 
trollop - 
trophic - 
trouble - 
trounce - 
trouser - 
truancy - 
trumpet - 
trundle - 
trustee - 
trypsin - 
tsarina - 
tsunami - 
tubular - tabular - 
tuesday - 
tugging - bugging - hugging - jugging - lugging - mugging - tagging - togging - 
tuition - 
tumbrel - 
tuneful - 
tunisia - 
turbine - 
turkish - 
turmoil - 
turnery - 
turnkey - 
turnoff - 
turnout - burnout - 
tuscany - 
twaddle - twiddle - 
twelfth - 
twiddle - twaddle - 
twinkle - 
twitchy - 
twofold - 
twombly - 
twosome - 
tyndall - 
typeset - 
typhoid - 
typhoon - 
tyranny - 
ukraine - 
ulysses - 
umbrage - 
uncouth - 
unction - 
unicorn - 
uniform - 
uniplex - 
unitary - 
unkempt - 
upbraid - 
upbring - 
updraft - 
upgrade - 
upraise - 
upright - 
upriver - 
upsilon - epsilon - 
upslope - 
upstair - 
upstand - 
upstart - 
upstate - 
upsurge - 
upswing - 
uptrend - 
uranium - cranium - 
urethra - 
urgency - 
urinary - 
uruguay - 
utensil - 
uterine - 
utility - 
utopian - 
utrecht - 
vaccine - 
vacuole - 
vacuous - 
vaginal - 
vagrant - 
valerie - 
valiant - variant - 
valuate - 
vampire - 
vanilla - 
vantage - vintage - 
variant - valiant - 
variate - 
variety - 
various - 
varnish - tarnish - 
varsity - 
vasquez - 
vatican - 
vaudois - 
vaughan - 
vehicle - 
velours - 
velvety - 
venison - 
venture - denture - venturi - 
venturi - venture - 
veranda - 
verbena - 
verbose - 
verdant - 
verdict - 
veridic - 
vermeil - 
vermont - 
vernier - 
version - 
vertigo - 
vestige - 
veteran - 
viaduct - 
vibrant - 
vibrate - librate - vibrato - 
vibrato - vibrate - 
viceroy - 
vicinal - 
vicious - 
victory - 
victual - virtual - 
vietnam - 
village - pillage - 
villain - villein - 
villein - villain - 
vincent - 
vinegar - 
vintage - vantage - 
vintner - 
violate - 
violent - 
virgule - 
virtual - victual - 
viscera - 
viscous - 
visible - risible - 
visitor - 
vitamin - 
vitiate - 
vitrify - 
vitriol - 
vivaldi - 
vocable - 
vocalic - 
volcano - 
voltage - 
voltaic - 
voluble - soluble - 
vulpine - 
vulture - culture - 
wagging - bagging - gagging - jagging - lagging - nagging - ragging - sagging - tagging - wigging - zagging - 
wakeful - 
walcott - wolcott - 
waldorf - 
waldron - 
walkout - 
walkway - 
wallaby - 
wallace - 
walpole - 
walters - 
waltham - 
warfare - carfare - 
warhead - 
warlike - 
warmish - 
warrant - 
warrior - 
wartime - 
warwick - 
washout - 
waspish - 
wastage - wattage - 
wastrel - 
watkins - 
wattage - wastage - 
wavelet - 
waxwork - 
waybill - 
waylaid - 
wayside - 
wayward - hayward - 
wealthy - healthy - 
wearied - 
weather - feather - leather - werther - 
webster - 
wedlock - 
weekday - 
weekend - 
weighty - 
welcome - 
welfare - 
wendell - 
weren't - 
werther - weather - 
western - 
wetland - 
wharton - 
wharves - 
what're - 
whatley - 
whatnot - 
wheedle - 
wheller - 
where'd - there'd - 
whereas - 
whereby - thereby - 
wherein - therein - whereon - 
whereof - thereof - whereon - 
whereon - thereon - wherein - whereof - 
whether - whither - 
whimper - whisper - 
whimsey - 
whimsic - 
whippet - 
whipple - 
whipsaw - 
whisper - whimper - 
whistle - thistle - whittle - 
whither - thither - whether - 
whitman - 
whitney - 
whittle - whistle - 
whoever - 
wichita - 
widgeon - 
wigging - digging - gigging - jigging - pigging - rigging - wagging - wiggins - zigging - 
wiggins - higgins - wigging - 
wigmake - 
wildcat - 
wilfred - 
wilhelm - 
wilkins - 
willard - millard - 
willful - 
william - 
willowy - 
windbag - 
windsor - 
wingman - wingmen - 
wingmen - wingman - 
wingtip - 
winslow - 
winsome - 
winston - 
winters - 
wireman - fireman - wiremen - 
wiremen - firemen - wireman - 
wiretap - 
wishful - wistful - 
wistful - wishful - 
without - 
witness - 
wolcott - walcott - 
wolfish - 
woodard - 
woodcut - 
woodhen - 
woodlot - 
woodrow - 
wooster - 
workday - 
workman - workmen - 
workmen - workman - 
workout - 
worship - 
wrangle - 
wreathe - breathe - 
wrestle - trestle - 
wriggle - 
wrigley - 
wrinkle - crinkle - 
writeup - 
written - britten - 
wrongdo - 
wrought - brought - drought - 
wyoming - 
yankton - 
yaounde - 
yapping - yipping - 
yardage - 
yeshiva - 
yiddish - 
yipping - yapping - 
yoghurt - 
yonkers - 
yttrium - 
yucatan - 
zachary - 
zagging - bagging - gagging - jagging - lagging - nagging - ragging - sagging - tagging - wagging - zigging - 
zealand - 
zealous - jealous - 
ziegler - 
zigging - digging - gigging - jigging - pigging - rigging - wigging - zagging - 
zionism - 
zoology - 
abdicate - 
aberdeen - 
aberrant - 
aberrate - 
abetting - abutting - 
abeyance - 
abhorred - 
ablution - 
abnormal - 
aborning - 
abramson - 
abrasion - 
abrasive - 
abrogate - arrogate - 
abscissa - 
absentee - 
absentia - 
absinthe - 
absolute - 
abstract - 
abstruse - 
abundant - 
abusable - 
abutting - abetting - 
academia - academic - 
academic - academia - 
acanthus - 
acapulco - 
acceptor - 
accident - occident - 
accolade - 
accredit - 
accuracy - 
accurate - 
accustom - 
acerbity - 
achilles - 
ackerman - 
acoustic - 
acquaint - 
acrimony - agrimony - 
acrobacy - 
acrylate - 
actinide - 
actinium - 
activate - 
activism - 
adaptive - adoptive - 
addendum - 
addition - audition - 
additive - 
adelaide - 
adequacy - 
adequate - 
adherent - 
adhesion - 
adhesive - 
adjacent - 
adjutant - 
admitted - 
admonish - 
adolphus - 
adoption - 
adoptive - adaptive - 
adriatic - 
adrienne - 
adultery - 
advisory - 
advocacy - 
advocate - 
aerogene - 
aesthete - 
afferent - efferent - 
affiance - 
affinity - 
affluent - effluent - 
afforest - 
aggrieve - 
agnostic - 
agrarian - 
agreeing - 
agricola - 
agrimony - acrimony - 
airborne - 
aircraft - 
airedale - 
airfield - 
airframe - 
airplane - 
airspace - 
airspeed - 
airstrip - 
airtight - 
alacrity - 
albacore - 
albanian - 
alberich - 
albrecht - 
albright - 
alcestis - 
aldehyde - 
alderman - aldermen - alterman - 
aldermen - alderman - 
alfresco - 
algerian - 
alginate - 
alhambra - 
alienate - 
alistair - 
alizarin - 
alkaline - 
alkaloid - 
allegate - 
allegory - 
allemand - 
allergic - 
alleyway - 
alliance - 
allocate - 
allotted - 
allspice - 
allstate - 
allusion - illusion - 
allusive - illusive - 
alluvial - 
alluvium - 
almagest - 
almighty - 
alphabet - 
alphonse - 
alsatian - 
alterate - 
alterman - alderman - 
although - 
altitude - aptitude - attitude - 
altruism - altruist - 
altruist - altruism - 
alveolar - 
alveolus - 
amaranth - 
amarillo - 
ambiance - 
ambition - 
ambrosia - 
ambulant - 
ambulate - 
american - 
amethyst - 
amicable - 
ammerman - 
ammoniac - 
ammonium - 
amperage - 
amputate - 
anaconda - 
anaglyph - 
analogue - 
analyses - analysis - 
analysis - analyses - 
analytic - 
anarchic - 
anathema - 
anatomic - 
ancestor - 
ancestry - 
andersen - anderson - 
anderson - andersen - 
andesine - andesite - 
andesite - andesine - 
anecdote - 
angelica - angelina - 
angelina - angelica - angeline - 
angeline - angelina - 
anglican - 
angstrom - 
anheuser - 
annotate - 
announce - 
annulled - 
anorexia - 
anorthic - 
anteater - 
antedate - 
antelope - 
antennae - 
anterior - interior - 
anteroom - 
antietam - 
antigone - 
antimony - 
antipode - 
anyplace - 
anything - 
anywhere - 
aperture - 
aphelion - 
aphorism - 
apologia - 
apostate - 
apothegm - 
appanage - 
apparent - 
appendix - 
appetite - 
applause - 
appleton - 
applique - 
appointe - 
apposite - opposite - 
appraise - 
approach - 
approval - 
aptitude - altitude - attitude - 
aquarium - aquarius - 
aquarius - aquarium - 
aqueduct - 
arachnid - 
arboreal - 
archaism - 
archfool - 
archival - 
arcturus - 
areawide - 
arequipa - 
arginine - 
argonaut - 
argument - 
arianism - 
arkansan - arkansas - 
arkansas - arkansan - 
armament - 
armature - 
armchair - 
armenian - 
aromatic - 
arpeggio - 
arrogant - 
arrogate - abrogate - 
arsenate - 
arsenide - 
arterial - 
artifact - 
artifice - 
artistry - 
asbestos - 
asilomar - 
aspartic - 
asperity - 
aspheric - 
aspirant - 
aspirate - 
assassin - 
assemble - 
assessor - 
assignee - 
assonant - 
astatine - 
asterisk - 
asteroid - 
astigmat - 
astonish - 
asuncion - 
atalanta - 
atchison - 
athenian - 
athletic - 
atkinson - 
atlantes - atlantis - 
atlantic - atlantis - 
atlantis - atlantes - atlantic - 
atrocity - 
atrophic - 
attendee - 
attitude - altitude - aptitude - 
attorney - 
auckland - 
audacity - 
audience - 
audition - addition - 
auditory - 
auerbach - 
augustan - 
augustus - 
aurelius - 
auspices - 
autistic - 
autocrat - 
automata - automate - 
automate - automata - 
autonomy - 
autumnal - 
aventine - 
averring - 
aversion - 
avertive - 
aviatrix - 
avogadro - 
axiology - 
babyhood - 
baccarat - 
bachelor - 
bacillus - 
backbone - 
backdrop - 
backfill - 
backhand - 
backlash - 
backpack - 
backside - 
backstop - 
backward - backyard - 
backwood - 
backyard - backward - 
bacteria - 
badinage - 
bakelite - 
baldpate - 
balinese - 
balletic - 
ballroom - 
ballyhoo - 
bandpass - 
bandstop - 
banister - canister - 
bankrupt - 
baptiste - 
barbados - 
barbaric - 
barbecue - 
barberry - bayberry - 
barbital - 
barefoot - 
baritone - 
barnabas - 
barnacle - 
barnhard - barnyard - bernhard - 
barnyard - barnhard - 
baroness - 
baronial - 
barrette - 
bartlett - 
baseball - 
baseband - 
baseline - 
basilisk - 
bassinet - 
basswood - 
bathrobe - 
bathroom - 
bathurst - 
battelle - 
bayberry - barberry - 
bayesian - 
bayreuth - 
beatific - 
beatrice - 
beaumont - 
beautify - 
bedazzle - 
bedimmed - 
bedstraw - 
beebread - 
befallen - 
befuddle - 
beginner - 
begotten - 
begrudge - 
belgrade - 
belittle - 
bemadden - 
benedict - benedikt - 
benedikt - benedict - 
benefice - 
benjamin - 
bequeath - 
bergamot - 
bergland - berglund - 
berglund - bergland - 
beribbon - 
beriberi - 
berkeley - 
bernardo - 
bernhard - barnhard - 
berniece - 
bertrand - 
besmirch - 
besotted - 
bessemer - 
bestowal - 
betatron - 
bethesda - 
betrayal - 
betrayer - 
beverage - leverage - 
bewilder - 
biblical - 
biddable - 
biennial - 
biennium - 
bilabial - 
bilinear - 
billfold - 
billiard - 
billiken - 
billings - 
biltmore - 
binaural - 
bindweed - 
binomial - 
biometry - 
biracial - 
birdbath - 
birdlike - 
birdseed - 
birthday - 
bisexual - 
bismarck - 
bistable - 
blackman - 
blackout - 
blandish - brandish - 
blastula - 
blenheim - 
blissful - 
blizzard - 
blockade - blockage - 
blockage - blockade - 
blomberg - 
blowback - 
blowfish - 
bludgeon - 
blueback - 
bluebill - bluegill - 
bluebird - 
bluebook - 
bluebush - 
bluefish - 
bluegill - bluebill - 
blustery - 
boastful - 
boatload - 
boatyard - 
bobolink - 
bodleian - 
boeotian - 
bogeymen - 
boldface - 
bondsman - bondsmen - 
bondsmen - bondsman - 
boniface - 
bookbind - 
bookcase - 
bookkeep - 
bordeaux - 
bordello - 
borealis - 
botanist - 
botswana - 
botulism - 
bouffant - 
boundary - 
bourbaki - 
boutique - 
bowditch - 
boylston - 
bracelet - 
brackish - 
bradbury - 
bradford - 
bradshaw - 
braggart - 
bragging - dragging - 
brainard - 
brakeman - 
brandeis - 
brandish - blandish - 
brasilia - 
breakage - 
breakoff - 
breeches - 
brethren - 
brewster - 
brickbat - 
bricklay - 
brighten - brighton - frighten - 
brighton - brighten - 
brindisi - 
brisbane - 
britches - 
brittany - 
broadway - 
broccoli - 
brochure - 
bronchus - 
brooklyn - 
brouhaha - 
brownell - 
brownian - 
brownish - 
bruckner - 
brunette - 
brussels - 
buchanan - 
buchwald - 
buckaroo - 
buckhorn - 
bucknell - 
buckshot - 
buckskin - 
budapest - 
buddhism - buddhist - 
buddhist - buddhism - 
bulgaria - 
bulkhead - bullhead - 
bulldoze - 
bulletin - 
bullfrog - 
bullhead - bulkhead - 
bullhide - 
bullseye - 
bullyboy - 
bundoora - 
bungalow - 
bunkmate - 
burglary - 
burgundy - 
burnside - 
bursitis - 
bushnell - 
business - 
butchery - 
buttress - 
buttrick - 
butyrate - 
buzzword - 
cachalot - 
cadillac - 
calamity - 
calculus - 
calcutta - 
caldwell - 
calendar - 
calfskin - 
callahan - 
calliope - 
callisto - 
cambodia - 
cambrian - 
camellia - 
cameroun - 
campaign - 
campbell - 
campfire - 
campsite - 
canadian - 
canberra - 
canfield - 
canister - banister - 
cannabis - 
cannibal - hannibal - 
canticle - 
capacity - 
capetown - 
capstone - 
captious - cautious - 
capybara - 
carboloy - 
carbonic - 
carbonyl - 
cardamom - 
cardinal - 
cardioid - 
carefree - 
careworn - 
carleton - 
carlisle - 
carnegie - 
carnival - 
carolina - caroline - 
caroline - carolina - 
carriage - marriage - 
carthage - 
caryatid - karyatid - 
casanova - 
casebook - 
casework - 
cashmere - 
cassette - 
castanet - 
castillo - 
casualty - 
catalina - 
catalyst - 
catapult - 
cataract - 
category - 
catenate - 
cathedra - 
catheter - 
cathodic - catholic - 
catholic - cathodic - 
cationic - 
catskill - 
caucasus - 
cauldron - 
cautious - captious - 
cavalier - 
caviness - 
cavitate - 
cecropia - 
celanese - 
celerity - 
celibacy - 
cellular - 
cemetery - 
cenozoic - 
centrist - 
centroid - 
ceramium - 
cerberus - 
cerebral - 
ceremony - 
cerulean - 
chadwick - 
chairman - chairmen - 
chairmen - chairman - 
chalmers - 
chambers - 
champion - 
chancery - 
chandler - 
chaperon - 
chaplain - 
charcoal - 
charisma - 
chartres - 
chastise - 
chastity - 
chateaux - 
chauncey - 
checkout - 
checksum - 
cheerful - 
chenille - 
cherokee - 
cherubim - 
cheshire - 
chestnut - 
cheyenne - 
chiefdom - 
childish - 
children - 
chimeric - 
chimique - 
chinaman - chinamen - 
chinamen - chinaman - 
chipmunk - 
chisholm - 
chivalry - 
chlorate - colorate - 
chloride - chlorine - 
chlorine - chloride - 
chordata - chordate - 
chordate - chordata - 
christen - 
christie - 
chromate - 
chromium - 
chrysler - 
chugging - 
churchgo - 
cinerama - 
cinnabar - 
cinnamon - 
circular - 
citation - 
citywide - 
civilian - 
claimant - 
clannish - 
clarence - 
clarinet - 
classify - 
clattery - flattery - 
clausius - 
cleavage - 
clifford - 
climatic - 
clinging - 
clitoris - 
cloddish - 
clogging - flogging - slogging - 
cloister - 
clothier - 
clubroom - 
coachman - coachmen - 
coachmen - coachman - 
coalesce - 
coattail - 
coauthor - 
cochrane - 
cockatoo - 
cockcrow - 
cocksure - 
cocktail - 
codeword - 
codomain - 
codpiece - 
coeditor - creditor - 
coercion - 
coercive - 
cofactor - 
cogitate - 
coherent - 
cohesion - 
cohesive - 
coiffure - 
coincide - 
colander - 
coliform - 
coliseum - 
collagen - 
collapse - 
colloquy - 
colombia - columbia - 
colonial - 
colonist - 
colorado - 
colorate - chlorate - 
colossal - 
colossus - 
columbia - colombia - 
columbus - 
columnar - 
comanche - 
comatose - 
comeback - 
comedian - 
cometary - 
commando - 
commerce - 
communal - 
complain - 
compleat - 
complete - 
compline - 
compound - 
compress - 
comprise - 
conceive - 
concerti - concerto - 
concerto - concerti - 
conclave - 
conclude - 
concrete - 
condense - 
conferee - 
conflict - 
confocal - 
confound - 
confrere - 
confront - 
congener - 
congress - 
conjoint - 
conjugal - 
conjunct - 
connally - 
conquest - 
conserve - 
consider - 
conspire - 
constant - 
construe - 
consular - 
contempt - 
continua - continue - continuo - 
continue - continua - continuo - 
continuo - continua - continue - 
contract - contrast - 
contrary - 
contrast - contract - 
contrite - contrive - 
contrive - contrite - 
converge - converse - 
converse - converge - 
conveyor - 
convince - 
convolve - 
convulse - 
cookbook - 
coolidge - 
copeland - 
coplanar - 
copperas - 
coprinus - 
copybook - 
coquette - 
corcoran - 
corduroy - 
cornelia - 
cornmeal - 
cornwall - 
coronado - 
coronary - 
coronate - 
corporal - 
corpsman - corpsmen - 
corpsmen - corpsman - 
corridor - 
cortical - 
cortland - portland - 
corundum - 
corvette - 
cosgrove - 
cosmetic - 
costello - 
cottrell - 
couldn't - wouldn't - 
courtesy - 
courtier - 
courtney - 
couscous - 
covalent - 
covenant - 
coventry - 
coverage - 
coverall - 
coverlet - 
covetous - 
coworker - 
cowpunch - 
crabmeat - 
crackpot - 
crandall - 
cranford - crawford - 
cranston - 
crawford - cranford - 
crayfish - 
creamery - 
creating - 
creature - 
credenza - 
credible - 
creditor - coeditor - 
creosote - 
crescent - 
criminal - 
criteria - 
critique - 
crockery - 
crockett - 
cromwell - 
crossarm - 
crossbar - 
crossbow - 
crosscut - 
crossway - 
croupier - 
crowbait - 
crowfoot - 
crucible - 
crucifix - 
cryostat - 
cucumber - 
cufflink - 
culinary - 
culpable - 
cultural - 
cummings - 
cumulate - 
cupboard - 
cupidity - 
curbside - 
curlicue - 
cyanamid - 
cyclades - 
cylinder - 
cyrillic - 
cysteine - 
cytology - 
cytosine - 
czerniak - 
d'oeuvre - 
dactylic - 
daedalus - 
daffodil - 
dairylea - 
dairyman - dairymen - 
dairymen - dairyman - 
damascus - 
danubian - 
database - 
dateline - 
daughter - laughter - 
dauphine - 
davidson - 
daybreak - 
daydream - 
daylight - 
deadhead - 
deadline - headline - 
deadlock - 
deadwood - 
dearborn - 
deathbed - 
debility - 
debonair - 
debugged - debugger - 
debugger - debugged - 
decadent - decedent - 
decedent - decadent - 
december - 
decimate - 
decipher - 
decision - derision - 
decisive - derisive - 
decorate - 
decorous - 
decouple - 
decrease - degrease - 
dedicate - delicate - desicate - medicate - 
deerskin - 
defecate - 
defector - detector - 
deferent - referent - 
deferral - referral - 
deferred - deterred - referred - 
definite - 
deflater - 
deforest - 
degrease - decrease - 
delaware - 
delegate - 
deletion - 
delicacy - 
delicate - dedicate - desicate - 
delirium - 
delivery - 
delmarva - 
delphine - 
delusion - 
delusive - 
demented - 
dementia - 
demijohn - 
demitted - remitted - 
democrat - 
demolish - 
demoniac - 
demurred - demurrer - 
demurrer - demurred - 
denature - 
dendrite - 
denebola - 
deniable - 
denounce - renounce - 
deportee - 
derelict - 
derision - decision - 
derisive - decisive - 
derivate - 
derogate - 
derriere - 
describe - 
desicate - dedicate - delicate - 
desirous - 
desolate - 
despotic - 
destruct - 
detector - defector - 
deterred - deferred - 
detonate - 
detoxify - 
deuteron - 
devilish - 
devotion - 
dextrose - 
dextrous - 
diabetes - 
diabetic - 
diabolic - 
diagnose - 
diagonal - 
dialogue - 
dialysis - 
diameter - 
diatomic - diatonic - 
diatonic - diatomic - 
diatribe - 
didactic - 
dieldrin - 
dietetic - 
dietrich - 
diffract - 
digitate - 
dihedral - 
dilatory - 
diligent - 
dilution - 
dimethyl - 
diminish - 
dinosaur - 
diocesan - 
dionysus - 
diploidy - 
diplomat - 
director - 
disburse - 
disciple - 
discreet - 
discrete - 
dishevel - 
disjunct - 
dispense - disperse - 
disperse - dispense - 
disposal - 
dissuade - 
distinct - 
district - 
divalent - 
dividend - 
division - 
divisive - 
divorcee - 
djakarta - 
doberman - 
dockside - 
dockyard - 
doctoral - 
doctrine - 
document - 
dogberry - 
doghouse - 
dogmatic - 
dogtooth - 
doldrums - 
dolomite - 
domenico - 
domesday - 
domestic - 
domicile - 
dominant - 
dominate - nominate - 
domineer - 
dominick - 
dominion - 
donnelly - 
doomsday - 
doorbell - 
doorkeep - 
doorknob - 
doorstep - 
dorothea - 
dortmund - 
doubloon - 
doubtful - 
doughnut - 
douglass - 
dovetail - 
downbeat - 
downcast - 
downfall - 
downhill - 
downplay - 
downpour - 
downside - 
downtown - 
downturn - 
downward - 
downwind - 
dragging - bragging - drugging - 
drainage - 
dramatic - 
drawback - 
dreadful - 
dreyfuss - 
driscoll - 
driveway - 
drophead - 
drudgery - 
drugging - dragging - 
drumhead - 
drummond - 
drunkard - 
duckling - suckling - 
ductwork - 
dumbbell - 
duquesne - 
duration - 
dutchess - 
dutchman - dutchmen - 
dutchmen - dutchman - 
dutiable - 
dynamism - 
dynamite - 
dynastic - 
earphone - 
earthmen - 
eastland - 
eastward - 
eastwood - 
eclectic - 
ecliptic - elliptic - 
economic - 
ecstatic - 
ectoderm - 
ecumenic - 
edgerton - 
edgewise - 
edmonton - 
educable - 
eelgrass - 
efferent - afferent - 
efficacy - 
effluent - affluent - 
effluvia - 
effusion - 
effusive - 
eggplant - 
eggshell - 
egyptian - 
eighteen - 
einstein - 
electret - 
electric - 
electron - 
elephant - 
eleventh - 
eligible - 
ellipsis - 
elliptic - ecliptic - 
elmhurst - 
elmsford - 
elongate - 
eloquent - 
elsevier - 
elsinore - 
emaciate - 
embattle - 
embedded - embedder - 
embedder - embedded - 
embezzle - 
emblazon - 
embolden - 
emergent - 
emeritus - 
emigrant - 
emigrate - 
emissary - 
emission - omission - 
emitting - omitting - 
emmanuel - 
emphases - emphasis - 
emphasis - emphases - 
emphatic - 
employed - employee - employer - 
employee - employed - employer - 
employer - employed - employee - 
emporium - 
emulsify - 
emulsion - 
encomium - 
encroach - 
encumber - 
endicott - 
endoderm - 
endogamy - 
endpoint - 
enervate - 
engineer - 
enormity - 
enormous - 
enrollee - 
ensconce - 
ensemble - 
entendre - 
enthalpy - 
enthrall - 
entirety - 
envelope - 
enviable - inviable - 
eohippus - 
ephesian - 
epicycle - 
epidemic - 
epigraph - 
epilogue - 
epiphany - 
episodic - 
equipped - 
erasable - 
ergative - 
erickson - ericsson - 
ericsson - erickson - 
erodible - erosible - 
erosible - erodible - 
errantry - 
eruption - 
escalate - 
escapade - 
esophagi - 
esoteric - 
especial - 
esposito - 
espousal - 
estimate - 
estoppal - 
estrange - 
eternity - 
ethereal - 
ethiopia - 
ethology - etiology - 
ethylene - 
etiology - ethology - 
etruscan - 
eulerian - 
euphoria - euphoric - 
euphoric - euphoria - 
euridyce - 
european - 
europium - 
eurydice - 
eutectic - 
evacuate - evaluate - 
evaluate - evacuate - 
evanston - 
evensong - 
eventful - 
eventide - 
eventual - 
eveready - 
everhart - 
everyday - 
everyman - 
everyone - 
evildoer - 
evocable - 
excavate - 
excelled - expelled - 
exchange - 
excision - 
excursus - 
execrate - 
executor - 
exegesis - 
exemplar - 
exercise - exorcise - 
existent - 
exorcise - exercise - exorcism - exorcist - 
exorcism - exorcise - exorcist - 
exorcist - exorcise - exorcism - 
expedite - 
expelled - excelled - 
expiable - 
explicit - 
exponent - 
exposure - 
extensor - 
exterior - 
external - 
extolled - extoller - 
extoller - extolled - 
extremal - 
extremis - 
extremum - 
exultant - 
eyeglass - 
eyepiece - 
eyesight - 
fabulous - 
factious - 
failsafe - 
failsoft - 
fairgoer - 
fairport - 
faithful - 
falconry - 
fallible - 
falmouth - 
falstaff - 
familial - familiar - 
familiar - familial - 
familism - 
fanciful - 
fantasia - 
farcical - 
farewell - 
farmland - 
farthest - furthest - 
fascicle - 
faulkner - 
faustian - 
fearsome - 
feasible - 
feathery - leathery - 
february - 
federate - 
feedback - 
feldspar - 
felicity - 
feminine - 
feminism - feminist - 
feminist - feminism - 
ferguson - 
fernando - 
ferocity - 
ferreira - 
festival - 
feverish - 
fibrosis - 
fidelity - 
fiducial - 
fiendish - 
fiftieth - 
figurate - 
figurine - 
filament - 
filigree - 
filipino - 
filmmake - 
filtrate - 
finessed - 
finitary - 
finnegan - 
fireboat - 
fireside - 
firewall - 
firewood - 
firework - 
firmware - 
fishpond - 
fivefold - 
flagging - flogging - 
flagpole - 
flagrant - fragrant - 
flamingo - 
flanagan - 
flanders - 
flathead - 
flatiron - 
flatland - 
flattery - clattery - 
flatware - 
flatworm - 
flautist - 
flaxseed - 
fleabane - 
fleawort - 
fletcher - 
flexible - 
flexural - 
flipflop - 
flippant - 
flogging - clogging - flagging - slogging - 
floodlit - 
florence - 
florican - 
flotilla - 
flounder - 
flourish - 
fluoride - fluorine - fluorite - 
fluorine - fluoride - fluorite - 
fluorite - fluoride - fluorine - 
focussed - 
folklore - 
folksong - 
follicle - 
fontaine - 
football - footfall - 
footfall - football - 
foothill - 
footnote - 
footpath - 
footstep - 
footwear - 
footwork - 
forborne - 
forceful - 
forcible - 
forensic - 
forestry - 
forgiven - 
forklift - 
formulae - 
forsaken - 
forswear - 
forsythe - 
fortieth - 
fortiori - 
fortress - 
fountain - mountain - 
fourfold - 
foursome - 
fourteen - 
foxglove - 
foxhound - 
fraction - friction - 
fracture - 
fragment - 
fragrant - flagrant - 
francine - 
francium - 
franklin - 
freakish - 
frederic - 
fredholm - 
freeboot - 
freedman - freedmen - friedman - 
freedmen - freedman - 
freehand - 
freehold - 
freeport - 
freetown - 
frenetic - 
frequent - 
frescoes - 
freshman - freshmen - 
freshmen - freshman - 
freudian - 
friction - fraction - 
friedman - freedman - 
frighten - brighten - 
frontage - 
frontier - 
fructify - 
fructose - 
fruehauf - 
fruitful - 
fruition - 
fugitive - 
fullback - pullback - 
fumigant - 
fumigate - 
function - junction - 
funereal - 
fungible - 
furlough - 
furthest - farthest - 
fuselage - 
fusiform - 
gadgetry - 
galactic - 
galenite - 
galloway - 
galvanic - 
gamecock - 
gamesman - 
gangland - 
gangling - 
ganglion - 
gangster - 
ganymede - 
gardenia - 
garfield - 
garrison - harrison - 
gaslight - 
gasoline - 
gatekeep - 
gauntlet - 
gaussian - 
gedanken - 
gelatine - 
geminate - 
gemstone - 
generate - venerate - 
generous - 
genitive - 
genotype - 
geodesic - geodetic - 
geodetic - geodesic - 
geoffrey - 
geometer - 
geranium - 
gerhardt - 
germanic - 
germinal - terminal - 
gershwin - 
gertrude - 
ghoulish - 
giantess - 
gigabyte - 
gigaherz - 
gigantic - 
gigavolt - 
gigawatt - 
gillette - 
gilligan - 
ginsberg - ginsburg - 
ginsburg - ginsberg - 
giovanni - 
giuliano - 
giuseppe - 
giveaway - 
glaciate - 
glassine - 
glaucoma - 
glaucous - 
glendale - 
glissade - 
globular - 
globulin - 
gloriana - 
glorious - 
glossary - 
glutamic - 
glycerin - 
glycerol - 
glycogen - 
gnomonic - 
goatherd - 
goldberg - 
goldfish - 
gonzales - gonzalez - 
gonzalez - gonzales - 
goodrich - 
goodwill - 
goodyear - 
gorgeous - 
gossamer - 
governor - 
graceful - grateful - 
gracious - 
gradient - 
graduate - 
grandeur - 
grandson - 
granitic - 
granular - 
grapheme - 
graphite - 
grateful - graceful - 
gratuity - 
greenery - 
greenish - 
grenoble - 
gretchen - 
gridiron - 
grievous - 
griffith - 
grimaldi - 
griswold - 
grosbeak - 
grossman - 
groupoid - 
gruesome - 
guaranty - 
guardian - 
guenther - 
guernsey - 
guidance - 
guilford - 
gullible - 
gumption - 
gunfight - 
gunflint - 
gunsling - 
gustavus - 
guttural - 
haberman - 
habitant - 
habitual - 
hacienda - 
hadamard - 
hagstrom - 
halfback - 
hallmark - 
halstead - 
hamilton - 
handbook - 
handcuff - 
handhold - landhold - 
handicap - 
handline - 
handmade - 
handsome - 
handyman - handymen - 
handymen - handyman - 
hangable - 
hangover - 
hannibal - cannibal - 
hanukkah - 
haploidy - 
hapsburg - 
harangue - 
harcourt - 
hardbake - 
hardcopy - 
hardtack - 
hardware - 
hardwood - 
harmonic - 
harriman - 
harrison - garrison - 
hartford - 
hastings - 
hatchway - 
hatfield - hayfield - 
hathaway - 
hatteras - 
hawaiian - 
hawthorn - 
hayfield - hatfield - 
haystack - 
hazelnut - 
headache - 
headland - 
headline - deadline - 
headroom - 
headsman - headsmen - herdsman - leadsman - 
headsmen - headsman - leadsmen - 
headwall - 
headwind - 
heathkit - 
hecatomb - 
hedgehog - 
hedonism - hedonist - 
hedonist - hedonism - 
hegelian - 
hegemony - 
heighten - 
heinrich - 
hellenic - 
hellfire - 
helmsman - helmsmen - 
helmsmen - helmsman - 
helpmate - 
helsinki - 
hematite - 
henchman - henchmen - 
henchmen - henchman - 
hendrick - 
henequen - 
hepatica - 
hercules - 
herdsman - headsman - 
heredity - 
hereford - 
hereunto - 
herewith - 
heritage - 
herkimer - 
hermetic - 
herschel - 
hesitant - 
hesitate - 
hesperus - 
heublein - 
hiawatha - 
hibernia - 
hideaway - 
hieratic - 
highball - 
highland - 
highroad - 
hightail - 
hilarity - 
hillside - 
himalaya - 
hindmost - 
hinduism - 
hireling - 
hispanic - 
historic - 
hitherto - 
hoagland - 
holbrook - 
holdover - 
holeable - 
holloway - 
holocene - 
hologram - 
holstein - 
homecome - 
homeland - 
homemade - homemake - 
homemake - homemade - 
homesick - 
homeward - 
homework - 
homicide - 
homology - horology - 
homotopy - 
honduras - 
honeybee - 
honeydew - 
honolulu - 
honorary - 
hoofmark - 
hookworm - 
hooligan - 
hoosegow - 
hornbeam - 
horntail - 
hornwort - 
horology - homology - 
horowitz - 
horrible - 
horsedom - 
horsefly - housefly - 
horseman - horsemen - 
horsemen - horseman - 
hospital - 
hostelry - 
hotelman - 
hothouse - 
houghton - 
housefly - horsefly - 
hrothgar - 
huckster - 
humanoid - 
humboldt - 
humidify - 
humility - 
humorous - 
humpback - 
humphrey - 
hutchins - 
huxtable - 
hyacinth - 
hydrogen - 
hydroxyl - 
hypnosis - 
hypnotic - 
hysteria - hysteric - 
hysteric - hysteria - 
hysteron - 
identify - identity - 
identity - identify - 
ideolect - 
ideology - 
idolatry - 
ignition - 
ignorant - 
illinois - 
illumine - 
illusion - allusion - 
illusive - allusive - 
illusory - 
ilyushin - 
imbecile - 
imitable - 
immanent - imminent - 
immature - 
imminent - immanent - 
immobile - 
immodest - 
immortal - 
impelled - impeller - 
impeller - impelled - 
imperate - 
imperial - 
implicit - 
impolite - 
impotent - 
imprison - 
improper - 
impudent - 
impunity - 
inaction - 
inactive - 
inasmuch - 
inceptor - 
incident - 
incisive - 
increase - 
incubate - 
incurred - incurrer - 
incurrer - incurred - 
indebted - 
indecent - 
indicant - 
indicate - 
indicter - 
indigene - indigent - 
indigent - indigene - 
indirect - 
indolent - insolent - 
inductee - 
inductor - 
industry - 
inequity - iniquity - 
inertial - 
inexpert - 
infamous - 
infantry - 
inferior - interior - 
infernal - internal - 
inferred - 
infinite - infinity - 
infinity - infinite - 
inflater - 
influent - 
informal - 
infrared - 
infringe - 
infusion - 
ingather - 
inherent - 
inhumane - 
inimical - 
iniquity - inequity - 
initiate - 
innocent - 
innovate - 
innuendo - 
inscribe - 
insecure - 
insignia - 
insolent - indolent - 
insomnia - 
instable - 
instance - 
instinct - 
instruct - 
insulate - 
integral - 
intercom - 
interest - 
interior - anterior - inferior - 
intermit - 
internal - infernal - interval - 
interpol - 
interval - internal - 
intimacy - 
intimate - 
intonate - 
intrepid - 
intrigue - 
inundate - 
invasion - 
invasive - 
inveigle - 
inventor - investor - 
investor - inventor - 
inviable - enviable - 
invocate - 
involute - 
iodinate - 
irishman - irishmen - 
irishmen - irishman - 
ironside - 
ironwood - 
iroquois - 
irrigate - irritate - 
irritant - 
irritate - irrigate - 
isaacson - 
isabella - 
isocline - 
isomorph - 
isopleth - 
isotherm - 
isotopic - 
isotropy - 
issuance - 
istanbul - 
izvestia - 
jackboot - 
jacobean - jacobian - 
jacobian - jacobean - 
jacobite - 
jacobsen - jacobson - 
jacobson - jacobsen - 
jamboree - 
japanese - 
jaundice - 
jawbreak - lawbreak - 
jealousy - 
jennifer - 
jennings - 
jeopardy - 
jeremiah - 
jeroboam - 
jetliner - 
jettison - 
johannes - 
johansen - johanson - 
johanson - johansen - 
johnston - 
jonathan - 
josephus - 
joystick - 
jubilant - 
jubilate - 
judicial - 
junction - function - 
juncture - puncture - 
jurassic - 
juvenile - 
kamikaze - 
kangaroo - 
kankakee - 
karyatid - caryatid - 
kathleen - 
katmandu - 
katowice - 
kauffman - 
keeshond - 
kentucky - 
kerchief - 
kerosene - 
keyboard - 
keypunch - 
keystone - 
khartoum - 
kickback - 
killdeer - 
kimberly - 
kingbird - 
kingsley - 
kingston - 
kirchner - 
kirchoff - 
kirkland - 
klystron - 
knapsack - 
knockout - 
knowlton - 
kohlrabi - 
koinonia - 
kowalski - 
krakatoa - 
lability - 
labrador - 
lacerate - 
lacewing - 
lachesis - 
lacrosse - 
ladyfern - 
ladylike - 
lagrange - 
laguerre - 
lakeside - 
lamellar - 
laminate - latinate - 
landfill - 
landhold - handhold - 
landlord - 
landmark - 
langmuir - 
language - 
languish - 
lapelled - 
lapidary - 
largesse - 
larkspur - 
larynges - 
laterite - 
latinate - laminate - 
latitude - 
laudanum - 
laughlin - 
laughter - daughter - 
laureate - 
laurence - lawrence - 
lausanne - 
lavatory - 
lavender - 
lawbreak - jawbreak - 
lawgiver - 
lawrence - laurence - 
laxative - 
leachate - 
leadsman - headsman - leadsmen - 
leadsmen - headsmen - leadsman - 
leapfrog - 
leathery - feathery - 
lebanese - 
lebesgue - 
leftmost - 
leftover - 
leftward - 
legendre - 
leighton - 
lemonade - 
lengthen - 
leninism - leninist - 
leninist - leninism - 
leonardo - 
lethargy - 
leukemia - 
leverage - beverage - 
levitate - 
levulose - 
libation - 
libelous - 
liberate - literate - 
libretto - 
licensee - 
licensor - 
licorice - 
lifeboat - 
lifelike - 
lifelong - 
lifespan - 
lifetime - 
ligament - 
ligature - 
likewise - 
limerick - 
limitate - 
lindberg - lundberg - 
lindholm - 
lingerie - 
linguist - 
liniment - 
linoleum - 
linotype - 
lipscomb - 
lipstick - 
liquidus - 
literacy - literary - 
literary - literacy - 
literate - liberate - 
litigant - 
litigate - mitigate - 
littoral - 
liturgic - 
loblolly - 
lobotomy - 
lockhart - 
lockheed - 
lockstep - 
lockwood - 
locomote - 
locoweed - 
locution - 
lodowick - 
logician - 
logistic - 
lollipop - 
lombardy - 
lonesome - 
longhand - 
longhorn - 
longtime - 
loophole - 
lopsided - 
lordosis - 
lorraine - 
lovebird - 
lovelace - 
loveland - 
lovelorn - 
lucretia - 
lukewarm - 
luminary - 
luminous - numinous - 
luncheon - 
lundberg - lindberg - 
luscious - 
lustrous - 
lutanist - 
lutetium - 
lutheran - 
lymphoma - 
lyricism - 
lysergic - 
macassar - 
machismo - 
mackerel - 
mackinac - mackinaw - 
mackinaw - mackinac - 
madeline - 
madhouse - 
madrigal - 
madstone - 
magazine - 
magician - 
magnesia - 
magnetic - 
magnolia - 
magnuson - 
magruder - 
mahayana - 
mahogany - 
mainland - 
mainline - 
mainstay - 
maintain - 
majestic - 
maladapt - 
malagasy - 
malaprop - 
malarial - 
malaysia - 
maledict - 
malposed - 
maltreat - 
mandamus - 
mandarin - 
mandrake - 
mandrill - 
maneuver - 
maniacal - 
manifest - 
manifold - 
manitoba - 
manpower - 
mantissa - 
manville - 
marathon - 
marcello - 
margaret - 
marginal - 
marianne - 
marietta - 
marigold - 
marinade - marinate - 
marinate - marinade - 
maritime - 
marjoram - 
marjorie - 
marksman - marksmen - 
marksmen - marksman - 
marlboro - 
marquess - 
marriage - carriage - 
marriott - 
marshall - 
martinez - 
maryland - 
masonite - 
massacre - 
mastodon - 
material - materiel - maternal - 
materiel - material - 
maternal - material - paternal - 
matrices - 
matthews - 
mattress - 
maturate - saturate - 
mauricio - 
maverick - 
mayapple - 
mccallum - 
mccarthy - 
mccauley - 
mcconnel - 
mcdaniel - 
mcdonald - 
mcdowell - 
mcfadden - 
mcginnis - 
mcgovern - 
mcgregor - 
mcintosh - 
mcintyre - 
mckenzie - 
mckesson - 
mckinley - mckinney - 
mckinney - mckinley - 
mcknight - 
mcmillan - 
mcmullen - 
mealtime - meantime - 
meantime - mealtime - 
mechanic - 
medicate - dedicate - meditate - 
medicine - 
mediocre - 
meditate - medicate - 
megabyte - 
megavolt - 
megawatt - 
megaword - 
melamine - 
melanoma - 
meltdown - 
melville - 
membrane - 
memorial - 
menarche - 
menelaus - 
menhaden - 
meniscus - 
mercator - 
mercedes - 
merchant - 
merciful - 
mercuric - 
meredith - 
meridian - 
meringue - 
mesmeric - 
mesoderm - 
mesozoic - 
mesquite - 
metabole - 
metallic - 
metaphor - 
meteoric - 
methanol - 
methodic - 
michelin - 
michigan - 
midnight - 
midpoint - 
midrange - 
midscale - 
midwives - 
mightn't - 
militant - 
military - 
militate - 
milkweed - 
millenia - 
millikan - 
millions - 
miltonic - 
mimicked - 
mindanao - 
minibike - 
ministry - 
minstrel - 
minutiae - 
miscible - 
misnomer - 
misogyny - 
missoula - 
missouri - 
mistress - 
mitchell - 
mitigate - litigate - 
mnemonic - 
mobility - 
moccasin - 
moderate - 
modulate - 
moiseyev - 
moisture - 
molasses - 
moldavia - 
molecule - 
molehill - 
moluccas - 
momentum - 
monarchy - 
monastic - 
monaural - 
monetary - 
mongolia - 
mongoose - 
monitory - 
monmouth - 
monogamy - 
monolith - 
monomial - 
monopoly - 
monoxide - 
monrovia - 
monsanto - 
monsieur - 
montague - 
monterey - 
montreal - 
monument - 
moreland - 
moreover - 
moriarty - 
moribund - 
moroccan - 
morpheme - 
morphine - 
morphism - 
morrison - 
mortgage - 
mosquito - 
mothball - 
motivate - 
motorola - 
mountain - fountain - 
mournful - 
mouthful - youthful - 
mucilage - 
mudguard - 
mudsling - 
mulberry - 
mulligan - 
multiple - multiply - 
multiply - multiple - 
munition - 
muriatic - 
muscular - 
mushroom - 
musicale - 
musician - 
muskegon - 
muskoxen - 
mustache - 
mutandis - 
mutilate - 
mutineer - 
mycology - 
mystique - 
nagasaki - 
nakayama - 
nameable - 
namesake - 
napoleon - 
narbonne - 
narcosis - 
narcotic - 
nauseate - 
nautical - 
nautilus - 
navigate - 
nazarene - 
nazareth - 
ndjamena - 
nebraska - 
nebulous - 
necklace - 
neckline - 
necropsy - 
necrosis - neurosis - 
necrotic - neurotic - 
negligee - 
neonatal - 
neophyte - 
neoprene - 
nepenthe - 
neuritis - 
neuronal - 
neuroses - neurosis - 
neurosis - necrosis - neuroses - 
neurotic - necrotic - 
neutrino - 
newcomer - 
newfound - 
newlywed - 
newscast - 
newsreel - 
newsweek - 
nibelung - 
nicholas - nicholls - 
nicholls - nicholas - 
nichrome - 
nickname - 
nicotine - 
nightcap - 
nihilism - nihilist - 
nihilist - nihilism - 
ninebark - 
ninefold - 
nineteen - 
nitrogen - 
nobelium - 
nobleman - noblemen - 
noblemen - nobleman - 
noblesse - 
nobody'd - 
nocturne - 
nominate - dominate - 
nomogram - 
noontime - 
nordhoff - 
normalcy - 
normandy - 
northern - 
northrop - northrup - 
northrup - northrop - 
nostrand - 
notebook - 
notocord - 
november - 
nowadays - 
nucleant - 
nucleate - 
nucleoli - 
nugatory - 
nuisance - 
numerate - 
numerous - 
numinous - luminous - 
nutcrack - 
nuthatch - 
nutrient - 
nutshell - 
o'connor - 
obduracy - 
obdurate - 
obedient - 
obeisant - 
obituary - 
objector - 
obligate - 
oblivion - 
obsidian - 
obsolete - 
obstacle - 
obstruct - 
occasion - 
occident - accident - 
occupant - 
occurred - 
octoroon - 
odometer - 
odysseus - 
official - 
offprint - 
offshoot - 
offshore - 
offstage - 
ohmmeter - 
oilcloth - 
ointment - 
oklahoma - 
oleander - 
olivetti - 
omission - emission - 
omitting - emitting - 
oncology - ontology - 
oncoming - 
onlooker - 
onondaga - 
ontogeny - 
ontology - oncology - 
operable - 
operatic - 
operetta - 
opponent - 
opposite - apposite - 
optimism - optimist - 
optimist - optimism - 
oracular - 
oratoric - oratorio - 
oratorio - oratoric - 
ordinary - 
ordinate - 
ordnance - 
oresteia - 
oriental - 
original - 
ornament - 
ornately - 
orthicon - 
orthodox - 
ostracod - 
oughtn't - 
outlawry - 
ovenbird - 
overhang - 
overture - 
pacemake - 
pacifism - pacifist - 
pacifist - pacifism - 
paginate - 
pairwise - 
pakistan - 
palatine - 
palisade - 
palladia - 
palliate - 
palmetto - 
palpable - 
pamphlet - 
pancreas - 
pandanus - 
pandemic - 
panicked - 
panorama - 
pantheon - 
parabola - 
paradigm - 
paradise - 
paraffin - 
paraguay - 
parakeet - 
parallax - 
parallel - 
paranoia - paranoid - 
paranoid - paranoia - 
parasite - 
paraxial - 
parental - 
parisian - 
parkland - 
parlance - 
parsifal - 
particle - 
partisan - 
pasadena - 
passband - 
passerby - 
passover - 
passport - 
password - 
pastiche - 
pastoral - 
patentee - 
paternal - maternal - 
paterson - peterson - 
pathetic - 
pathfind - 
pathogen - 
patricia - 
paulette - 
pavilion - 
pawnshop - 
paycheck - 
peaceful - 
pearlite - 
pectoral - sectoral - 
peculate - 
peculiar - 
pedagogy - 
pedantic - 
pedantry - 
pedestal - 
pedigree - 
pediment - sediment - 
peephole - 
pegboard - 
pellagra - 
pembroke - 
pemmican - 
penchant - 
pendulum - 
penelope - 
penitent - 
pentagon - 
penumbra - 
perceive - 
percival - 
perforce - 
pergamon - 
pericles - 
perilous - 
periodic - 
permeate - 
peroxide - 
pershing - 
personal - 
perspire - 
persuade - 
peruvian - 
perverse - 
pessimal - 
pessimum - 
petersen - peterson - 
peterson - paterson - petersen - 
petition - 
petulant - 
phantasy - 
pharmacy - 
pheasant - pleasant - 
phenolic - 
phillips - 
phonemic - phonetic - 
phonetic - phonemic - 
phosgene - 
phosphor - 
physique - 
picayune - 
pickerel - 
pickford - 
piedmont - 
pilewort - 
pinafore - 
pinnacle - 
pinochle - 
pinpoint - 
pinscher - 
pinwheel - 
pipeline - 
pitiable - 
pittston - 
pizzeria - 
placater - 
placenta - 
plankton - 
plantain - 
plastron - 
platelet - 
platform - 
platinum - 
platonic - 
platypus - 
playback - 
playmate - 
playroom - 
playtime - 
pleasant - pheasant - 
pleasure - 
plebeian - 
pleiades - 
plethora - 
pliocene - 
plugging - slugging - 
plumbago - 
plumbate - 
plutarch - 
plymouth - 
plyscore - 
poignant - 
poincare - 
polaroid - 
politico - 
polkadot - 
pollster - 
polonium - 
polopony - 
polyglot - 
polytope - 
polytypy - 
pontific - 
populace - populate - 
populate - populace - 
populism - populist - 
populist - populism - 
populous - 
porosity - 
porphyry - 
porpoise - 
porridge - 
portland - cortland - 
portrait - 
portugal - 
poseidon - 
position - positron - 
positive - 
positron - position - 
posseman - possemen - 
possemen - posseman - 
possible - 
postcard - 
postlude - 
postmark - 
postpaid - 
postpone - 
potatoes - 
potbelly - 
potlatch - 
poultice - 
powerful - 
poynting - 
practice - practise - 
practise - practice - 
preamble - 
precinct - 
precious - previous - 
preclude - 
pregnant - 
premiere - 
prentice - 
prescott - 
presence - 
preserve - 
pressure - 
prestige - 
presumed - 
pretense - 
pretoria - 
previous - precious - 
priggish - 
primeval - 
primrose - 
princess - 
printout - 
pristine - 
procaine - 
proclaim - 
prodigal - 
profound - propound - 
progress - 
prohibit - 
prolific - 
prologue - prorogue - 
property - 
prophecy - prophesy - 
prophesy - prophecy - 
proposal - 
propound - profound - 
prorogue - prologue - 
prosodic - 
prospect - 
prostate - 
protease - 
protocol - 
protozoa - 
protract - 
protrude - 
province - 
proximal - 
prurient - 
psaltery - 
psyllium - 
puffball - 
puissant - 
pulitzer - 
pullback - fullback - 
pullover - 
punctual - 
puncture - juncture - 
punditry - 
punitive - 
puppyish - 
purchase - 
purslane - 
pursuant - 
purveyor - surveyor - 
pussycat - 
putative - 
pyknotic - 
pyridine - 
pyrolyse - 
pyroxene - 
quackery - 
quadrant - 
quagmire - 
quandary - 
quantico - 
quantify - quantity - 
quantile - quartile - 
quantity - quantify - 
quartile - quantile - 
quatrain - 
question - 
quipping - 
quirinal - 
quitting - 
quixotic - 
quotient - 
rafferty - 
railbird - 
railhead - 
raillery - 
railroad - 
raincoat - 
raindrop - 
rainfall - 
randolph - 
ravenous - 
rawboned - 
rayleigh - 
raytheon - 
reactant - 
rebelled - repelled - 
rebuttal - 
rebutted - 
receptor - 
recovery - 
recurred - 
recusant - 
redactor - 
redshank - 
redstart - 
redstone - 
reedbuck - 
referent - deferent - reverent - 
referral - deferral - 
referred - deferred - 
refinery - 
regiment - 
reginald - 
regional - 
registry - 
regulate - 
rehearse - 
reindeer - 
reinhold - 
rejecter - 
relevant - 
religion - 
remedial - 
remember - 
remitted - demitted - 
renounce - denounce - 
renovate - 
repartee - 
repeater - 
repelled - rebelled - 
reprieve - retrieve - 
reprisal - 
reproach - 
republic - 
requited - 
rerouted - 
resemble - 
resident - 
residual - 
residuum - 
resistor - 
resolute - 
resonant - 
resonate - 
response - 
restrain - 
restrict - 
restroom - 
resuming - 
reticent - 
retrieve - reprieve - 
retrofit - 
reverend - reverent - 
reverent - referent - reverend - 
reversal - 
revision - 
reynolds - 
rhapsody - 
rheology - theology - 
rheostat - 
rhetoric - 
rhodesia - 
rhythmic - 
ribosome - 
richards - 
richmond - 
rickshaw - 
ricochet - 
riddance - 
ridicule - 
rifleman - riflemen - 
riflemen - rifleman - 
rightful - 
rigorous - vigorous - 
rinehart - 
ringside - 
riparian - 
riverine - 
roadside - 
roadster - 
robinson - 
robotics - 
rockabye - 
rockaway - 
rockford - 
rockland - 
rockwell - 
roentgen - 
rollback - 
romantic - 
rooftree - 
roommate - 
rosebush - 
roseland - 
rosemary - 
rotarian - 
rotenone - 
rototill - 
roughish - 
roulette - 
roundoff - 
rousseau - 
rubicund - 
rubidium - 
rudiment - 
ruminant - 
ruminate - 
runabout - 
rushmore - 
rutabaga - 
ruthless - 
rutledge - 
sabotage - 
sagacity - 
sagittal - 
sailboat - 
sailfish - 
salaried - 
salesian - salesman - 
salesman - salesian - salesmen - 
salesmen - salesman - 
salivary - 
salivate - 
saltbush - 
salutary - 
salvador - 
samarium - 
sanctify - sanctity - 
sanction - 
sanctity - sanctify - 
sandburg - 
sandhill - 
sandpile - 
sandusky - 
sandwich - 
sangaree - 
sanguine - 
sanitary - 
sanitate - 
sanskrit - 
santiago - 
saponify - 
sapphire - 
sarasota - 
saratoga - 
sardonic - 
satiable - 
saturate - maturate - 
saturday - 
saucepan - 
saunders - 
sauterne - 
savagery - 
savannah - 
savoyard - 
sawbelly - sowbelly - 
sawtooth - 
scabbard - 
scabious - scabrous - 
scabrous - scabious - 
scaffold - 
scandium - 
scapular - 
scarface - 
scavenge - 
scenario - 
schaefer - 
schedule - 
schemata - 
schiller - 
schizoid - 
schnabel - 
schnapps - 
schooner - 
schottky - 
schubert - 
schumann - 
schuster - 
schuyler - 
schwartz - 
sciatica - 
scimitar - 
scornful - 
scorpion - 
scotland - 
scotsman - scotsmen - 
scotsmen - scotsman - 
scottish - 
scrabble - scramble - scribble - 
scraggly - 
scramble - scrabble - 
scranton - 
scratchy - 
screechy - 
scribble - scrabble - 
scrounge - 
scrutiny - 
sculptor - 
seaboard - 
seacoast - 
seahorse - 
seaquake - 
seashore - 
seasonal - 
sectoral - pectoral - 
sediment - pediment - 
sedition - 
sedulous - 
seedling - 
seething - teething - 
selector - 
selenate - selenite - 
selenite - selenate - 
selenium - 
semantic - 
semester - 
seminary - 
seminole - 
senorita - 
sensible - 
sensuous - 
sentence - 
sentient - 
sentinel - 
separate - 
sequitur - 
seraglio - 
seraphim - 
serenade - 
sergeant - 
seriatim - 
serology - 
servitor - 
setscrew - 
sewerage - 
sextuple - 
shadbush - 
shagbark - 
shagging - snagging - 
shameful - 
shamrock - 
shanghai - 
shantung - 
shareown - 
shattuck - 
shepherd - 
sheppard - 
sheraton - 
sheridan - 
sherlock - 
sherrill - 
sherwood - 
shinbone - 
shipmate - 
shipyard - 
shockley - 
shoehorn - 
shoelace - 
shoemake - 
shopkeep - 
shopworn - 
shortage - 
shortcut - 
shortish - 
shotbush - 
shoulder - 
showboat - 
showcase - 
showdown - slowdown - 
showroom - 
shrapnel - 
shrewish - 
shrunken - 
shuddery - 
shutdown - 
sibilant - 
sicilian - 
sickroom - 
sideband - 
sideline - 
sidelong - 
sidereal - 
siderite - 
sideshow - 
sidestep - 
sidewalk - sidewall - 
sidewall - sidewalk - 
sidewise - 
siegmund - 
sightsee - 
signpost - 
sikorsky - 
silicate - 
silicide - 
silicone - 
silkworm - 
simonson - 
simplify - 
simulate - 
sinclair - 
singable - 
singsong - 
singular - 
sinister - 
sinkhole - 
sinusoid - 
sisyphus - 
sixtieth - 
skeletal - 
skeleton - 
skillful - 
skindive - 
skipjack - 
skirmish - 
skullcap - 
skylight - 
slavonic - 
slippage - 
slippery - 
slogging - clogging - flogging - slugging - 
slothful - 
slovakia - 
slovenia - 
slowdown - showdown - 
slugging - plugging - slogging - 
sluggish - 
smallish - 
smallpox - 
smithson - 
snagging - shagging - 
snapback - 
snappish - 
snapshot - 
snobbery - 
snobbish - 
snowball - snowfall - 
snowfall - snowball - 
snowshoe - 
snyaptic - 
sobriety - 
sociable - 
societal - 
socrates - 
socratic - 
softball - 
software - 
softwood - 
soldiery - 
solecism - 
solenoid - 
solidify - 
solitary - 
solitude - 
solstice - 
solution - 
somebody - 
somerset - 
sometime - 
somewhat - 
songbook - 
sonogram - 
sonority - sorority - 
sonorous - 
soothsay - 
sorensen - sorenson - 
sorenson - sorensen - 
sorority - sonority - 
sorption - 
sourwood - 
southern - 
southpaw - 
souvenir - 
sowbelly - sawbelly - 
spacious - specious - 
spalding - 
spandrel - 
spaniard - 
sparkman - 
sparling - starling - 
specific - 
specimen - 
specious - spacious - 
spectral - 
spectrum - 
specular - 
sphagnum - 
spheroid - 
spherule - 
spinodal - 
spinster - 
spiteful - 
spitfire - 
splendid - 
splotchy - 
splutter - 
spoilage - 
spoonful - 
sporadic - 
sprinkle - 
sprocket - 
spurious - 
spyglass - 
squabble - 
squadron - 
squamous - 
squander - 
squatted - squatter - 
squatter - squatted - 
squeegee - 
squirrel - 
staccato - 
stafford - stamford - stanford - 
stagnant - 
stagnate - 
stairway - 
stallion - 
stalwart - 
stamford - stafford - stanford - 
stampede - 
standard - 
standeth - 
standish - 
standoff - 
stanford - stafford - stamford - 
stanhope - 
stannous - 
starfish - 
stargaze - 
starling - sparling - sterling - stirling - 
statuary - 
stauffer - 
staunton - 
stealthy - 
stearate - 
stephens - 
stepwise - 
sterling - starling - stirling - 
stickpin - 
stigmata - 
stiletto - 
stimulus - 
stinkpot - 
stirling - starling - sterling - 
stockade - 
stockton - 
stopband - 
stopcock - 
stopover - 
stoppage - 
stowaway - 
straddle - 
straggle - strangle - struggle - 
straight - 
strangle - straggle - 
strategy - 
stratify - 
stratton - 
strength - 
stricken - 
stricter - 
strident - 
struggle - straggle - 
stubborn - 
studious - 
stultify - 
stumpage - 
sturgeon - 
stylites - 
subpoena - 
subsumed - 
subtlety - 
suburbia - 
succinct - 
succubus - 
suckling - duckling - 
sudanese - 
suffrage - 
suicidal - 
suitcase - 
sulfuric - 
sullivan - 
sumerian - 
summitry - 
sunburnt - 
sunlight - 
sunshade - 
sunshine - sunshiny - 
sunshiny - sunshine - 
superbly - 
superior - 
supplant - 
suppress - 
supremum - 
surcease - 
surgical - 
surmount - 
surprise - 
surround - 
surveyor - purveyor - 
survival - 
survivor - 
suspense - 
suzerain - 
swanlike - 
swastika - 
sweetish - 
swigging - twigging - 
swimsuit - 
sybarite - 
sycamore - 
syllabic - 
syllable - 
syllabus - 
sylvania - 
symbolic - 
symmetry - 
sympathy - 
symphony - 
symposia - 
synapses - synopses - 
synaptic - synoptic - 
syndrome - 
synonymy - 
synopses - synapses - synopsis - 
synopsis - synopses - 
synoptic - synaptic - 
syracuse - 
systemic - 
tableaux - 
tabulate - 
tachinid - 
tailgate - 
tailspin - 
tailwind - 
takeover - 
talisman - 
tamarack - 
tamarind - 
tangible - 
tantalum - tantalus - 
tantalus - tantalum - 
tanzania - 
tapestry - 
tapeworm - 
tarpaper - 
tasmania - 
tasteful - wasteful - 
taxation - 
taxonomy - 
taxpayer - 
teahouse - 
teakwood - 
teammate - 
teamster - 
teamwork - 
teardrop - 
teaspoon - 
technion - 
tectonic - teutonic - 
teething - seething - 
teetotal - 
teledyne - 
telegram - 
telethon - 
teletype - 
televise - 
telltale - 
temerity - 
template - 
temporal - 
tenacity - 
tendency - 
tenement - 
tennyson - 
tentacle - 
terminal - germinal - 
terminus - 
terrapin - 
terrible - 
terrific - 
tertiary - 
testicle - 
teutonic - tectonic - 
textbook - 
textural - 
thailand - 
thallium - 
thankful - 
theatric - 
thematic - 
theodore - 
theology - rheology - 
theorist - 
there'll - 
therefor - 
thespian - 
thickish - 
thieving - 
thinnish - 
thirteen - 
thompson - 
thoriate - 
thornton - 
thorough - 
thousand - 
threaten - 
throttle - 
thursday - 
ticklish - 
tideland - 
tientsin - 
timeworn - 
tincture - 
tiresome - 
titanate - 
titanium - 
titmouse - 
today'll - 
together - 
toiletry - 
toilsome - 
tolerant - 
tolerate - 
tollgate - 
tomatoes - 
tomorrow - 
tompkins - 
toolmake - 
topnotch - 
topology - typology - 
toroidal - 
torrance - 
tortoise - 
tortuous - 
townsend - 
townsman - townsmen - 
townsmen - townsman - 
trackage - 
tradeoff - 
trainman - trainmen - 
trainmen - trainman - 
tranquil - 
transact - transect - 
transect - transact - transept - 
transept - transect - 
transfer - 
transfix - 
transite - 
transmit - 
traverse - 
travesty - 
treasure - treasury - 
treasury - treasure - 
treatise - 
trespass - 
triangle - 
triassic - 
tribunal - 
trickery - 
trigonal - 
trillion - 
trinidad - 
trioxide - 
triplett - 
triptych - 
tristate - 
trombone - 
troutman - 
trumbull - 
trumpery - 
truncate - 
trustful - 
truthful - 
tungsten - 
turbofan - 
turbojet - 
turnover - 
turnpike - 
tuskegee - 
tutelage - 
tutorial - 
twigging - swigging - 
twilight - 
typeface - 
typology - topology - 
tyrannic - 
tyrosine - 
ubiquity - 
ulcerate - 
ulterior - 
ultimate - 
umbilici - 
umbrella - 
unbidden - 
undulate - 
uniaxial - 
unimodal - 
unipolar - 
uniroyal - 
universe - 
unwieldy - 
upheaval - 
uppercut - 
upstater - 
upstream - 
urbanite - 
urethane - 
ursuline - 
usurious - 
vagabond - 
valhalla - 
validate - 
valkyrie - 
valletta - 
vanadium - 
vanguard - 
vanquish - 
vaporous - 
variable - 
varistor - 
varitype - 
vascular - 
vegetate - 
vehement - 
velocity - 
vendetta - 
vendible - 
venerate - generate - 
venereal - 
venetian - 
vengeful - 
venomous - 
venusian - 
veracity - voracity - 
verandah - 
verbatim - 
verbiage - 
vermouth - 
veronica - 
versatec - 
vertebra - 
vertical - 
vertices - vortices - 
vexation - 
viburnum - 
vicinity - 
victoria - 
victrola - 
viennese - 
viewport - 
vigilant - 
vignette - 
vigorous - rigorous - 
vineyard - 
virginal - 
virginia - 
virtuosi - virtuoso - 
virtuoso - virtuosi - 
virtuous - 
virulent - 
visceral - 
viscount - 
visigoth - 
vitreous - 
vivacity - 
vladimir - 
volatile - 
volcanic - 
volition - 
volstead - 
voltaire - 
volterra - 
voracity - veracity - 
vortices - vertices - 
vreeland - 
wagoneer - 
wainscot - 
waitress - 
walgreen - 
walkover - 
waltzing - 
wardrobe - 
wardroom - 
warplane - 
warranty - 
washbowl - 
washburn - 
wasteful - tasteful - 
watanabe - 
watchdog - 
watchful - 
watchman - watchmen - 
watchmen - watchman - 
waterloo - 
waterman - 
waterway - 
waveform - 
weaponry - 
weinberg - 
wesleyan - 
westerly - 
westward - 
whatever - 
whenever - wherever - 
where're - 
wherever - whenever - 
whiplash - 
whippany - 
whitaker - 
whitcomb - 
whitlock - 
whittier - 
whizzing - 
whomever - 
wightman - 
wildfire - 
wildlife - 
williams - 
wilshire - 
windfall - 
windmill - 
windsurf - 
windward - 
winemake - 
wineskin - 
winfield - 
wingback - 
wingspan - 
winifred - 
winnetka - 
winnipeg - 
winthrop - 
wiseacre - 
wishbone - 
withdraw - withdrew - 
withdrew - withdraw - 
withheld - withhold - 
withhold - withheld - 
wolfgang - 
wondrous - 
woodbury - 
woodcock - 
woodland - 
woodlawn - 
woodpeck - 
woodruff - 
woodshed - 
woodside - 
woodward - woodyard - 
woodwind - 
woodwork - 
woodyard - woodward - 
workaday - 
workbook - 
workload - 
workshop - 
wouldn't - couldn't - 
wrathful - 
wreckage - 
wrongful - 
yarmouth - 
yarmulke - 
yearbook - 
yeomanry - 
yokohama - 
yorktown - 
yosemite - 
youngish - 
yourself - 
youthful - mouthful - 
yugoslav - 
zanzibar - 
zodiacal - 
zucchini - 
abdominal - 
abernathy - 
abhorrent - 
abolition - 
abominate - 
aborigine - 
abscissae - 
absorbent - 
abstinent - 
abuilding - 
abyssinia - 
accentual - 
acceptant - 
accession - 
accessory - 
accipiter - 
acclimate - 
accompany - 
accordant - 
accordion - 
accretion - 
acetylene - 
acidulous - 
acquiesce - 
acquittal - 
acrobatic - 
acropolis - 
actuarial - 
addressee - 
adenosine - 
adiabatic - 
adjective - 
admiralty - 
admission - 
admitting - 
admixture - 
adsorbate - 
adulthood - 
advantage - 
adventure - 
adverbial - 
adversary - 
advertise - 
advisable - 
aerospace - 
aeschylus - 
aesthetic - 
affectate - 
affidavit - 
affiliate - 
affluence - 
affricate - 
aforesaid - 
afterglow - 
afterlife - 
aftermath - 
afternoon - 
afterward - afterword - 
afterword - afterward - 
agamemnon - 
aggravate - 
aggregate - 
aggressor - 
agreeable - 
ahmadabad - ahmedabad - 
ahmedabad - ahmadabad - 
ailanthus - 
alabamian - 
alabaster - 
albatross - 
alcoholic - 
aldebaran - 
alexander - 
alexandra - alexandre - 
alexandre - alexandra - 
algaecide - 
algebraic - 
algonquin - 
algorithm - 
aliphatic - 
allegheny - 
allegiant - 
allegoric - 
allentown - 
alleviate - 
alligator - 
allocable - 
allotting - 
allowance - 
alongside - 
alpheratz - 
altercate - alternate - 
alternate - altercate - 
altimeter - 
aluminate - 
ambiguity - 
ambiguous - 
ambitious - 
ambrosial - 
ambuscade - 
americana - 
americium - 
amorphous - 
ampersand - 
amphibian - 
amphibole - 
amphioxis - 
amplifier - 
amplitude - 
amsterdam - 
anaerobic - 
analeptic - 
analgesic - 
analogous - 
anastasia - 
ancestral - 
anchorage - 
anchorite - 
ancillary - 
andromeda - 
anecdotal - 
angelfish - 
anhydride - anhydrite - 
anhydrite - anhydride - 
anhydrous - 
animosity - 
annapolis - 
annoyance - 
annulling - 
anomalous - 
anonymity - 
anonymous - 
anorthite - 
antarctic - 
anthology - 
antipasto - 
antipathy - 
antipodes - 
antiquary - 
antiquity - 
anybody'd - 
apartheid - 
apathetic - 
aperiodic - 
aphrodite - 
apocrypha - 
apostolic - 
apparatus - 
appellant - 
appellate - 
appendage - 
appertain - 
applejack - 
appliance - 
applicant - 
applicate - 
appointee - 
apportion - 
appraisal - 
apprehend - 
arabesque - 
arbitrage - arbitrate - 
arbitrary - 
arbitrate - arbitrage - 
arboretum - 
arccosine - 
archangel - 
archenemy - 
archetype - 
archibald - 
architect - 
arclength - 
argentina - 
aristotle - 
arlington - 
armadillo - 
armistice - 
armstrong - 
arrhenius - 
arrowhead - 
arrowroot - 
artemisia - 
arteriole - 
arthritis - 
artichoke - 
artillery - 
ascendant - 
ascension - 
ascertain - 
asheville - 
ashmolean - 
asparagus - 
aspersion - 
asplenium - 
assailant - 
assiduity - 
assiduous - 
assistant - 
associate - 
assurance - 
astraddle - 
astrology - 
astronaut - 
astronomy - 
asymmetry - 
asymptote - 
atavistic - 
atlantica - 
atrocious - 
attainder - 
attendant - 
attention - 
attentive - 
attenuate - 
attribute - 
attrition - 
audacious - 
audiotape - 
augustine - 
auschwitz - 
austenite - 
australia - australis - 
australis - australia - 
authentic - 
autoclave - 
autocracy - 
autograph - 
automatic - 
automaton - 
autonomic - 
auxiliary - 
avalanche - 
avocation - evocation - 
avoidance - 
avuncular - 
axiomatic - 
aylesbury - 
azimuthal - 
backboard - buckboard - 
backorder - 
backplane - backplate - 
backplate - backplane - 
backspace - 
backstage - 
backtrack - 
backwater - 
bacterial - 
bacterium - 
badminton - 
bagatelle - 
bakhtiari - 
ballerina - 
ballfield - 
baltimore - 
bamberger - 
bandstand - handstand - 
bandwagon - 
bandwidth - 
baneberry - 
baptismal - 
barbarian - 
barbarism - 
barbarous - 
barcelona - 
barefaced - 
barnstorm - 
barometer - 
barracuda - 
barricade - 
barrymore - 
bartender - 
baseboard - 
baseplate - 
basepoint - 
battalion - 
beachcomb - 
beachhead - 
bearberry - 
beardsley - 
beatitude - 
beauteous - 
beautiful - 
bedimming - 
bedraggle - 
bedridden - 
bedspread - 
bedspring - 
beechwood - 
beefsteak - 
beethoven - 
befitting - 
befogging - 
begetting - besetting - 
beginning - 
bellatrix - 
bellicose - 
bellyache - 
bellyfull - 
belvedere - belvidere - 
belvidere - belvedere - 
benchmark - 
beplaster - 
berenices - 
beresford - 
bergstrom - 
berkelium - 
berkowitz - 
berkshire - 
bernadine - 
bernoulli - 
bernstein - 
beryllium - 
besetting - begetting - 
bestubble - 
bethlehem - 
bethought - 
betrothal - 
bewhisker - 
bialystok - 
bicameral - 
biconcave - 
bifurcate - 
bijection - 
bijective - 
bilateral - 
bilingual - 
billboard - 
billionth - millionth - 
bimonthly - 
binocular - 
binuclear - 
biochemic - 
biography - 
bipartite - 
birdwatch - 
bishopric - 
bitternut - butternut - 
bivariate - 
blackball - 
blackbird - 
blackbody - 
blackburn - 
blackfeet - 
blackjack - 
blackmail - 
blackwell - 
blanchard - 
blaspheme - blasphemy - 
blasphemy - blaspheme - 
blindfold - 
blomquist - 
bloodbath - 
bloodline - 
bloodroot - 
bloodshed - 
bloodshot - 
blueberry - 
bluegrass - 
blueprint - 
blutwurst - 
boathouse - 
boatswain - 
bodybuild - 
bodyguard - 
bolometer - 
bolshevik - 
boltzmann - 
bombastic - 
bombproof - 
bonaparte - 
bookplate - 
bookshelf - 
bookstore - 
boomerang - 
bootstrap - 
borroughs - burroughs - 
bostonian - 
boulevard - 
bourgeois - 
bowstring - 
boyfriend - 
brahmsian - 
brainwash - 
brassiere - 
bratwurst - 
brazilian - 
breadroot - 
breakaway - 
breakdown - 
breakfast - 
briefcase - 
brigadier - 
brilliant - 
brillouin - 
brimstone - 
britannic - 
broadcast - 
broadloom - 
broadside - 
brokerage - 
bromfield - 
bronchial - 
brookline - 
brookside - 
broomcorn - 
brunhilde - 
brunswick - 
brushfire - 
brushlike - 
brushwork - 
bryophyta - bryophyte - 
bryophyte - bryophyta - 
bucharest - 
buckboard - backboard - 
buckthorn - 
buckwheat - 
budgetary - 
budweiser - 
bujumbura - 
bullfinch - 
bullwhack - 
bumblebee - 
bumptious - 
bundestag - 
burlesque - 
burroughs - borroughs - 
bushwhack - 
butadiene - 
buttercup - 
butterfat - 
butterfly - 
butternut - bitternut - 
buxtehude - 
byproduct - 
bystander - 
byzantine - 
byzantium - 
cabdriver - 
cabinetry - 
cacophony - 
cafeteria - 
calculate - 
calibrate - 
caliphate - 
callaghan - 
calvinist - 
cambridge - 
camelback - 
cameraman - cameramen - 
cameramen - cameraman - 
campanile - 
canaveral - 
cancelled - 
cancerous - 
candidacy - 
candidate - 
candlelit - 
cannister - 
cantonese - 
capacious - rapacious - 
capacitor - 
capillary - papillary - 
capricorn - 
captaincy - 
captivate - 
carbonate - 
carbonium - 
carbuncle - 
carcinoma - 
cardboard - hardboard - 
caretaker - 
caribbean - 
carnation - 
carpathia - 
carpenter - 
carpentry - 
carrageen - 
carryover - 
cartesian - 
cartilage - 
cartridge - partridge - 
cartwheel - 
cassandra - 
casserole - 
castigate - 
catabolic - 
cataclysm - 
catalogue - 
catalysis - 
catalytic - 
catatonia - catatonic - 
catatonic - catatonia - 
catchword - watchword - 
catechism - 
categoric - 
catharsis - 
cathedral - 
catherine - katherine - 
cattleman - cattlemen - 
cattlemen - cattleman - 
caucasian - 
causation - 
cavalcade - 
cavendish - 
cavernous - 
cavilling - 
celandine - 
celebrant - 
celebrate - cerebrate - 
celebrity - 
celestial - 
celluloid - 
cellulose - 
censorial - 
centenary - 
centipede - 
cerebrate - celebrate - 
certainty - 
certified - 
certitude - 
cervantes - 
cessation - 
chairlady - 
chalkline - 
challenge - 
chameleon - 
chamomile - 
champagne - 
champaign - 
champlain - 
chantilly - 
chaparral - 
chaperone - 
character - 
charlotte - 
chartroom - 
charybdis - 
chauffeur - 
checkbook - 
checklist - 
checkmate - 
cheekbone - 
cheerlead - 
chemisorb - 
chemistry - 
chevalier - 
chevrolet - 
chicagoan - 
chicanery - 
chickadee - 
chickweed - 
chieftain - 
chilblain - 
childbear - 
childhood - 
childlike - 
chinatown - 
chipboard - clipboard - shipboard - 
chlordane - 
chocolate - 
christian - 
christina - christine - 
christine - christina - 
christmas - 
christoph - 
chromatic - chromatin - 
chromatin - chromatic - 
chronicle - 
chungking - 
churchill - 
churchman - churchmen - 
churchmen - churchman - 
cigarette - 
cinematic - kinematic - 
circuitry - 
circulant - 
circulate - 
citizenry - 
cityscape - 
clamorous - glamorous - 
clamshell - 
clapboard - clipboard - 
clapeyron - 
claremont - 
clarendon - 
classmate - 
classroom - 
clearance - 
clergyman - clergymen - 
clergymen - clergyman - 
cleveland - 
clientele - 
cliffhang - 
climactic - 
clinician - 
clipboard - chipboard - clapboard - 
cloakroom - 
clockwise - 
clockwork - 
clubhouse - 
coachwork - 
coadjutor - 
coagulate - 
coalition - 
coastline - 
cochineal - 
cocklebur - 
cockroach - 
codebreak - 
codeposit - 
coercible - 
coffeecup - 
coffeepot - 
cognition - 
cognitive - 
cognizant - 
coleridge - 
colleague - 
collector - 
collegial - collegian - 
collegian - collegial - 
collimate - 
collinear - 
collision - collusion - 
colloidal - 
colloquia - 
collusion - collision - 
colonnade - 
colosseum - 
coltsfoot - 
columbine - 
combatant - 
combatted - 
combinate - 
cominform - 
commingle - 
committal - 
committed - committee - 
committee - committed - 
commodity - 
commodore - 
commotion - 
communion - 
commutate - 
compacter - 
compagnie - 
companion - 
compelled - 
compendia - 
competent - 
complaint - 
compliant - 
component - 
composite - 
composure - 
concierge - 
concision - 
concocter - 
concourse - 
concubine - 
concurred - 
condiment - 
condition - 
conducive - 
conductor - 
conestoga - 
conferred - 
confessor - 
confidant - confident - 
confident - confidant - 
configure - 
confluent - 
conformal - 
confucian - 
confucius - 
confusion - contusion - 
congenial - 
congolese - 
congruent - 
conjugacy - 
conjugate - 
connector - 
connubial - 
conqueror - 
conscious - 
conscript - 
consensus - 
consignee - 
consignor - 
consonant - 
constance - 
constrain - 
constrict - construct - 
construct - constrict - 
consulate - 
contagion - 
continent - 
continual - 
continued - 
continuum - 
contralto - 
contumacy - 
contusion - confusion - 
conundrum - 
convivial - 
convocate - 
convolute - 
cooperate - 
copolymer - 
coproduct - 
copyright - 
coralline - 
coriander - 
corkscrew - 
cormorant - 
cornbread - 
cornelius - 
cornfield - 
corollary - 
coroutine - 
corporate - 
corporeal - 
corpulent - 
corralled - 
corrector - 
correlate - 
corrosion - 
corrosive - 
corrugate - 
coruscate - 
corvallis - 
cosmology - 
cosponsor - 
cotangent - 
cotillion - 
cotyledon - 
counselor - 
countdown - 
countrify - 
courteous - 
courtesan - 
courtroom - 
courtyard - 
couturier - 
covariant - 
covariate - 
cowardice - 
crabapple - 
craftsman - craftsmen - draftsman - 
craftsmen - craftsman - draftsmen - 
cranberry - 
cranelike - 
crankcase - 
credulity - 
credulous - 
creekside - 
crematory - 
crescendo - 
crestview - 
cretinous - 
criterion - 
crocodile - 
crossbill - 
crosslink - 
crossover - 
crossroad - 
crosstalk - crosswalk - 
crosswalk - crosstalk - 
crosswise - 
crossword - crosswort - 
crosswort - crossword - 
crotchety - 
crowberry - 
cryogenic - 
cubbyhole - 
culminate - fulminate - 
cultivate - 
curiosity - 
curricula - 
curvature - 
custodial - custodian - 
custodian - custodial - 
customary - 
cutaneous - 
cutthroat - 
cyclopean - 
cyclorama - 
cyclotron - 
cylindric - 
cytolysis - 
cytoplasm - 
dachshund - 
dalhousie - 
damnation - 
dandelion - 
dangerous - 
danielson - 
daredevil - 
dartmouth - 
darwinian - 
dashboard - washboard - 
daugherty - dougherty - 
davenport - 
deaconess - 
deathward - 
debarring - 
debenture - 
debugging - 
debutante - 
decathlon - 
deceitful - 
decennial - 
deception - reception - 
deceptive - receptive - 
decertify - 
deciduous - 
declivity - 
decompile - 
decompose - 
decontrol - 
decreeing - 
decrement - 
deducible - reducible - 
defendant - 
defensive - 
deferring - deterring - referring - 
deficient - 
deflector - reflector - 
degassing - 
degumming - 
dehydrate - 
delectate - 
delegable - 
delicious - delirious - 
delineate - 
delirious - delicious - 
delphinus - 
demagnify - 
demagogue - 
demarcate - 
demitting - remitting - 
democracy - 
demurring - 
demystify - 
dendritic - 
denigrate - 
dentistry - 
deodorant - 
departure - 
dependent - 
depletion - 
depositor - 
deprecate - depredate - 
depredate - deprecate - 
depressor - 
descartes - 
desecrate - 
designate - 
desolater - 
desperado - 
desperate - 
dessicate - 
destinate - 
destitute - 
desuetude - 
desultory - 
detention - retention - 
detergent - deterrent - 
determine - 
deterrent - detergent - 
deterring - deferring - 
detonable - 
detractor - 
detriment - 
deuterate - 
deuterium - 
devastate - 
dexterity - 
diacritic - 
diagnoses - diagnosis - 
diagnosis - diagnoses - 
dialectic - 
diaphragm - 
diathermy - 
diathesis - 
dichondra - 
dichotomy - 
dickerson - 
dickinson - 
dietician - 
different - 
difficult - 
diffident - 
diffusion - 
diffusive - 
digestion - 
digestive - 
digitalis - 
dignitary - 
dimension - 
dionysian - 
diphthong - 
diplomacy - 
directory - 
directrix - 
dirichlet - 
discomfit - 
discovery - 
dishwater - 
dismissal - 
disparage - disparate - 
disparate - disparage - 
dispelled - 
dispersal - 
disputant - 
dissemble - 
dissident - 
dissipate - 
dissonant - 
disulfide - 
divergent - 
diversify - 
diversion - 
divisible - 
dixieland - 
doctorate - 
doctrinal - 
dogmatism - 
dolomitic - 
dominican - 
dominique - 
donaldson - 
doolittle - 
dormitory - 
dosimeter - 
doubleday - 
doubleton - 
dougherty - daugherty - 
dowitcher - 
downdraft - 
downgrade - 
downright - 
downriver - 
downslope - 
downspout - 
downstate - 
downtrend - 
draftsman - craftsman - draftsmen - 
draftsmen - craftsmen - draftsman - 
dragonfly - 
dramatist - 
dreamboat - 
dreamlike - 
dressmake - 
dromedary - 
drugstore - 
dubitable - 
duopolist - 
duplicate - 
duplicity - 
dusenberg - 
dusenbury - 
dysentery - 
dyspeptic - 
dysplasia - 
dystrophy - 
earthmove - 
earthworm - 
eastbound - 
easygoing - 
eavesdrop - 
ebullient - 
eccentric - 
economist - 
ecosystem - 
ecumenist - 
edelweiss - 
edematous - 
edinburgh - 
editorial - 
edmondson - 
edwardian - 
edwardine - 
effectual - 
efficient - 
effluvium - 
egregious - 
eightfold - 
eightieth - 
ejaculate - 
elaborate - 
elastomer - 
electoral - 
electress - 
electrify - 
electrode - 
eliminate - 
elisabeth - elizabeth - 
elizabeth - elisabeth - 
ellipsoid - 
ellsworth - 
elsewhere - 
elucidate - 
embargoes - 
embarrass - 
embedding - 
embellish - 
embrittle - 
embroider - 
embryonic - 
emendable - 
emittance - 
emolument - 
emotional - 
emphysema - 
employing - 
endosperm - 
endurance - 
energetic - 
englander - 
englewood - 
enigmatic - 
enjoinder - 
enstatite - 
entertain - 
entourage - 
enumerate - 
enunciate - 
enzymatic - 
ephemeral - 
ephemeris - 
epicurean - 
epicyclic - 
epidermic - epidermis - 
epidermis - epidermic - 
epileptic - 
epiphysis - 
episcopal - 
epitaxial - 
equipoise - 
equipping - 
equitable - 
equivocal - 
eradicate - 
ernestine - 
erroneous - 
erudition - 
espionage - 
esplanade - 
essential - 
establish - 
estimable - 
estuarine - 
ethnology - 
etiquette - 
etymology - 
eucharist - 
euclidean - 
eukaryote - 
eumenides - 
euphemism - euphemist - 
euphemist - euphemism - 
euphorbia - 
euphrates - 
euripides - 
evaluable - 
evangelic - 
evaporate - 
eventuate - 
evergreen - 
everybody - 
evocation - avocation - 
evolution - 
excellent - 
excelling - expelling - 
excelsior - 
exception - 
excessive - 
exchequer - 
excisable - excusable - 
exclusion - 
exclusive - 
excoriate - 
excretion - 
excretory - 
exculpate - 
excursion - 
excusable - excisable - 
execrable - 
execution - 
executive - 
executrix - 
exemplary - 
exemplify - 
exemption - 
exhibitor - 
exogamous - 
exogenous - 
exonerate - 
expansion - 
expansive - expensive - 
expatiate - 
expectant - 
expedient - 
expelling - excelling - 
expensive - expansive - extensive - 
expertise - 
expletive - 
explicate - 
explosion - 
explosive - 
expositor - 
expulsion - 
expurgate - 
exquisite - 
extempore - 
extension - 
extensive - expensive - 
extenuate - 
extirpate - 
extolling - 
extractor - 
extradite - 
extricate - 
extrinsic - 
extrovert - 
extrusion - 
extrusive - 
exuberant - 
exudation - 
eyebright - 
fabricate - 
faceplate - 
facetious - 
facsimile - 
factorial - 
fairchild - 
fairfield - 
falsehood - 
fantasist - 
fantastic - 
farmhouse - 
fascinate - 
felonious - 
fencepost - 
fenugreek - 
ferdinand - 
ferocious - 
feudatory - 
fiberglas - 
fibonacci - 
fibration - 
fiduciary - 
fieldwork - 
fifteenth - 
filmstrip - 
financial - 
financier - 
finessing - 
fingertip - 
firebreak - 
firehouse - 
firelight - 
fireplace - 
firepower - 
fireproof - 
firestone - 
firsthand - 
fischbein - 
fisherman - fishermen - 
fishermen - fisherman - 
fisticuff - 
fitchburg - 
flageolet - 
flagstaff - 
flagstone - 
flammable - 
flashback - 
flatulent - 
fledgling - 
flintlock - 
floodgate - 
floridian - 
flotation - 
flowchart - 
flowerpot - 
fluctuate - 
fluoresce - 
fluorspar - 
followeth - 
fomalhaut - 
foodstuff - 
foolhardy - 
foolproof - 
footprint - 
footstool - 
forbidden - 
foregoing - 
forgetful - 
forgotten - 
formatted - 
formulaic - 
formulate - 
fortescue - 
forthcome - 
forthwith - 
fortitude - 
fortnight - 
fortunate - 
fosterite - 
foulmouth - 
foundling - 
fractious - 
frambesia - 
framework - 
franchise - francoise - 
francisco - 
francoise - franchise - 
frankfort - frankfurt - 
frankfurt - frankfort - 
fraternal - 
frederick - 
freestone - 
freethink - 
freewheel - 
frenchman - frenchmen - 
frenchmen - frenchman - 
fricative - 
friedrich - 
frightful - 
frivolity - 
frivolous - 
frostbite - 
frustrate - 
fullerton - 
fulminate - culminate - 
fundraise - 
fungicide - 
furniture - 
fusillade - 
gabardine - 
gaberones - 
gabrielle - 
gagwriter - 
galactose - 
galapagos - 
galbreath - 
gallagher - 
gallantry - 
gallberry - 
gallinule - 
gallivant - 
gallonage - 
gallstone - 
galvanism - 
galveston - 
gangplank - 
garibaldi - 
garrulous - 
gaucherie - 
gaugeable - 
gauleiter - 
genealogy - 
genevieve - 
gentility - 
gentleman - gentlemen - 
gentlemen - gentleman - 
geography - 
geraldine - 
geriatric - 
germanium - 
germicide - 
germinate - terminate - 
gerundial - 
gerundive - 
ghostlike - 
gibberish - 
gibraltar - 
gigacycle - 
gigahertz - 
gilchrist - 
gillespie - 
gimmickry - 
gladiator - 
gladiolus - 
gladstone - 
glamorous - clamorous - 
glandular - 
glassware - 
glasswort - 
glutamate - 
glutamine - 
glutinous - 
glyceride - glycerine - 
glycerine - glyceride - 
godfather - 
godmother - 
godparent - 
goldeneye - 
goldenrod - 
goldfinch - 
goldsmith - 
goldstein - 
goldstine - 
goldwater - 
gottfried - 
governess - 
grammatic - 
grandiose - 
granulate - 
granville - 
grapevine - 
grassland - 
gratitude - 
graveyard - 
gravitate - 
graybeard - 
graywacke - 
greatcoat - 
greenbelt - 
greenberg - 
greenland - 
greenware - 
greenwich - 
greenwood - 
greyhound - 
grievance - 
grillwork - 
gristmill - 
grosvenor - 
grotesque - 
groundsel - 
guanidine - 
guarantee - 
guarantor - 
guatemala - 
guerrilla - 
guesswork - 
guidebook - 
guideline - 
guidepost - 
guildhall - 
guillemot - 
gunderson - 
gunpowder - 
gustafson - 
gutenberg - 
gymnasium - 
gymnastic - 
gyrfalcon - 
gyroscope - 
habituate - 
hackberry - 
hackneyed - 
hailstone - 
hailstorm - 
halloween - 
halverson - 
hamburger - 
hampshire - 
handclasp - 
handiwork - 
handlebar - 
handshake - 
handspike - 
handstand - bandstand - 
handwrite - 
haphazard - 
haplology - 
harbinger - 
hardboard - cardboard - 
harmonica - 
hausdorff - 
havilland - 
hawthorne - 
hazardous - 
headboard - 
headdress - 
headlight - 
headphone - 
headstand - 
headstone - 
headwater - 
healthful - 
heartbeat - 
heartfelt - 
hellebore - 
helmholtz - 
helvetica - 
hemingway - 
hemolytic - 
hempstead - 
henderson - 
hendricks - 
henrietta - 
hepatitis - 
herculean - 
hereabout - 
hereafter - 
hereunder - 
heritable - veritable - 
hermitian - 
hernandez - 
herodotus - 
hesitater - 
heuristic - 
hexagonal - 
hexameter - 
hibernate - 
hierarchy - 
hifalutin - 
highlight - 
hilarious - 
hillbilly - 
hillcrest - 
hindrance - 
hindsight - 
hiroshima - 
histamine - 
histidine - 
histogram - 
histology - 
historian - 
hitchcock - 
hoarfrost - 
hobgoblin - 
hollerith - 
hollister - 
hollyhock - 
hollywood - 
holocaust - 
holystone - 
homebound - 
homebuild - 
homeopath - 
homeowner - 
homestead - 
homicidal - 
homologue - 
honeycomb - 
honeymoon - 
honeywell - 
honoraria - 
honorific - 
hopscotch - 
horehound - 
hornmouth - 
horoscope - 
horseback - 
horsehair - 
horseplay - 
horseshoe - 
horsetail - 
houdaille - 
hourglass - 
houseboat - 
household - 
housekeep - 
housewife - 
housework - 
howsoever - 
hoydenish - 
humiliate - 
hundredth - 
hungarian - 
hurricane - 
husbandry - 
hutchison - 
hydrangea - 
hydraulic - 
hydrology - 
hydronium - 
hydroxide - 
hyperbola - 
hyphenate - 
hypocrisy - 
hypocrite - 
icelandic - 
ichneumon - 
identical - 
ideologue - 
idiomatic - 
ignoramus - 
illegible - 
imaginary - 
imaginate - 
imbalance - 
imbroglio - 
immediacy - 
immediate - 
immersion - 
immigrant - 
immigrate - 
immodesty - 
immovable - 
immutable - 
impartial - 
impassion - 
impassive - 
impatient - 
impedance - 
impelling - 
imperfect - 
imperious - 
impetuous - 
implement - 
implicant - 
implicate - 
implosion - 
impolitic - 
important - 
importune - 
imposture - 
imprecate - 
imprecise - 
impromptu - 
improvise - 
imprudent - 
impulsive - 
inability - 
inanimate - 
inaudible - 
inaugural - 
incapable - 
incarnate - 
incaution - 
incentive - inventive - 
inception - 
incessant - 
incipient - 
inclement - increment - 
inclusion - 
inclusive - 
incorrect - 
increment - inclement - 
inculcate - 
incumbent - 
incurring - 
incursion - 
indelible - 
indemnify - indemnity - 
indemnity - indemnify - 
indenture - 
indignant - 
indignity - 
indispose - 
indochina - 
indonesia - 
inducible - 
indulgent - 
ineffable - 
inelastic - 
inelegant - 
inertance - 
infantile - 
infatuate - 
inference - 
inferring - 
infertile - 
infinitum - 
infirmary - 
inflicter - 
influence - 
influenza - 
informant - 
infuriate - 
infusible - 
ingenious - ingenuous - 
ingenuity - 
ingenuous - ingenious - 
ingersoll - 
ingestion - 
inheritor - 
inhibitor - 
inholding - 
injurious - 
injustice - 
innermost - 
innkeeper - 
innocuous - 
inoculate - 
inorganic - 
inputting - 
insidious - invidious - 
insincere - 
insinuate - 
insistent - 
insoluble - 
insolvent - 
insomniac - 
inspector - 
instigate - 
institute - 
insurance - 
insurgent - 
insurrect - 
integrand - 
integrate - 
integrity - 
intellect - 
intendant - 
intensify - 
intensive - 
intention - invention - 
intercept - 
interdict - 
interfere - 
interject - intersect - 
interlude - 
interpret - 
interrupt - 
intersect - interject - 
intervene - 
intestate - 
intestine - 
intimater - 
intricacy - 
intricate - 
intrinsic - 
introduce - 
introject - 
introvert - 
intrusion - 
intrusive - 
intuition - 
intuitive - 
invariant - 
invective - inventive - 
invention - intention - 
inventive - incentive - invective - 
inventory - 
inverness - 
inversion - 
invidious - insidious - 
inviolate - 
invisible - 
ironstone - 
irradiate - 
irrawaddy - 
irregular - 
irritable - 
irruption - 
isinglass - 
islamabad - 
isotropic - 
israelite - 
itinerant - 
itinerary - 
jablonsky - 
jackknife - 
jamestown - 
janissary - 
jansenist - 
jefferson - 
jellyfish - 
jerusalem - 
jitterbug - litterbug - 
jobholder - 
jockstrap - 
johnstown - 
jorgensen - jorgenson - 
jorgenson - jorgensen - 
josephine - 
josephson - 
judicable - 
judiciary - 
judicious - 
junkerdom - 
junketeer - 
justinian - 
juxtapose - 
kalamazoo - 
kamchatka - 
kaolinite - 
karamazov - 
kaskaskia - 
katharine - katherine - 
katherine - catherine - katharine - 
kennecott - 
kernighan - 
kettering - 
keynesian - 
kibbutzim - 
kidnapped - 
kinematic - cinematic - 
kingsbury - 
kinshasha - 
kittenish - 
knifelike - 
knockdown - 
knowledge - 
knoxville - 
kobayashi - 
kronecker - 
laborious - 
labyrinth - 
lafayette - 
lakehurst - 
lampblack - 
lamplight - 
lancaster - 
landowner - 
landscape - 
landslide - 
lanthanum - 
laplacian - 
laryngeal - 
laudatory - 
lavoisier - 
lawgiving - 
lazybones - 
leasehold - 
legendary - 
legislate - 
leitmotif - leitmotiv - 
leitmotiv - leitmotif - 
leningrad - 
lethargic - 
letterman - lettermen - 
lettermen - letterman - 
leviticus - 
lexington - 
libertine - 
librarian - 
lifeblood - 
lifeguard - 
lifestyle - 
lightface - 
lightning - 
limelight - 
limestone - 
limousine - 
lindbergh - 
lindquist - lundquist - 
lindstrom - 
lipschitz - 
liquidate - 
lissajous - 
lithology - 
lithuania - 
litigious - 
litterbug - jitterbug - 
littleton - 
livermore - 
liverpool - 
liverwort - 
livestock - 
loathsome - 
lobscouse - 
locksmith - 
locomotor - 
lodestone - 
lodgepole - 
logarithm - 
loincloth - 
longevity - 
longitude - 
looseleaf - 
loquacity - 
loudspeak - 
louisiana - 
lounsbury - 
lousewort - 
lubricant - 
lubricate - 
lubricity - 
lucrative - 
lucretius - 
ludicrous - 
lufthansa - 
luftwaffe - 
lumberman - lumbermen - 
lumbermen - lumberman - 
luminance - 
lunchroom - 
lunchtime - 
lundquist - lindquist - 
luxuriant - 
luxuriate - 
luxurious - 
lynchburg - 
macarthur - 
macdonald - 
macedonia - 
macgregor - 
machinery - 
macintosh - 
mackenzie - 
macmillan - 
madeleine - 
maelstrom - 
magdalene - 
magnesite - magnetite - 
magnesium - 
magnetite - magnesite - 
magnetron - 
magnitude - 
makeshift - 
maladjust - 
maladroit - 
malformed - 
malicious - 
malignant - 
malleable - 
mammalian - 
mandatory - 
manganese - 
manhattan - 
mannequin - 
mannerism - 
manometer - nanometer - 
mansfield - 
manzanita - 
margarine - 
marijuana - 
marketeer - 
markovian - 
marmalade - 
marquette - 
marrietta - 
marshland - 
marsupial - 
martinson - 
martyrdom - 
marvelous - 
masculine - 
masochism - masochist - 
masochist - masochism - 
masterful - 
matchbook - 
matchmake - watchmake - 
maternity - 
mathewson - 
matriarch - patriarch - 
matrimony - patrimony - 
matsumoto - 
mauritius - 
mausoleum - 
mayflower - 
mcclellan - 
mccluskey - 
mcconnell - mcdonnell - 
mccormick - 
mccracken - 
mcdermott - 
mcdonnell - mcconnell - 
mcdougall - 
mcfarland - 
mcpherson - 
meanwhile - 
mechanism - mechanist - 
mechanist - mechanism - 
medallion - 
medicinal - 
megahertz - 
melanesia - 
melbourne - 
meliorate - 
melodious - 
melodrama - 
melpomene - 
meltwater - 
memorable - 
memoranda - 
menagerie - 
mendacity - 
mennonite - 
menopause - 
mercenary - 
mercurial - 
merganser - 
merrimack - 
merriment - 
merrymake - 
mescaline - 
messenger - 
messieurs - 
metabolic - 
metalloid - 
metalwork - 
meteorite - 
methodism - methodist - 
methodist - methodism - 
methylene - 
metronome - 
mezzanine - 
michelson - mickelson - 
mickelson - michelson - 
microbial - 
microcosm - 
middleman - middlemen - 
middlemen - middleman - 
middlesex - 
middleton - 
midstream - 
midwinter - 
migratory - 
milestone - millstone - 
millennia - 
millinery - 
millionth - billionth - 
millipede - 
millstone - milestone - 
milwaukee - 
mimicking - 
mincemeat - 
minefield - 
miniature - 
minnesota - 
minuscule - 
minuteman - minutemen - 
minutemen - minuteman - 
miscreant - 
misshapen - 
mistletoe - 
miterwort - 
mockernut - 
moldboard - 
molecular - 
molybdate - 
momentary - 
momentous - 
monarchic - 
monastery - 
moneymake - 
moneywort - 
monoceros - 
monocular - 
monologue - 
monomeric - 
monotreme - 
monstrous - 
montclair - 
moonlight - 
morphemic - 
morrissey - 
mortgagee - 
mortgagor - 
mortician - 
moustache - 
multiplet - multiplex - 
multiplex - multiplet - 
multitude - 
municipal - 
murderous - 
muscovite - 
muskmelon - 
mustachio - 
mycenaean - 
myofibril - 
myoglobin - 
mythology - 
nameplate - 
nanometer - manometer - 
nantucket - 
narcissus - 
nashville - 
nathaniel - 
navigable - 
necessary - 
necessity - 
nectarine - 
neglecter - 
negligent - 
negotiate - 
neodymium - 
neolithic - 
neologism - 
neptunium - 
neuralgia - 
neurology - 
newcastle - 
newspaper - 
newsstand - 
newtonian - 
nicaragua - 
nicholson - 
nicodemus - 
nietzsche - 
niggardly - 
nightclub - 
nightfall - 
nightgown - 
nighthawk - 
nightmare - 
nighttime - 
nilpotent - 
ninetieth - 
nocturnal - 
noisemake - 
nomograph - tomograph - 
nonsensic - 
nordstrom - 
normative - 
northeast - 
northerly - 
northland - 
northward - 
northwest - 
norwegian - 
nosebleed - 
nostalgia - nostalgic - 
nostalgic - nostalgia - 
notoriety - 
notorious - 
novitiate - 
nucleolus - 
numerable - 
nutrition - 
nutritive - 
o'connell - o'donnell - 
o'donnell - o'connell - 
obfuscate - 
objectify - 
oblivious - 
obnoxious - 
observant - 
obsession - 
obsessive - 
obstetric - 
obstinacy - 
obstinate - 
obstruent - 
obtrusion - 
obtrusive - 
occipital - 
occlusion - 
occlusive - 
occultate - 
occurrent - 
occurring - 
oceanside - 
octagonal - 
octahedra - 
octennial - 
octillion - 
offenbach - 
offensive - 
offertory - 
officiate - 
officious - 
offsaddle - 
offspring - 
oldenburg - 
olfactory - 
oligarchy - 
oligopoly - 
ombudsman - 
onlooking - 
onrushing - 
onslaught - 
ophiuchus - 
opportune - 
opposable - 
oppressor - 
optometry - 
orangutan - 
orchestra - 
ordinance - 
orgiastic - 
originate - 
orography - 
orphanage - 
orthodoxy - 
orwellian - 
oscillate - 
osteology - 
osteopath - 
ostracism - 
ostrander - 
otherwise - 
ourselves - 
outermost - 
oxygenate - 
pageantry - 
pakistani - 
paleozoic - 
palestine - 
palladian - 
palladium - 
palmolive - 
panhandle - 
panoramic - 
pantheism - pantheist - 
pantheist - pantheism - 
pantomime - 
paperback - 
paperwork - 
papillary - capillary - 
parabolic - 
parachute - 
paradoxic - 
paragraph - 
paralysis - 
paramedic - 
parameter - 
paramount - 
paranoiac - 
parasitic - 
paratroop - 
paregoric - 
parentage - 
parkinson - 
parochial - 
parsimony - 
parsonage - personage - 
parthenon - 
partition - 
partridge - cartridge - 
passenger - 
passivate - 
patagonia - 
patchwork - 
pathology - 
patriarch - matriarch - 
patrician - 
patrimony - matrimony - 
patriotic - patristic - 
patristic - patriotic - 
patrolled - 
patrolman - patrolmen - 
patrolmen - patrolman - 
patronage - 
patroness - 
patterson - 
pawtucket - 
paymaster - 
peaceable - placeable - 
peacemake - 
peacetime - 
peachtree - 
pecuniary - 
pedagogic - 
pedagogue - 
pediatric - 
penetrate - 
peninsula - 
pensacola - 
pentagram - 
pentecost - 
penthouse - 
penurious - 
pepperoni - 
perchance - 
percolate - 
perdition - 
peregrine - 
perennial - 
perfecter - 
perforate - 
perfumery - 
perfusion - 
periclean - 
perimeter - 
periphery - 
periscope - 
permalloy - 
permanent - 
permeable - 
permitted - 
perpetual - 
persecute - 
persevere - 
persimmon - 
personage - parsonage - 
personify - 
personnel - 
pertinent - 
pervasion - 
pervasive - 
pessimism - pessimist - 
pessimist - pessimism - 
pesticide - 
pestilent - 
petroleum - 
petrology - 
petticoat - 
phagocyte - 
phalanger - 
phalarope - 
phenomena - 
phenotype - 
philology - 
philosoph - 
phoenicia - 
phonology - 
phosphate - 
phosphide - phosphine - 
phosphine - phosphide - 
phthalate - 
phylogeny - 
physician - 
pickering - 
picnicked - picnicker - 
picnicker - picnicked - 
picofarad - 
picojoule - 
pictorial - 
piecemeal - 
piecewise - 
piggyback - 
pilferage - 
pillsbury - 
pineapple - 
pinehurst - 
pirouette - 
pistachio - 
pitchfork - 
pituitary - 
pizzicato - 
placeable - peaceable - 
placental - 
plaintiff - 
plaintive - 
planeload - 
planetary - 
planetoid - 
plastisol - 
platitude - 
platonism - platonist - 
platonist - platonism - 
plausible - 
playhouse - 
plaything - 
plenitude - 
plentiful - 
plexiglas - 
plowshare - 
plugboard - 
pluggable - 
plutonium - 
pneumatic - 
pneumonia - 
pocketful - 
pointwise - 
poisonous - 
pokerface - 
polariton - 
policeman - policemen - 
policemen - policeman - 
politburo - 
pollinate - 
pollutant - 
pollution - 
polonaise - 
polygonal - 
polyhedra - 
polymeric - 
polymorph - 
polyphony - 
pompadour - 
pomposity - 
ponderous - 
porcelain - 
porcupine - 
portfolio - 
portrayal - 
portulaca - 
possessor - 
posterior - 
posterity - 
postorder - 
postulate - 
potassium - 
potentate - 
potential - 
potpourri - 
practical - 
pragmatic - 
prayerful - 
precedent - 
precipice - 
precision - 
precocity - 
precursor - 
predatory - prefatory - 
predicate - 
predictor - 
predilect - 
preemptor - 
prefatory - predatory - 
preferred - 
prejudice - 
premature - 
preoccupy - 
prescribe - proscribe - 
prescript - 
president - 
presuming - 
prevalent - 
priestley - 
primitive - 
princeton - 
principal - 
principia - 
principle - 
printmake - 
priscilla - 
prismatic - 
pritchard - 
privilege - 
procedure - 
processor - professor - 
procreate - 
professor - processor - 
profiteer - 
profusion - prolusion - 
prognosis - 
projector - protector - 
prolusion - profusion - 
promenade - 
prominent - 
promotion - 
pronounce - 
proofread - 
propagate - 
propelled - propeller - 
propeller - propelled - 
prophetic - 
proponent - 
propriety - 
propylene - 
proscribe - prescribe - 
prosecute - 
prostrate - 
protector - projector - 
prototype - 
protozoan - 
provident - 
provision - 
proximate - 
proximity - 
psychoses - psychosis - 
psychosis - psychoses - 
psychotic - 
ptarmigan - 
ptolemaic - 
pubescent - 
pulmonary - 
punctuate - 
puppeteer - 
purgation - 
purgative - 
purgatory - 
puritanic - 
purposive - 
pygmalion - 
pyongyang - 
pyracanth - 
pyramidal - 
pyrolysis - 
pyrometer - 
quadratic - 
quadrille - 
quadruple - 
quakeress - 
qualified - 
quarryman - quarrymen - 
quarrymen - quarryman - 
quartzite - 
querulous - 
quicklime - 
quicksand - 
quickstep - 
quiescent - 
quillwort - 
quizzical - 
quotation - 
racetrack - 
racketeer - 
radcliffe - 
radiogram - 
radiology - 
rainstorm - 
rancorous - 
rangeland - 
rapacious - capacious - 
rasmussen - 
raspberry - 
ratepayer - 
rationale - 
rawlinson - 
razorback - 
rebelling - repelling - 
rebellion - 
rebutting - 
reception - deception - 
receptive - deceptive - 
recession - secession - 
recessive - 
recherche - 
recipient - 
reconcile - 
recondite - 
rectangle - 
rectifier - 
rectitude - 
recumbent - 
recurrent - 
recurring - 
recursion - 
reducible - deducible - 
redundant - 
refection - 
refectory - 
referable - 
referenda - 
referring - deferring - 
reflector - deflector - 
reflexive - 
registrar - 
regretful - 
regretted - 
rehearsal - 
reimburse - 
reinforce - 
reinstate - 
rejoinder - 
religious - 
reliquary - 
reluctant - 
remainder - 
rembrandt - 
remington - 
reminisce - 
remission - 
remitting - demitting - 
rendition - 
repairman - repairmen - 
repairmen - repairman - 
repellent - 
repelling - rebelling - 
repentant - 
repertory - 
replenish - 
replicate - 
reprimand - 
reptilian - 
repudiate - 
repugnant - 
repulsion - revulsion - 
repulsive - 
requisite - 
rerouting - 
resentful - 
reserpine - 
reservoir - 
residuary - 
resilient - 
resistant - 
resistive - 
respecter - 
restraint - 
resultant - 
resurgent - 
resurrect - 
retaliate - 
retardant - 
retention - detention - 
retentive - 
reticulum - 
retrieval - 
reversion - 
revertive - 
revisable - 
revocable - 
revulsion - repulsion - 
reykjavik - 
rhapsodic - 
rheumatic - 
rhodolite - rhodonite - 
rhodonite - rhodolite - 
richfield - 
ridgepole - 
righteous - 
rightmost - 
rightward - 
riverbank - 
riverside - 
roadblock - 
roadhouse - 
robertson - 
rochester - 
rockbound - 
rodriguez - 
roosevelt - 
rosenberg - 
rosenblum - 
rosenthal - 
roughcast - 
roughneck - 
roughshod - 
roundhead - 
roundworm - 
ruination - 
runnymede - 
rustproof - 
ruthenium - 
sacrament - 
sacrifice - 
sacrilege - 
saddlebag - 
safeguard - 
sagacious - salacious - 
sagebrush - 
sainthood - 
salacious - sagacious - 
salesgirl - 
saleslady - 
salisbury - 
saltwater - 
salvation - 
salvatore - 
samuelson - 
sanatoria - 
sanctuary - 
sandblast - 
sanderson - 
sandpaper - sandpiper - 
sandpiper - sandpaper - 
sandstone - 
sanhedrin - 
santayana - 
sapsucker - 
sarcastic - 
saskatoon - 
sassafras - 
satellite - 
saturable - 
saturater - 
saturnine - 
sawtimber - 
saxifrage - 
saxophone - 
scapegoat - 
scarecrow - 
scarlatti - 
scarsdale - 
schelling - 
schematic - 
schlieren - 
schneider - 
schofield - 
schoolboy - 
schroeder - 
scientist - 
sclerosis - 
sclerotic - 
scorecard - 
scoundrel - 
scrapbook - 
screwball - 
screwbean - 
screwworm - 
scribners - 
scrimmage - 
scription - 
scripture - 
scrutable - 
sculpture - 
sebastian - 
secession - recession - 
seclusion - 
secondary - 
secretary - 
secretion - 
secretive - 
sectarian - 
sedentary - 
seditious - 
seduction - 
seductive - 
segregant - 
segregate - 
selectman - selectmen - 
selectmen - selectman - 
selectric - 
selfridge - 
semaphore - 
semblance - 
semiramis - 
sensitive - 
sentiment - 
separable - 
september - 
sepuchral - 
sequester - 
serviette - 
servitude - 
sevenfold - 
seventeen - 
severalty - 
sextuplet - 
sforzando - 
shakeable - 
shakedown - 
shameface - 
sharecrop - 
sheepskin - 
sheffield - 
shipboard - chipboard - 
shipbuild - 
shipshape - 
shipwreck - 
shirtmake - 
shitepoke - 
shoreline - 
shortfall - 
shorthand - 
shortstop - 
shouldn't - 
showpiece - 
showplace - 
shrinkage - 
shrubbery - 
shrugging - 
sideboard - 
sidelight - 
sidetrack - 
siegfried - 
sieglinda - 
sightseer - 
signature - 
signboard - 
siliceous - 
siltation - 
siltstone - 
silverman - 
simpleton - 
simulcast - 
singapore - 
singleton - 
sinistral - 
sisyphean - 
sixteenth - 
sketchpad - 
skyrocket - 
skyscrape - 
slapstick - 
slaughter - 
sleepwalk - 
slingshot - 
sloganeer - 
smalltime - 
snakebird - 
snakelike - 
snakeroot - 
snowflake - 
snowstorm - 
soapstone - 
sobriquet - 
sociology - 
solemnity - 
solicitor - 
soliloquy - 
solipsism - 
solitaire - 
someplace - 
something - 
somewhere - 
sommelier - 
somnolent - 
sophistry - 
sophocles - 
sophomore - 
sorrowful - 
sourberry - 
sourdough - 
southeast - 
southland - 
southward - 
southwest - 
sovereign - 
spacesuit - 
spacetime - 
spaghetti - 
spaulding - 
speakeasy - 
spearhead - 
spearmint - 
spectacle - 
spectator - 
speculate - 
speedboat - 
speedwell - 
spicebush - 
spikenard - 
spinnaker - 
spinneret - 
spiritual - 
splenetic - 
splintery - 
spokesman - spokesmen - 
spokesmen - spokesman - 
sportsman - sportsmen - 
sportsmen - sportsman - 
spotlight - 
sprightly - 
squatting - 
squawbush - 
squawroot - 
squeamish - 
stableman - stablemen - 
stablemen - stableman - 
staircase - 
stairwell - 
stalemate - 
staminate - 
stanchion - 
stapleton - 
starboard - 
starlight - 
stateroom - 
statesman - statesmen - 
statesmen - statesman - 
statewide - 
statuette - 
statutory - 
steadfast - 
steamboat - 
steelmake - 
steinberg - sternberg - 
stenotype - 
stepchild - 
stephanie - 
steradian - 
sternberg - steinberg - 
stevedore - 
stevenson - 
stimulant - 
stimulate - stipulate - 
stipulate - stimulate - 
stockholm - 
stockpile - 
stockroom - 
stonecrop - 
stonewall - 
stoneware - 
stonewort - 
stopwatch - 
storekeep - 
storeroom - 
stratagem - 
strategic - 
stratford - 
streetcar - 
strenuous - 
stressful - 
stricture - structure - 
stringent - 
stromberg - 
strontium - 
structure - stricture - 
stuttgart - 
styrofoam - 
sublimate - 
submittal - 
submitted - 
substrate - 
subsuming - 
successor - 
suffocate - 
sulfurous - 
sultanate - 
summarily - 
summation - 
sumptuous - 
sunbonnet - 
sunflower - 
sunnyvale - 
sunscreen - 
suntanned - 
supersede - 
supervene - 
supremacy - 
surcharge - 
surrender - 
surrogate - 
suspensor - 
suspicion - 
swarthout - 
swaziland - 
sweatband - 
swingable - 
switchman - 
swordfish - 
swordplay - 
swordtail - 
sycophant - 
syllabify - 
syllogism - 
sylvester - 
symbiosis - 
symbiotic - 
symphonic - 
symposium - 
synagogue - 
synchrony - 
syncopate - 
syndicate - 
synergism - 
syntactic - 
syntheses - synthesis - 
synthesis - syntheses - 
synthetic - 
tableland - 
tactician - 
talkative - 
tangerine - 
tarantara - 
tarantula - 
tarpaulin - 
tarrytown - 
tautology - 
taxonomic - 
taxpaying - 
teakettle - 
technique - 
tektronix - 
telegraph - 
telemeter - 
teleology - 
telepathy - 
telephone - telephony - 
telephony - telephone - 
telescope - 
tellurium - 
temperate - 
templeton - 
temporary - 
temptress - 
tenacious - 
tenebrous - 
tennessee - 
tensional - 
tentative - 
terminate - germinate - 
territory - 
testament - 
testimony - 
theocracy - 
theoretic - 
therapist - 
therefore - wherefore - 
therefrom - 
thereupon - whereupon - 
therewith - wherewith - 
thermofax - 
thesaurus - 
thirtieth - 
thomistic - 
thorstein - 
threefold - 
threesome - 
threonine - 
threshold - 
throwaway - 
throwback - 
thumbnail - 
thyratron - 
thyroidal - 
thyronine - thyroxine - 
thyroxine - thyronine - 
tidewater - 
timepiece - 
timeshare - 
timetable - 
tipperary - 
titillate - 
tolerable - 
tollhouse - 
tombstone - 
tomlinson - 
tomograph - nomograph - 
toolsmith - 
toothpick - 
touchdown - 
townhouse - 
traceable - 
trademark - 
tradesman - tradesmen - 
tradesmen - tradesman - 
tradition - 
tragedian - 
trailhead - 
trailside - 
transcend - 
transform - 
transfuse - 
transient - 
translate - 
transmute - 
transpire - 
transpond - 
transport - 
transpose - 
transship - 
trapezium - 
trapezoid - 
traumatic - 
traversal - 
treachery - 
treadmill - 
tremulous - 
trenchant - 
trevelyan - 
triatomic - 
tribesman - tribesmen - 
tribesmen - tribesman - 
tribulate - 
tributary - 
trichrome - 
trickster - 
triennial - 
trihedral - 
trilobite - 
trimester - 
trisodium - 
triumphal - 
trivalent - 
troubador - 
truculent - 
trytophan - 
tularemia - 
tungstate - 
turbidity - 
turbinate - 
turbulent - 
turnabout - 
turnstone - 
turntable - 
turpitude - 
turquoise - 
tuscarora - 
twentieth - 
typewrite - 
ukrainian - 
ultimatum - 
umbilical - 
umbilicus - 
unanimity - 
unanimous - 
underling - 
unitarian - 
univalent - 
universal - 
upholster - 
uppermost - 
upsetting - 
utterance - 
uttermost - 
vaccinate - 
vacillate - 
vacuolate - 
valentine - 
vancouver - 
variegate - 
vasectomy - 
vectorial - 
vegetable - 
vehicular - vesicular - 
velasquez - 
venerable - 
venezuela - 
vengeance - 
ventilate - 
ventricle - 
veracious - voracious - 
verbosity - 
veritable - heritable - 
vermilion - 
versatile - 
vertebrae - vertebral - 
vertebral - vertebrae - 
vesicular - vehicular - 
vestibule - 
vestigial - 
vexatious - 
vicarious - 
vicksburg - 
victorian - 
videotape - 
vientiane - 
viewpoint - 
vigilante - 
vindicate - 
virginian - 
viscosity - 
visionary - 
vitriolic - 
vivacious - 
voiceband - 
volcanism - 
voltmeter - 
voluntary - 
volunteer - 
voracious - veracious - 
vorticity - 
vouchsafe - 
wadsworth - 
waistcoat - 
waistline - 
wakefield - 
wakerobin - 
wallboard - 
wallpaper - 
wappinger - 
warehouse - 
warmonger - 
washbasin - 
washboard - dashboard - 
wasserman - 
wasteland - 
watchband - 
watchmake - matchmake - 
watchword - catchword - 
waterbury - 
waterfall - 
watergate - 
waterline - 
watershed - 
waterside - 
watertown - 
wavefront - 
waveguide - 
wearisome - 
wednesday - 
weinstein - 
wellbeing - 
wellesley - 
westbound - 
westfield - 
wheelbase - 
wherefore - therefore - 
whereupon - thereupon - 
wherewith - therewith - 
whichever - 
whirligig - 
whirlpool - 
whirlwind - 
whiteface - 
whitehall - 
whitehead - 
whitetail - 
whitewash - 
whittaker - 
wholesale - 
wholesome - 
whosoever - 
widowhood - 
widthwise - 
wilkinson - 
wilsonian - 
windbreak - 
windstorm - 
wisconsin - 
wisecrack - 
withdrawn - 
withstand - 
withstood - 
woebegone - 
womanhood - 
wonderful - 
woodgrain - 
woolworth - 
worcester - 
workbench - 
workforce - 
workhorse - 
workpiece - 
workplace - 
worksheet - 
workspace - 
worktable - 
worldwide - 
worrisome - 
wristband - 
wrongdoer - 
wronskian - 
wyandotte - 
xylophone - 
yachtsman - yachtsmen - 
yachtsmen - yachtsman - 
yardstick - 
yellowish - 
yesterday - 
youngster - 
ypsilanti - 
ytterbium - 
zimmerman - 
zirconium - 
zoroaster - 
abbreviate - 
abominable - 
aboriginal - 
aboveboard - 
abridgment - 
absolution - 
absorption - adsorption - 
absorptive - adsorptive - 
abstention - 
abstracter - abstractor - 
abstractor - abstracter - 
accelerate - 
accentuate - 
accessible - 
accidental - occidental - 
accomplice - 
accomplish - 
accountant - 
accumulate - 
accusation - 
accusative - 
accusatory - 
achromatic - 
acquitting - 
actinolite - 
activation - 
adaptation - 
additional - 
adirondack - 
adjectival - 
adjudicate - 
administer - 
admiration - 
admissible - 
admittance - 
admonition - 
adolescent - 
adposition - apposition - 
adrenaline - 
adsorption - absorption - 
adsorptive - absorptive - 
adulterate - 
adulterous - 
aerobacter - 
aeronautic - 
aficionado - 
afterimage - 
agglutinin - 
aggression - 
aggressive - 
alcoholism - 
alexandria - 
allegation - 
alliterate - illiterate - 
allotropic - 
alpenstock - 
alphabetic - 
alphameric - 
alteration - 
altogether - 
amalgamate - 
amanuensis - 
amateurish - 
ambassador - 
ambivalent - 
ambulatory - 
ameliorate - 
ammunition - 
amphibious - 
amygdaloid - 
anabaptist - 
anamorphic - 
anastigmat - 
andromache - 
angiosperm - 
anharmonic - 
animadvert - 
anisotropy - 
annihilate - 
annunciate - 
antagonism - antagonist - 
antagonist - antagonism - 
antarctica - 
antebellum - 
antecedent - 
anthracite - 
anticipate - 
antigorite - 
antiphonal - 
antipodean - 
antiquated - 
antisemite - 
antithetic - 
antoinette - 
apocalypse - 
apocryphal - 
apollonian - 
apologetic - 
apostrophe - 
apothecary - 
apotheosis - 
appalachia - 
apparition - 
appearance - 
appeasable - 
appendices - 
applicable - 
apposition - adposition - opposition - 
appreciate - 
apprentice - 
archbishop - 
archimedes - 
arctangent - 
arenaceous - 
aristocrat - 
arithmetic - 
armageddon - 
armillaria - 
articulate - 
artificial - 
asceticism - 
ascription - 
asparagine - 
asphyxiate - 
aspidistra - 
assemblage - 
assimilate - 
associable - 
assumption - 
asteroidal - 
astigmatic - 
astringent - 
astronomer - 
astronomic - 
asymptotic - 
asynchrony - 
athabascan - 
atmosphere - 
auctioneer - 
auditorium - 
aureomycin - 
auspicious - suspicious - 
australite - 
autocratic - 
automobile - 
automotive - 
autonomous - 
avaricious - 
azerbaijan - 
babylonian - 
babysitter - 
backgammon - 
background - 
backstitch - 
balustrade - 
bangladesh - 
bankruptcy - 
baptistery - 
barrington - harrington - 
basketball - 
basophilic - 
batchelder - 
baudelaire - 
beaujolais - 
beauregard - 
beforehand - 
behavioral - 
belladonna - 
bellflower - 
bellingham - 
bellwether - 
belshazzar - 
beltsville - 
benefactor - 
beneficent - 
beneficial - 
benevolent - 
bennington - 
benzedrine - 
bernardino - 
bestirring - 
bestseller - 
betelgeuse - 
bichromate - 
bidiagonal - 
biharmonic - 
bijouterie - 
bimetallic - 
binghamton - 
biometrika - 
bipartisan - 
birmingham - 
birthplace - 
birthright - 
bitterroot - 
bituminous - 
blackberry - 
blackboard - 
blacksmith - 
blackstone - 
bladdernut - 
blockhouse - 
bloodhound - 
bloodstain - 
bloodstone - 
bloomfield - 
bluebonnet - 
bluejacket - 
blumenthal - 
bocklogged - 
boisterous - 
bolshevism - bolshevist - 
bolshevist - bolshevism - 
bondholder - 
bonneville - 
bookmobile - 
bookseller - 
bootlegged - bootlegger - 
bootlegger - bootlegged - 
borderland - 
borderline - 
bothersome - 
bottleneck - 
bottommost - 
brainchild - 
brainstorm - 
brandywine - 
breadboard - 
breadfruit - 
breakpoint - 
breakwater - 
breastwork - 
bricklayer - 
bridegroom - 
bridesmaid - 
bridgeable - 
bridgehead - 
bridgeport - 
bridgetown - 
bridgework - 
brigantine - 
britannica - 
bronchiole - 
bronchitis - 
brookhaven - 
browbeaten - 
buchenwald - 
bucketfull - 
bufflehead - 
burdensome - 
bureaucrat - 
burgundian - 
burlington - 
bushmaster - 
butterball - 
buttermilk - 
buttonhole - 
buttonweed - 
cadaverous - 
calamitous - 
calcareous - 
calculable - 
california - 
calligraph - 
calumniate - 
camelopard - 
camouflage - 
campground - 
cancellate - 
cancelling - 
candelabra - 
candlewick - 
cankerworm - 
cannonball - 
cantaloupe - 
canterbury - 
canterelle - 
cantilever - 
canvasback - 
capacitate - 
capacitive - 
capistrano - 
capitoline - 
capitulate - 
capricious - 
carbondale - 
carboxylic - 
carburetor - 
carcinogen - 
cardiology - 
caricature - 
carmichael - 
carolinian - 
carruthers - 
cassiopeia - 
catherwood - 
cautionary - 
cellophane - 
censorious - 
centennial - 
centerline - 
centigrade - 
centimeter - 
centrifuge - 
cerebellum - 
ceremonial - 
certiorari - 
chairwoman - chairwomen - 
chairwomen - chairwoman - 
chalcedony - 
chalcocite - 
chalkboard - 
chancellor - 
chandelier - 
changeable - chargeable - 
changeover - 
chaplaincy - 
chargeable - changeable - 
charitable - 
charleston - 
chartreuse - 
chautauqua - 
checkpoint - 
cheesecake - 
chesapeake - 
chesterton - 
childbirth - 
chimpanzee - 
chinchilla - 
chinquapin - 
chivalrous - 
chlorinate - 
chloroform - 
chokeberry - 
christiana - 
christlike - 
chromosome - 
chronology - 
chrysolite - 
chuckwalla - 
churchgoer - 
churchyard - 
ciceronian - 
cincinnati - 
cinderella - 
cinquefoil - 
circuitous - 
circumcise - 
circumflex - 
circumvent - 
cladophora - 
clearwater - 
clothbound - 
clothesman - clothesmen - 
clothesmen - clothesman - 
cloudburst - 
coagulable - 
coalescent - 
coddington - 
coexistent - 
cognizable - 
cohomology - 
coincident - 
colatitude - 
collarbone - 
collateral - 
collegiate - 
colloquial - 
colloquium - 
coloratura - 
combinator - 
combustion - 
commandant - 
commandeer - 
commentary - 
commercial - 
commissary - 
commission - 
committing - 
commodious - 
commonweal - 
communique - 
compactify - 
comparator - 
comparison - 
compassion - 
compatible - 
compatriot - 
compelling - 
compendium - 
compensate - 
competitor - 
complacent - 
complement - compliment - 
completion - complexion - 
complexion - completion - 
complicate - 
complicity - 
compliment - complement - 
compositor - 
comprehend - 
compressor - 
compromise - 
compulsion - 
compulsive - 
compulsory - 
concentric - 
conception - 
conceptual - 
concertina - 
concession - concussion - confession - 
conciliate - 
conclusion - 
conclusive - 
concordant - 
concretion - 
concurrent - 
concurring - 
concussion - concession - 
condemnate - 
condensate - 
condescend - 
condolence - 
coneflower - 
conference - 
conferring - 
confession - concession - 
confidante - 
confiscate - 
congenital - 
congestion - 
congestive - 
congregate - 
coniferous - 
conjecture - 
connivance - 
conscience - 
consecrate - 
consequent - 
consistent - 
consortium - 
conspiracy - 
constipate - 
constitute - 
constraint - 
consultant - 
consummate - 
contagious - 
contention - convention - 
contestant - 
contextual - 
contiguity - continuity - 
contiguous - continuous - 
contingent - 
continuant - 
continuity - contiguity - 
continuous - contiguous - 
contraband - 
contrabass - 
contractor - 
contradict - 
contravene - 
contribute - 
contrition - 
controlled - controller - 
controller - controlled - 
convalesce - 
convenient - 
convention - contention - 
convergent - 
conversant - 
conversion - 
conveyance - 
convulsion - 
convulsive - 
coolheaded - 
coordinate - 
copenhagen - 
copernican - 
copernicus - 
copperhead - 
copywriter - 
coralberry - 
corinthian - 
coriolanus - 
cornflower - 
cornstarch - 
cornucopia - 
correspond - 
corrigenda - 
corrigible - 
corroboree - 
corrodible - 
corruption - 
cottonseed - 
cottonwood - 
councilman - councilmen - 
councilmen - councilman - 
counteract - 
counterman - countermen - 
countermen - counterman - 
countryman - countrymen - 
countrymen - countryman - 
countywide - 
courageous - 
courthouse - 
crankshaft - 
crawlspace - 
credential - 
cretaceous - 
crisscross - 
crosshatch - 
crosspoint - 
cryptogram - 
cryptology - 
culbertson - 
cultivable - 
cumberland - 
cumbersome - 
cunningham - 
curricular - 
curriculum - 
curvaceous - 
cuttlebone - 
cuttlefish - 
cybernetic - 
cyclotomic - 
deactivate - 
deallocate - 
debauchery - 
debilitate - 
decelerate - 
decisional - 
declarator - 
declassify - 
decolonize - 
decompress - 
deconvolve - 
decryption - 
deductible - 
defensible - 
deferrable - 
definition - 
definitive - 
degeneracy - 
degenerate - 
dehumidify - 
delectable - 
deliberate - 
delightful - 
delinquent - 
deliquesce - 
delphinium - 
demiscible - 
democratic - 
demodulate - 
demography - 
demolition - 
denominate - 
denotation - 
denotative - 
denouement - 
denudation - 
denunciate - renunciate - 
department - 
depositary - depository - 
deposition - 
depository - depositary - repository - 
depreciate - 
depressant - 
depression - repression - 
depressive - repressive - 
deputation - reputation - 
derbyshire - 
deregulate - 
derogatory - 
descendant - descendent - 
descendent - descendant - 
descriptor - 
desecrater - 
desiderata - 
desorption - 
despicable - 
despondent - respondent - 
destructor - 
devolution - revolution - 
devonshire - 
diachronic - 
diagnostic - 
diaphanous - 
dichloride - 
dickcissel - 
dictionary - 
dielectric - 
difficulty - 
diffusible - 
difluoride - 
digestible - 
digression - 
dilapidate - 
dilatation - 
dilettante - 
diminution - 
diminutive - 
dinnertime - 
dinnerware - 
diphtheria - 
diplomatic - 
disastrous - 
discipline - 
discordant - 
discrepant - 
discretion - 
discussant - 
discussion - 
disdainful - 
disembowel - 
disgruntle - 
disgustful - 
dishwasher - 
disneyland - 
dispelling - 
dispensary - 
dispensate - 
dispersion - 
dispersive - 
disposable - 
disruption - 
disruptive - 
dissension - 
dissociate - 
distillate - 
distillery - 
distortion - 
distraught - 
disyllable - 
divination - 
divisional - 
donnybrook - 
doorkeeper - 
dorchester - 
dostoevsky - 
downstairs - 
downstream - 
dragonhead - 
dramaturgy - 
drawbridge - 
drosophila - 
duplicable - 
dusseldorf - 
dysprosium - 
earthmover - 
earthquake - 
echinoderm - 
effaceable - 
effectuate - 
effeminate - 
effloresce - 
egocentric - 
eigenspace - 
eigenstate - 
eigenvalue - 
eighteenth - 
eisenhower - 
ektachrome - 
electorate - 
electronic - 
elementary - 
emancipate - 
emasculate - 
embeddable - 
emblematic - 
embodiment - 
embouchure - 
embroidery - 
embryology - 
emissivity - 
encryption - 
endogamous - 
endogenous - 
enforcible - 
englishman - englishmen - 
englishmen - englishman - 
enterprise - 
enthusiasm - enthusiast - 
enthusiast - enthusiasm - 
entomology - 
enumerable - 
enunciable - 
enzymology - 
epigenetic - 
epiphyseal - 
episcopate - 
epithelial - 
epithelium - 
equanimity - 
equatorial - 
equestrian - 
equilibria - 
equipotent - 
equitation - 
equivalent - 
equivocate - 
eradicable - 
erlenmeyer - 
escadrille - 
escritoire - 
escutcheon - 
eucalyptus - 
euthanasia - 
evanescent - 
evansville - 
evenhanded - 
everglades - 
everything - 
everywhere - 
evidential - 
exacerbate - 
exaggerate - 
exaltation - exultation - 
exasperate - 
excitation - 
excitatory - 
excrescent - 
excruciate - 
exhaustion - 
exhaustive - 
exhibition - 
exhilarate - 
exhumation - 
exorbitant - 
exothermic - 
expansible - 
expedition - 
expellable - 
experience - 
experiment - 
expiration - 
explicable - 
exposition - 
expository - 
expression - 
expressive - 
expressway - 
extendible - extensible - 
extensible - extendible - 
extinguish - 
extralegal - 
extramural - 
extraneous - 
extricable - 
exultation - exaltation - 
eyewitness - 
facilitate - 
fahrenheit - 
fallacious - 
familiarly - 
farfetched - 
farmington - 
farnsworth - 
farsighted - 
fastidious - 
featherbed - 
feathertop - 
felicitous - 
fiberboard - 
fictitious - 
fieldstone - 
filibuster - 
fingernail - 
fishmonger - 
fitzgerald - 
flagellate - 
flamboyant - 
flashlight - 
flirtation - 
flocculate - 
floodlight - 
floorboard - 
florentine - 
fluoridate - 
flycatcher - 
foamflower - 
follicular - 
footbridge - 
forbidding - 
forfeiture - 
forgetting - 
formatting - 
formidable - 
forthright - 
fortuitous - 
foundation - 
foursquare - 
fourteenth - 
franciscan - 
frangipani - 
fraternity - 
fraudulent - 
fredericks - 
freshwater - 
frictional - 
frigidaire - 
fritillary - 
frustrater - 
functorial - 
gadolinium - 
gaillardia - 
gargantuan - 
gastronome - gastronomy - 
gastronomy - gastronome - 
gatlinburg - 
gelatinous - 
generosity - 
geocentric - 
geographer - 
geophysics - 
geopolitic - 
georgetown - 
germantown - 
germicidal - 
gettysburg - 
gilbertson - 
glaswegian - 
glomerular - 
gloucester - 
goldenseal - 
goniometer - 
gooseberry - 
governance - 
grammarian - 
grandchild - 
grandniece - 
grandstand - 
grapefruit - 
gratuitous - 
gravestone - 
greenblatt - 
greenbriar - 
greenfield - 
greenhouse - 
greensboro - 
greensward - 
gregarious - 
grindstone - 
groundwork - 
guardhouse - 
guggenheim - 
guillotine - 
gymnosperm - 
habitation - 
hackmatack - 
hallelujah - 
halocarbon - 
hammerhead - 
handicraft - 
handleable - 
handmaiden - 
handwaving - 
hanoverian - 
hardboiled - 
harmonious - 
harrington - barrington - 
harrisburg - 
harvestman - 
headmaster - 
headstrong - 
heartbreak - 
heathenish - 
heavenward - 
heidelberg - 
heisenberg - 
helicopter - 
heliotrope - 
hellbender - 
hemisphere - 
hemoglobin - 
hemorrhage - 
hemorrhoid - 
henceforth - 
heraclitus - 
hereditary - 
heretofore - 
heterodyne - 
hierarchal - 
hierarchic - 
hieronymus - 
highhanded - 
highwayman - highwaymen - 
highwaymen - highwayman - 
hildebrand - 
hinterland - 
hippodrome - 
histrionic - 
hobbyhorse - 
hodgepodge - 
hollowware - 
holography - 
homecoming - 
homeomorph - 
homogenate - 
homologous - 
homophobia - 
homosexual - 
homozygous - 
homunculus - 
honorarium - 
hopkinsian - 
horizontal - 
hornblende - 
hornblower - 
horrendous - 
horseflesh - 
horsepower - 
horsewoman - horsewomen - 
horsewomen - horsewoman - 
hospitable - 
housebreak - 
housewares - 
housewives - 
howsomever - 
humidistat - 
huntington - 
huntsville - 
husbandman - husbandmen - 
husbandmen - husbandman - 
hutchinson - 
hydrolysis - 
hydrometer - hygrometer - 
hygrometer - hydrometer - 
hyperbolic - 
hypoactive - 
hypocritic - 
hypodermic - 
hypotenuse - 
hypotheses - hypothesis - 
hypothesis - hypotheses - 
hypothetic - 
hysteresis - 
iconoclasm - iconoclast - 
iconoclast - iconoclasm - 
icosahedra - 
idempotent - 
illiteracy - 
illiterate - alliterate - 
illuminate - 
illustrate - 
immaculate - 
immaterial - 
immemorial - 
immiscible - 
immobility - 
immoderate - 
impalpable - 
impassable - 
impeccable - 
impediment - 
imperative - 
impersonal - 
impervious - 
implacable - 
imposition - 
impossible - 
impoverish - 
impregnate - 
impresario - 
impression - 
impressive - 
imprimatur - 
improbable - 
imputation - 
inaccuracy - 
inaccurate - 
inactivate - 
inadequacy - 
inadequate - 
inaptitude - 
inaugurate - 
incapacity - 
incautious - 
incendiary - 
incestuous - 
incidental - 
incinerate - 
incoherent - 
incomplete - 
inconstant - 
incredible - 
inculpable - 
indecision - 
indecisive - 
indefinite - 
indelicate - 
indigenous - 
indiscreet - 
indistinct - 
individual - 
inductance - 
industrial - 
ineducable - 
inefficacy - 
ineligible - 
inequality - 
inevitable - 
inexorable - 
inexpiable - 
inexplicit - 
infallible - 
infeasible - 
infectious - 
infelicity - 
infighting - 
infiltrate - 
infinitive - 
infinitude - 
inflexible - 
infrequent - 
ingestible - 
inglorious - 
ingratiate - 
ingredient - 
inhabitant - 
inhalation - 
inhibition - 
inhibitory - 
inimitable - 
iniquitous - 
injunction - 
inoperable - 
inordinate - 
inquisitor - 
insatiable - 
inseminate - 
insensible - 
insightful - 
insolvable - 
insouciant - 
instalment - 
instructor - 
instrument - 
intangible - 
integrable - 
integument - 
interstice - 
intervenor - 
intestinal - 
intimidate - 
intolerant - 
intoxicant - 
intoxicate - 
introspect - 
intuitable - 
invalidate - 
invaluable - 
invariable - 
invertible - 
inveterate - 
invigorate - 
invincible - 
inviolable - 
invitation - 
involution - 
involutory - 
ionosphere - 
irrational - 
irrelevant - 
irresolute - 
irreverent - 
isentropic - 
isochronal - 
isomorphic - 
isothermal - 
jackanapes - 
jacksonian - 
jacqueline - 
janitorial - 
journalese - 
journeyman - journeymen - 
journeymen - journeyman - 
jovanovich - 
judicatory - 
judicature - 
jugoslavia - yugoslavia - 
kafkaesque - 
kensington - 
khrushchev - 
kidnapping - 
kingfisher - 
kitakyushu - 
kodachrome - 
kowalewski - 
laboratory - 
lackluster - 
lacustrine - 
lagrangian - 
lancashire - 
lanthanide - 
largemouth - 
lascivious - 
lauderdale - 
laurentian - 
lawbreaker - 
lawrencium - 
lebensraum - 
lectionary - 
legitimacy - 
legitimate - 
leguminous - 
lengthwise - 
lenticular - 
lepidolite - 
letterhead - 
libidinous - 
librettist - 
libreville - 
licensable - 
licentious - 
lieutenant - 
lighthouse - 
lightproof - 
limitation - 
linebacker - 
lippincott - 
literature - 
lithograph - 
littleneck - 
livingston - 
locomotion - 
locomotive - 
locomotory - 
loggerhead - 
longfellow - 
loquacious - 
louisville - 
lubricious - 
luminosity - 
luxembourg - 
lycopodium - 
lymphocyte - 
macdougall - 
mackintosh - 
macrophage - 
madagascar - 
magistrate - 
mahayanist - 
maidenhair - 
mainstream - 
malconduct - 
malcontent - 
malefactor - 
malevolent - 
malfeasant - 
manageable - 
managerial - 
manchester - 
manipulate - 
manservant - 
manumitted - 
manuscript - 
marginalia - 
marguerite - 
marionette - 
marketwise - 
marrowbone - 
marseilles - 
martensite - 
martingale - 
martinique - 
masquerade - 
mastermind - 
masturbate - 
mathematic - mathematik - 
mathematik - mathematic - 
mauritania - 
maximilian - 
maxwellian - 
mayonnaise - 
mcallister - 
mccullough - 
mclaughlin - 
mcnaughton - 
meadowland - 
meaningful - 
mediocrity - 
melancholy - 
memorandum - 
mendacious - 
meningitis - 
menstruate - 
mensurable - 
mercantile - 
meridional - 
mesenteric - 
metabolism - 
metabolite - 
metallurgy - 
metaphoric - 
meteoritic - 
methionine - 
methuselah - 
meticulous - 
metropolis - 
mettlesome - nettlesome - 
microfiche - 
microjoule - 
micronesia - 
microscopy - 
middlebury - 
middletown - 
midsection - 
midshipman - midshipmen - 
midshipmen - midshipman - 
midwestern - 
militarism - militarist - 
militarist - militarism - 
militiamen - 
millennium - 
mimeograph - 
mineralogy - 
minestrone - 
minstrelsy - 
miraculous - 
miscellany - 
misogynist - 
missionary - 
mogadiscio - 
mohammedan - 
molybdenum - 
monetarism - monetarist - 
monetarist - monetarism - 
monogamous - 
monologist - 
monotonous - 
monteverdi - 
montevideo - 
montgomery - 
monticello - 
montmartre - 
montpelier - 
montrachet - 
moratorium - 
morphology - 
morristown - 
motherhood - 
motherland - 
motorcycle - 
mouthpiece - 
muddlehead - 
munificent - 
musicology - 
myocardial - 
myocardium - 
mysterious - 
nanosecond - 
napoleonic - 
narcissism - narcissist - 
narcissist - narcissism - 
nasturtium - 
nationhood - 
nationwide - 
naturopath - 
neapolitan - 
necromancy - 
nectareous - 
needlework - 
negligible - 
negotiable - 
neoclassic - 
nettlesome - mettlesome - 
newsletter - 
nightdress - 
nightshirt - 
nineteenth - 
noetherian - 
nonchalant - 
northbound - 
noteworthy - 
noticeable - 
nottingham - 
nouakchott - 
nucleotide - 
numerische - 
numerology - 
numismatic - 
nutritious - 
o'sullivan - 
obligatory - 
obliterate - 
obsequious - 
occidental - accidental - 
occupation - 
octahedral - 
octahedron - 
officemate - 
offsetting - 
oftentimes - 
oldsmobile - 
oligarchic - 
oligoclase - 
omnipotent - 
omniscient - 
opalescent - 
ophthalmic - 
opinionate - 
opposition - apposition - 
oppression - 
oppressive - 
opprobrium - 
optimistic - 
orangeroot - 
oratorical - 
orchestral - 
organismic - 
orographic - 
orthoclase - 
orthogonal - 
orthopedic - 
ostensible - 
osteopathy - 
otherworld - 
outlandish - 
outrageous - 
paintbrush - 
palindrome - 
pancreatic - 
panjandrum - 
pantomimic - 
paperbound - 
paraboloid - 
paragonite - 
paramagnet - 
paranormal - 
paraphrase - 
parenthood - 
parimutuel - 
parliament - 
participle - 
particular - 
passageway - 
passionate - 
pasteboard - 
pathogenic - 
patriarchy - 
patrolling - 
pearlstone - 
pectoralis - 
pedestrian - 
pejorative - 
penetrable - 
penicillin - 
pennyroyal - 
pentagonal - 
peppermint - 
percentage - 
percentile - 
perception - 
perceptive - 
perceptual - 
percussion - 
percussive - 
peremptory - 
perfidious - 
peridotite - 
perihelion - 
peripheral - 
peritectic - 
periwinkle - 
permission - 
permissive - 
permitting - 
pernicious - 
perpetrate - perpetuate - 
perpetuate - perpetrate - 
perpetuity - 
perquisite - 
persiflage - 
persistent - 
persuasion - 
persuasive - 
perturbate - 
perversion - 
petersburg - 
petroglyph - 
pharmacist - 
phenomenal - 
phenomenon - 
philippine - 
philistine - 
philosophy - 
phonograph - 
phosphoric - 
phosphorus - 
photogenic - 
photolysis - 
photolytic - 
photometry - 
phrasemake - 
physiology - 
pianissimo - 
piccadilly - 
picnicking - 
picosecond - 
pigeonfoot - 
pigeonhole - 
pilgrimage - 
pincushion - 
pipsissewa - 
piscataway - 
pitchstone - 
pitilessly - 
pittsburgh - 
pittsfield - 
plagiarism - plagiarist - 
plagiarist - plagiarism - 
plainfield - 
planetaria - 
plantation - 
playground - 
playwright - 
pluperfect - 
pocketbook - 
poinsettia - 
polarogram - 
politician - 
polygynous - 
polyhedral - 
polyhedron - 
polyhymnia - 
polymerase - 
polynomial - 
polyphemus - 
polyploidy - 
portentous - 
portsmouth - 
portuguese - 
possession - 
possessive - 
posteriori - 
posthumous - 
postmaster - 
postmortem - 
postscript - 
powderpuff - 
powerhouse - 
pragmatism - pragmatist - 
pragmatist - pragmatism - 
precarious - 
precaution - 
precession - procession - 
precocious - 
predispose - 
preeminent - 
preemption - 
preemptive - 
prefecture - 
preference - 
preferring - 
presbytery - 
presuppose - 
pretension - 
prevention - 
preventive - 
primordial - 
procedural - 
procession - precession - profession - 
proclivity - 
procrustes - 
prodigious - 
producible - 
profession - procession - 
proficient - 
profligacy - 
profligate - 
profundity - 
progenitor - 
programmed - programmer - 
programmer - programmed - 
projectile - 
prokaryote - 
prokofieff - 
prolongate - 
promethean - 
prometheus - 
promethium - 
promulgate - 
propaganda - 
propellant - 
propelling - 
propensity - 
propionate - 
propitiate - 
propitious - 
proportion - 
proprietor - 
propulsion - 
proscenium - 
prosecutor - 
proserpine - 
prospector - 
prospectus - 
prosperous - 
prostheses - prosthesis - 
prosthesis - prostheses - 
prosthetic - 
prostitute - 
protestant - 
protophyta - 
protoplasm - 
prototypic - 
protrusion - 
protrusive - 
provenance - 
proverbial - 
provincial - 
prudential - 
psychiatry - 
psychology - 
psychopath - 
psychopomp - 
pugnacious - 
pulverable - 
purposeful - 
pushbutton - 
pyrimidine - 
pyroxenite - 
pythagoras - 
quadrangle - 
quadrature - 
quadriceps - 
quadrivium - 
quadrupole - 
quarantine - 
quasiorder - 
quaternary - 
radiometer - 
radiosonde - 
realisable - 
rebellious - 
recappable - 
receptacle - 
reciprocal - 
recitative - 
recompense - 
recuperate - 
redemption - 
redemptive - 
refereeing - 
referendum - 
refractory - 
refutation - reputation - 
registrant - 
regression - repression - 
regressive - repressive - 
regretting - 
regulatory - 
rejuvenate - 
relaxation - 
releasable - 
relinquish - 
remediable - 
remittance - 
remorseful - 
remunerate - 
rendezvous - 
rensselaer - 
renunciate - denunciate - 
reparation - 
repertoire - 
repetition - 
repetitive - 
repository - depository - 
repression - depression - regression - 
repressive - depressive - regressive - 
republican - 
reputation - deputation - refutation - 
resemblant - 
resistible - 
resolution - revolution - 
resorcinol - 
respectful - 
respirator - 
respondent - despondent - 
responsive - 
restaurant - 
resumption - 
reticulate - 
retrograde - 
retrogress - 
retrospect - 
revelation - 
revelatory - 
reversible - 
revolution - devolution - resolution - 
rheumatism - 
rhinestone - 
rhinoceros - 
riboflavin - 
richardson - 
rickettsia - 
ridiculous - 
riemannian - 
ringmaster - 
riverfront - 
rosenzweig - 
rothschild - 
roundabout - 
roundhouse - 
roundtable - 
roustabout - 
rutherford - 
sabbatical - 
saccharine - 
sacramento - 
sacrosanct - 
salamander - 
salmonella - 
saloonkeep - 
salubrious - 
salutation - 
sanatorium - 
sandalwood - 
sanderling - 
sanguinary - 
sanitarium - 
saturnalia - 
sauerkraut - 
savonarola - 
scandalous - 
scattergun - 
schoenberg - 
scholastic - 
schoolbook - 
schoolgirl - 
schoolmarm - 
schoolmate - 
schoolroom - 
schoolwork - 
schumacher - 
schuylkill - 
schweitzer - 
scientific - 
scoreboard - 
scottsdale - 
screenplay - 
scriptural - 
scrupulous - 
sculptural - 
scurrilous - 
seamstress - 
secondhand - 
seersucker - 
seismology - 
seminarian - 
senatorial - 
sentential - 
septennial - 
septillion - sextillion - 
sepulchral - 
sequential - 
serpentine - 
serviceman - servicemen - 
servicemen - serviceman - 
seventieth - 
sextillion - septillion - 
shadflower - 
shamefaced - 
sharpshoot - 
shenandoah - 
shenanigan - 
shibboleth - 
shoestring - 
shreveport - 
sicklewort - 
sidesaddle - 
sidewinder - 
silhouette - 
silverware - 
similitude - 
simplectic - symplectic - 
simplicial - 
simplicity - 
simplistic - 
sinusoidal - 
sketchbook - 
slanderous - 
smattering - 
smithfield - 
smokehouse - 
smokestack - 
smoothbore - 
snapdragon - 
snowmobile - 
sociometry - 
solicitous - 
solicitude - 
solidarity - 
someone'll - 
somersault - 
somerville - 
sommerfeld - 
soothsayer - 
sophoclean - 
sophomoric - 
soundproof - 
southbound - 
spacecraft - 
spellbound - 
spencerian - 
sphalerite - 
spheroidal - 
spiderwort - 
spleenwort - 
sportswear - 
springtail - 
springtime - 
squirehood - 
stagecoach - 
stalactite - 
standpoint - 
standstill - 
starvation - 
stationary - stationery - 
stationery - stationary - 
stephenson - 
stepmother - 
stewardess - 
sticktight - 
stillbirth - 
stillwater - 
stochastic - 
stonehenge - 
storehouse - 
stormbound - 
storyboard - 
strabismic - 
strabismus - 
straighten - 
strategist - 
strawberry - 
streamline - 
streamside - 
strengthen - 
strickland - 
striptease - 
stronghold - 
strongroom - 
structural - 
strychnine - 
studebaker - 
stupendous - 
sturbridge - 
stuyvesant - 
subliminal - 
submitting - 
subsidiary - 
subsistent - 
substitute - 
subterfuge - 
subtracter - 
subtrahend - 
subversive - 
successful - 
succession - 
successive - 
sufficient - 
suggestion - 
suggestive - 
summertime - 
sunglasses - 
suntanning - 
supernovae - 
supplicate - 
supposable - 
suppressor - 
surfactant - 
surjection - 
surjective - 
suspension - 
suspicious - auspicious - 
sustenance - 
sutherland - 
suzerainty - 
swarthmore - 
sweatshirt - 
sweepstake - 
sweetheart - 
switchgear - 
symplectic - simplectic - 
synonymous - 
systematic - 
systemwide - 
tabernacle - 
tablecloth - 
tablespoon - 
tachometer - 
talismanic - 
tambourine - 
tananarive - 
tangential - 
tantamount - 
taskmaster - 
tattletale - 
technetium - 
technician - 
technocrat - 
technology - 
telefunken - 
telegraphy - 
telepathic - 
telephonic - 
telescopic - 
television - 
temperance - 
temptation - 
tenderfoot - 
tenderloin - 
teratology - 
terminable - 
terramycin - 
tessellate - 
testicular - 
tetragonal - 
tetrahedra - 
themselves - 
theodosian - 
theologian - 
thereafter - 
thereunder - 
thermionic - 
thermistor - 
thermostat - 
thiouracil - 
thirteenth - 
thoughtful - 
thousandth - 
threadbare - 
thrombosis - 
throughout - throughput - 
throughput - throughout - 
thunderous - 
thyrotoxic - 
timberland - 
tomography - topography - 
toothbrush - 
toothpaste - 
topgallant - 
topography - tomography - typography - 
topologize - 
touchstone - 
tournament - 
toxicology - 
trafficked - 
tragicomic - 
trailblaze - 
traitorous - 
trajectory - 
transcribe - 
transcript - 
transducer - 
transferee - 
transferor - 
transgress - 
transistor - 
transition - 
transitive - 
transitory - 
transplant - 
transverse - 
trastevere - 
travelogue - 
travertine - 
treasonous - 
tremendous - 
triangular - 
triangulum - 
trillionth - 
tripartite - 
triplicate - 
triumphant - 
troglodyte - 
tropopause - 
tuberculin - 
tumultuous - 
turnaround - 
turpentine - 
turtleback - 
turtleneck - 
tuscaloosa - 
typescript - 
typesetter - 
typography - topography - 
ubiquitous - 
unilateral - 
unimodular - 
uninominal - 
univariate - 
upholstery - 
uproarious - 
usurpation - 
valparaiso - 
vandenberg - 
vanderbilt - 
vanderpoel - 
vaudeville - 
vegetarian - 
vernacular - 
versailles - 
vertebrate - 
veterinary - 
victorious - 
vietnamese - 
villainous - 
vindictive - 
virtuosity - 
viscometer - 
visitation - 
vocabulary - 
vociferous - 
volkswagen - 
volleyball - 
volumetric - 
voluminous - 
voluptuous - 
vulnerable - 
wainwright - 
washington - 
wastewater - 
waterfront - 
waterhouse - 
watermelon - 
waterproof - 
wavelength - 
wavenumber - 
wellington - 
whatsoever - 
wheatstone - 
wheelchair - 
wheelhouse - 
whereabout - 
whitehorse - 
whomsoever - 
widespread - 
wildcatter - 
wilderness - 
wilhelmina - 
williamson - 
willoughby - 
wilmington - 
winchester - 
windowpane - 
windowsill - 
windshield - 
winemaster - 
wintertime - 
wiretapper - 
witchcraft - 
withdrawal - 
wonderland - 
woodcarver - 
woolgather - 
wordsworth - 
worshipful - 
worthwhile - 
wristwatch - 
wrongdoing - 
xenophobia - 
xerography - 
yesteryear - 
youngstown - 
yourselves - 
yugoslavia - jugoslavia - 
zellerbach - 
zigzagging - 
aboveground - 
absenteeism - 
academician - 
acclamation - 
accommodate - 
accompanist - 
accreditate - 
acculturate - 
acknowledge - 
acquiescent - 
acquisition - 
acquisitive - 
acrimonious - 
actinometer - 
adventurous - 
aerodynamic - 
affectation - 
affirmation - 
affirmative - 
afghanistan - 
aftereffect - 
agglomerate - 
agglutinate - 
agriculture - 
albuquerque - 
algorithmic - 
americanism - 
amethystine - 
amphetamine - 
amphibology - 
anachronism - 
anastomosis - 
anastomotic - 
anchoritism - 
anglicanism - 
anglophobia - 
aniseikonic - 
anisotropic - 
anniversary - 
anorthosite - 
anthracnose - 
antiquarian - 
antisemitic - 
apocalyptic - 
application - 
appreciable - 
approbation - 
appropriate - 
approximant - 
approximate - 
archdiocese - 
archipelago - 
aristocracy - 
arrangeable - 
ascomycetes - 
assassinate - 
assignation - 
assimilable - 
assyriology - 
astigmatism - 
astronautic - 
atmospheric - 
attestation - 
attitudinal - 
attribution - 
attributive - 
audiovisual - 
automorphic - 
babysitting - 
backscatter - 
bakersfield - 
balletomane - 
baltimorean - 
barbiturate - 
bartholomew - 
barycentric - 
battlefield - 
battlefront - 
belligerent - 
benedictine - 
benediction - 
beneficiary - 
bestselling - 
bibliophile - 
bicarbonate - 
biconnected - 
bimetallism - 
bimolecular - 
bittersweet - 
bladderwort - 
blameworthy - 
blasphemous - 
bloodstream - 
bloomington - 
bodhisattva - 
bodybuilder - 
bonaventure - 
bookshelves - 
bootlegging - 
bourgeoisie - 
brahmaputra - 
brandenburg - 
brazzaville - 
breadwinner - 
breastplate - 
bricklaying - 
bridgewater - 
bronchiolar - 
brotherhood - 
brucellosis - 
bureaucracy - 
businessman - businessmen - 
businessmen - businessman - 
butterfield - 
cabinetmake - 
cacophonist - 
calendrical - 
californium - 
calisthenic - 
calligraphy - 
calorimeter - colorimeter - 
camaraderie - 
candlelight - 
candlestick - 
capacitance - 
carborundum - 
carolingian - 
cartography - 
cataclysmic - 
catastrophe - 
caterpillar - 
catholicism - 
cauliflower - 
centerpiece - 
centrifugal - 
ceremonious - 
certificate - 
chairperson - 
chamberlain - 
chambermaid - 
charismatic - 
charlemagne - 
chattanooga - 
checksummed - 
cheerleader - 
cheesecloth - 
chippendale - 
chlorophyll - 
chloroplast - 
choirmaster - 
cholesterol - 
choreograph - 
christendom - 
christensen - christenson - 
christenson - christensen - 
christoffel - 
christopher - 
chronograph - 
churchgoing - 
churchwoman - churchwomen - 
churchwomen - churchwoman - 
circulatory - 
circumpolar - 
circumspect - 
clairvoyant - 
clandestine - 
clearheaded - 
climatology - 
clothesline - 
cobblestone - 
coccidiosis - 
cockleshell - 
codetermine - 
coeducation - 
coefficient - 
coextensive - 
collaborate - 
collapsible - 
collectible - 
collocation - 
colorimeter - calorimeter - 
combination - 
combustible - 
commemorate - 
commentator - 
commiserate - 
committable - 
commonality - 
commonplace - 
communicant - 
communicate - 
comparative - 
compartment - 
compellable - 
compensable - 
competition - 
competitive - 
compilation - 
complainant - complaisant - 
complaisant - complainant - 
componentry - 
composition - 
compression - 
compressive - 
comptroller - 
compunction - 
computation - 
concatenate - 
concentrate - 
concomitant - 
condensible - 
condominium - 
conductance - 
confabulate - 
confederacy - 
confederate - 
conferrable - 
confiscable - 
conflagrate - 
conformance - 
congressman - congressmen - 
congressmen - congressman - 
conjectural - 
conjuncture - 
connecticut - 
connoisseur - 
connotation - 
connotative - 
consanguine - 
consecutive - 
conservator - 
considerate - 
consolation - 
consolidate - 
consonantal - 
conspicuous - 
conspirator - 
constantine - 
constellate - 
consternate - 
constituent - 
constrictor - constructor - 
constructor - constrictor - 
consumption - 
consumptive - 
contaminant - 
contaminate - 
contemplate - 
contentious - 
continental - 
contractual - 
contraption - 
contrariety - 
contretemps - 
contributor - 
contrivance - 
controlling - 
controversy - 
convertible - 
convocation - 
convolution - 
copperfield - 
cornerstone - 
corpuscular - 
corrigendum - 
corroborate - 
corruptible - 
cotoneaster - 
cottonmouth - 
countenance - 
counterfeit - 
counterflow - 
counterpart - 
countersink - countersunk - 
countersunk - countersink - 
countervail - 
countryside - countrywide - 
countrywide - countryside - 
crestfallen - 
crocodilian - 
cromwellian - 
crucifixion - 
cruickshank - 
crystalline - crystallite - 
crystallite - crystalline - 
curvilinear - 
customhouse - 
cybernetics - 
declamation - declaration - reclamation - 
declamatory - declaratory - 
declaration - declamation - 
declarative - 
declaratory - declamatory - 
declination - 
decolletage - 
decollimate - 
decorticate - 
deemphasize - 
deerstalker - 
deformation - 
degradation - 
deleterious - 
delineament - 
deliverance - 
demonstrate - remonstrate - 
demountable - 
demultiplex - 
denumerable - 
deoxyribose - 
deportation - 
deprecatory - 
depreciable - 
depressible - 
deprivation - 
dereference - 
description - 
descriptive - 
desegregate - 
desideratum - 
destabilize - 
deteriorate - 
determinant - 
determinate - 
detestation - 
diacritical - 
diagnosable - 
diamagnetic - 
dichotomize - 
dichotomous - 
dicotyledon - 
dictatorial - 
dilogarithm - 
diophantine - 
directorate - 
directorial - 
directrices - 
discernible - 
dispensable - 
dispersible - 
disquietude - 
disseminate - 
dissociable - 
distinguish - 
distributor - 
disturbance - 
divestiture - 
doctrinaire - 
documentary - 
dodecahedra - 
domesticate - 
downtrodden - 
dreadnought - 
earthenware - 
earthmoving - 
easternmost - 
econometric - 
efficacious - 
egalitarian - 
eigenvector - 
einsteinian - 
einsteinium - 
electrician - 
electrolyte - 
elephantine - 
elizabethan - 
ellipsoidal - 
embarcadero - 
embraceable - 
encapsulate - 
enchantress - 
encumbrance - 
endothelial - 
endothermic - 
enforceable - 
enlargeable - 
entranceway - 
ephemerides - 
epimorphism - 
equidistant - 
equilateral - 
equilibrate - 
equilibrium - 
equinoctial - 
escherichia - 
ethnography - 
everlasting - 
examination - 
exasperater - 
exceptional - 
exclamation - 
exclamatory - 
exculpatory - 
exercisable - 
exhaustible - 
exhortation - exportation - 
existential - 
exoskeleton - 
expectation - 
expectorant - 
expectorate - 
expeditious - 
expenditure - 
explanation - 
explanatory - 
exploration - 
exploratory - 
exponential - 
exportation - exhortation - 
expressible - 
expropriate - 
exterminate - 
extradition - 
extrapolate - 
extravagant - 
facultative - 
fasciculate - 
ferromagnet - 
ferruginous - 
fiddlestick - 
filamentary - 
fingerprint - 
firecracker - 
fitzpatrick - 
flabbergast - 
flirtatious - 
fluorescein - 
fluorescent - 
forbearance - 
forgettable - 
fractionate - 
fragmentary - 
frankfurter - 
fredericton - 
fredrickson - 
frostbitten - 
functionary - 
fundamental - 
furtherance - 
furthermore - 
furthermost - 
gainesville - 
garrisonian - 
gegenschein - 
geochemical - 
geophysical - 
gerontology - 
gesticulate - 
glossolalia - 
glycerinate - 
grandfather - 
grandmother - 
grandnephew - 
grandparent - 
greengrocer - 
groundskeep - 
gyrocompass - 
halfhearted - 
hallucinate - 
handicapped - handicapper - 
handicapper - handicapped - 
handwritten - 
hardworking - 
harpsichord - 
hattiesburg - 
headquarter - 
heavyweight - 
hebephrenic - 
hemispheric - 
hemosiderin - 
hendrickson - 
hereinabove - 
hereinafter - 
hereinbelow - 
hermeneutic - 
herpetology - 
herringbone - 
hexadecimal - 
highfalutin - 
hippocrates - 
hippocratic - 
histochemic - 
hollandaise - 
homebuilder - 
homeostasis - 
homogeneity - 
homogeneous - 
homomorphic - 
honeysuckle - 
housebroken - 
huckleberry - 
hummingbird - 
hundredfold - 
hydrocarbon - 
hydrogenate - 
hydrophilic - 
hydrophobia - hydrophobic - 
hydrophobic - hydrophobia - 
hydrosphere - 
hydrostatic - 
hydroxylate - 
hygroscopic - 
hyperboloid - 
hypocycloid - 
hypophyseal - 
hypothyroid - 
icosahedral - 
icosahedron - 
ignominious - 
illimitable - 
illusionary - 
illustrious - 
impartation - importation - 
impermeable - 
impersonate - 
impertinent - 
implausible - 
implementer - implementor - 
implementor - implementer - 
importation - impartation - 
importunate - 
impractical - 
imprecision - 
impregnable - 
impressible - 
impropriety - 
improvident - 
improvisate - 
inadvertent - 
inadvisable - 
inalienable - 
inalterable - 
inattention - 
inattentive - 
incantation - 
incarcerate - 
inclination - 
incompetent - 
incongruity - 
incongruous - 
incorporate - 
increasable - 
incredulity - 
incredulous - 
incriminate - 
indefinable - 
indentation - 
independent - 
indifferent - 
indigestion - 
indignation - 
individuate - 
indivisible - 
indochinese - 
indomitable - 
indubitable - 
industrious - 
ineffective - 
ineffectual - 
inefficient - 
ineluctable - 
inequitable - 
inescapable - 
inestimable - 
inexcusable - 
inexpedient - 
inexpensive - 
infantryman - infantrymen - 
infantrymen - infantryman - 
inferential - 
infestation - 
inflammable - 
influential - 
informatica - 
information - 
informative - 
ingratitude - 
inheritance - 
injudicious - 
innumerable - 
inoffensive - 
inoperative - 
inopportune - 
inquisition - 
inquisitive - 
inscription - 
inscrutable - 
insecticide - 
insensitive - 
inseparable - 
inspiration - 
instantiate - 
instinctual - 
institution - 
insuperable - 
intelligent - 
intemperate - 
intercalate - 
interceptor - 
internecine - 
interpolant - 
interpolate - 
interregnum - 
interrogate - 
intersperse - 
interviewee - 
intolerable - 
intractable - 
investigate - 
involuntary - 
ionospheric - 
ipsilateral - 
irredentism - irredentist - 
irredentist - irredentism - 
irreducible - 
irrefutable - 
irrelevancy - 
irremovable - 
irreparable - 
irrevocable - 
isochronous - 
justiciable - 
kinesthesis - 
kirkpatrick - 
kitchenette - 
knuckleball - 
koenigsberg - 
kwashiorkor - 
labradorite - 
lackadaisic - 
lamentation - 
latitudinal - 
lawbreaking - 
leatherback - 
leatherneck - 
leatherwork - 
leavenworth - 
leeuwenhoek - 
legerdemain - 
legislature - 
libertarian - 
lightweight - 
lilliputian - 
lineprinter - 
lithography - 
lithosphere - 
logarithmic - 
loosestrife - 
loudspeaker - 
luminescent - 
machiavelli - 
machination - 
machinelike - 
macroscopic - 
magisterial - 
magnanimity - 
magnanimous - 
magnificent - 
maidservant - 
maintenance - 
maladaptive - 
malfunction - 
malpractice - 
manipulable - 
mantlepiece - 
manufacture - 
manumission - 
marketplace - 
marlborough - 
marshmallow - 
masterpiece - 
matriarchal - patriarchal - 
matriculate - 
matrimonial - patrimonial - 
meadowsweet - 
megalomania - 
memorabilia - 
mendelevium - 
mendelssohn - 
mensuration - 
merchandise - 
mercilessly - 
meritorious - 
mesopotamia - 
metallurgic - 
metamorphic - 
meteorology - 
methodology - 
micrography - 
millenarian - 
millionaire - 
minesweeper - 
ministerial - 
minneapolis - 
misanthrope - 
mischievous - 
mississippi - 
mockingbird - 
mollycoddle - 
molybdenite - 
monongahela - 
monstrosity - 
montenegrin - 
mountaineer - 
mountainous - 
multinomial - 
multiplexor - 
musculature - 
muskellunge - 
neanderthal - 
nearsighted - 
necessitate - 
necromancer - 
necromantic - 
needlepoint - 
netherlands - 
netherworld - 
nightingale - 
nightmarish - 
nitrogenous - 
nondescript - 
nonetheless - 
nonsensical - 
northampton - 
nostradamus - 
novosibirsk - 
numismatist - 
nymphomania - 
obfuscatory - 
objectivity - 
observation - 
observatory - 
obsolescent - 
occultation - 
officialdom - 
omnipresent - 
oppenheimer - 
optoisolate - 
optometrist - 
orchestrate - 
orthodontic - 
orthography - 
orthonormal - 
oscillatory - 
osteopathic - 
ouagadougou - 
pacesetting - 
painstaking - 
paleolithic - 
palestinian - 
palindromic - 
pandemonium - 
paperweight - 
parentheses - parenthesis - 
parenthesis - parentheses - 
parenthetic - 
parishioner - 
participant - 
participate - 
particulate - 
paternoster - 
patriarchal - matriarchal - 
patrimonial - matrimonial - 
peasanthood - 
penitential - 
pentecostal - 
penultimate - 
peppergrass - 
perceptible - 
perchlorate - 
perfectible - 
performance - 
perfunctory - 
peripatetic - 
permissible - 
permutation - 
persecution - 
persecutory - 
perseverant - 
perspective - 
perspicuity - 
perspicuous - 
philosopher - 
philosophic - 
photography - 
phraseology - 
physiognomy - 
picturesque - 
pigeonberry - 
pitchblende - 
placeholder - 
plagioclase - 
planetarium - 
planoconvex - 
playwriting - 
pleistocene - 
polarimeter - 
polariscope - 
polarograph - 
politicking - 
polymorphic - 
polytechnic - 
pomegranate - 
pontificate - 
pornography - 
porterhouse - 
portmanteau - 
portraiture - 
postprocess - 
practicable - 
precambrian - 
precipitate - 
precipitous - 
predecessor - 
predicament - 
predominant - 
predominate - 
prehistoric - 
prejudicial - 
preliminary - 
premeditate - 
premonition - 
premonitory - 
preparation - 
preparative - 
preparatory - 
preposition - proposition - 
prerogative - 
prestigious - 
presumption - 
presumptive - 
pretentious - 
primitivism - 
probabilist - 
problematic - 
procrustean - 
programming - 
progression - 
progressive - 
prohibition - 
prohibitive - 
prohibitory - 
prolegomena - 
proletariat - 
proliferate - 
promiscuity - 
promiscuous - 
promptitude - 
proposition - preposition - 
proprietary - 
prosecution - 
protagonist - 
proteolysis - 
proteolytic - 
protuberant - 
provisional - 
provocateur - 
provocation - 
provocative - 
psychiatric - 
psychometry - 
pterodactyl - 
publication - 
pumpkinseed - 
purchasable - 
pyrotechnic - 
pythagorean - 
quadrennial - 
quadrillion - 
qualitative - 
quarrelsome - 
quarterback - 
quicksilver - 
quintillion - 
radioactive - 
radiocarbon - 
radiography - 
ratiocinate - 
rattlesnake - 
reactionary - 
reciprocate - 
reciprocity - 
reclamation - declamation - 
recombinant - 
recriminate - 
rectangular - 
rectilinear - 
referential - 
reflectance - 
reformatory - 
refrigerate - 
registrable - 
regrettable - 
regurgitate - 
religiosity - 
remembrance - 
reminiscent - 
remonstrate - demonstrate - 
renaissance - 
repetitious - 
replaceable - 
reportorial - 
requisition - 
reservation - 
residential - 
resignation - 
resourceful - 
respiration - 
respiratory - 
resplendent - 
responsible - 
restitution - 
restoration - 
restorative - 
resuscitate - 
retaliatory - 
retardation - 
retribution - 
retroactive - 
retrofitted - 
retrorocket - 
retrovision - 
reverberate - 
revisionary - 
rhetorician - 
ribonucleic - 
rockefeller - 
rotogravure - 
rudimentary - 
sacrificial - 
safekeeping - 
sagittarius - 
salesperson - 
salmonberry - 
salvageable - 
sanguineous - 
sarcophagus - 
sarsparilla - 
scandinavia - 
scarborough - 
schenectady - 
schlesinger - 
schoolhouse - 
scintillate - 
screwdriver - 
scrumptious - 
searchlight - 
secretarial - secretariat - 
secretariat - secretarial - 
sedimentary - 
seismograph - 
selfadjoint - 
serendipity - 
serviceable - 
seventeenth - 
severalfold - 
shakespeare - 
shareholder - 
shortcoming - 
shuttlecock - 
sightseeing - 
significant - 
silversmith - 
smithereens - 
smithsonian - 
smokescreen - 
somebody'll - 
southampton - 
sovereignty - 
spatterdock - 
spectacular - 
spectrogram - 
speedometer - 
spontaneity - 
spontaneous - 
sportswrite - 
springboard - 
springfield - 
squashberry - 
stagestruck - 
steeplebush - 
stegosaurus - 
stenography - 
stephanotis - 
stereoscopy - 
stethoscope - 
stickleback - 
stimulatory - 
stockbroker - 
stockholder - 
storyteller - 
straightway - 
strangulate - 
strawflower - 
strikebreak - 
subjunctive - 
submersible - 
subrogation - 
subservient - 
substantial - 
substantive - 
substituent - 
suffragette - 
suggestible - 
sulfonamide - 
superficial - 
superfluity - 
superfluous - 
superlative - 
superlunary - 
supernatant - 
supervisory - 
supposition - 
suppression - 
surveillant - 
susceptance - 
susceptible - 
swallowtail - 
switchblade - 
switchboard - 
switzerland - 
sycophantic - 
syllogistic - 
sympathetic - 
symptomatic - 
synchronism - 
synchronous - 
synchrotron - 
synergistic - 
tallahassee - 
teaspoonful - 
tegucigalpa - 
telekinesis - 
teleprinter - 
temperature - 
tempestuous - 
tenterhooks - 
teratogenic - 
terminology - 
terpsichore - 
terrestrial - 
territorial - 
testimonial - 
tetrahedral - 
tetrahedron - 
tetravalent - 
thallophyte - 
thenceforth - 
therapeutic - 
thereabouts - 
theretofore - 
thiocyanate - 
thistledown - 
thunderbird - 
thunderbolt - 
thunderclap - 
toastmaster - 
tonsillitis - 
topocentric - 
trafficking - 
transalpine - 
transceiver - 
transferral - 
transferred - 
transfinite - 
transfusion - 
translucent - 
transmittal - 
transmitted - transmitter - 
transmitter - transmitted - 
transparent - 
transversal - 
trapezoidal - 
traversable - 
treacherous - 
trencherman - trenchermen - 
trenchermen - trencherman - 
trepidation - 
triangulate - 
triceratops - 
trichinella - 
tridiagonal - 
trifluoride - 
trinitarian - 
trisyllable - 
troposphere - 
troublesome - 
trustworthy - 
typesetting - 
typewritten - 
typographer - 
tyrannicide - 
unbeknownst - 
unchristian - 
utilitarian - 
valediction - 
valedictory - 
venturesome - 
vermiculite - 
vicissitude - 
vigilantism - 
vladivostok - 
voluntarism - 
warmhearted - 
wastebasket - 
watercourse - 
weierstrass - 
westchester - 
westernmost - 
westminster - 
weyerhauser - 
wheresoever - 
wherewithal - 
whistleable - 
wiretapping - 
wisenheimer - 
workmanlike - 
workstation - 
worthington - 
yellowknife - 
yellowstone - 
zoroastrian - 
absentminded - 
acquaintance - 
administrate - 
advantageous - 
adventitious - 
affectionate - 
aforethought - 
afterthought - 
agribusiness - 
agricultural - 
alphanumeric - 
ambidextrous - 
aminobenzoic - 
anaplasmosis - 
anastigmatic - 
antagonistic - 
anthropology - 
anticipatory - 
antisemitism - 
apperception - 
apprehension - 
apprehensive - 
appropriable - 
approximable - 
archetypical - 
architecture - 
argillaceous - 
aristocratic - 
aristotelean - aristotelian - 
aristotelian - aristotelean - 
articulatory - 
astrophysics - 
asynchronous - 
augmentation - 
authenticate - 
automorphism - 
axisymmetric - 
battleground - 
bespectacled - 
bibliography - 
bicentennial - 
bilharziasis - 
birefringent - 
bluestocking - 
bodybuilding - 
bootstrapped - 
borosilicate - 
breakthrough - 
breathtaking - 
brinkmanship - 
brontosaurus - 
bureaucratic - 
burglarproof - 
cantabrigian - 
carbohydrate - 
carbonaceous - 
carcinogenic - 
carthaginian - 
cartographer - 
cartographic - 
catastrophic - 
centrifugate - 
checkerberry - 
checkerboard - 
checksumming - 
chemotherapy - 
chiropractor - 
choreography - 
christianson - 
chromatogram - 
chromosphere - 
chronography - 
churchillian - 
circumcircle - 
circumcision - 
circumscribe - 
circumsphere - 
circumstance - 
clockwatcher - 
clothesbrush - 
clotheshorse - 
clytemnestra - 
coincidental - 
combinatoric - 
commendation - 
commendatory - 
commensurate - 
commissariat - 
committeeman - committeemen - 
committeemen - committeeman - 
commonwealth - 
communicable - 
companionway - 
compensatory - 
compressible - 
conciliatory - 
condemnatory - 
confidential - 
confirmation - conformation - 
confirmatory - 
confiscatory - 
conformation - confirmation - 
confucianism - 
conglomerate - 
congratulate - 
conquistador - 
conscionable - 
conscription - 
conservation - 
conservatism - 
conservative - 
conservatory - 
constitution - 
constitutive - 
consultation - 
consultative - 
contemporary - 
contemptible - 
contemptuous - 
continuation - 
contrariwise - 
contribution - 
contributory - 
controllable - 
convalescent - 
conversation - 
cosmopolitan - 
councilwoman - councilwomen - 
councilwomen - councilwoman - 
counterpoint - 
counterpoise - 
craftspeople - 
craftsperson - draftsperson - 
cryptanalyst - 
cryptanalyze - 
cryptography - 
decaffeinate - 
decisionmake - 
decommission - 
decomposable - 
decontrolled - 
delicatessen - 
delimitation - 
deliquescent - 
demonstrable - 
densitometer - 
denunciation - 
deregulatory - 
diagrammatic - 
diamagnetism - 
diatomaceous - 
differential - 
disaccharide - 
disambiguate - 
disciplinary - 
discriminant - 
discriminate - 
disquisition - 
dissertation - 
distribution - 
distributive - 
diversionary - 
dodecahedral - 
dodecahedron - 
doubleheader - 
draftsperson - craftsperson - 
earsplitting - 
earthshaking - 
eavesdropped - eavesdropper - 
eavesdropper - eavesdropped - 
ecclesiastic - 
econometrica - 
efflorescent - 
electrolysis - 
electrolytic - 
ellipsometer - 
encephalitis - 
encyclopedic - 
endomorphism - 
enthusiastic - 
entrepreneur - 
epidemiology - 
epigrammatic - 
episcopalian - 
epistemology - 
epistolatory - 
eratosthenes - 
evolutionary - 
exchangeable - 
exclusionary - 
experiential - 
exploitation - 
exponentiate - 
extraditable - 
extramarital - 
extravaganza - 
extroversion - 
fayetteville - 
featherbrain - 
fermentation - 
fluorocarbon - 
formaldehyde - 
fountainhead - 
frontiersman - frontiersmen - 
frontiersmen - frontiersman - 
gaithersburg - 
galvanometer - 
geochemistry - 
geometrician - 
gobbledygook - 
guaranteeing - 
haberdashery - 
handicapping - 
handkerchief - 
happenstance - 
hardscrabble - 
headquarters - 
heliocentric - 
hellgrammite - 
heterocyclic - 
heterogamous - 
heterosexual - 
heterozygous - 
hexachloride - 
hexafluoride - 
hieroglyphic - 
hippopotamus - 
homebuilding - 
homeomorphic - 
homomorphism - 
horticulture - 
humanitarian - 
hydrochloric - 
hydrodynamic - 
hydrofluoric - 
hydrothermal - 
hypertensive - 
hypochlorite - 
hypochlorous - 
hypocritical - 
hypothalamic - 
hypothalamus - 
hysterectomy - 
idiosyncrasy - 
illegitimacy - 
illegitimate - 
immeasurable - 
immunization - 
impenetrable - 
imperishable - 
implantation - 
imponderable - 
inaccessible - 
inadmissible - 
inappeasable - 
inapplicable - 
inarticulate - 
inauspicious - 
incalculable - 
incandescent - 
incapacitate - 
incommutable - incomputable - 
incomparable - 
incompatible - 
incompletion - 
incomputable - incommutable - 
inconclusive - 
inconsistent - 
inconsolable - 
inconvenient - 
incorporable - 
incorrigible - 
indefensible - 
indianapolis - 
indigestible - 
indiscretion - 
indisputable - 
indissoluble - 
indoctrinate - 
indoeuropean - 
inequivalent - 
ineradicable - 
inexperience - 
inexplicable - 
inextricable - 
infelicitous - 
inflammation - 
inflammatory - 
inflationary - 
inhabitation - 
inharmonious - 
inhospitable - 
installation - instillation - 
instillation - installation - 
insufferable - 
insufficient - 
insurrection - 
intellectual - 
intelligible - 
intemperance - 
interception - 
interference - 
intermediary - 
intermittent - 
internescine - 
interpretive - 
interruption - 
interstitial - 
intervention - 
intransigent - 
intransitive - 
introduction - 
introductory - 
introversion - 
invertebrate - 
involutorial - 
invulnerable - 
irredeemable - 
irremediable - 
irresistible - 
irresolution - 
irresolvable - 
irrespective - 
irreversible - 
jacksonville - 
jeffersonian - 
jitterbugger - 
johannesburg - 
jurisdiction - 
jurisprudent - 
kaleidescope - kaleidoscope - 
kaleidoscope - kaleidescope - 
kindergarten - 
latitudinary - 
lexicography - 
lighthearted - 
liquefaction - 
lithospheric - 
liverpudlian - 
longitudinal - 
longstanding - 
loudspeaking - 
malformation - 
malnourished - 
malnutrition - 
malocclusion - 
manslaughter - 
marriageable - 
meetinghouse - 
megalomaniac - 
melodramatic - 
meretricious - 
metallurgist - 
metamorphism - 
metamorphose - 
methacrylate - 
metropolitan - 
michelangelo - 
middleweight - 
minicomputer - 
misanthropic - 
mitochondria - 
monkeyflower - 
mountainside - 
mulligatawny - 
multifarious - 
multipliable - 
multiplicand - 
multiplicity - 
mycobacteria - 
narragansett - 
neurasthenic - 
neuroanatomy - neuroanotomy - 
neuroanotomy - neuroanatomy - 
nevertheless - 
newfoundland - 
newspaperman - newspapermen - 
newspapermen - newspaperman - 
nicotinamide - 
nomenclature - 
nonagenarian - nonogenarian - 
nonogenarian - nonagenarian - 
northeastern - 
northernmost - 
northwestern - 
nymphomaniac - 
oceanography - 
octogenarian - 
officeholder - 
ombudsperson - 
oneupmanship - 
onomatopoeia - onomatopoeic - 
onomatopoeic - onomatopoeia - 
optoacoustic - 
orthodontist - 
orthorhombic - 
oscilloscope - 
ostentatious - 
osteoporosis - 
otherworldly - 
paraboloidal - 
paradigmatic - 
paramagnetic - 
paramilitary - 
parsimonious - 
pathogenesis - 
pediatrician - 
penitentiary - 
pennsylvania - 
periphrastic - 
perseverance - 
perspiration - 
pertinacious - 
perturbation - 
pestilential - 
petrifaction - 
pharmaceutic - 
pharmacology - 
philadelphia - 
philanthrope - philanthropy - 
philanthropy - philanthrope - 
philharmonic - 
philodendron - 
phosphoresce - 
phycomycetes - 
pigmentation - 
planetesimal - 
planoconcave - 
pneumococcus - 
polarography - 
ponchartrain - 
pornographer - 
postdoctoral - 
postgraduate - 
postmultiply - 
postposition - 
poughkeepsie - 
practitioner - 
praiseworthy - 
praseodymium - 
precipitable - 
prefabricate - 
preferential - 
preponderant - 
preponderate - 
preposterous - 
prerequisite - 
presbyterian - 
prescription - proscription - 
prescriptive - 
presentation - 
preservation - 
presidential - 
presumptuous - 
prizewinning - 
proclamation - 
productivity - 
professional - 
professorial - 
programmable - 
propagandist - 
prophylactic - 
proscription - prescription - 
prosopopoeia - 
prostitution - 
protactinium - 
protectorate - 
protestation - 
prothonotary - 
protoplasmic - 
providential - 
psychiatrist - 
psychopathic - 
psychophysic - 
puddingstone - 
pyroelectric - 
quadrangular - 
quantitative - 
quintessence - 
rachmaninoff - 
radiophysics - 
radiotherapy - 
recalcitrant - 
registration - 
rehabilitate - 
reimbursable - 
renegotiable - 
restaurateur - 
retrofitting - 
rhododendron - 
rhombohedral - 
rooseveltian - 
sacrilegious - 
saloonkeeper - 
sarsaparilla - 
saskatchewan - 
satisfaction - 
satisfactory - 
scatterbrain - 
schoolmaster - 
schroedinger - 
scrupulosity - 
segmentation - 
seismography - 
sensorimotor - 
serviceberry - 
shatterproof - 
shipbuilding - 
shortsighted - 
shuffleboard - 
sidestepping - 
simpleminded - 
simultaneity - 
simultaneous - 
singlehanded - 
skullduggery - 
sledgehammer - 
solicitation - 
sophisticate - 
southeastern - 
southernmost - 
southwestern - 
spectrograph - 
spectrometer - 
spectroscope - spectroscopy - 
spectroscopy - spectroscope - 
spokesperson - 
sportswriter - 
stationarity - 
statistician - 
steeplechase - 
stenographer - 
steprelation - 
stereography - 
straightaway - 
stratosphere - 
streptomycin - 
stroboscopic - 
stupefaction - 
subjectivity - 
substantiate - 
substitution - 
subterranean - 
superannuate - 
supercilious - 
superposable - 
superstition - 
suppressible - 
technocratic - 
teleprompter - 
testamentary - 
thanksgiving - 
theoretician - 
thoroughbred - 
thoroughfare - 
thousandfold - 
thunderstorm - 
totalitarian - 
tranquillity - 
transcendent - 
transduction - 
transferable - 
transference - 
transferring - 
transfusable - 
transgressor - 
transmission - 
transmitting - 
transmogrify - 
transoceanic - 
transpacific - 
transposable - 
transshipped - 
transvestite - 
transylvania - 
trifluouride - 
trigonometry - 
tropospheric - 
troubleshoot - 
tuberculosis - 
uniprocessor - 
vacationland - 
vainglorious - 
veterinarian - 
viscoelastic - 
vocabularian - 
warehouseman - 
weatherproof - 
weatherstrip - 
westinghouse - 
wholehearted - 
williamsburg - 
accelerometer - 
accompaniment - 
accreditation - 
addressograph - 
administrable - 
afforestation - 
anachronistic - 
animadversion - 
anthropogenic - 
architectonic - 
architectural - 
argumentation - 
argumentative - 
astrophysical - 
authoritarian - 
authoritative - 
autobiography - 
autocollimate - 
autocorrelate - 
baccalaureate - 
bidirectional - 
boardinghouse - 
bootstrapping - 
boustrophedon - 
brainchildren - 
cartilaginous - 
chemisorption - 
chromatograph - 
chrysanthemum - 
circumference - 
circumvention - 
combinatorial - 
commensurable - 
compassionate - 
complementary - complimentary - 
complimentary - complementary - 
comprehension - 
comprehensive - 
concertmaster - 
condescension - 
confectionery - 
configuration - 
conflagration - 
confrontation - 
congressional - 
congresswoman - congresswomen - 
congresswomen - congresswoman - 
conscientious - 
consequential - 
constructible - 
contraception - 
contraceptive - 
contradictory - 
contralateral - 
contravariant - 
contravention - 
controversial - 
correspondent - 
counterattack - 
cryptanalysis - 
cryptanalytic - 
cryptographer - 
cytochemistry - 
decomposition - 
decompression - 
decontrolling - 
deconvolution - 
deforestation - 
diagnostician - 
diffeomorphic - 
differentiate - 
discretionary - 
discriminable - 
documentation - 
eavesdropping - 
eigenfunction - 
electrophorus - 
emphysematous - 
excommunicate - 
extracellular - 
extraordinary - 
featherweight - 
ferroelectric - 
ferromagnetic - 
fontainebleau - 
fossiliferous - 
fragmentation - 
geochronology - 
grandchildren - 
granddaughter - 
grandiloquent - 
gubernatorial - 
heterogeneity - 
heterogeneous - 
hollingsworth - 
hydrochloride - 
hydroelectric - 
hyperboloidal - 
idiosyncratic - 
imperceivable - 
imperceptible - 
impermissible - 
imperturbable - 
impracticable - 
improvisation - 
inappreciable - 
inappropriate - 
incombustible - 
inconceivable - 
incondensable - 
inconsiderate - 
inconspicuous - 
incontestable - 
inconvertible - 
incorruptible - 
indefatigable - 
indescribable - 
indeterminacy - 
indeterminate - 
indiscernible - 
indispensable - 
indisposition - 
individualism - 
industrialism - 
inexhaustible - 
inexplainable - 
inexpressible - 
infinitesimal - 
inhomogeneity - 
inhomogeneous - 
insignificant - 
instantaneous - 
insubordinate - 
insubstantial - 
insupportable - 
interpolatory - 
interrogatory - 
interruptible - 
investigatory - 
irreclaimable - 
irrecoverable - 
irreplaceable - 
irrepressible - 
irresponsible - 
irretrievable - 
jitterbugging - 
juxtaposition - 
knickerbocker - 
knightsbridge - 
knowledgeable - 
laughingstock - 
liechtenstein - 
macromolecule - 
maldistribute - 
manifestation - 
massachusetts - 
mathematician - 
mediterranean - 
meistersinger - 
metalliferous - 
metallography - 
metamorphosis - 
michaelangelo - 
miscegenation - 
miscellaneous - 
mississippian - 
monochromatic - 
monochromator - 
monocotyledon - 
multitudinous - 
neuroanatomic - 
neuromuscular - 
oceanographer - 
oleomargarine - 
ophthalmology - 
ornamentation - 
parallelogram - 
paraphernalia - 
parliamentary - 
perpendicular - 
perspicacious - 
petrochemical - 
pharmacopoeia - 
phenomenology - 
phenylalanine - 
philanthropic - 
phosphorylate - 
physiotherapy - 
phytoplankton - 
piezoelectric - 
platitudinous - 
poliomyelitis - 
polypropylene - 
postcondition - 
postoperative - 
postprocessor - 
potentiometer - 
precautionary - 
procrastinate - 
prognosticate - 
pronounceable - 
pronunciation - 
proportionate - 
psychoanalyst - 
psychobiology - 
psychosomatic - 
psychotherapy - 
pyrophosphate - 
quadrilateral - 
quadripartite - 
quartermaster - 
quasiparticle - 
quasiperiodic - 
questionnaire - 
radiochemical - 
rapprochement - 
recriminatory - 
refractometer - 
regimentation - 
reprehensible - 
retrogression - 
retrogressive - 
revolutionary - 
sanctimonious - 
schizomycetes - 
schizophrenia - schizophrenic - 
schizophrenic - schizophrenia - 
schoolgirlish - 
schoolteacher - 
sedimentation - 
sequestration - 
serendipitous - 
shakespearean - shakespearian - 
shakespearian - shakespearean - 
socioeconomic - 
spectrography - 
spectroscopic - 
spermatophyte - 
sportswriting - 
statesmanlike - 
stationmaster - 
stoichiometry - 
stratospheric - 
streptococcus - 
sulfanilamide - 
superstitious - 
supplementary - 
supranational - 
surreptitious - 
systemization - 
tablespoonful - 
tachistoscope - 
teletypewrite - 
terpsichorean - 
tetrachloride - 
tetrafluoride - 
thoroughgoing - 
thunderflower - 
thundershower - 
thyroglobulin - 
tortoiseshell - 
transatlantic - 
transcription - 
transgression - 
transliterate - 
transmissible - 
transmittable - 
transmittance - 
transmutation - 
transpiration - 
transposition - 
transshipping - 
tyrannosaurus - 
underclassman - underclassmen - 
underclassmen - underclassman - 
upperclassman - upperclassmen - 
upperclassmen - upperclassman - 
valedictorian - 
weatherbeaten - 
winnipesaukee - 
abovementioned - 
administratrix - 
aforementioned - 
antiperspirant - 
astrophysicist - 
basidiomycetes - 
bremsstrahlung - 
cardiovascular - 
characteristic - 
cholinesterase - 
chromatography - 
circumlocution - 
circumstantial - 
classification - 
classificatory - 
claustrophobia - claustrophobic - 
claustrophobic - claustrophobia - 
committeewoman - committeewomen - 
committeewomen - committeewoman - 
comprehensible - 
concessionaire - 
congratulatory - 
consanguineous - 
conspiratorial - 
constantinople - 
contradistinct - 
controvertible - 
counterbalance - 
counterexample - 
czechoslovakia - 
diffeomorphism - 
differentiable - 
diffractometer - 
disciplinarian - 
discriminatory - 
extemporaneous - 
featherbedding - 
ferromagnetism - 
fredericksburg - 
handicraftsman - handicraftsmen - 
handicraftsmen - handicraftsman - 
histochemistry - 
historiography - 
hydrochemistry - 
implementation - 
inapproachable - 
incommensurate - 
incommunicable - 
incompressible - 
inconsiderable - 
incontrollable - 
indecipherable - 
indecomposable - 
indestructible - 
indeterminable - 
indiscoverable - 
indiscriminate - 
infrastructure - 
insuppressible - 
insurmountable - 
intelligentsia - 
interferometer - 
interpretation - 
intramolecular - 
irreconcilable - 
irreproachable - 
irreproducible - 
macromolecular - 
macroprocessor - 
macrostructure - 
mephistopheles - 
morphophonemic - 
multiplication - 
multiplicative - 
neuropathology - 
nitroglycerine - 
northumberland - 
optoelectronic - 
organometallic - 
orthophosphate - 
paralinguistic - 
parallelepiped - 
parapsychology - 
phosphorescent - 
physiochemical - 
polysaccharide - 
predisposition - 
presentational - 
prestidigitate - 
presupposition - 
proprioception - 
proprioceptive - 
psychoacoustic - 
psychoanalysis - 
psychoanalytic - 
quintessential - 
radioastronomy - 
radiochemistry - 
radiotelegraph - 
radiotelephone - 
reconnaissance - 
representative - 
septuagenarian - 
servomechanism - 
slaughterhouse - 
staphylococcus - 
superintendent - 
teleconference - 
teleprocessing - 
tetrafluouride - 
transcendental - 
transformation - 
transportation - 
unidimensional - 
unidirectional - 
verisimilitude - 
acknowledgeable - 
anthropomorphic - 
autosuggestible - 
autotransformer - 
charlottesville - 
chloroplatinate - 
circumferential - 
circumscription - 
complementarity - 
complementation - 
contemporaneous - 
counterargument - 
counterproposal - 
crystallography - 
electrophoresis - 
entrepreneurial - 
experimentation - 
extracurricular - 
extralinguistic - 
heterostructure - 
incommensurable - 
incomprehension - 
inconsequential - 
instrumentation - 
jurisprudential - 
neoconservative - 
neurophysiology - 
notwithstanding - 
nullstellensatz - 
parasympathetic - 
parliamentarian - 
physiotherapist - 
plenipotentiary - 
psychotherapist - 
quasicontinuous - 
quasistationary - 
straightforward - 
substitutionary - 
telecommunicate - 
telephotography - 
teletypesetting - 
transplantation - 
trichloroacetic - 
trichloroethane - 
anthropomorphism - 
arteriosclerosis - 
counterclockwise - 
counterintuitive - 
crystallographer - 
deoxyribonucleic - 
extraterrestrial - 
gastrointestinal - 
incomprehensible - 
incontrovertible - 
inextinguishable - 
mispronunciation - 
neuropsychiatric - 
psychophysiology - 
transconductance - 
transcontinental - 
weatherstripping - 
contradistinction - 
contradistinguish - 
counterproductive - 
electrocardiogram - 
indistinguishable - 
psychotherapeutic - 
spectrophotometer - 
arteriolosclerosis - 
diethylstilbestrol - 
electrocardiograph - 
triphenylphosphine - 
electroencephalograph - 
immunoelectrophoresis - 

This is a hyphon separated list, with CRLF for end of line markers, so should be easy enough to import into any sort of spreedsheet or text editor one might want to use.

My idea is to actually generate the list just using the word indexes, rather than the words, and then just create a link chain to link the words together, as I described above.

The question is, would this method be acceptable in the timing contest?  There'd be the one-time pregeneration required to create the connection list, which takes (38 seconds for me) to perfform, but after that, the time for matches should be rather neligable.  Honestly, if I was going to write a program to do this, to sell to a school or other client, I'd toss up a splash screen at the start up  (WORD LINK for title, scroll one letter at a time...  BY Steve McNeill...  2021....  PRESS ANY KEY TO START), which would give me time to generate the list before the customer ever had a chance to interact with it.  And, since the list only needs be generated once (unless the file is erased or corrupted), it's probably something they'd never notice or care about.  (Especially if I generated my list while they were reading the one time EULA, or whatnot...)

A little smoke and mirrors at startup to optimize the performance at run time.

(But Bplus would probably count it as cheating in the overall speed competition?  :P )



Another little bit of optimization would be to simple remove any words from the list that don't have a single match...  No need to read them, store them, or deal with them, if there's nothing they interact with.  May as well act like the words don't even exist, as far as our link chain is concerned.
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 13, 2021, 09:41:27 am
The preprocessing time would have to be counted towards total time to do the set of ladder. I was / am doing a preprocessing file load of words and counting that with the times I'm reporting. The time is saved doing it only once for the whole set to run through Ladder. As I said I gave up when the preprocessing of the whole word file with the one offs (I was also doing 3 to 7 letter words with Mid$) was taking way long than david_uwi's was for going from alien to drool.

You can cut processing time down allot:
1. do only 3 to 5 letter words
2. open the file gulp it into a string$ and close the file before doing the rest of the preprocessing.

Quote
Another little bit of optimization would be to simple remove any words from the list that don't have a single match...  No need to read them, store them, or deal with them, if there's nothing they interact with.  May as well act like the words don't even exist, as far as our link chain is concerned.

Ah now here is an idea! All you have to do is look at adult's list of one offs and see it doesn't connect to anything that saves you the time of testing which takes as much as alien to drool in david_uwi's code.

We can shave off some more time!

BTW you'd need at least 2 connects (one off's) for a word on the path, one to get to word and one to exit word.
Title: Re: Word ladder - Rosetta Code
Post by: SMcNeill on September 13, 2021, 11:48:18 am
Quote
BTW you'd need at least 2 connects (one off's) for a word on the path, one to get to word and one to exit word.

Not necessarily.  Look at the wordlist I generated above: bmw ONLY connects to bow.

But we can still link bmw to a ton of words since bow connects to multiple sources.

bmw - bow - cow - cot - cat.  <— for example.

I think a quick check to see if a word with one partner has a partner with only one connection, could be used to eliminate words from the list as well though…

Example: underclassman — underclassmen.  These two words only chain to each other, so you’d never be able to use either of them to chain to anything different.
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 13, 2021, 12:30:23 pm
Yes, that's what I meant a word on the path (not at an end) has to have 2 connects one to goto the word and one to get out of word.

That's 2 things that will shave off some time I think with the present code or at least my attempt.
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 13, 2021, 01:54:34 pm
Accidently found more time savings by letting q4 be variable length strings instead of fixed length. Can't do same with the w() array from the original file words. I am below 4 secs for the whole set and I haven't yet cut the time for child to adult because adult has no connects that will be another sec at least!
Title: Re: Word ladder - Rosetta Code
Post by: david_uwi on September 13, 2021, 01:57:08 pm
The problem now is that the program fulfills the specifications, but what I sometimes would like is to find all the possible solutions (for the minimum length). For example fun-->job has 18 paths all of length 3. Even the longest one has a few branches mid-chain (alien --> drool). I have tried to do this - not surprisingly it can be much slower.

Code: QB64: [Select]
  1. OPEN "c:\cw1\unixdict.txt" FOR INPUT AS #1
  2. 'OPEN "c:\cw1\english3.txt" FOR INPUT AS #1 'bigger dictionary
  3. DIM w(10000) AS STRING * 5 'make sure we have enough storage!!
  4. DIM q4(10000, 100) AS STRING * 5
  5. DIM k1(100)
  6. DIM r4(5000)
  7. DIM z4(10000, 100) AS STRING
  8. tt = TIMER 'include time taken to load to RAM
  9.  
  10. q1$ = "alien": q2$ = "drool"
  11. 'q1$ = "child": q2$ = "adult"
  12. 'q1$ = "girl": q2$ = "lady"
  13. 'q1$ = "john": q2$ = "jane"
  14. 'q1$ = "play": q2$ = "ball"
  15. 'q1$ = "farm": q2$ = "silo"
  16. 'q1$ = "junk": q2$ = "fact"
  17. 'q1$ = "kirk": q2$ = "khan"
  18. 'q1$ = "wise": q2$ = "mood"
  19. 'q1$ = "sent": q2$ = "buoy"
  20. q1$ = "fun": q2$ = "job"
  21. n = LEN(q1$)
  22. IF n < 5 THEN q1$ = q1$ + SPACE$(5 - n): q2$ = q2$ + SPACE$(5 - n)
  23.     INPUT #1, a$
  24.     IF LEN(a$) = n THEN
  25.         k = k + 1
  26.         w(k) = a$
  27.         IF a$ = q1$ THEN w(k) = "*****"
  28.     END IF
  29. 'tt = TIMER
  30. jk = 1
  31. k1(jk) = 1
  32. q4(1, 1) = q1$
  33.     'FOR i = k TO 1 STEP -1
  34.     mm = 0
  35.     FOR i = 1 TO k
  36.         IF w(i) <> "*****" THEN
  37.             cnt = 0
  38.             FOR kk = 1 TO k1(jk)
  39.                 cnt = 0
  40.  
  41.                 FOR j = 1 TO n
  42.                     IF MID$(w(i), j, 1) = MID$(q4(kk, jk), j, 1) THEN cnt = cnt + 1 ELSE zz = j
  43.                 NEXT j
  44.                 IF cnt = n - 1 THEN
  45.                     k1(jk + 1) = k1(jk + 1) + 1
  46.                     q4(k1(jk + 1), jk + 1) = w(i)
  47.                     z4(k1(jk + 1), jk + 1) = z4(kk, jk) + MID$(w(i), zz, 1) + CHR$(zz + 48) + " "
  48.                     'if w(i)<>q2$ THEN w(i) = "*****"
  49.                     mm = mm + 1
  50.                     r4(mm) = i
  51.                 END IF
  52.             NEXT kk
  53.         END IF
  54.     NEXT i
  55.     FOR i = 1 TO mm
  56.         w(r4(i)) = "*****"
  57.     NEXT i
  58.     mm = 0
  59.     kflag = 0
  60.     FOR i = 1 TO k1(jk + 1)
  61.         'PRINT q4(i, jk + 1); " ";
  62.         IF q4(i, jk + 1) = q2$ THEN
  63.             final$ = z4(i, jk + 1)
  64.             ifinal = i
  65.             GOSUB output1
  66.             'kflag = 99
  67.         END IF
  68.     NEXT i
  69.     'INPUT sa$
  70.     PRINT
  71.     PRINT jk; k1(jk + 1)
  72.  
  73.     jk = jk + 1
  74.     IF k1(jk) = 0 THEN EXIT DO
  75.     IF kflag = 99 THEN EXIT DO
  76. IF k1(jk) = 0 THEN PRINT: PRINT "No path found!"
  77. PRINT: PRINT "time taken = "; TIMER - tt; " seconds"; " - number of altenatives = "; count
  78. output1:
  79. kflag = 99
  80. IF k1(jk) > 0 THEN
  81.     xlen = LEN(final$)
  82.     PRINT: PRINT q1$; " ";
  83.     q9$ = q1$
  84.     FOR ij = 1 TO xlen STEP 3
  85.         c1$ = MID$(final$, ij, 1)
  86.         c2$ = MID$(final$, ij + 1, 1)
  87.         MID$(q9$, VAL(c2$), 1) = c1$
  88.         PRINT q9$; " ";
  89.     NEXT ij
  90.     count = count + 1
  91.  
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 13, 2021, 04:30:25 pm
Yeah and I am saying if you sort all those alternate paths only one comes out on top all the time!

That happens to be the first path arrived at when you go through the word list alphabetically:

Code: QB64: [Select]
  1. DefLng A-Z
  2. 'q1$ = "boy": q2$ = "man" ' same one sorted comes out on top
  3. 'q1$ = "girl": q2$ = "lady" ' only one choice
  4. 'q1$ = "john": q2$ = "jane" ' only one choice
  5. 'q1$ = "alien": q2$ = "drool" ' same one sorted comes out on top
  6. 'q1$ = "child": q2$ = "adult" ' no path
  7. 'q1$ = "play": q2$ = "ball"  ' same one sorted comes out on top
  8. q1$ = "fun": q2$ = "job" ' same one sorted comes out on top
  9.  
  10. Open "unixdict.txt" For Input As #1
  11. 'OPEN "c:\cw1\english3.txt" FOR INPUT AS #1 'bigger dictionary
  12. Dim w(10000) As String * 5 'make sure we have enough storage!!
  13. Dim q4(10000, 100) As String * 5
  14. Dim k1(100)
  15. Dim r4(5000)
  16. Dim z4(10000, 100) As String
  17.  
  18. tt = Timer 'include time taken to load to RAM
  19.  
  20.  
  21. ReDim paths$(100), PathIndex
  22.  
  23. n = Len(q1$)
  24. If n < 5 Then q1$ = q1$ + Space$(5 - n): q2$ = q2$ + Space$(5 - n)
  25.     Input #1, a$
  26.     If Len(a$) = n Then
  27.         k = k + 1
  28.         w(k) = a$
  29.         If a$ = q1$ Then w(k) = "*****"
  30.     End If
  31. 'tt = TIMER
  32. jk = 1
  33. k1(jk) = 1
  34. q4(1, 1) = q1$
  35.     mm = 0
  36.     For i = k To 1 Step -1 ' >>>> reverse alpha order but sort at end at the shortest path alphabetically is the same as alpha order
  37.         If w(i) <> "*****" Then
  38.             cnt = 0
  39.             For kk = 1 To k1(jk)
  40.                 cnt = 0
  41.  
  42.                 For j = 1 To n
  43.                     If Mid$(w(i), j, 1) = Mid$(q4(kk, jk), j, 1) Then cnt = cnt + 1 Else zz = j
  44.                 Next j
  45.                 If cnt = n - 1 Then
  46.                     k1(jk + 1) = k1(jk + 1) + 1
  47.                     q4(k1(jk + 1), jk + 1) = w(i)
  48.                     z4(k1(jk + 1), jk + 1) = z4(kk, jk) + Mid$(w(i), zz, 1) + Chr$(zz + 48) + " "
  49.                     'if w(i)<>q2$ THEN w(i) = "*****"
  50.                     mm = mm + 1
  51.                     r4(mm) = i
  52.                 End If
  53.             Next kk
  54.         End If
  55.     Next i
  56.     For i = 1 To mm
  57.         w(r4(i)) = "*****"
  58.     Next i
  59.     mm = 0
  60.     kflag = 0
  61.     For i = 1 To k1(jk + 1)
  62.         'PRINT q4(i, jk + 1); " ";
  63.         If q4(i, jk + 1) = q2$ Then
  64.             final$ = z4(i, jk + 1)
  65.             ifinal = i
  66.             GoSub output1
  67.             'kflag = 99
  68.         End If
  69.     Next i
  70.     'INPUT sa$
  71.     ' Print
  72.     'Print jk; k1(jk + 1)
  73.  
  74.     jk = jk + 1
  75.     If k1(jk) = 0 Then Exit Do
  76.     If kflag = 99 Then Exit Do
  77. If k1(jk) = 0 Then
  78.     Print "For "; q1$; " to "; q2$; ", No path found!"
  79.     QuickSort 1, PathIndex, paths$()
  80.  
  81.     Print paths$(1)
  82.  
  83. Print: Print "time taken = "; Timer - tt; " seconds"; " - number of altenatives = "; count
  84. output1:
  85. PathIndex = PathIndex + 1
  86. kflag = 99
  87. If k1(jk) > 0 Then
  88.     xlen = Len(final$)
  89.     'Print: Print q1$; " ";
  90.     paths$(PathIndex) = q1$
  91.     q9$ = q1$
  92.     For ij = 1 To xlen Step 3
  93.         c1$ = Mid$(final$, ij, 1)
  94.         c2$ = Mid$(final$, ij + 1, 1)
  95.         Mid$(q9$, Val(c2$), 1) = c1$
  96.         'Print q9$; " ";
  97.         paths$(PathIndex) = paths$(PathIndex) + " " + q9$
  98.     Next ij
  99.     count = count + 1
  100.  
  101. Sub QuickSort (start As Long, finish As Long, array() As String)
  102.     Dim Hi As Long, Lo As Long, Middle$
  103.     Hi = finish: Lo = start
  104.     Middle$ = array((Lo + Hi) / 2) 'find middle of array
  105.     Do
  106.         Do While array(Lo) < Middle$: Lo = Lo + 1: Loop
  107.         Do While array(Hi) > Middle$: Hi = Hi - 1: Loop
  108.         If Lo <= Hi Then
  109.             Swap array(Lo), array(Hi)
  110.             Lo = Lo + 1: Hi = Hi - 1
  111.         End If
  112.     Loop Until Lo > Hi
  113.     If Hi > start Then QuickSort start, Hi, array()
  114.     If Lo < finish Then QuickSort Lo, finish, array()
  115.  
  116.  

There can be only one shortest path!

I am reminded of Fundamental Theorem of Arithmetic https://en.wikipedia.org/wiki/Fundamental_theorem_of_arithmetic

I say ordering words is like ordering factors.

Besides I now have the Word Ladder set we've been working with below 3 secs! Under 3 secs @david_uwi ;-))
Shortest path being the Alphabetic choice from the multiple paths found of same length.
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 13, 2021, 04:46:48 pm
Ave 2.57 secs on my system down from 4.45 (guess I have to run it while not posting here, takes .03 secs more)

Code: QB64: [Select]
  1. _Title "Word ladder v6 b+ mod david_uwi" '2021-09-10 david has already improved his first version!
  2. ' ref:  https://www.qb64.org/forum/index.php?topic=4157.msg135293#msg135293
  3. ' get original version above, I am modifying below to study
  4. ' 2021-09-11 in v3 b+ mod david_uwi I modify to compare whole set to my orignal whole set
  5. ' 2021-09-11 in v4 I think I can load the words faster
  6. ' 2021-09-12 in v5 lets just call the external file once, use david's idea instead of _continue,
  7. ' I think it looks cleaner without _continue which tool out skipping a For loop by a THEN (GOTO) line #.
  8. ' Ave of 5 runs before this (mod 4) was 11.27.. see if we improve still more, also DefLng A-Z  oh wow.
  9. ' Ave of 5 runs now 8.74 another 2.5 secs shaved off
  10. ' 2021-09-12 in v6 though using asc instead of mid$ might go faster.
  11. ' Ave of 5 runs now is 4.45 secs another 4.29 sec off!
  12.  
  13. ' 2021-09-13 v7 b+ mod david_uwi = v6 b+ mod but I will attempt to translate letter variables into
  14. ' more meaningful in attempts to understand what is being done in his code.
  15. ' Shaved significant time by making store$ (used to be q4) not fixed!
  16. ' Yes run a quick check that target word connects to something does save us so much time that
  17. ' we get a better overall time for the whole set even though we added a tiny bit of time to
  18. ' the ones that do connect.
  19. ' Ave of 5 runs is now 2.57 sec another 1.88 secs shaved off.
  20.  
  21. DefLng A-Z ' 2 secs off from old Single default!
  22. ReDim Shared Fwords$(1 To 1), UBF ' ubound of Fwords$
  23. start! = Timer(.001)
  24.  
  25. ' do just once for all ladder calls
  26. Open "unixdict.txt" For Binary As #1 ' take the file in a gulp
  27. buf$ = Space$(LOF(1))
  28. Get #1, , buf$
  29. Split buf$, Chr$(10), Fwords$()
  30. UBF = UBound(fwords$)
  31.  
  32. ' test set of ladder calls
  33. ladder "boy", "man" '     quick
  34. ladder "girl", "lady" '   this takes awhile
  35. ladder "john", "jane" '   quick enough
  36. ladder "alien", "drool" ' cool but takes a long long time!
  37. ladder "child", "adult" ' and this takes awhile
  38. ladder "play", "ball" '   goes quick
  39. ladder "fun", "job" '     ditto
  40. Print: Print "Total time including one disk file access:"; Timer(.001) - start!
  41.  
  42. Sub ladder (q1$, q2$)
  43.     tt! = Timer(.001) 'include time taken to load to RAM bplus mod to accuracy (.001)
  44.     Dim w(10000) As String * 5 ' words from file not String * 5 'make sure we have enough storage!!
  45.     Dim store$(10000, 100) ' wow  went from fixed string! storing connect words  to not fixed string and shaved a sec off time!!!
  46.     Dim storeIndexs(100)
  47.     Dim z4(10000, 100) As String
  48.     FI = 1
  49.     wordLength = Len(q1$)
  50.     If wordLength < 5 Then q1$ = q1$ + Space$(5 - wordLength): q2$ = q2$ + Space$(5 - wordLength)
  51.     While FI <= UBF
  52.         If Len(Fwords$(FI)) = wordLength Then
  53.             maxWordIndex = maxWordIndex + 1
  54.             If Fwords$(FI) = q1$ Then w(maxWordIndex) = "*****" Else w(maxWordIndex) = Fwords$(FI)
  55.         End If
  56.         FI = FI + 1
  57.     Wend
  58.  
  59.     'q2$ needs to have at least one connect or skip to end
  60.     '(this block will add a little more time to each ladder but save over a sec on adult or any target word with no connects)
  61.     For i = 1 To maxWordIndex
  62.         If w(i) <> q2$ Then ' just check before entering loop
  63.             cnt = 0
  64.             For j = 1 To wordLength
  65.                 If Asc(w(i), j) <> Asc(q2$, j) Then cnt = cnt + 1
  66.             Next j
  67.             If cnt = 1 Then ' q2$ has a connect good to go
  68.                 targetOK = -1: Exit For
  69.             End If
  70.         End If
  71.     Next i
  72.     If targetOK = 0 Then Print "No path found! from "; q1$; " to "; q2$;: GoTo skip
  73.  
  74.     ' carry on
  75.     jk = 1
  76.     storeIndexs(jk) = 1
  77.     store$(1, 1) = q1$
  78.     Do
  79.         For i = 1 To maxWordIndex
  80.             If w(i) <> "*****" Then '_Continue '  500  just check before entering loop
  81.                 cnt = 0
  82.                 For kk = 1 To storeIndexs(jk)
  83.                     cnt = 0
  84.                     For j = 1 To wordLength
  85.                         If Asc(w(i), j) = Asc(store$(kk, jk), j) Then cnt = cnt + 1 Else zz = j
  86.                         'If Mid$(w(i), j, 1) = Mid$(store$(kk, jk), j, 1) Then cnt = cnt + 1 Else zz = j
  87.                     Next j
  88.                     If cnt = wordLength - 1 Then
  89.                         storeIndexs(jk + 1) = storeIndexs(jk + 1) + 1
  90.                         store$(storeIndexs(jk + 1), jk + 1) = w(i)
  91.                         z4(storeIndexs(jk + 1), jk + 1) = z4(kk, jk) + Mid$(w(i), zz, 1) + Chr$(zz + 48) + " " 'stores a letter and change position
  92.                         w(i) = "*****"
  93.                     End If
  94.                 Next kk
  95.             End If
  96.         Next i
  97.         kflag = 0
  98.         For i = 1 To storeIndexs(jk + 1)
  99.             If store$(i, jk + 1) = q2$ Then kflag = 99: final$ = z4(i, jk + 1)
  100.         Next i
  101.         If storeIndexs(jk + 1) = 0 Then kflag = 99
  102.         jk = jk + 1
  103.         If kflag = 99 Then Exit Do
  104.     Loop
  105.     If storeIndexs(jk) = 0 Then Print "No path found! from "; q1$; " to "; q2$; ' b+ removed a print blank line
  106.     If storeIndexs(jk) > 0 Then
  107.         xlen = Len(final$)
  108.         'Print:
  109.         Print q1$; " ";
  110.         For i = 1 To xlen Step 3
  111.             c1$ = Mid$(final$, i, 1)
  112.             c2$ = Mid$(final$, i + 1, 1)
  113.             Mid$(q1$, Val(c2$), 1) = c1$
  114.             Print q1$; " ";
  115.         Next i
  116.     End If
  117.     skip:
  118.     Print: Print "time taken = "; Timer(.001) - tt!; " seconds"
  119.  
  120. Sub Split (SplitMeString As String, delim As String, loadMeArray() As String)
  121.     Dim curpos As Long, arrpos As Long, LD As Long, dpos As Long 'fix use the Lbound the array already has
  122.     curpos = 1: arrpos = LBound(loadMeArray): LD = Len(delim)
  123.     dpos = InStr(curpos, SplitMeString, delim)
  124.     Do Until dpos = 0
  125.         loadMeArray(arrpos) = Mid$(SplitMeString, curpos, dpos - curpos)
  126.         arrpos = arrpos + 1
  127.         If arrpos > UBound(loadMeArray) Then ReDim _Preserve loadMeArray(LBound(loadMeArray) To UBound(loadMeArray) + 1000) As String
  128.         curpos = dpos + LD
  129.         dpos = InStr(curpos, SplitMeString, delim)
  130.     Loop
  131.     loadMeArray(arrpos) = Mid$(SplitMeString, curpos)
  132.     ReDim _Preserve loadMeArray(LBound(loadMeArray) To arrpos) As String 'get the ubound correct
  133.  
  134.  

  [ This attachment cannot be displayed inline in 'Print Page' view ]  
Title: Re: Word ladder - Rosetta Code
Post by: johnno56 on September 14, 2021, 09:15:29 am
Cool... Getting faster by the version.... I got 2.256... Well done!
Title: Re: Word ladder - Rosetta Code
Post by: david_uwi on September 14, 2021, 10:18:34 am
Hard to believe it can go so fast. Well done! are you going to post it on the Rosetta site?

I sometimes try to impress by doing the word ladders in newspapers which is why I was going for all the solutions (see my post above).
Yesterdays newspaper had FIVE -->BAGS this did not work (the wordlist does not contain many plurals - BAGS is not there).
So I tried my bigger wordlist and it got 42 solutions.

The problem I found was that when I added BAGS to the UNIXDICT.TXT it found solutions that were not present in the search of the longer list. For example five,file,bale,base,bass,bags.
I'm wondering if something is overflowing - and not giving out an error. I've tried redimming all my integers to LONG and it made no difference.
Title: Re: Word ladder - Rosetta Code
Post by: david_uwi on September 14, 2021, 10:29:01 am
Ah! stupid mistake. The unixdict is finding 5 word chains from five to bags - the bigger wordlist is finding 4 word chains (because it has words ending in "s").
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 14, 2021, 11:48:37 am
Quote
Hard to believe it can go so fast. Well done! are you going to post it on the Rosetta site?

My first goal is to master your algorithm, @david_uwi
I did make progress when I started the attempt to give your variables more meaningful names (at least meaningful enough for me to follow). I hope that the code would be easier to follow not just for myself but for anyone trying to understand how it works. I also would like to make it general enough to do 6 or 7 letters if anyone wants to give that a try, might be interesting with longer words. You also mentioned something about tidying up the flag code... haven't gotten that far.

Currently trying to figure out what to call z4, now that I see you are rebuilding paths from letters and change positions, I think, looks like you are saving the word too in z4. I was interrupted when I accidently discovered the big improvement when q4 didn't have to be fixed strings, that was a big surprise as well. Then the interaction with Steve suggested to me that we should be checking if the 2nd word target even has a connection word before going down the road of finding connecting words. Finding out that child does not connect to adult use to take over a sec, now it's a small fraction. Had to post these time improvements.

Maybe I will post final code at Rosetta, it would be first time for me, someone else usually has posted my efforts.
@david_uwi it is still basically your algo maybe you'd like that honor?

PS there still is a chance Steve or someone else might come up with something really amazing and blow our minds with speed.
Title: Re: Word ladder - Rosetta Code
Post by: SMcNeill on September 14, 2021, 01:37:09 pm
A small few small tweaks to shave off a little time in the program here for us:

Code: QB64: [Select]
  1. Screen _NewImage(1024, 720, 32)
  2.  
  3. _Title "Word ladder v6 b+ mod david_uwi" '2021-09-10 david has already improved his first version!
  4. ' ref:  https://www.qb64.org/forum/index.php?topic=4157.msg135293#msg135293
  5. ' get original version above, I am modifying below to study
  6. ' 2021-09-11 in v3 b+ mod david_uwi I modify to compare whole set to my orignal whole set
  7. ' 2021-09-11 in v4 I think I can load the words faster
  8. ' 2021-09-12 in v5 lets just call the external file once, use david's idea instead of _continue,
  9. ' I think it looks cleaner without _continue which tool out skipping a For loop by a THEN (GOTO) line #.
  10. ' Ave of 5 runs before this (mod 4) was 11.27.. see if we improve still more, also DefLng A-Z  oh wow.
  11. ' Ave of 5 runs now 8.74 another 2.5 secs shaved off
  12. ' 2021-09-12 in v6 though using asc instead of mid$ might go faster.
  13. ' Ave of 5 runs now is 4.45 secs another 4.29 sec off!
  14.  
  15. ' 2021-09-13 v7 b+ mod david_uwi = v6 b+ mod but I will attempt to translate letter variables into
  16. ' more meaningful in attempts to understand what is being done in his code.
  17. ' Shaved significant time by making store$ (used to be q4) not fixed!
  18. ' Yes run a quick check that target word connects to something does save us so much time that
  19. ' we get a better overall time for the whole set even though we added a tiny bit of time to
  20. ' the ones that do connect.
  21. ' Ave of 5 runs is now 2.57 sec another 1.88 secs shaved off.
  22.  
  23. DefLng A-Z ' 2 secs off from old Single default!
  24. ReDim Shared Fwords$(1 To 1), UBF ' ubound of Fwords$
  25. start! = Timer(.001)
  26.  
  27. ' do just once for all ladder calls
  28. Open "unixdict.txt" For Binary As #1 ' take the file in a gulp
  29. buf$ = Space$(LOF(1))
  30. Get #1, , buf$
  31. Split buf$, Chr$(10), Fwords$()
  32. UBF = UBound(Fwords$)
  33.  
  34. ' test set of ladder calls
  35. ladder "boy", "man" '     quick
  36. ladder "girl", "lady" '   this takes awhile
  37. ladder "john", "jane" '   quick enough
  38. ladder "alien", "drool" ' cool but takes a long long time!
  39. ladder "child", "adult" ' and this takes awhile
  40. ladder "play", "ball" '   goes quick
  41. ladder "fun", "job" '     ditto
  42. Print: Print "Total time including one disk file access:"; Timer(.001) - start!
  43.  
  44. Sub ladder (q1$, q2$)
  45.     tt! = Timer(.001) 'include time taken to load to RAM bplus mod to accuracy (.001)
  46.     Dim w(10000) As String * 5 ' words from file not String * 5 'make sure we have enough storage!!
  47.     Dim store$(10000, 100) ' wow  went from fixed string! storing connect words  to not fixed string and shaved a sec off time!!!
  48.     Dim storeIndexs(100)
  49.     Dim z4(10000, 100) As String
  50.     FI = 1
  51.     wordLength = Len(q1$)
  52.     If wordLength < 5 Then q1$ = q1$ + Space$(5 - wordLength): q2$ = q2$ + Space$(5 - wordLength)
  53.     While FI <= UBF
  54.         If Len(Fwords$(FI)) = wordLength Then
  55.             maxWordIndex = maxWordIndex + 1
  56.             If Fwords$(FI) = q1$ Then w(maxWordIndex) = "*****" Else w(maxWordIndex) = Fwords$(FI)
  57.         End If
  58.         FI = FI + 1
  59.     Wend
  60.  
  61.     'q2$ needs to have at least one connect or skip to end
  62.     '(this block will add a little more time to each ladder but save over a sec on adult or any target word with no connects)
  63.     For i = 1 To maxWordIndex
  64.         If w(i) <> q2$ Then ' just check before entering loop
  65.             cnt = 0
  66.             For j = 1 To wordLength
  67.                 If Asc(w(i), j) <> Asc(q2$, j) Then cnt = cnt + 1
  68.             Next j
  69.             If cnt = 1 Then ' q2$ has a connect good to go
  70.                 targetOK = -1: Exit For
  71.             End If
  72.         End If
  73.     Next i
  74.     If targetOK = 0 Then Print "No path found! from "; q1$; " to "; q2$;: GoTo skip
  75.  
  76.     ' carry on
  77.     jk = 1
  78.     storeIndexs(jk) = 1
  79.     store$(1, 1) = q1$
  80.     Do
  81.         For i = 1 To maxWordIndex
  82.             If w(i) <> "*****" Then '_Continue '  500  just check before entering loop
  83.                 cnt = 0
  84.                 For kk = 1 To storeIndexs(jk)
  85.                     cnt = 0
  86.                     For j = 1 To wordLength
  87.                         If Asc(w(i), j) = Asc(store$(kk, jk), j) Then cnt = cnt + 1 Else zz = j
  88.                         'If Mid$(w(i), j, 1) = Mid$(store$(kk, jk), j, 1) Then cnt = cnt + 1 Else zz = j
  89.                     Next j
  90.                     If cnt = wordLength - 1 Then
  91.                         storeIndexs(jk + 1) = storeIndexs(jk + 1) + 1
  92.                         store$(storeIndexs(jk + 1), jk + 1) = w(i)
  93.                         z4(storeIndexs(jk + 1), jk + 1) = z4(kk, jk) + Mid$(w(i), zz, 1) + Chr$(zz) + " " 'stores a letter and change position
  94.                         w(i) = "*****"
  95.                     End If
  96.                 Next kk
  97.             End If
  98.         Next i
  99.         kflag = 0
  100.         For i = 1 To storeIndexs(jk + 1)
  101.             If store$(i, jk + 1) = q2$ Then kflag = 99: final$ = z4(i, jk + 1)
  102.         Next i
  103.         If storeIndexs(jk + 1) = 0 Then kflag = 99
  104.         jk = jk + 1
  105.         If kflag = 99 Then Exit Do
  106.     Loop
  107.     If storeIndexs(jk) = 0 Then Print "No path found! from "; q1$; " to "; q2$; ' b+ removed a print blank line
  108.     If storeIndexs(jk) > 0 Then
  109.         xlen = Len(final$)
  110.         'Print:
  111.         '        Print q1$; " ";
  112.         t$ = q1$ + " "
  113.         For i = 1 To xlen Step 3
  114.             '            c1$ = Mid$(final$, i, 1)
  115.             c1 = Asc(final$, i)
  116.             '            c2$ = Mid$(final$, i + 1, 1)
  117.             c2 = Asc(final$, i + 1)
  118.             '            Mid$(q1$, Val(c2$), 1) = c1$
  119.             Asc(q1$, c2) = c1
  120.             'Print q1$; " ";
  121.             t$ = t$ + q1$ + " "
  122.         Next i
  123.         Print t$
  124.     End If
  125.     skip:
  126.     Print "time taken = "; Timer(.001) - tt!; " seconds"
  127.  
  128. Sub Split (SplitMeString As String, delim As String, loadMeArray() As String)
  129.     Dim curpos As Long, arrpos As Long, LD As Long, dpos As Long 'fix use the Lbound the array already has
  130.     curpos = 1: arrpos = LBound(loadMeArray): LD = Len(delim)
  131.     dpos = InStr(curpos, SplitMeString, delim)
  132.     Do Until dpos = 0
  133.         loadMeArray(arrpos) = Mid$(SplitMeString, curpos, dpos - curpos)
  134.         arrpos = arrpos + 1
  135.         If arrpos > UBound(loadMeArray) Then ReDim _Preserve loadMeArray(LBound(loadMeArray) To UBound(loadMeArray) + 1000) As String
  136.         curpos = dpos + LD
  137.         dpos = InStr(curpos, SplitMeString, delim)
  138.     Loop
  139.     loadMeArray(arrpos) = Mid$(SplitMeString, curpos)
  140.     ReDim _Preserve loadMeArray(LBound(loadMeArray) To arrpos) As String 'get the ubound correct
  141.  
  142.  

  [ This attachment cannot be displayed inline in 'Print Page' view ]  

Note that the SCREEN change doesn't really do anything for us, except change the color from a light gray to the default bright white of a 31-bit screen.  My poor eyes just strain to look at the dull gray of a standard SCREEN 0 color, so I zapped it over to 32-bit just to brighten it for my readability.  :P

The main changes here are:
1) The addition of $CHECKING:OFF which shaves a little time off from our string array handing routines.
2) Down at the end of the ladder sub, I made a few minor changes here:

    If storeIndexs(jk) > 0 Then
        xlen = Len(final$)
        'Print:
        '        Print q1$; " ";
        t$ = q1$ + " "
        For i = 1 To xlen Step 3
            '            c1$ = Mid$(final$, i, 1)
            c1 = Asc(final$, i)
            c2$ = Mid$(final$, i + 1, 1)
            '            Mid$(q1$, Val(c2$), 1) = c1$
            Asc(q1$, c2) = c1
            'Print q1$; " ";
            t$ = t$ + q1$ + " "
        Next i
        Print t$
    End If
    skip:

In the red text above, I removed the MID$ function in 2 places and replaced it with ASC commands.  Whenever going for speed, if possible, *always* use ASC over single character MID$ commands.  There's a noticeable speed between the performance of the two.

In the purple text above, I removed the multiple print statements.  Remember guys:  PRINT IS SLOW!!  By simply adding my string to be printed together, rather than printing it piece by piece, I shaved off some time here.

I also swapped out the CHR$(zz + 48) to simply store the CHR$(zz), and then used ASC(final$, i + 1) to get that value back directly, rather than having to store it as a string and then take the VAL of it...

Title: Re: Word ladder - Rosetta Code
Post by: SMcNeill on September 14, 2021, 01:43:52 pm
I'm also thinking some quick variable substitutions could make a fractional difference for us.  (It's going to be hard to squeeze out anything more than fractional diffferences at this point, since we're already down to the whole thing running in 1.2 seconds, or so.)

In the 'carry on segment of the code, we see a whole bunch of this math: jk +1...

I'd suggest replacing those with one singular math statement at the start of that Do loop:

Do
   t = jk + 1
   For i = 1 to maxWordIndex 


Then just use that one variable t, rather than calculating jk +1 countless  times over and over.  jk doesn't change until the end of the Do loop -- the value of jk + 1 isn't going to change either on us.

Always move your math outside your loops as much as possible, if you're looking for speed and performance in your code. 
Title: Re: Word ladder - Rosetta Code
Post by: david_uwi on September 14, 2021, 02:25:42 pm
More tweaking. This time a small change to the algorithm.
I realized that once you get to within one letter of q2$ (the goal word) it is essentially solved. No point in going through the word list one last time. So this new program aborts at this point 1-letter away from a solution.
It save a trivial amount of time 2.7 -->2.3 sec on my system.

I had no idea that ASC worked so much quicker than MID$ (who would have thought!)

Code: QB64: [Select]
  1. _TITLE "Word ladder v6 b+ mod david_uwi" '2021-09-10 david has already improved his first version!
  2. ' ref:  https://www.qb64.org/forum/index.php?topic=4157.msg135293#msg135293
  3. ' get original version above, I am modifying below to study
  4. ' 2021-09-11 in v3 b+ mod david_uwi I modify to compare whole set to my orignal whole set
  5. ' 2021-09-11 in v4 I think I can load the words faster
  6. ' 2021-09-12 in v5 lets just call the external file once, use david's idea instead of _continue,
  7. ' I think it looks cleaner without _continue which tool out skipping a For loop by a THEN (GOTO) line #.
  8. ' Ave of 5 runs before this (mod 4) was 11.27.. see if we improve still more, also DefLng A-Z  oh wow.
  9. ' Ave of 5 runs now 8.74 another 2.5 secs shaved off
  10. ' 2021-09-12 in v6 though using asc instead of mid$ might go faster.
  11. ' Ave of 5 runs now is 4.45 secs another 4.29 sec off!
  12.  
  13. ' 2021-09-13 v7 b+ mod david_uwi = v6 b+ mod but I will attempt to translate letter variables into
  14. ' more meaningful in attempts to understand what is being done in his code.
  15. ' Shaved significant time by making store$ (used to be q4) not fixed!
  16. ' Yes run a quick check that target word connects to something does save us so much time that
  17. ' we get a better overall time for the whole set even though we added a tiny bit of time to
  18. ' the ones that do connect.
  19. ' Ave of 5 runs is now 2.57 sec another 1.88 secs shaved off.
  20.  
  21. DEFLNG A-Z ' 2 secs off from old Single default!
  22. REDIM SHARED Fwords$(1 TO 1), UBF ' ubound of Fwords$
  23. start! = TIMER(.001)
  24.  
  25. ' do just once for all ladder calls
  26. OPEN "c:\cw1\unixdict.txt" FOR BINARY AS #1 ' take the file in a gulp
  27. buf$ = SPACE$(LOF(1))
  28. GET #1, , buf$
  29. Split buf$, CHR$(10), Fwords$()
  30. UBF = UBOUND(fwords$)
  31.  
  32. ' test set of ladder calls
  33. ladder "boy", "man" '     quick
  34. ladder "girl", "lady" '   this takes awhile
  35. ladder "john", "jane" '   quick enough
  36. ladder "alien", "drool" ' cool but takes a long long time!
  37. ladder "child", "adult" ' and this takes awhile
  38. ladder "play", "ball" '   goes quick
  39. ladder "fun", "job" '     ditto
  40. PRINT: PRINT "Total time including one disk file access:"; TIMER(.001) - start!
  41.  
  42. SUB ladder (q1$, q2$)
  43.     tt! = TIMER(.001) 'include time taken to load to RAM bplus mod to accuracy (.001)
  44.     DIM w(10000) AS STRING * 5 ' words from file not String * 5 'make sure we have enough storage!!
  45.     DIM store$(10000, 100) ' wow  went from fixed string! storing connect words  to not fixed string and shaved a sec off time!!!
  46.     DIM storeIndexs(100)
  47.     DIM z4(10000, 100) AS STRING
  48.     FI = 1
  49.     wordLength = LEN(q1$)
  50.     IF wordLength < 5 THEN q1$ = q1$ + SPACE$(5 - wordLength): q2$ = q2$ + SPACE$(5 - wordLength)
  51.     WHILE FI <= UBF
  52.         IF LEN(Fwords$(FI)) = wordLength THEN
  53.             maxWordIndex = maxWordIndex + 1
  54.             IF Fwords$(FI) = q1$ THEN w(maxWordIndex) = "*****" ELSE w(maxWordIndex) = Fwords$(FI)
  55.         END IF
  56.         FI = FI + 1
  57.     WEND
  58.  
  59.     'q2$ needs to have at least one connect or skip to end
  60.     '(this block will add a little more time to each ladder but save over a sec on adult or any target word with no connects)
  61.     FOR i = 1 TO maxWordIndex
  62.         IF w(i) <> q2$ THEN ' just check before entering loop
  63.             cnt = 0
  64.             FOR j = 1 TO wordLength
  65.                 IF ASC(w(i), j) <> ASC(q2$, j) THEN cnt = cnt + 1
  66.             NEXT j
  67.             IF cnt = 1 THEN ' q2$ has a connect good to go
  68.                 targetOK = -1: EXIT FOR
  69.             END IF
  70.         END IF
  71.     NEXT i
  72.     IF targetOK = 0 THEN PRINT "No path found! from "; q1$; " to "; q2$;: GOTO skip
  73.  
  74.     ' carry on
  75.     jk = 1
  76.     storeIndexs(jk) = 1
  77.     store$(1, 1) = q1$
  78.     DO
  79.         FOR i = 1 TO maxWordIndex
  80.             IF w(i) <> "*****" THEN '_Continue '  500  just check before entering loop
  81.                 cnt = 0
  82.                 FOR kk = 1 TO storeIndexs(jk)
  83.                     cnt = 0
  84.                     FOR j = 1 TO wordLength
  85.                         IF ASC(w(i), j) = ASC(store$(kk, jk), j) THEN cnt = cnt + 1 ELSE zz = j
  86.                         'If Mid$(w(i), j, 1) = Mid$(store$(kk, jk), j, 1) Then cnt = cnt + 1 Else zz = j
  87.                     NEXT j
  88.                     IF cnt = wordLength - 1 THEN
  89.                         storeIndexs(jk + 1) = storeIndexs(jk + 1) + 1
  90.                         store$(storeIndexs(jk + 1), jk + 1) = w(i)
  91.                         z4(storeIndexs(jk + 1), jk + 1) = z4(kk, jk) + MID$(w(i), zz, 1) + CHR$(zz + 48) + " " 'stores a letter and change position
  92.                         w(i) = "*****"
  93.                     END IF
  94.                 NEXT kk
  95.             END IF
  96.         NEXT i
  97.         kflag = 0
  98.  
  99.         '*****new routine!!!
  100.         cnu = 0
  101.         FOR i = 1 TO storeIndexs(jk + 1)
  102.             cnu = 0
  103.             FOR iq = 1 TO wordLength
  104.                 IF ASC(store$(i, jk + 1), iq) = ASC(q2$, iq) THEN cnu = cnu + 1
  105.             NEXT iq
  106.             IF cnu = wordLength - 1 THEN kflag = 99: final$ = z4(i, jk + 1)
  107.         NEXT i
  108.         '*********
  109.  
  110.         IF storeIndexs(jk + 1) = 0 THEN kflag = 99
  111.         jk = jk + 1
  112.         IF kflag = 99 THEN EXIT DO
  113.     LOOP
  114.     IF storeIndexs(jk) = 0 THEN PRINT "No path found! from "; q1$; " to "; q2$; ' b+ removed a print blank line
  115.     IF storeIndexs(jk) > 0 THEN
  116.         xlen = LEN(final$)
  117.         'Print:
  118.         PRINT q1$; " ";
  119.         FOR i = 1 TO xlen STEP 3
  120.             c1$ = MID$(final$, i, 1)
  121.             c2$ = MID$(final$, i + 1, 1)
  122.             MID$(q1$, VAL(c2$), 1) = c1$
  123.             PRINT q1$; " ";
  124.         NEXT i
  125.         PRINT q2$;
  126.     END IF
  127.     skip:
  128.     PRINT: PRINT "time taken = "; TIMER(.001) - tt!; " seconds"
  129.  
  130. SUB Split (SplitMeString AS STRING, delim AS STRING, loadMeArray() AS STRING)
  131.     DIM curpos AS LONG, arrpos AS LONG, LD AS LONG, dpos AS LONG 'fix use the Lbound the array already has
  132.     curpos = 1: arrpos = LBOUND(loadMeArray): LD = LEN(delim)
  133.     dpos = INSTR(curpos, SplitMeString, delim)
  134.     DO UNTIL dpos = 0
  135.         loadMeArray(arrpos) = MID$(SplitMeString, curpos, dpos - curpos)
  136.         arrpos = arrpos + 1
  137.         IF arrpos > UBOUND(loadMeArray) THEN REDIM _PRESERVE loadMeArray(LBOUND(loadMeArray) TO UBOUND(loadMeArray) + 1000) AS STRING
  138.         curpos = dpos + LD
  139.         dpos = INSTR(curpos, SplitMeString, delim)
  140.     LOOP
  141.     loadMeArray(arrpos) = MID$(SplitMeString, curpos)
  142.     REDIM _PRESERVE loadMeArray(LBOUND(loadMeArray) TO arrpos) AS STRING 'get the ubound correct
  143.  
  144.  
  145.  
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 14, 2021, 08:22:18 pm
@SMcNeill 
All your changes are fine including the t substitution for jk + 1, except using other than default screen that adds about a .1 sec to time on my system. Average is 2.27 secs on my system.

@david_uwi 
Yours are running best times on my system right around 2 secs on my system when I add
Code: QB64: [Select]
as Steve has done in his mods.

The path coming out is not the first alphabetically, it might be the last. Are you still doing multiple paths with that mod of yours?

I am also having problems incorporating your mod with Steve's.

Update: oh reverse the for loop! I think I have it. I will add Steve's changes to yours.
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 14, 2021, 09:44:31 pm
Most odd! I could not get Steve's mod with ASC to work with david_uwi's latest code??? I left the code block in commented out. With david_uwi's latest mod mixed with Steve's changes I get 2.01 secs average on my system.
I expect it will be much lower on Steve's and johnno56.

Code: QB64: [Select]
  1. _Title "Word ladder v david_uwi 2021-09-14" '2021-09-10 david has already improved his first version!
  2. ' ref:  https://www.qb64.org/forum/index.php?topic=4157.msg135293#msg135293
  3. ' get original version above, I am modifying below to study
  4. ' 2021-09-11 in v3 b+ mod david_uwi I modify to compare whole set to my orignal whole set
  5. ' 2021-09-11 in v4 I think I can load the words faster
  6. ' 2021-09-12 in v5 lets just call the external file once, use david's idea instead of _continue,
  7. ' I think it looks cleaner without _continue which tool out skipping a For loop by a THEN (GOTO) line #.
  8. ' Ave of 5 runs before this (mod 4) was 11.27.. see if we improve still more, also DefLng A-Z  oh wow.
  9. ' Ave of 5 runs now 8.74 another 2.5 secs shaved off
  10. ' 2021-09-12 in v6 though using asc instead of mid$ might go faster.
  11. ' Ave of 5 runs now is 4.45 secs another 4.29 sec off!
  12.  
  13. ' 2021-09-13 v7 b+ mod david_uwi = v6 b+ mod but I will attempt to translate letter variables into
  14. ' more meaningful in attempts to understand what is being done in his code.
  15. ' Shaved significant time by making store$ (used to be q4) not fixed!
  16. ' Yes run a quick check that target word connects to something does save us so much time that
  17. ' we get a better overall time for the whole set even though we added a tiny bit of time to
  18. ' the ones that do connect.
  19. ' Ave of 5 runs is now 2.57 sec another 1.88 secs shaved off.
  20.  
  21. ' Steve's mods, mainly with $checking:off saves about .3 sec for me with ave 2.27
  22.  
  23. ' v david_uwi 2021-09-14 tried to work in Steves mods with david_uwi's latest improvement
  24. ' plus I insist the shortest path is the one that sorts out first alphabetically :)
  25. ' Running an average of 2.01 secs for my (bplus) system.
  26.  
  27. DefLng A-Z ' 2 secs off from old Single default!
  28. ReDim Shared Fwords$(1 To 1), UBF ' ubound of Fwords$
  29. start! = Timer(.001)
  30.  
  31. ' do just once for all ladder calls
  32. Open "unixdict.txt" For Binary As #1 ' take the file in a gulp
  33. buf$ = Space$(LOF(1))
  34. Get #1, , buf$
  35. Split buf$, Chr$(10), Fwords$()
  36. UBF = UBound(fwords$)
  37.  
  38. ' test set of ladder calls
  39. ladder "boy", "man" '     quick
  40. ladder "girl", "lady" '   this takes awhile
  41. ladder "john", "jane" '   quick enough
  42. ladder "alien", "drool" ' cool but takes a long long time!
  43. ladder "child", "adult" ' and this takes awhile
  44. ladder "play", "ball" '   goes quick
  45. ladder "fun", "job" '     ditto
  46. Print: Print "Total time including one disk file access:"; Timer(.001) - start!
  47.  
  48. Sub ladder (q1$, q2$)
  49.     tt! = Timer(.001) 'include time taken to load to RAM bplus mod to accuracy (.001)
  50.     Dim w(10000) As String * 5 ' words from file not String * 5 'make sure we have enough storage!!
  51.     Dim store$(10000, 100) ' wow  went from fixed string! storing connect words  to not fixed string and shaved a sec off time!!!
  52.     Dim storeIndexs(100)
  53.     Dim z4(10000, 100) As String
  54.     FI = 1
  55.     wordLength = Len(q1$)
  56.     If wordLength < 5 Then q1$ = q1$ + Space$(5 - wordLength): q2$ = q2$ + Space$(5 - wordLength)
  57.     While FI <= UBF
  58.         If Len(Fwords$(FI)) = wordLength Then
  59.             maxWordIndex = maxWordIndex + 1
  60.             If Fwords$(FI) = q1$ Then w(maxWordIndex) = "*****" Else w(maxWordIndex) = Fwords$(FI)
  61.         End If
  62.         FI = FI + 1
  63.     Wend
  64.  
  65.     'q2$ needs to have at least one connect or skip to end
  66.     '(this block will add a little more time to each ladder but save over a sec on adult or any target word with no connects)
  67.     For i = 1 To maxWordIndex
  68.         If w(i) <> q2$ Then ' just check before entering loop
  69.             cnt = 0
  70.             For j = 1 To wordLength
  71.                 If Asc(w(i), j) <> Asc(q2$, j) Then cnt = cnt + 1
  72.             Next j
  73.             If cnt = 1 Then ' q2$ has a connect good to go
  74.                 targetOK = -1: Exit For
  75.             End If
  76.         End If
  77.     Next i
  78.     If targetOK = 0 Then Print "No path found! from "; q1$; " to "; q2$;: GoTo skip
  79.  
  80.     ' carry on
  81.     jk = 1
  82.     storeIndexs(jk) = 1
  83.     store$(1, 1) = q1$
  84.     Do
  85.         For i = 1 To maxWordIndex
  86.             If w(i) <> "*****" Then '_Continue '  500  just check before entering loop
  87.                 cnt = 0
  88.                 For kk = 1 To storeIndexs(jk)
  89.                     cnt = 0
  90.                     For j = 1 To wordLength
  91.                         If Asc(w(i), j) = Asc(store$(kk, jk), j) Then cnt = cnt + 1 Else zz = j
  92.                     Next j
  93.                     If cnt = wordLength - 1 Then
  94.                         t = jk + 1
  95.                         storeIndexs(t) = storeIndexs(t) + 1
  96.                         store$(storeIndexs(t), t) = w(i)
  97.                         z4(storeIndexs(t), t) = z4(kk, jk) + Mid$(w(i), zz, 1) + Chr$(zz + 48) + " " 'stores a letter and change position
  98.                         w(i) = "*****"
  99.                     End If
  100.                 Next kk
  101.             End If
  102.         Next i
  103.         kflag = 0
  104.         ''*****new routine!!!
  105.         cnu = 0
  106.         For i = storeIndexs(t) To 1 Step -1 ' b+ reversed this for shortest path alphabetically
  107.             cnu = 0
  108.             For iq = 1 To wordLength
  109.                 If Asc(store$(i, t), iq) = Asc(q2$, iq) Then cnu = cnu + 1
  110.             Next iq
  111.             If cnu = wordLength - 1 Then kflag = 99: final$ = z4(i, t)
  112.         Next i
  113.  
  114.         If storeIndexs(t) = 0 Then kflag = 99
  115.         jk = jk + 1
  116.         If kflag = 99 Then Exit Do
  117.     Loop
  118.     If storeIndexs(jk) = 0 Then Print "No path found! from "; q1$; " to "; q2$; ' b+ removed a print blank line
  119.  
  120.     If storeIndexs(jk) > 0 Then 'this block works the next (commented out) wont
  121.         xlen = Len(final$)
  122.         'Print:
  123.         t$ = q1$
  124.         For i = 1 To xlen Step 3
  125.             c1$ = Mid$(final$, i, 1)
  126.             c2$ = Mid$(final$, i + 1, 1)
  127.             Mid$(q1$, Val(c2$), 1) = c1$
  128.             t$ = t$ + " " + q1$
  129.         Next i
  130.         Print t$ + " " + q2$
  131.     End If
  132.  
  133.  
  134.     'If storeIndexs(jk) > 0 Then ' this is Steve's substitution but wont work here  ???
  135.     '    xlen = Len(final$)
  136.     '    t$ = q1$ + " "
  137.     '    For i = 1 To xlen Step 3
  138.     '        c1 = Asc(final$, i)
  139.     '        c2 = Asc(final$, i + 1)
  140.     '        Asc(q1$, c2) = c1 ' >>>>>>>>>>>>>>> errors on this line    ???
  141.     '        t$ = t$ + q1$ + " "
  142.     '    Next i
  143.     '    Print t$
  144.     'End If
  145.  
  146.  
  147.     skip:
  148.     Print "time taken = "; Timer(.001) - tt!; " seconds"
  149.  
  150. Sub Split (SplitMeString As String, delim As String, loadMeArray() As String)
  151.     Dim curpos As Long, arrpos As Long, LD As Long, dpos As Long 'fix use the Lbound the array already has
  152.     curpos = 1: arrpos = LBound(loadMeArray): LD = Len(delim)
  153.     dpos = InStr(curpos, SplitMeString, delim)
  154.     Do Until dpos = 0
  155.         loadMeArray(arrpos) = Mid$(SplitMeString, curpos, dpos - curpos)
  156.         arrpos = arrpos + 1
  157.         If arrpos > UBound(loadMeArray) Then ReDim _Preserve loadMeArray(LBound(loadMeArray) To UBound(loadMeArray) + 1000) As String
  158.         curpos = dpos + LD
  159.         dpos = InStr(curpos, SplitMeString, delim)
  160.     Loop
  161.     loadMeArray(arrpos) = Mid$(SplitMeString, curpos)
  162.     ReDim _Preserve loadMeArray(LBound(loadMeArray) To arrpos) As String 'get the ubound correct
  163.  
Title: Re: Word ladder - Rosetta Code
Post by: SMcNeill on September 14, 2021, 10:16:30 pm
You’re getting the error you commented on from this line:

                        z4(storeIndexs(t), t) = z4(kk, jk) + MID$(w(i), zz, 1) + CHR$(zz + 48) + " " 'stores a letter and change position

Change CHR$(zz + 48) to just CHR$(zz) as I mentioned previously.with:

“I also swapped out the CHR$(zz + 48) to simply store the CHR$(zz), and then used ASC(final$, i + 1) to get that value back directly, rather than having to store it as a string and then take the VAL of it...”

By just storing zz, we can turn these 2 lines :

           c2$ = MID$(final$, i + 1, 1)
            MID$(q1$, VAL(c2$), 1) = c1$

Into:
     c2 = Asc(final$, i + 1)
    Asc(q1$, c2) = c1 ' >>>>>>>>>>>>>>> errors on this line    ???

We remove the use of VAL completely, and swap 2 MID$ for 2 ASC commands, as well as making c2 an integer instead of a string.



Basically iclly you’re storing numeric values as string characters “1”, “2”, “3”, while I’m storing them as ASCII characters CHR$(1), CHR$(2), CHR$(3).

You get your return values back via VAL(MID$…) while I get mine back via ASC.
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 14, 2021, 10:33:26 pm
Ah goot getting rid of 48 works!

Looks like string concatenation takes a tiny bit longer than just printing words? Maybe?
Code: QB64: [Select]
  1. _Title "Word ladder v david_uwi 2021-09-14" '2021-09-10 david has already improved his first version!
  2. ' ref:  https://www.qb64.org/forum/index.php?topic=4157.msg135293#msg135293
  3. ' get original version above, I am modifying below to study
  4. ' 2021-09-11 in v3 b+ mod david_uwi I modify to compare whole set to my orignal whole set
  5. ' 2021-09-11 in v4 I think I can load the words faster
  6. ' 2021-09-12 in v5 lets just call the external file once, use david's idea instead of _continue,
  7. ' I think it looks cleaner without _continue which tool out skipping a For loop by a THEN (GOTO) line #.
  8. ' Ave of 5 runs before this (mod 4) was 11.27.. see if we improve still more, also DefLng A-Z  oh wow.
  9. ' Ave of 5 runs now 8.74 another 2.5 secs shaved off
  10. ' 2021-09-12 in v6 though using asc instead of mid$ might go faster.
  11. ' Ave of 5 runs now is 4.45 secs another 4.29 sec off!
  12.  
  13. ' 2021-09-13 v7 b+ mod david_uwi = v6 b+ mod but I will attempt to translate letter variables into
  14. ' more meaningful in attempts to understand what is being done in his code.
  15. ' Shaved significant time by making store$ (used to be q4) not fixed!
  16. ' Yes run a quick check that target word connects to something does save us so much time that
  17. ' we get a better overall time for the whole set even though we added a tiny bit of time to
  18. ' the ones that do connect.
  19. ' Ave of 5 runs is now 2.57 sec another 1.88 secs shaved off.
  20.  
  21. ' Steve's mods, maily with $checking:off saves about .3 sec for me with ave 2.27
  22.  
  23. ' v david_uwi 2021-09-14 tried to work in Steves mods with david_uwi's latest improvement
  24. ' plus I insist the shortest path is the one that sorts out first alphabetically :)
  25. ' Running an average of 2.01 secs for my (bplus) system.
  26.  
  27. DefLng A-Z ' 2 secs off from old Single default!
  28. ReDim Shared Fwords$(1 To 1), UBF ' ubound of Fwords$
  29. start! = Timer(.001)
  30.  
  31. ' do just once for all ladder calls
  32. Open "unixdict.txt" For Binary As #1 ' take the file in a gulp
  33. buf$ = Space$(LOF(1))
  34. Get #1, , buf$
  35. Split buf$, Chr$(10), Fwords$()
  36. UBF = UBound(fwords$)
  37.  
  38. ' test set of ladder calls
  39. ladder "boy", "man" '     quick
  40. ladder "girl", "lady" '   this takes awhile
  41. ladder "john", "jane" '   quick enough
  42. ladder "alien", "drool" ' cool but takes a long long time!
  43. ladder "child", "adult" ' and this takes awhile
  44. ladder "play", "ball" '   goes quick
  45. ladder "fun", "job" '     ditto
  46. Print: Print "Total time including one disk file access:"; Timer(.001) - start!
  47.  
  48. Sub ladder (q1$, q2$)
  49.     tt! = Timer(.001) 'include time taken to load to RAM bplus mod to accuracy (.001)
  50.     Dim w(10000) As String * 5 ' words from file not String * 5 'make sure we have enough storage!!
  51.     Dim store$(10000, 100) ' wow  went from fixed string! storing connect words  to not fixed string and shaved a sec off time!!!
  52.     Dim storeIndexs(100)
  53.     Dim z4(10000, 100) As String
  54.     FI = 1
  55.     wordLength = Len(q1$)
  56.     If wordLength < 5 Then q1$ = q1$ + Space$(5 - wordLength): q2$ = q2$ + Space$(5 - wordLength)
  57.     While FI <= UBF
  58.         If Len(Fwords$(FI)) = wordLength Then
  59.             maxWordIndex = maxWordIndex + 1
  60.             If Fwords$(FI) = q1$ Then w(maxWordIndex) = "*****" Else w(maxWordIndex) = Fwords$(FI)
  61.         End If
  62.         FI = FI + 1
  63.     Wend
  64.  
  65.     'q2$ needs to have at least one connect or skip to end
  66.     '(this block will add a little more time to each ladder but save over a sec on adult or any target word with no connects)
  67.     For i = 1 To maxWordIndex
  68.         If w(i) <> q2$ Then ' just check before entering loop
  69.             cnt = 0
  70.             For j = 1 To wordLength
  71.                 If Asc(w(i), j) <> Asc(q2$, j) Then cnt = cnt + 1
  72.             Next j
  73.             If cnt = 1 Then ' q2$ has a connect good to go
  74.                 targetOK = -1: Exit For
  75.             End If
  76.         End If
  77.     Next i
  78.     If targetOK = 0 Then Print "No path found! from "; q1$; " to "; q2$;: GoTo skip
  79.  
  80.     ' carry on
  81.     jk = 1
  82.     storeIndexs(jk) = 1
  83.     store$(1, 1) = q1$
  84.     Do
  85.         For i = 1 To maxWordIndex
  86.             If w(i) <> "*****" Then '_Continue '  500  just check before entering loop
  87.                 cnt = 0
  88.                 For kk = 1 To storeIndexs(jk)
  89.                     cnt = 0
  90.                     For j = 1 To wordLength
  91.                         If Asc(w(i), j) = Asc(store$(kk, jk), j) Then cnt = cnt + 1 Else zz = j
  92.                     Next j
  93.                     If cnt = wordLength - 1 Then
  94.                         t = jk + 1
  95.                         storeIndexs(t) = storeIndexs(t) + 1
  96.                         store$(storeIndexs(t), t) = w(i)
  97.                         z4(storeIndexs(t), t) = z4(kk, jk) + Mid$(w(i), zz, 1) + Chr$(zz) + " " 'stores a letter and change position
  98.                         w(i) = "*****"
  99.                     End If
  100.                 Next kk
  101.             End If
  102.         Next i
  103.         kflag = 0
  104.         ''*****new routine!!!
  105.         cnu = 0
  106.         For i = storeIndexs(t) To 1 Step -1 ' b+ reversed this for shortest path alphabetically
  107.             cnu = 0
  108.             For iq = 1 To wordLength
  109.                 If Asc(store$(i, t), iq) = Asc(q2$, iq) Then cnu = cnu + 1
  110.             Next iq
  111.             If cnu = wordLength - 1 Then kflag = 99: final$ = z4(i, t)
  112.         Next i
  113.  
  114.         If storeIndexs(t) = 0 Then kflag = 99
  115.         jk = jk + 1
  116.         If kflag = 99 Then Exit Do
  117.     Loop
  118.     If storeIndexs(jk) = 0 Then Print "No path found! from "; q1$; " to "; q2$; ' b+ removed a print blank line
  119.  
  120.     'If storeIndexs(jk) > 0 Then 'this block works the next (commented out) wont
  121.     '    xlen = Len(final$)
  122.     '    'Print:
  123.     '    t$ = q1$
  124.     '    For i = 1 To xlen Step 3
  125.     '        c1$ = Mid$(final$, i, 1)
  126.     '        c2$ = Mid$(final$, i + 1, 1)
  127.     '        Mid$(q1$, Val(c2$), 1) = c1$
  128.     '        t$ = t$ + " " + q1$
  129.     '    Next i
  130.     '    Print t$ + " " + q2$
  131.     'End If
  132.  
  133.  
  134.     If storeIndexs(jk) > 0 Then ' this is Steve's substitution
  135.         xlen = Len(final$)
  136.         t$ = q1$ + " "
  137.         For i = 1 To xlen Step 3
  138.             c1 = Asc(final$, i)
  139.             c2 = Asc(final$, i + 1)
  140.             Asc(q1$, c2) = c1
  141.             t$ = t$ + q1$ + " "
  142.         Next i
  143.         Print t$ + " " + q2$
  144.     End If
  145.  
  146.  
  147.     skip:
  148.     Print "time taken = "; Timer(.001) - tt!; " seconds"
  149.  
  150. Sub Split (SplitMeString As String, delim As String, loadMeArray() As String)
  151.     Dim curpos As Long, arrpos As Long, LD As Long, dpos As Long 'fix use the Lbound the array already has
  152.     curpos = 1: arrpos = LBound(loadMeArray): LD = Len(delim)
  153.     dpos = InStr(curpos, SplitMeString, delim)
  154.     Do Until dpos = 0
  155.         loadMeArray(arrpos) = Mid$(SplitMeString, curpos, dpos - curpos)
  156.         arrpos = arrpos + 1
  157.         If arrpos > UBound(loadMeArray) Then ReDim _Preserve loadMeArray(LBound(loadMeArray) To UBound(loadMeArray) + 1000) As String
  158.         curpos = dpos + LD
  159.         dpos = InStr(curpos, SplitMeString, delim)
  160.     Loop
  161.     loadMeArray(arrpos) = Mid$(SplitMeString, curpos)
  162.     ReDim _Preserve loadMeArray(LBound(loadMeArray) To arrpos) As String 'get the ubound correct
  163.  
  164.  
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 14, 2021, 10:47:00 pm
Quote
Looks like string concatenation takes a tiny bit longer than just printing words? Maybe?

Eh, not? The runs are too close in times.
Title: Re: Word ladder - Rosetta Code
Post by: SMcNeill on September 14, 2021, 11:15:25 pm
Eh, not? The runs are too close in times.

Maybe a difference in SCREEN 0 vs SCREEN 32?  A single time printing is about .1 to .2 seconds faster on my machine, when I tested it.

Or a difference in graphics cards?
Title: Re: Word ladder - Rosetta Code
Post by: david_uwi on September 15, 2021, 02:58:07 am
I'm not sure that checking the last word for a path is a good idea. It works in this case, but I think that ADULT is something of an anomaly as there is no one letter substitution that will form a word - how often is that going to happen?
Title: Re: Word ladder - Rosetta Code
Post by: SMcNeill on September 15, 2021, 04:44:22 am
I'm not sure that checking the last word for a path is a good idea. It works in this case, but I think that ADULT is something of an anomaly as there is no one letter substitution that will form a word - how often is that going to happen?

A lot.  Check the list Iposted on the other page.

acts, ally, ohm, ugh….  There’s a ton of them!

Just about any word with more than 15 letters can be automatically eliminated, as they only connect to one partner word directly.  (Example: underclassmAn ONLY connects to underclassmEn.) It’s hard to claim there’s any “chain” between them when they connect directly.



One thing I’m curious about is why there’s a need to sort and copy the list over and over each time.

    WHILE FI <= UBF
        IF LEN(Fwords$(FI)) = wordLength THEN
            maxWordIndex = maxWordIndex + 1
            IF Fwords$(FI) = q1$ THEN w(maxWordIndex) = "*****" ELSE w(maxWordIndex) = Fwords$(FI)
        END IF
        FI = FI + 1
    WEND

Why not sort the wordlist by length ONCE at the time when you load the data in from the disk, rather than repeatedly each time it’s called?

(Pseudocode follows)
OPEN file$
GET word
wordnum(LEN(word)) = wordnum(LEN(word)) + 1 ‘counter for words of same length
wordlist(LEN(word),wordnum) = word ‘2d array to store words by length, wordnum
CLOSE

Words are then sorted in one pass and don’t have to be ever again.
Title: Re: Word ladder - Rosetta Code
Post by: SMcNeill on September 15, 2021, 05:02:09 am
A second thing I’m curious about is with regards to why various data isn’t removed completely from the word lists at load time?  The routine that you guys are optimizing is obviously only intended to work with a very specific subset of the data, so why keep all the unnecessary data?

For example, the solved list you were generating stored values in a letter + position combo.  (b2 a1 y3, for example when going from “boy” to “bay”) 

At this point, you’re only storing a single digit for letter position, so you’ve decided to automatically reduce the dataset to words shorter than 10 letters.

Why not filter those out automatically to save processing them repeatedly?



      IF Fwords$(FI) = q1$ THEN w(maxWordIndex) = "*****" ELSE w(maxWordIndex) = Fwords$(FI)

With the way the above is configured, is it even possible to process a 6 letter word?  “*” is used when a letter matches the desired position, correct?  Or am I reading what’s going on here wrongly?

Seems to me that 6 or seven letter words wouldn’t work just because they have too many letters.  Will this work to see if “cheese” can turn into “butter”?

If not, then the dataset could be permanently reduced down to < 6, and not just < 10.
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 15, 2021, 11:28:58 am
Quote
One thing I’m curious about is why there’s a need to sort and copy the list over and over each time.

    WHILE FI <= UBF
        IF LEN(Fwords$(FI)) = wordLength THEN
            maxWordIndex = maxWordIndex + 1
            IF Fwords$(FI) = q1$ THEN w(maxWordIndex) = "*****" ELSE w(maxWordIndex) = Fwords$(FI)
        END IF
        FI = FI + 1
    WEND

Why not sort the wordlist by length ONCE at the time when you load the data in from the disk, rather than repeatedly each time it’s called?

(Pseudocode follows)
OPEN file$
GET word
wordnum(LEN(word)) = wordnum(LEN(word)) + 1 ‘counter for words of same length
wordlist(LEN(word),wordnum) = word ‘2d array to store words by length, wordnum
CLOSE

Words are then sorted in one pass and don’t have to be ever again.

OK I did have the file unloaded into an array of word length strings but building those strings is concatenation and that takes time. I can't use w3$(), w4$(), w5$()... arrays because that would make it a nightmare using david_uwi's algo for all those different arrays.

Plus david_uwi's algo seems to need to mark the start word with "*****" (which BTW can be generalized to string$(wordLength, "*") for trying words > 5 letters to answer a question in next reply) so when we are copying  words into an array, we catch that starring of start word in the process, other wise we'd have to go through the list of wN$() find and star that word and then unstar it for next puzzle with same amount of letters.

Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 15, 2021, 11:46:36 am
It is right not to build the solution exclusively to solve the particular test set of words to ladder. If a set of ladder words had more than a couple repeat word lengths it may save time running such a set by doing the word length strings and splitting that string in the ladder sub. I think it would take allot more than 2 puzzles of same word length to realize savings and in meantime the times for 1 or 2 puzzles of same letter length times will suffer.
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 16, 2021, 01:41:03 pm
@david_uwi, @SMcNeill, @johnno56 and whoever else following this thread:

Are you ready to have your socks knocked off?

I now have Word Ladder code with david_uwi's algorithm generalized to any N letter words.
Here I have added
"cheese", "butter"  (doesn't connect)
and
"seaman", "skater" (does connect)
to our test of set and average .67 secs for the entire set!!!

Code: QB64: [Select]
  1. _Title "Word ladder v 2021-09-16" '2021-09-10 david has already improved his first version!
  2. ' ref:  https://www.qb64.org/forum/index.php?topic=4157.msg135293#msg135293
  3. ' get original version above, I am modifying below to study
  4. ' 2021-09-11 in v3 b+ mod david_uwi I modify to compare whole set to my orignal whole set
  5. ' 2021-09-11 in v4 I think I can load the words faster
  6. ' 2021-09-12 in v5 lets just call the external file once, use david's idea instead of _continue,
  7. ' I think it looks cleaner without _continue which tool out skipping a For loop by a THEN (GOTO) line #.
  8. ' Ave of 5 runs before this (mod 4) was 11.27.. see if we improve still more, also DefLng A-Z  oh wow.
  9. ' Ave of 5 runs now 8.74 another 2.5 secs shaved off
  10. ' 2021-09-12 in v6 though using asc instead of mid$ might go faster.
  11. ' Ave of 5 runs now is 4.45 secs another 4.29 sec off!
  12.  
  13. ' 2021-09-13 v7 b+ mod david_uwi = v6 b+ mod but I will attempt to translate letter variables into
  14. ' more meaningful in attempts to understand what is being done in his code.
  15. ' Shaved significant time by making store$ (used to be q4) not fixed!
  16. ' Yes run a quick check that target word connects to something does save us so much time that
  17. ' we get a better overall time for the whole set even though we added a tiny bit of time to
  18. ' the ones that do connect.
  19. ' Ave of 5 runs is now 2.57 sec another 1.88 secs shaved off.
  20.  
  21. ' Steve's mods, maily with $checking:off saves about .3 sec for me with ave 2.27
  22.  
  23. ' v david_uwi 2021-09-14 tried to work in Steves mods with david_uwi's latest improvement
  24. ' plus I insist the shortest path is the one that sorts out first alphabetically :)
  25. ' Running an average of 2.01 secs for my (bplus) system.
  26.  
  27. ' v 2021-09-16 can we get 6 letters going?  I can't seem to get more that a 3 word connect by eye
  28. ' ah goot! seaman to skater works  Hurray! with the added 6 letter words to ladder it is taking even
  29. ' less time than before I generalized to do more than 5 letter words. This is because w() array no
  30. ' longer is fixed String * 5 but now variable length. Also reason #3 why we have to load the n letter
  31. ' words every time is because we change w(i) with starUsed$ signal as we go through it to
  32. ' indicate we've processed this word already. Average 1.49 secs per run!!!
  33. ' Holy moley! another 2 huge cuts in time!!! both storage and changes arrays don't have to be 10000 long!
  34. ' Now .67 secs average on my (b+) older laptop
  35.  
  36. DefLng A-Z ' 2 secs off from old Single default!
  37. ReDim Shared Fwords$(1 To 1), UBF ' ubound of Fwords$
  38. start! = Timer(.001)
  39.  
  40. ' do just once for all ladder calls, Fwords$() contain the entire list of dictionary
  41. Open "unixdict.txt" For Binary As #1 ' take the file in a gulp
  42. buf$ = Space$(LOF(1))
  43. Get #1, , buf$
  44. Split buf$, Chr$(10), Fwords$()
  45. UBF = UBound(fwords$) ' track the ubound of Fwords$
  46.  
  47. ' test set of ladder calls
  48. ladder "boy", "man" '     quick
  49. ladder "girl", "lady" '   this takes awhile
  50. ladder "john", "jane" '   quick enough
  51. ladder "alien", "drool" ' cool but takes a long long time!
  52. ladder "child", "adult" ' and this takes awhile
  53. ladder "play", "ball" '   goes quick
  54. ladder "fun", "job" '     ditto
  55. ' These 6 letter words added to our test set to show it has been generalized past 5 letter words.
  56. ladder "cheese", "butter" ' Steve challnges to do more than 5 letter words  not going to connect
  57. ladder "seaman", "skater" ' I think this will connect
  58. Print: Print "Total time including one disk file access:"; Timer(.001) - start!
  59.  
  60. Sub ladder (q1$, q2$)
  61.     tt! = Timer(.001) ' time each ladder call, doesn't include one time download of words to Fwords$()
  62.     Dim w(10000) As String '* 5   <<< no fixed string huge time savings!!!! w() contains all words of Len(q1$)
  63.     Dim store$(100, 100) ' wow  went from fixed string storing connect words to not fixed string and shaved a sec off time!!!
  64.     Dim storeIndexs(100) ' tracking indexes to changes
  65.     Dim changes(100, 100) As String ' tracking the change letter and position going from one word to next
  66.     ' does changes have to be 10000? no! and another huge time cut!!!
  67.     ' does store$ have to be 10000? no! and another huge time cut!!!
  68.     FI = 1
  69.     wordLength = Len(q1$)
  70.     'If wordLength < 5 Then q1$ = q1$ + Space$(5 - wordLength): q2$ = q2$ + Space$(5 - wordLength)
  71.     starUsed$ = String$(wordLength, "*") ' this is signal that word is used
  72.     While FI <= UBF
  73.         If Len(Fwords$(FI)) = wordLength Then
  74.             maxWordIndex = maxWordIndex + 1
  75.             If Fwords$(FI) = q1$ Then w(maxWordIndex) = starUsed$ Else w(maxWordIndex) = Fwords$(FI)
  76.         End If
  77.         FI = FI + 1
  78.     Wend
  79.  
  80.     'q2$ needs to have at least one connect or skip to end
  81.     '(this block will add a little more time to each ladder but save over a sec on adult or any target word with no connects)
  82.     For i = 1 To maxWordIndex
  83.         If w(i) <> q2$ Then ' just check before entering loop
  84.             cnt = 0
  85.             For j = 1 To wordLength
  86.                 If Asc(w(i), j) <> Asc(q2$, j) Then cnt = cnt + 1
  87.             Next j
  88.             If cnt = 1 Then ' q2$ has a connect good to go
  89.                 targetOK = -1: Exit For
  90.             End If
  91.         End If
  92.     Next i
  93.     If targetOK = 0 Then Print "No path found! from "; q1$; " to "; q2$: GoTo skip
  94.  
  95.     ' carry on with daid_uwi's original algo modified by b+ for more general use and speed help from SMcNeill
  96.     jk = 1
  97.     storeIndexs(jk) = 1
  98.     store$(1, 1) = q1$
  99.     Do
  100.         For i = 1 To maxWordIndex
  101.             If w(i) <> starUsed$ Then
  102.                 cnt = 0
  103.                 For kk = 1 To storeIndexs(jk)
  104.                     cnt = 0
  105.                     For j = 1 To wordLength
  106.                         If Asc(w(i), j) = Asc(store$(kk, jk), j) Then cnt = cnt + 1 Else zz = j
  107.                     Next j
  108.                     If cnt = wordLength - 1 Then
  109.                         t = jk + 1
  110.                         storeIndexs(t) = storeIndexs(t) + 1
  111.                         store$(storeIndexs(t), t) = w(i)
  112.                         changes(storeIndexs(t), t) = changes(kk, jk) + Mid$(w(i), zz, 1) + Chr$(zz) + " " ' try Steve's T substitution version
  113.                         w(i) = starUsed$
  114.                     End If
  115.                 Next kk
  116.             End If
  117.         Next i
  118.         kflag = 0
  119.         ''*****new routine!!! by david_uwi
  120.         cnu = 0
  121.         For i = storeIndexs(t) To 1 Step -1 ' b+ reversed this for shortest path alphabetically
  122.             cnu = 0
  123.             For iq = 1 To wordLength
  124.                 If Asc(store$(i, t), iq) = Asc(q2$, iq) Then cnu = cnu + 1
  125.             Next iq
  126.             If cnu = wordLength - 1 Then kflag = 99: final$ = changes(i, t)
  127.         Next i
  128.  
  129.         If storeIndexs(t) = 0 Then kflag = 99
  130.         jk = jk + 1
  131.         If jk > 100 Then Print "No path found! from "; q1$; " to "; q2$: GoTo skip 'b+ added this for words that wont connect else error's out
  132.         If kflag = 99 Then Exit Do
  133.     Loop
  134.     If storeIndexs(jk) = 0 Then Print "No path found! from "; q1$; " to "; q2$ ' b+ removed a print blank line
  135.     If storeIndexs(jk) > 0 Then ' this is Steve's t substitution for david_uwi's jk + 1 using Asc instead of Mid$
  136.         xlen = Len(final$)
  137.         t$ = q1$
  138.         For i = 1 To xlen Step 3
  139.             c1 = Asc(final$, i)
  140.             c2 = Asc(final$, i + 1)
  141.             Asc(q1$, c2) = c1
  142.             t$ = t$ + " " + q1$
  143.         Next i
  144.         Print t$; " "; q2$
  145.     End If
  146.     skip:
  147.     Print "time taken = "; Timer(.001) - tt!; " seconds"
  148.  
  149. Sub Split (SplitMeString As String, delim As String, loadMeArray() As String)
  150.     Dim curpos As Long, arrpos As Long, LD As Long, dpos As Long 'fix use the Lbound the array already has
  151.     curpos = 1: arrpos = LBound(loadMeArray): LD = Len(delim)
  152.     dpos = InStr(curpos, SplitMeString, delim)
  153.     Do Until dpos = 0
  154.         loadMeArray(arrpos) = Mid$(SplitMeString, curpos, dpos - curpos)
  155.         arrpos = arrpos + 1
  156.         If arrpos > UBound(loadMeArray) Then ReDim _Preserve loadMeArray(LBound(loadMeArray) To UBound(loadMeArray) + 1000) As String
  157.         curpos = dpos + LD
  158.         dpos = InStr(curpos, SplitMeString, delim)
  159.     Loop
  160.     loadMeArray(arrpos) = Mid$(SplitMeString, curpos)
  161.     ReDim _Preserve loadMeArray(LBound(loadMeArray) To arrpos) As String 'get the ubound correct
  162.  
  163.  

  [ This attachment cannot be displayed inline in 'Print Page' view ]  
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 16, 2021, 01:45:33 pm
Ha! if I do child to adult 10,000 more times maybe it wont take any time. ;-))

BTW thanks to Steve's post of all the word connects I was able to guess that seaman to skater might be a good 6 letter test.

Is it the best? (best = longest path you can get for 6 letter words)
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 16, 2021, 04:45:50 pm
Nutz, girl to lady picked up 2 words and alien to drool picked up one.
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 16, 2021, 05:08:09 pm
Aha! If I run it without error checking it skips over places where the subscript goes over the array size, with error checking the change and store arrays are clearly seen as too small.
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 16, 2021, 05:32:17 pm
OK readjusted array sizes for maximum efficiency, probably running close to customizing to data set. Definitely customized to the unixdict.txt file.

Now runs are about .74 sec average on my system>

Code: QB64: [Select]
  1. _Title "Word ladder v 2021-09-16" '2021-09-10 david has already improved his first version!
  2. ' ref:  https://www.qb64.org/forum/index.php?topic=4157.msg135293#msg135293
  3. ' get original version above, I am modifying below to study
  4. ' 2021-09-11 in v3 b+ mod david_uwi I modify to compare whole set to my orignal whole set
  5. ' 2021-09-11 in v4 I think I can load the words faster
  6. ' 2021-09-12 in v5 lets just call the external file once, use david's idea instead of _continue,
  7. ' I think it looks cleaner without _continue which tool out skipping a For loop by a THEN (GOTO) line #.
  8. ' Ave of 5 runs before this (mod 4) was 11.27.. see if we improve still more, also DefLng A-Z  oh wow.
  9. ' Ave of 5 runs now 8.74 another 2.5 secs shaved off
  10. ' 2021-09-12 in v6 though using asc instead of mid$ might go faster.
  11. ' Ave of 5 runs now is 4.45 secs another 4.29 sec off!
  12.  
  13. ' 2021-09-13 v7 b+ mod david_uwi = v6 b+ mod but I will attempt to translate letter variables into
  14. ' more meaningful in attempts to understand what is being done in his code.
  15. ' Shaved significant time by making store$ (used to be q4) not fixed!
  16. ' Yes run a quick check that target word connects to something does save us so much time that
  17. ' we get a better overall time for the whole set even though we added a tiny bit of time to
  18. ' the ones that do connect.
  19. ' Ave of 5 runs is now 2.57 sec another 1.88 secs shaved off.
  20.  
  21. ' Steve's mods, mainy with $checking:off saves about .3 sec for me with ave 2.27
  22.  
  23. ' v david_uwi 2021-09-14 tried to work in Steves mods with david_uwi's latest improvement
  24. ' plus I insist the shortest path is the one that sorts out first alphabetically :)
  25. ' Running an average of 2.01 secs for my (bplus) system.
  26.  
  27. ' v 2021-09-16 can we get 6 letters going?  I can't seem to get more that a 3 word connect by eye
  28. ' ah goot! seaman to skater works  Hurray! with the added 6 letter words to ladder it is taking even
  29. ' less time than before I generalized to do more than 5 letter words. This is because w() array no
  30. ' longer is fixed String * 5 but now variable length. Also reason #3 why we have to load the n letter
  31. ' words every time is because we change w(i) with starUsed$ signal as we go through it to
  32. ' indicate we've processed this word already. Average 1.49 secs per run!!!
  33. ' Holy moley! another 2 huge cuts in time!!! both storage and changes arrays don't have to be 10000 long!
  34. ' Now .67 secs average on my (b+) older laptop
  35.  
  36. ' v 2021-09-16 fix Dang something happened when I cut the arrays to 100 instead of 10000??? girl to lady
  37. ' got 2 words longer and alien to drool picked up a word and an alternate path.
  38. ' Cause: when $checking:off No error when subscript goes out of range in both  changes and store arrays.
  39. ' So found minimum that lets our set work 615.  OK now my (b+) average is .74 secs.
  40.  
  41. DefLng A-Z ' 2 secs off from old Single default!
  42. ReDim Shared Fwords$(1 To 1), UBF ' ubound of Fwords$
  43. start! = Timer(.001)
  44.  
  45. ' do just once for all ladder calls, Fwords$() contain the entire list of dictionary
  46. Open "unixdict.txt" For Binary As #1 ' take the file in a gulp
  47. buf$ = Space$(LOF(1))
  48. Get #1, , buf$
  49. Split buf$, Chr$(10), Fwords$()
  50. UBF = UBound(fwords$) ' track the ubound of Fwords$
  51.  
  52. ' gets some intell on the word file
  53. 'Print UBF ' 25,105 words
  54. 'Dim lcount(3 To 10) ' what is largest word list I need?
  55. 'For i = 1 To UBF
  56. '    lw = Len(Fwords$(i))
  57. '    If lw > 2 And lw <= 10 Then lcount(lw) = lcount(lw) + 1
  58. 'Next
  59. 'For i = 3 To 10
  60. '    Print i, lcount(i) ' 4060 is maximum words for a letter
  61. 'Next
  62. 'End
  63.  
  64.  
  65. ' test set of ladder calls
  66. ladder "boy", "man" '     quick
  67. ladder "girl", "lady" '   this takes awhile
  68. ladder "john", "jane" '   quick enough
  69. ladder "alien", "drool" ' cool but takes a long long time!
  70. ladder "child", "adult" ' and this takes awhile
  71. ladder "play", "ball" '   goes quick
  72. ladder "fun", "job" '     ditto
  73. ' These 6 letter words added to our test set to show it has been generalized past 5 letter words.
  74. ladder "cheese", "butter" ' Steve challnges to do more than 5 letter words  not going to connect
  75. ladder "seaman", "skater" ' I think this will connect
  76. Print: Print "Total time including one disk file access:"; Timer(.001) - start!
  77.  
  78. Sub ladder (q1$, q2$)
  79.     tt! = Timer(.001) ' time each ladder call, doesn't include one time download of words to Fwords$()
  80.     Dim w(4060) As String '* 5   <<< no fixed string huge time savings!!!! w() contains all words of Len(q1$)  max words = 4060 for 7 letters
  81.     Dim store$(615, 100) ' wow  went from fixed string storing connect words to not fixed string and shaved a sec off time!!!
  82.     Dim storeIndexs(100) ' tracking indexes to changes
  83.     Dim changes(615, 100) As String ' tracking the change letter and position going from one word to next
  84.     ' does changes have to be 10000? no! and another huge time cut!!! but more than 100
  85.     ' does store$ have to be 10000? no! and another huge time cut!!!
  86.     FI = 1
  87.     wordLength = Len(q1$)
  88.     'If wordLength < 5 Then q1$ = q1$ + Space$(5 - wordLength): q2$ = q2$ + Space$(5 - wordLength)
  89.     starUsed$ = String$(wordLength, "*") ' this is signal that word is used
  90.     While FI <= UBF
  91.         If Len(Fwords$(FI)) = wordLength Then
  92.             maxWordIndex = maxWordIndex + 1
  93.             If Fwords$(FI) = q1$ Then w(maxWordIndex) = starUsed$ Else w(maxWordIndex) = Fwords$(FI)
  94.         End If
  95.         FI = FI + 1
  96.     Wend
  97.  
  98.     'q2$ needs to have at least one connect or skip to end
  99.     '(this block will add a little more time to each ladder but save over a sec on adult or any target word with no connects)
  100.     For i = 1 To maxWordIndex
  101.         If w(i) <> q2$ Then ' just check before entering loop
  102.             cnt = 0
  103.             For j = 1 To wordLength
  104.                 If Asc(w(i), j) <> Asc(q2$, j) Then cnt = cnt + 1
  105.             Next j
  106.             If cnt = 1 Then ' q2$ has a connect good to go
  107.                 targetOK = -1: Exit For
  108.             End If
  109.         End If
  110.     Next i
  111.     If targetOK = 0 Then Print "No path found! from "; q1$; " to "; q2$: GoTo skip
  112.  
  113.     ' carry on with david_uwi's original algo modified by b+ for more general use and speed help from SMcNeill
  114.     jk = 1
  115.     storeIndexs(jk) = 1
  116.     store$(1, 1) = q1$
  117.     Do
  118.         For i = 1 To maxWordIndex
  119.             If w(i) <> starUsed$ Then
  120.                 cnt = 0
  121.                 For kk = 1 To storeIndexs(jk)
  122.                     cnt = 0
  123.                     For j = 1 To wordLength
  124.                         If Asc(w(i), j) = Asc(store$(kk, jk), j) Then cnt = cnt + 1 Else zz = j
  125.                     Next j
  126.                     If cnt = wordLength - 1 Then
  127.                         t = jk + 1
  128.                         storeIndexs(t) = storeIndexs(t) + 1
  129.                         store$(storeIndexs(t), t) = w(i)
  130.                         changes(storeIndexs(t), t) = changes(kk, jk) + Mid$(w(i), zz, 1) + Chr$(zz) + " " ' try Steve's T substitution version
  131.                         w(i) = starUsed$
  132.                     End If
  133.                 Next kk
  134.             End If
  135.         Next i
  136.         kflag = 0
  137.         ''*****new routine!!! by david_uwi
  138.         cnu = 0
  139.         For i = storeIndexs(t) To 1 Step -1 ' b+ reversed this for shortest path alphabetically
  140.             cnu = 0
  141.             For iq = 1 To wordLength
  142.                 If Asc(store$(i, t), iq) = Asc(q2$, iq) Then cnu = cnu + 1
  143.             Next iq
  144.             If cnu = wordLength - 1 Then kflag = 99: final$ = changes(i, t)
  145.         Next i
  146.  
  147.         If storeIndexs(t) = 0 Then kflag = 99
  148.         jk = jk + 1
  149.         If jk > 100 Then Print "No path found! from "; q1$; " to "; q2$: GoTo skip 'b+ added this for words that wont connect else error's out
  150.         If kflag = 99 Then Exit Do
  151.     Loop
  152.     If storeIndexs(jk) = 0 Then Print "No path found! from "; q1$; " to "; q2$ ' b+ removed a print blank line
  153.     If storeIndexs(jk) > 0 Then ' this is Steve's t substitution for david_uwi's jk + 1 using Asc instead of Mid$
  154.         xlen = Len(final$)
  155.         t$ = q1$
  156.         For i = 1 To xlen Step 3
  157.             c1 = Asc(final$, i)
  158.             c2 = Asc(final$, i + 1)
  159.             Asc(q1$, c2) = c1
  160.             t$ = t$ + " " + q1$
  161.         Next i
  162.         Print t$; " "; q2$
  163.     End If
  164.     skip:
  165.     Print "time taken = "; Timer(.001) - tt!; " seconds"
  166.  
  167. Sub Split (SplitMeString As String, delim As String, loadMeArray() As String)
  168.     Dim curpos As Long, arrpos As Long, LD As Long, dpos As Long 'fix use the Lbound the array already has
  169.     curpos = 1: arrpos = LBound(loadMeArray): LD = Len(delim)
  170.     dpos = InStr(curpos, SplitMeString, delim)
  171.     Do Until dpos = 0
  172.         loadMeArray(arrpos) = Mid$(SplitMeString, curpos, dpos - curpos)
  173.         arrpos = arrpos + 1
  174.         If arrpos > UBound(loadMeArray) Then ReDim _Preserve loadMeArray(LBound(loadMeArray) To UBound(loadMeArray) + 1000) As String
  175.         curpos = dpos + LD
  176.         dpos = InStr(curpos, SplitMeString, delim)
  177.     Loop
  178.     loadMeArray(arrpos) = Mid$(SplitMeString, curpos)
  179.     ReDim _Preserve loadMeArray(LBound(loadMeArray) To arrpos) As String 'get the ubound correct
  180.  
  181.  

With the familiar paths:
 
Title: Re: Word ladder - Rosetta Code
Post by: johnno56 on September 17, 2021, 12:24:06 am
0.644... I am impressed! Well done!
Title: Re: Word ladder - Rosetta Code
Post by: SpriggsySpriggs on September 17, 2021, 10:45:08 am
Is this going to be used for like an auto-correct or auto-suggestion algorithm?
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 17, 2021, 11:24:41 am
What an interesting idea, a use for this ;-))

I think in your standard magazine of word puzzles, Word Ladders are fun specially with connecting related words like boy and man, fun and job, ...

So I think the next challenge here would be to find all of them that have some middle word at least. EDIT: oh alternate paths might be more fun here!

How long would that take for 3 letter words < 1000 and less than a sec to check?
Need an array copier and pull Steve's ideas in about skipping all non connecting words.



Title: Re: Word ladder - Rosetta Code
Post by: SMcNeill on September 17, 2021, 12:47:32 pm
If you’re going that route, check out my spell checker program in the samples.  It works excellently well for autocomplete and autosuggestion — especially with a limited comparison list.  In its case, it shoots for words that are X percent a match to each other, so the more words you have, the larger a list of false-matches it’s going to create.

For something like the QB64 IDE, it’d work amazingly well.  Fast enough to run with real time typing without lag.  Small enough data set to keep false results to a trivial level of a bare minimum. 

When I came up with my simple spell checker, I made it for a teacher to use with their class assignments.  A quiz on the 50 states, for example, and the question might be: “Which state has Jackson as its capitol?”

The answer, of course, is “Mississippi”, which is 100% correct.

The problem is a lot of students can’t spell that!  Even if they *know* the correct answer, their spelling is off…

And so the algorithm returns a percent match.  100% match is a perfect match.  90% match is an “acceptable” match (Mississipi would be close enough), where the test counts the question as right, but marks half points off for spelling.  Below the set variance level, the answer is wrong completely.
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 17, 2021, 01:22:11 pm
If you are interested in Steve's SpellChecker definately check this out:
https://www.qb64.org/forum/index.php?topic=2265.msg114998#msg114998
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 18, 2021, 08:54:47 pm
That crazy b+ ran all ladders possible of 3 letter words (without digits or punctuation marks = 753).

This amounts to (753 * 752)/2 = 283,128 word ladders to check.

The longest path had 11 words; there are 51 of them (not counting their reverse):
Code: [Select]
btu btl bel bee bye aye abe abc nbc nyc nyu
ceq seq see bee bye aye abe abc nbc nyc nyu
chi phi phd pad pan ian inn inc icc fcc fmc
chi phi phd pad pan ian inn inc icc fcc fpc
chi phi phd pad pan ian inn inc icc icy ivy
chi phi phd pad par ear err era ira irs mrs
chi phi phd pod cod cos cbs nbs nbc nyc nyu
egg ego ago age ace acm scm sci sri uri urn
eng erg ere are ace acm scm sci sri uri urn
fcc icc inc inn ian pan pad phd phi psi lsi
fcc icc inc inn ion bon boa goa gsa usa usc
fcc icc ice ace acm scm sci sri uri urn usn
fmc fcc icc inc inn ian can cap gap gnp gnu
fmc ftc etc eta pta pea pee poe poi psi lsi
fmc fcc icc ice ace acm scm sci sri uri urn
fmc fcc icc inc inn ion bon boa goa gsa usa
fmc ftc etc eta pta pea pee see sse use usc
fmc ftc etc eta pta pea pee see sse use usn
fpc fcc icc inc inn ian can cap gap gnp gnu
fpc ftc etc eta pta pea pee poe poi psi lsi
fpc fcc icc ice ace acm scm sci sri uri urn
fpc fcc icc inc inn ion bon boa goa gsa usa
fpc ftc etc eta pta pea pee see sse use usc
fpc ftc etc eta pta pea pee see sse use usn
ftc fcc icc ice ace acm scm sci sri uri urn
gnu gnp gap cap can ian inn inc icc icy ivy
iii vii vie die dye aye abe abc nbc nyc nyu
imp amp ama aaa faa fad pad phd phi psi lsi
imp amp alp ale ace acm scm sci sri uri urn
imp amp ama aaa faa fad gad god goa gsa usa
imp amp alp ale aye bye bee see sse use usc
imp amp alp ale aye bye bee see sse use usn
ivy icy ice ace aye dye doe poe poi psi lsi
ivy icy icc inc inn ion bon boa goa gsa usa
ivy icy ice ace aye bye bee see sse use usc
ivy icy ice ace acm scm sci sri uri urn usn
lsi psi poi pot cot crt art are ire irs mrs
lsi psi poi pod cod cos cbs nbs nbc nyc nyu
mrs irs ire are ace acm scm sci sri uri urn
mrs irs irk ink inn ion bon boa goa gsa usa
mrs irs ire are aye bye bee see sse use usc
mrs irs ire are aye bye bee see sse use usn
nco ncr nor nod cod cos cbs nbs nbc nyc nyu
nyu nyc nrc arc arm acm scm sci sri uri urn
nyu nyc nbc nbs cbs cos cod god goa gsa usa
nyu nyc nbc nbs pbs pus sus sue sse use usc
nyu nyc nbc nbs pbs pus sus sue sse use usn
old odd add aid aim acm scm sci sri uri urn
rca rna ana ant act acm scm sci sri uri urn
rca rna ana ant tnt tot got goa gsa usa usc
rca rna ana ant tnt tot got goa gsa usa usn
 51


Time was 2091.75 secs or 35 mins. rounded.
Title: Re: Word ladder - Rosetta Code
Post by: SMcNeill on September 18, 2021, 10:57:02 pm
Now, just do that for all the other words (run it before going to bed, see results in the morning) and save that solved file.  Instant answers right at your fingertips after that!  LOL
Title: Re: Word ladder - Rosetta Code
Post by: david_uwi on September 19, 2021, 02:30:55 am
sse, gsa, btl - I would not count these as words (and there are many others which may be abbreviations or acronyns).
I think we need a better word list.
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 19, 2021, 11:27:46 am
sse, gsa, btl - I would not count these as words (and there are many others which may be abbreviations or acronyns).
I think we need a better word list.

Agreed specially searching for fun paths; avis, ames, aden are all names:

Longest 4 letter paths from unixdict.txt
Code: [Select]
jibe gibe give five fine find bind bend bead brad grad grid arid avid avis axis axes ames amen aden eden even oven
numb dumb dump bump burp burn bern bean bead brad grad grid arid avid avis axis axes ames amen aden eden even oven
oven even eden aden amen ames axes axis avis avid arid grid grad brad bead bean bern burn burp bump dump duma puma
oven even eden aden amen ames axes axis avis avid arid grid grad goad goat gout glut glue clue club chub chug thug
 4
Took all night and timing messed up by midnight problem, not going to run again. Have to run these things first time with $Checking:Off in case arrays or something fails. 2,366,400 ladders to check.

I have old Scrabble dictionary, I think it's from Steve's Spellchecker, just learned they are going to start allowing proper names.
Title: Re: Word ladder - Rosetta Code
Post by: jack on September 19, 2021, 11:43:10 am
@bplus
you could possibly speed things up quite a bit by adding -O2 to the makeline_win.txt if you are on Windows, sometimes your program runs 2 times faster
makeline_win.txt is found in qb64\internal\c
change it to
Quote
c_compiler\bin\g++ -s -O2 -fopenmp -Wfatal-errors -w -Wall qbx.cpp -lws2_32 -lwinspool parts\core\os\win\src.a -lopengl32 -lglu32 -lwinmm -lgdi32 -mwindows -static-libgcc -static-libstdc++ -D GLEW_STATIC -D FREEGLUT_STATIC -lksguid -lole32 -lwinmm -ldxguid -o ..\..\
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 19, 2021, 12:46:35 pm
Try a run with Scrabble Word List 2006.txt (I think Steve and I used these for Anagrams). There are 1015 3 letter words (no digits or punctuation) maybe fewer acronyms but already there is problem word aas. 1015 words needs to check 514,605 word ladders.

An ani is a bird.

The football game is starting before this will be done...
Title: Re: Word ladder - Rosetta Code
Post by: SMcNeill on September 19, 2021, 12:49:44 pm
Agreed specially searching for fun paths; avis, ames, aden are all names:

avis is plural of avi, which is recognized short speak for avatar.  “I don’t use photos of myself in my avis, and I don’t use my name in my handles.”

aden is a word element basically for “gland”.  Ex: adenovirus, adenopathy, adenocarcinoma. (Glandular virus, pain in the glands, glandular cancer)

If you’d count “pre” as a word (preschool, premeditation, premenopausal), then aden counts as well by being the the same structure; a word prefix/building block.



As for ames, I have no idea what it represents, except as a name.  I don’t know any ame either, so unless it’s a pleural form of am (which it actually would be in my neck of the woods via, “Mam, we ames hungry,”. — Appalachian English is funny like that), I can’t see why it’s actually in a word list when other, more common, names aren’t.
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 19, 2021, 12:54:15 pm
I found aden in Urban slang:
Quote
Aden
Aden is one of the kindest people you will ever meet. He’s sometimes shy and feels insecure, but a very great listener and is very open and accepting to everyone around him. Though you may not see it, you’ll need him more than you think. He is great to talk to and hangout with and will never fail to make you laugh when you need it most. He is also highly intelligent in more than one way. Aden is the complete opposite of self centered, and always puts others before himself. Overall, if you know an Aden, become friends with him. If you’re already friends, make sure to let him know how much you care.
Title: Re: Word ladder - Rosetta Code
Post by: bplus on September 19, 2021, 03:43:33 pm
60 paths of 10 3-letter words from Scrabble:
Code: [Select]
cru cry cay bay bal aal all alp amp imp
cru cry coy con ion inn ink ick icy ivy
cru cry cay bay bas aas ars ark auk suk
cru cry cay bay bal aal all alp amp ump
cru cry cay bay bas aas ars ark auk yuk
cwm cum cue due dye aye ace ice icy ivy
gym gam gat git ait act ace ice icy ivy
igg egg erg era bra baa bam ham hmm umm
imp amp alp als aas fas fes feu fou sou
imp amp alp als aas fas fes feu flu ulu
imp amp alp als aas fas fes feu fou you
ivy icy ice ire ere err brr bur bum lum
ivy icy ick ink inn ion fon foy fly ply
ivy icy ick ink inn ion con coy cry pry
ivy icy ice ire ere err brr bur bum rum
ivy icy ice ire ere err ear lar lac sac
ivy icy ice ire ere era bra baa bad sad
ivy icy ice ire ere era bra baa bag sag
ivy icy ice ire ere era bra baa bap sap
ivy icy ick ink inn ion con can caw saw
ivy icy ick ink inn ion fon foy fly sly
ivy icy ice ire ere err brr bur bum sum
ivy icy ice ire ere era bra baa bad tad
ivy icy ice ire ere era bra baa bag tag
ivy icy ice ace aye kye kae hae haj taj
ivy icy ice ire ere era bra baa bam tam
ivy icy ice ace aye kye kae hae hao tao
ivy icy ice ire ere era bra baa bap tap
ivy icy ice ire ere err ear lar lav tav
ivy icy ick ink inn ion con can caw taw
ivy icy ick ink inn ion con coy cry try
ivy icy ice ace aye lye lee lex lux tux
ivy icy ick ink inn ion fon fou flu ulu
ivy icy ice ace act ait aim him hmm umm
ivy icy ice ire ere err ear lar lac vac
ivy icy ice ire ere err ear lar lav vav
ivy icy ick ink inn ion con can caw vaw
ivy icy ice ire ere err brr bur bum vum
ivy icy ice ire ere era bra baa bad wad
ivy icy ice ire ere era bra baa bag wag
ivy icy ice ire ere era bra baa bap wap
ivy icy ick ink inn ion con can caw waw
ivy icy ick ink inn ion con coy cry wry
ivy icy ice ire ere era bra baa bag yag
ivy icy ice ire ere era bra baa bam yam
ivy icy ice ire ere era bra baa bap yap
ivy icy ick ink inn ion con can caw yaw
ivy icy ice ire ere err brr bur bum yum
ivy icy ice ire ere era bra baa bag zag
ivy icy ice ire ere era bra baa bap zap
oxy oxo oho mho moo mod mud dud dui tui
sou fou foe doe dye aye are ark auk suk
sou fou foe doe dye aye ale alp amp ump
sou fou foe doe dye aye are ark auk yuk
suk auk ark ars aas fas fes feu flu ulu
suk auk ark ars aas fas fes feu fou you
ulu flu fly fay fas aas als alp amp ump
ulu flu fly fay fas aas ars ark auk yuk
ump amp alp als aas fas fes feu fou you
you fou foe doe dye aye are ark auk yuk
 60


Quote
Yes, suk is in the scrabble dictionary
...and is worth 8 points.
find more words you can make below
+ feedback
Sponsored
suk
Know an interesting fact about the word suk? Let us know
noun
1. Alternative spelling of souq.

+ improve definition

Quote
What is the meaning of souq?
Filters. A street market, particularly in Arabic- and Somali-speaking countries; a place where people buy and sell goods; a bazaar.