001/*
002 * Licensed to the Apache Software Foundation (ASF) under one or more
003 * contributor license agreements.  See the NOTICE file distributed with
004 * this work for additional information regarding copyright ownership.
005 * The ASF licenses this file to You under the Apache License, Version 2.0
006 * (the "License"); you may not use this file except in compliance with
007 * the License.  You may obtain a copy of the License at
008 *
009 *      http://www.apache.org/licenses/LICENSE-2.0
010 *
011 * Unless required by applicable law or agreed to in writing, software
012 * distributed under the License is distributed on an "AS IS" BASIS,
013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014 * See the License for the specific language governing permissions and
015 * limitations under the License.
016 */
017
018package org.apache.commons.codec.language;
019
020import static org.junit.Assert.assertEquals;
021
022import org.apache.commons.codec.StringEncoderAbstractTest;
023import org.junit.Test;
024
025/**
026 * Tests {@link DoubleMetaphone}.
027 * <p>
028 * The test data was extracted from Stephen Woodbridge's <a
029 * href="http://swoodbridge.com/DoubleMetaPhone/surnames.txt">PHP test program</a>.
030 *
031 * @see <a href="http://swoodbridge.com/DoubleMetaPhone/surnames.txt">PHP test program</a>
032 * @version $Id: DoubleMetaphone2Test.html 891688 2013-12-24 20:49:46Z ggregory $
033 */
034public class DoubleMetaphone2Test extends StringEncoderAbstractTest<DoubleMetaphone> {
035
036    private static final int ALTERNATE_INDEX = 2;
037
038    private static final int PRIMARY_INDEX = 1;
039
040    /** Test values and their expected primary & alternate Double Metaphone encodings */
041    private static final String[][] TEST_DATA = new String[][]{
042        {"ALLERTON", "ALRT", "ALRT"},
043        {"Acton", "AKTN", "AKTN"},
044        {"Adams", "ATMS", "ATMS"},
045        {"Aggar", "AKR", "AKR"},
046        {"Ahl", "AL", "AL"},
047        {"Aiken", "AKN", "AKN"},
048        {"Alan", "ALN", "ALN"},
049        {"Alcock", "ALKK", "ALKK"},
050        {"Alden", "ALTN", "ALTN"},
051        {"Aldham", "ALTM", "ALTM"},
052        {"Allen", "ALN", "ALN"},
053        {"Allerton", "ALRT", "ALRT"},
054        {"Alsop", "ALSP", "ALSP"},
055        {"Alwein", "ALN", "ALN"},
056        {"Ambler", "AMPL", "AMPL"},
057        {"Andevill", "ANTF", "ANTF"},
058        {"Andrews", "ANTR", "ANTR"},
059        {"Andreyco", "ANTR", "ANTR"},
060        {"Andriesse", "ANTR", "ANTR"},
061        {"Angier", "ANJ", "ANJR"},
062        {"Annabel", "ANPL", "ANPL"},
063        {"Anne", "AN", "AN"},
064        {"Anstye", "ANST", "ANST"},
065        {"Appling", "APLN", "APLN"},
066        {"Apuke", "APK", "APK"},
067        {"Arnold", "ARNL", "ARNL"},
068        {"Ashby", "AXP", "AXP"},
069        {"Astwood", "ASTT", "ASTT"},
070        {"Atkinson", "ATKN", "ATKN"},
071        {"Audley", "ATL", "ATL"},
072        {"Austin", "ASTN", "ASTN"},
073        {"Avenal", "AFNL", "AFNL"},
074        {"Ayer", "AR", "AR"},
075        {"Ayot", "AT", "AT"},
076        {"Babbitt", "PPT", "PPT"},
077        {"Bachelor", "PXLR", "PKLR"},
078        {"Bachelour", "PXLR", "PKLR"},
079        {"Bailey", "PL", "PL"},
080        {"Baivel", "PFL", "PFL"},
081        {"Baker", "PKR", "PKR"},
082        {"Baldwin", "PLTN", "PLTN"},
083        {"Balsley", "PLSL", "PLSL"},
084        {"Barber", "PRPR", "PRPR"},
085        {"Barker", "PRKR", "PRKR"},
086        {"Barlow", "PRL", "PRLF"},
087        {"Barnard", "PRNR", "PRNR"},
088        {"Barnes", "PRNS", "PRNS"},
089        {"Barnsley", "PRNS", "PRNS"},
090        {"Barouxis", "PRKS", "PRKS"},
091        {"Bartlet", "PRTL", "PRTL"},
092        {"Basley", "PSL", "PSL"},
093        {"Basset", "PST", "PST"},
094        {"Bassett", "PST", "PST"},
095        {"Batchlor", "PXLR", "PXLR"},
096        {"Bates", "PTS", "PTS"},
097        {"Batson", "PTSN", "PTSN"},
098        {"Bayes", "PS", "PS"},
099        {"Bayley", "PL", "PL"},
100        {"Beale", "PL", "PL"},
101        {"Beauchamp", "PXMP", "PKMP"},
102        {"Beauclerc", "PKLR", "PKLR"},
103        {"Beech", "PK", "PK"},
104        {"Beers", "PRS", "PRS"},
105        {"Beke", "PK", "PK"},
106        {"Belcher", "PLXR", "PLKR"},
107        {"benign", "PNN", "PNKN"},
108        {"Benjamin", "PNJM", "PNJM"},
109        {"Benningham", "PNNK", "PNNK"},
110        {"Bereford", "PRFR", "PRFR"},
111        {"Bergen", "PRJN", "PRKN"},
112        {"Berkeley", "PRKL", "PRKL"},
113        {"Berry", "PR", "PR"},
114        {"Besse", "PS", "PS"},
115        {"Bessey", "PS", "PS"},
116        {"Bessiles", "PSLS", "PSLS"},
117        {"Bigelow", "PJL", "PKLF"},
118        {"Bigg", "PK", "PK"},
119        {"Bigod", "PKT", "PKT"},
120        {"Billings", "PLNK", "PLNK"},
121        {"Bimper", "PMPR", "PMPR"},
122        {"Binker", "PNKR", "PNKR"},
123        {"Birdsill", "PRTS", "PRTS"},
124        {"Bishop", "PXP", "PXP"},
125        {"Black", "PLK", "PLK"},
126        {"Blagge", "PLK", "PLK"},
127        {"Blake", "PLK", "PLK"},
128        {"Blanck", "PLNK", "PLNK"},
129        {"Bledsoe", "PLTS", "PLTS"},
130        {"Blennerhasset", "PLNR", "PLNR"},
131        {"Blessing", "PLSN", "PLSN"},
132        {"Blewett", "PLT", "PLT"},
133        {"Bloctgoed", "PLKT", "PLKT"},
134        {"Bloetgoet", "PLTK", "PLTK"},
135        {"Bloodgood", "PLTK", "PLTK"},
136        {"Blossom", "PLSM", "PLSM"},
137        {"Blount", "PLNT", "PLNT"},
138        {"Bodine", "PTN", "PTN"},
139        {"Bodman", "PTMN", "PTMN"},
140        {"BonCoeur", "PNKR", "PNKR"},
141        {"Bond", "PNT", "PNT"},
142        {"Boscawen", "PSKN", "PSKN"},
143        {"Bosworth", "PSR0", "PSRT"},
144        {"Bouchier", "PX", "PKR"},
145        {"Bowne", "PN", "PN"},
146        {"Bradbury", "PRTP", "PRTP"},
147        {"Bradder", "PRTR", "PRTR"},
148        {"Bradford", "PRTF", "PRTF"},
149        {"Bradstreet", "PRTS", "PRTS"},
150        {"Braham", "PRHM", "PRHM"},
151        {"Brailsford", "PRLS", "PRLS"},
152        {"Brainard", "PRNR", "PRNR"},
153        {"Brandish", "PRNT", "PRNT"},
154        {"Braun", "PRN", "PRN"},
155        {"Brecc", "PRK", "PRK"},
156        {"Brent", "PRNT", "PRNT"},
157        {"Brenton", "PRNT", "PRNT"},
158        {"Briggs", "PRKS", "PRKS"},
159        {"Brigham", "PRM", "PRM"},
160        {"Brobst", "PRPS", "PRPS"},
161        {"Brome", "PRM", "PRM"},
162        {"Bronson", "PRNS", "PRNS"},
163        {"Brooks", "PRKS", "PRKS"},
164        {"Brouillard", "PRLR", "PRLR"},
165        {"Brown", "PRN", "PRN"},
166        {"Browne", "PRN", "PRN"},
167        {"Brownell", "PRNL", "PRNL"},
168        {"Bruley", "PRL", "PRL"},
169        {"Bryant", "PRNT", "PRNT"},
170        {"Brzozowski", "PRSS", "PRTS"},
171        {"Buide", "PT", "PT"},
172        {"Bulmer", "PLMR", "PLMR"},
173        {"Bunker", "PNKR", "PNKR"},
174        {"Burden", "PRTN", "PRTN"},
175        {"Burge", "PRJ", "PRK"},
176        {"Burgoyne", "PRKN", "PRKN"},
177        {"Burke", "PRK", "PRK"},
178        {"Burnett", "PRNT", "PRNT"},
179        {"Burpee", "PRP", "PRP"},
180        {"Bursley", "PRSL", "PRSL"},
181        {"Burton", "PRTN", "PRTN"},
182        {"Bushnell", "PXNL", "PXNL"},
183        {"Buss", "PS", "PS"},
184        {"Buswell", "PSL", "PSL"},
185        {"Butler", "PTLR", "PTLR"},
186        {"Calkin", "KLKN", "KLKN"},
187        {"Canada", "KNT", "KNT"},
188        {"Canmore", "KNMR", "KNMR"},
189        {"Canney", "KN", "KN"},
190        {"Capet", "KPT", "KPT"},
191        {"Card", "KRT", "KRT"},
192        {"Carman", "KRMN", "KRMN"},
193        {"Carpenter", "KRPN", "KRPN"},
194        {"Cartwright", "KRTR", "KRTR"},
195        {"Casey", "KS", "KS"},
196        {"Catterfield", "KTRF", "KTRF"},
197        {"Ceeley", "SL", "SL"},
198        {"Chambers", "XMPR", "XMPR"},
199        {"Champion", "XMPN", "XMPN"},
200        {"Chapman", "XPMN", "XPMN"},
201        {"Chase", "XS", "XS"},
202        {"Cheney", "XN", "XN"},
203        {"Chetwynd", "XTNT", "XTNT"},
204        {"Chevalier", "XFL", "XFLR"},
205        {"Chillingsworth", "XLNK", "XLNK"},
206        {"Christie", "KRST", "KRST"},
207        {"Chubbuck", "XPK", "XPK"},
208        {"Church", "XRX", "XRK"},
209        {"Clark", "KLRK", "KLRK"},
210        {"Clarke", "KLRK", "KLRK"},
211        {"Cleare", "KLR", "KLR"},
212        {"Clement", "KLMN", "KLMN"},
213        {"Clerke", "KLRK", "KLRK"},
214        {"Clibben", "KLPN", "KLPN"},
215        {"Clifford", "KLFR", "KLFR"},
216        {"Clivedon", "KLFT", "KLFT"},
217        {"Close", "KLS", "KLS"},
218        {"Clothilde", "KL0L", "KLTL"},
219        {"Cobb", "KP", "KP"},
220        {"Coburn", "KPRN", "KPRN"},
221        {"Coburne", "KPRN", "KPRN"},
222        {"Cocke", "KK", "KK"},
223        {"Coffin", "KFN", "KFN"},
224        {"Coffyn", "KFN", "KFN"},
225        {"Colborne", "KLPR", "KLPR"},
226        {"Colby", "KLP", "KLP"},
227        {"Cole", "KL", "KL"},
228        {"Coleman", "KLMN", "KLMN"},
229        {"Collier", "KL", "KLR"},
230        {"Compton", "KMPT", "KMPT"},
231        {"Cone", "KN", "KN"},
232        {"Cook", "KK", "KK"},
233        {"Cooke", "KK", "KK"},
234        {"Cooper", "KPR", "KPR"},
235        {"Copperthwaite", "KPR0", "KPRT"},
236        {"Corbet", "KRPT", "KRPT"},
237        {"Corell", "KRL", "KRL"},
238        {"Corey", "KR", "KR"},
239        {"Corlies", "KRLS", "KRLS"},
240        {"Corneliszen", "KRNL", "KRNL"},
241        {"Cornelius", "KRNL", "KRNL"},
242        {"Cornwallis", "KRNL", "KRNL"},
243        {"Cosgrove", "KSKR", "KSKR"},
244        {"Count of Brionne", "KNTF", "KNTF"},
245        {"Covill", "KFL", "KFL"},
246        {"Cowperthwaite", "KPR0", "KPRT"},
247        {"Cowperwaite", "KPRT", "KPRT"},
248        {"Crane", "KRN", "KRN"},
249        {"Creagmile", "KRKM", "KRKM"},
250        {"Crew", "KR", "KRF"},
251        {"Crispin", "KRSP", "KRSP"},
252        {"Crocker", "KRKR", "KRKR"},
253        {"Crockett", "KRKT", "KRKT"},
254        {"Crosby", "KRSP", "KRSP"},
255        {"Crump", "KRMP", "KRMP"},
256        {"Cunningham", "KNNK", "KNNK"},
257        {"Curtis", "KRTS", "KRTS"},
258        {"Cutha", "K0", "KT"},
259        {"Cutter", "KTR", "KTR"},
260        {"D'Aubigny", "TPN", "TPKN"},
261        {"DAVIS", "TFS", "TFS"},
262        {"Dabinott", "TPNT", "TPNT"},
263        {"Dacre", "TKR", "TKR"},
264        {"Daggett", "TKT", "TKT"},
265        {"Danvers", "TNFR", "TNFR"},
266        {"Darcy", "TRS", "TRS"},
267        {"Davis", "TFS", "TFS"},
268        {"Dawn", "TN", "TN"},
269        {"Dawson", "TSN", "TSN"},
270        {"Day", "T", "T"},
271        {"Daye", "T", "T"},
272        {"DeGrenier", "TKRN", "TKRN"},
273        {"Dean", "TN", "TN"},
274        {"Deekindaugh", "TKNT", "TKNT"},
275        {"Dennis", "TNS", "TNS"},
276        {"Denny", "TN", "TN"},
277        {"Denton", "TNTN", "TNTN"},
278        {"Desborough", "TSPR", "TSPR"},
279        {"Despenser", "TSPN", "TSPN"},
280        {"Deverill", "TFRL", "TFRL"},
281        {"Devine", "TFN", "TFN"},
282        {"Dexter", "TKST", "TKST"},
283        {"Dillaway", "TL", "TL"},
284        {"Dimmick", "TMK", "TMK"},
285        {"Dinan", "TNN", "TNN"},
286        {"Dix", "TKS", "TKS"},
287        {"Doggett", "TKT", "TKT"},
288        {"Donahue", "TNH", "TNH"},
289        {"Dorfman", "TRFM", "TRFM"},
290        {"Dorris", "TRS", "TRS"},
291        {"Dow", "T", "TF"},
292        {"Downey", "TN", "TN"},
293        {"Downing", "TNNK", "TNNK"},
294        {"Dowsett", "TST", "TST"},
295        {"Duck?", "TK", "TK"},
296        {"Dudley", "TTL", "TTL"},
297        {"Duffy", "TF", "TF"},
298        {"Dunn", "TN", "TN"},
299        {"Dunsterville", "TNST", "TNST"},
300        {"Durrant", "TRNT", "TRNT"},
301        {"Durrin", "TRN", "TRN"},
302        {"Dustin", "TSTN", "TSTN"},
303        {"Duston", "TSTN", "TSTN"},
304        {"Eames", "AMS", "AMS"},
305        {"Early", "ARL", "ARL"},
306        {"Easty", "AST", "AST"},
307        {"Ebbett", "APT", "APT"},
308        {"Eberbach", "APRP", "APRP"},
309        {"Eberhard", "APRR", "APRR"},
310        {"Eddy", "AT", "AT"},
311        {"Edenden", "ATNT", "ATNT"},
312        {"Edwards", "ATRT", "ATRT"},
313        {"Eglinton", "AKLN", "ALNT"},
314        {"Eliot", "ALT", "ALT"},
315        {"Elizabeth", "ALSP", "ALSP"},
316        {"Ellis", "ALS", "ALS"},
317        {"Ellison", "ALSN", "ALSN"},
318        {"Ellot", "ALT", "ALT"},
319        {"Elny", "ALN", "ALN"},
320        {"Elsner", "ALSN", "ALSN"},
321        {"Emerson", "AMRS", "AMRS"},
322        {"Empson", "AMPS", "AMPS"},
323        {"Est", "AST", "AST"},
324        {"Estabrook", "ASTP", "ASTP"},
325        {"Estes", "ASTS", "ASTS"},
326        {"Estey", "AST", "AST"},
327        {"Evans", "AFNS", "AFNS"},
328        {"Fallowell", "FLL", "FLL"},
329        {"Farnsworth", "FRNS", "FRNS"},
330        {"Feake", "FK", "FK"},
331        {"Feke", "FK", "FK"},
332        {"Fellows", "FLS", "FLS"},
333        {"Fettiplace", "FTPL", "FTPL"},
334        {"Finney", "FN", "FN"},
335        {"Fischer", "FXR", "FSKR"},
336        {"Fisher", "FXR", "FXR"},
337        {"Fisk", "FSK", "FSK"},
338        {"Fiske", "FSK", "FSK"},
339        {"Fletcher", "FLXR", "FLXR"},
340        {"Folger", "FLKR", "FLJR"},
341        {"Foliot", "FLT", "FLT"},
342        {"Folyot", "FLT", "FLT"},
343        {"Fones", "FNS", "FNS"},
344        {"Fordham", "FRTM", "FRTM"},
345        {"Forstner", "FRST", "FRST"},
346        {"Fosten", "FSTN", "FSTN"},
347        {"Foster", "FSTR", "FSTR"},
348        {"Foulke", "FLK", "FLK"},
349        {"Fowler", "FLR", "FLR"},
350        {"Foxwell", "FKSL", "FKSL"},
351        {"Fraley", "FRL", "FRL"},
352        {"Franceys", "FRNS", "FRNS"},
353        {"Franke", "FRNK", "FRNK"},
354        {"Frascella", "FRSL", "FRSL"},
355        {"Frazer", "FRSR", "FRSR"},
356        {"Fredd", "FRT", "FRT"},
357        {"Freeman", "FRMN", "FRMN"},
358        {"French", "FRNX", "FRNK"},
359        {"Freville", "FRFL", "FRFL"},
360        {"Frey", "FR", "FR"},
361        {"Frick", "FRK", "FRK"},
362        {"Frier", "FR", "FRR"},
363        {"Froe", "FR", "FR"},
364        {"Frorer", "FRRR", "FRRR"},
365        {"Frost", "FRST", "FRST"},
366        {"Frothingham", "FR0N", "FRTN"},
367        {"Fry", "FR", "FR"},
368        {"Gaffney", "KFN", "KFN"},
369        {"Gage", "KJ", "KK"},
370        {"Gallion", "KLN", "KLN"},
371        {"Gallishan", "KLXN", "KLXN"},
372        {"Gamble", "KMPL", "KMPL"},
373        {"garage", "KRJ", "KRK"},
374        {"Garbrand", "KRPR", "KRPR"},
375        {"Gardner", "KRTN", "KRTN"},
376        {"Garrett", "KRT", "KRT"},
377        {"Gassner", "KSNR", "KSNR"},
378        {"Gater", "KTR", "KTR"},
379        {"Gaunt", "KNT", "KNT"},
380        {"Gayer", "KR", "KR"},
381        {"George", "JRJ", "KRK"},
382        {"Gerken", "KRKN", "JRKN"},
383        {"Gerritsen", "KRTS", "JRTS"},
384        {"Gibbs", "KPS", "JPS"},
385        {"Giffard", "JFRT", "KFRT"},
386        {"Gilbert", "KLPR", "JLPR"},
387        {"Gill", "KL", "JL"},
388        {"Gilman", "KLMN", "JLMN"},
389        {"Glass", "KLS", "KLS"},
390        {"Goddard\\Gifford", "KTRT", "KTRT"},
391        {"Godfrey", "KTFR", "KTFR"},
392        {"Godwin", "KTN", "KTN"},
393        {"Goodale", "KTL", "KTL"},
394        {"Goodnow", "KTN", "KTNF"},
395        {"Gorham", "KRM", "KRM"},
396        {"Goseline", "KSLN", "KSLN"},
397        {"Gott", "KT", "KT"},
398        {"Gould", "KLT", "KLT"},
399        {"Grafton", "KRFT", "KRFT"},
400        {"Grant", "KRNT", "KRNT"},
401        {"Gray", "KR", "KR"},
402        {"Green", "KRN", "KRN"},
403        {"Griffin", "KRFN", "KRFN"},
404        {"Grill", "KRL", "KRL"},
405        {"Grim", "KRM", "KRM"},
406        {"Grisgonelle", "KRSK", "KRSK"},
407        {"Gross", "KRS", "KRS"},
408        {"Guba", "KP", "KP"},
409        {"Gybbes", "KPS", "JPS"},
410        {"Haburne", "HPRN", "HPRN"},
411        {"Hackburne", "HKPR", "HKPR"},
412        {"Haddon?", "HTN", "HTN"},
413        {"Haines", "HNS", "HNS"},
414        {"Hale", "HL", "HL"},
415        {"Hall", "HL", "HL"},
416        {"Hallet", "HLT", "HLT"},
417        {"Hallock", "HLK", "HLK"},
418        {"Halstead", "HLST", "HLST"},
419        {"Hammond", "HMNT", "HMNT"},
420        {"Hance", "HNS", "HNS"},
421        {"Handy", "HNT", "HNT"},
422        {"Hanson", "HNSN", "HNSN"},
423        {"Harasek", "HRSK", "HRSK"},
424        {"Harcourt", "HRKR", "HRKR"},
425        {"Hardy", "HRT", "HRT"},
426        {"Harlock", "HRLK", "HRLK"},
427        {"Harris", "HRS", "HRS"},
428        {"Hartley", "HRTL", "HRTL"},
429        {"Harvey", "HRF", "HRF"},
430        {"Harvie", "HRF", "HRF"},
431        {"Harwood", "HRT", "HRT"},
432        {"Hathaway", "H0", "HT"},
433        {"Haukeness", "HKNS", "HKNS"},
434        {"Hawkes", "HKS", "HKS"},
435        {"Hawkhurst", "HKRS", "HKRS"},
436        {"Hawkins", "HKNS", "HKNS"},
437        {"Hawley", "HL", "HL"},
438        {"Heald", "HLT", "HLT"},
439        {"Helsdon", "HLST", "HLST"},
440        {"Hemenway", "HMN", "HMN"},
441        {"Hemmenway", "HMN", "HMN"},
442        {"Henck", "HNK", "HNK"},
443        {"Henderson", "HNTR", "HNTR"},
444        {"Hendricks", "HNTR", "HNTR"},
445        {"Hersey", "HRS", "HRS"},
446        {"Hewes", "HS", "HS"},
447        {"Heyman", "HMN", "HMN"},
448        {"Hicks", "HKS", "HKS"},
449        {"Hidden", "HTN", "HTN"},
450        {"Higgs", "HKS", "HKS"},
451        {"Hill", "HL", "HL"},
452        {"Hills", "HLS", "HLS"},
453        {"Hinckley", "HNKL", "HNKL"},
454        {"Hipwell", "HPL", "HPL"},
455        {"Hobart", "HPRT", "HPRT"},
456        {"Hoben", "HPN", "HPN"},
457        {"Hoffmann", "HFMN", "HFMN"},
458        {"Hogan", "HKN", "HKN"},
459        {"Holmes", "HLMS", "HLMS"},
460        {"Hoo", "H", "H"},
461        {"Hooker", "HKR", "HKR"},
462        {"Hopcott", "HPKT", "HPKT"},
463        {"Hopkins", "HPKN", "HPKN"},
464        {"Hopkinson", "HPKN", "HPKN"},
465        {"Hornsey", "HRNS", "HRNS"},
466        {"Houckgeest", "HKJS", "HKKS"},
467        {"Hough", "H", "H"},
468        {"Houstin", "HSTN", "HSTN"},
469        {"How", "H", "HF"},
470        {"Howe", "H", "H"},
471        {"Howland", "HLNT", "HLNT"},
472        {"Hubner", "HPNR", "HPNR"},
473        {"Hudnut", "HTNT", "HTNT"},
474        {"Hughes", "HS", "HS"},
475        {"Hull", "HL", "HL"},
476        {"Hulme", "HLM", "HLM"},
477        {"Hume", "HM", "HM"},
478        {"Hundertumark", "HNTR", "HNTR"},
479        {"Hundley", "HNTL", "HNTL"},
480        {"Hungerford", "HNKR", "HNJR"},
481        {"Hunt", "HNT", "HNT"},
482        {"Hurst", "HRST", "HRST"},
483        {"Husbands", "HSPN", "HSPN"},
484        {"Hussey", "HS", "HS"},
485        {"Husted", "HSTT", "HSTT"},
486        {"Hutchins", "HXNS", "HXNS"},
487        {"Hutchinson", "HXNS", "HXNS"},
488        {"Huttinger", "HTNK", "HTNJ"},
489        {"Huybertsen", "HPRT", "HPRT"},
490        {"Iddenden", "ATNT", "ATNT"},
491        {"Ingraham", "ANKR", "ANKR"},
492        {"Ives", "AFS", "AFS"},
493        {"Jackson", "JKSN", "AKSN"},
494        {"Jacob", "JKP", "AKP"},
495        {"Jans", "JNS", "ANS"},
496        {"Jenkins", "JNKN", "ANKN"},
497        {"Jewett", "JT", "AT"},
498        {"Jewitt", "JT", "AT"},
499        {"Johnson", "JNSN", "ANSN"},
500        {"Jones", "JNS", "ANS"},
501        {"Josephine", "JSFN", "HSFN"},
502        {"Judd", "JT", "AT"},
503        {"June", "JN", "AN"},
504        {"Kamarowska", "KMRS", "KMRS"},
505        {"Kay", "K", "K"},
506        {"Kelley", "KL", "KL"},
507        {"Kelly", "KL", "KL"},
508        {"Keymber", "KMPR", "KMPR"},
509        {"Keynes", "KNS", "KNS"},
510        {"Kilham", "KLM", "KLM"},
511        {"Kim", "KM", "KM"},
512        {"Kimball", "KMPL", "KMPL"},
513        {"King", "KNK", "KNK"},
514        {"Kinsey", "KNS", "KNS"},
515        {"Kirk", "KRK", "KRK"},
516        {"Kirton", "KRTN", "KRTN"},
517        {"Kistler", "KSTL", "KSTL"},
518        {"Kitchen", "KXN", "KXN"},
519        {"Kitson", "KTSN", "KTSN"},
520        {"Klett", "KLT", "KLT"},
521        {"Kline", "KLN", "KLN"},
522        {"Knapp", "NP", "NP"},
523        {"Knight", "NT", "NT"},
524        {"Knote", "NT", "NT"},
525        {"Knott", "NT", "NT"},
526        {"Knox", "NKS", "NKS"},
527        {"Koeller", "KLR", "KLR"},
528        {"La Pointe", "LPNT", "LPNT"},
529        {"LaPlante", "LPLN", "LPLN"},
530        {"Laimbeer", "LMPR", "LMPR"},
531        {"Lamb", "LMP", "LMP"},
532        {"Lambertson", "LMPR", "LMPR"},
533        {"Lancto", "LNKT", "LNKT"},
534        {"Landry", "LNTR", "LNTR"},
535        {"Lane", "LN", "LN"},
536        {"Langendyck", "LNJN", "LNKN"},
537        {"Langer", "LNKR", "LNJR"},
538        {"Langford", "LNKF", "LNKF"},
539        {"Lantersee", "LNTR", "LNTR"},
540        {"Laquer", "LKR", "LKR"},
541        {"Larkin", "LRKN", "LRKN"},
542        {"Latham", "LTM", "LTM"},
543        {"Lathrop", "L0RP", "LTRP"},
544        {"Lauter", "LTR", "LTR"},
545        {"Lawrence", "LRNS", "LRNS"},
546        {"Leach", "LK", "LK"},
547        {"Leager", "LKR", "LJR"},
548        {"Learned", "LRNT", "LRNT"},
549        {"Leavitt", "LFT", "LFT"},
550        {"Lee", "L", "L"},
551        {"Leete", "LT", "LT"},
552        {"Leggett", "LKT", "LKT"},
553        {"Leland", "LLNT", "LLNT"},
554        {"Leonard", "LNRT", "LNRT"},
555        {"Lester", "LSTR", "LSTR"},
556        {"Lestrange", "LSTR", "LSTR"},
557        {"Lethem", "L0M", "LTM"},
558        {"Levine", "LFN", "LFN"},
559        {"Lewes", "LS", "LS"},
560        {"Lewis", "LS", "LS"},
561        {"Lincoln", "LNKL", "LNKL"},
562        {"Lindsey", "LNTS", "LNTS"},
563        {"Linher", "LNR", "LNR"},
564        {"Lippet", "LPT", "LPT"},
565        {"Lippincott", "LPNK", "LPNK"},
566        {"Lockwood", "LKT", "LKT"},
567        {"Loines", "LNS", "LNS"},
568        {"Lombard", "LMPR", "LMPR"},
569        {"Long", "LNK", "LNK"},
570        {"Longespee", "LNJS", "LNKS"},
571        {"Look", "LK", "LK"},
572        {"Lounsberry", "LNSP", "LNSP"},
573        {"Lounsbury", "LNSP", "LNSP"},
574        {"Louthe", "L0", "LT"},
575        {"Loveyne", "LFN", "LFN"},
576        {"Lowe", "L", "L"},
577        {"Ludlam", "LTLM", "LTLM"},
578        {"Lumbard", "LMPR", "LMPR"},
579        {"Lund", "LNT", "LNT"},
580        {"Luno", "LN", "LN"},
581        {"Lutz", "LTS", "LTS"},
582        {"Lydia", "LT", "LT"},
583        {"Lynne", "LN", "LN"},
584        {"Lyon", "LN", "LN"},
585        {"MacAlpin", "MKLP", "MKLP"},
586        {"MacBricc", "MKPR", "MKPR"},
587        {"MacCrinan", "MKRN", "MKRN"},
588        {"MacKenneth", "MKN0", "MKNT"},
589        {"MacMael nam Bo", "MKML", "MKML"},
590        {"MacMurchada", "MKMR", "MKMR"},
591        {"Macomber", "MKMP", "MKMP"},
592        {"Macy", "MS", "MS"},
593        {"Magnus", "MNS", "MKNS"},
594        {"Mahien", "MHN", "MHN"},
595        {"Malmains", "MLMN", "MLMN"},
596        {"Malory", "MLR", "MLR"},
597        {"Mancinelli", "MNSN", "MNSN"},
598        {"Mancini", "MNSN", "MNSN"},
599        {"Mann", "MN", "MN"},
600        {"Manning", "MNNK", "MNNK"},
601        {"Manter", "MNTR", "MNTR"},
602        {"Marion", "MRN", "MRN"},
603        {"Marley", "MRL", "MRL"},
604        {"Marmion", "MRMN", "MRMN"},
605        {"Marquart", "MRKR", "MRKR"},
606        {"Marsh", "MRX", "MRX"},
607        {"Marshal", "MRXL", "MRXL"},
608        {"Marshall", "MRXL", "MRXL"},
609        {"Martel", "MRTL", "MRTL"},
610        {"Martha", "MR0", "MRT"},
611        {"Martin", "MRTN", "MRTN"},
612        {"Marturano", "MRTR", "MRTR"},
613        {"Marvin", "MRFN", "MRFN"},
614        {"Mary", "MR", "MR"},
615        {"Mason", "MSN", "MSN"},
616        {"Maxwell", "MKSL", "MKSL"},
617        {"Mayhew", "MH", "MHF"},
618        {"McAllaster", "MKLS", "MKLS"},
619        {"McAllister", "MKLS", "MKLS"},
620        {"McConnell", "MKNL", "MKNL"},
621        {"McFarland", "MKFR", "MKFR"},
622        {"McIlroy", "MSLR", "MSLR"},
623        {"McNair", "MKNR", "MKNR"},
624        {"McNair-Landry", "MKNR", "MKNR"},
625        {"McRaven", "MKRF", "MKRF"},
626        {"Mead", "MT", "MT"},
627        {"Meade", "MT", "MT"},
628        {"Meck", "MK", "MK"},
629        {"Melton", "MLTN", "MLTN"},
630        {"Mendenhall", "MNTN", "MNTN"},
631        {"Mering", "MRNK", "MRNK"},
632        {"Merrick", "MRK", "MRK"},
633        {"Merry", "MR", "MR"},
634        {"Mighill", "ML", "ML"},
635        {"Miller", "MLR", "MLR"},
636        {"Milton", "MLTN", "MLTN"},
637        {"Mohun", "MHN", "MHN"},
638        {"Montague", "MNTK", "MNTK"},
639        {"Montboucher", "MNTP", "MNTP"},
640        {"Moore", "MR", "MR"},
641        {"Morrel", "MRL", "MRL"},
642        {"Morrill", "MRL", "MRL"},
643        {"Morris", "MRS", "MRS"},
644        {"Morton", "MRTN", "MRTN"},
645        {"Moton", "MTN", "MTN"},
646        {"Muir", "MR", "MR"},
647        {"Mulferd", "MLFR", "MLFR"},
648        {"Mullins", "MLNS", "MLNS"},
649        {"Mulso", "MLS", "MLS"},
650        {"Munger", "MNKR", "MNJR"},
651        {"Munt", "MNT", "MNT"},
652        {"Murchad", "MRXT", "MRKT"},
653        {"Murdock", "MRTK", "MRTK"},
654        {"Murray", "MR", "MR"},
655        {"Muskett", "MSKT", "MSKT"},
656        {"Myers", "MRS", "MRS"},
657        {"Myrick", "MRK", "MRK"},
658        {"NORRIS", "NRS", "NRS"},
659        {"Nayle", "NL", "NL"},
660        {"Newcomb", "NKMP", "NKMP"},
661        {"Newcomb(e)", "NKMP", "NKMP"},
662        {"Newkirk", "NKRK", "NKRK"},
663        {"Newton", "NTN", "NTN"},
664        {"Niles", "NLS", "NLS"},
665        {"Noble", "NPL", "NPL"},
666        {"Noel", "NL", "NL"},
667        {"Northend", "NR0N", "NRTN"},
668        {"Norton", "NRTN", "NRTN"},
669        {"Nutter", "NTR", "NTR"},
670        {"Odding", "ATNK", "ATNK"},
671        {"Odenbaugh", "ATNP", "ATNP"},
672        {"Ogborn", "AKPR", "AKPR"},
673        {"Oppenheimer", "APNM", "APNM"},
674        {"Otis", "ATS", "ATS"},
675        {"Oviatt", "AFT", "AFT"},
676        {"PRUST?", "PRST", "PRST"},
677        {"Paddock", "PTK", "PTK"},
678        {"Page", "PJ", "PK"},
679        {"Paine", "PN", "PN"},
680        {"Paist", "PST", "PST"},
681        {"Palmer", "PLMR", "PLMR"},
682        {"Park", "PRK", "PRK"},
683        {"Parker", "PRKR", "PRKR"},
684        {"Parkhurst", "PRKR", "PRKR"},
685        {"Parrat", "PRT", "PRT"},
686        {"Parsons", "PRSN", "PRSN"},
687        {"Partridge", "PRTR", "PRTR"},
688        {"Pashley", "PXL", "PXL"},
689        {"Pasley", "PSL", "PSL"},
690        {"Patrick", "PTRK", "PTRK"},
691        {"Pattee", "PT", "PT"},
692        {"Patten", "PTN", "PTN"},
693        {"Pawley", "PL", "PL"},
694        {"Payne", "PN", "PN"},
695        {"Peabody", "PPT", "PPT"},
696        {"Peake", "PK", "PK"},
697        {"Pearson", "PRSN", "PRSN"},
698        {"Peat", "PT", "PT"},
699        {"Pedersen", "PTRS", "PTRS"},
700        {"Percy", "PRS", "PRS"},
701        {"Perkins", "PRKN", "PRKN"},
702        {"Perrine", "PRN", "PRN"},
703        {"Perry", "PR", "PR"},
704        {"Peson", "PSN", "PSN"},
705        {"Peterson", "PTRS", "PTRS"},
706        {"Peyton", "PTN", "PTN"},
707        {"Phinney", "FN", "FN"},
708        {"Pickard", "PKRT", "PKRT"},
709        {"Pierce", "PRS", "PRS"},
710        {"Pierrepont", "PRPN", "PRPN"},
711        {"Pike", "PK", "PK"},
712        {"Pinkham", "PNKM", "PNKM"},
713        {"Pitman", "PTMN", "PTMN"},
714        {"Pitt", "PT", "PT"},
715        {"Pitts", "PTS", "PTS"},
716        {"Plantagenet", "PLNT", "PLNT"},
717        {"Platt", "PLT", "PLT"},
718        {"Platts", "PLTS", "PLTS"},
719        {"Pleis", "PLS", "PLS"},
720        {"Pleiss", "PLS", "PLS"},
721        {"Plisko", "PLSK", "PLSK"},
722        {"Pliskovitch", "PLSK", "PLSK"},
723        {"Plum", "PLM", "PLM"},
724        {"Plume", "PLM", "PLM"},
725        {"Poitou", "PT", "PT"},
726        {"Pomeroy", "PMR", "PMR"},
727        {"Poretiers", "PRTR", "PRTR"},
728        {"Pote", "PT", "PT"},
729        {"Potter", "PTR", "PTR"},
730        {"Potts", "PTS", "PTS"},
731        {"Powell", "PL", "PL"},
732        {"Pratt", "PRT", "PRT"},
733        {"Presbury", "PRSP", "PRSP"},
734        {"Priest", "PRST", "PRST"},
735        {"Prindle", "PRNT", "PRNT"},
736        {"Prior", "PRR", "PRR"},
737        {"Profumo", "PRFM", "PRFM"},
738        {"Purdy", "PRT", "PRT"},
739        {"Purefoy", "PRF", "PRF"},
740        {"Pury", "PR", "PR"},
741        {"Quinter", "KNTR", "KNTR"},
742        {"Rachel", "RXL", "RKL"},
743        {"Rand", "RNT", "RNT"},
744        {"Rankin", "RNKN", "RNKN"},
745        {"Ravenscroft", "RFNS", "RFNS"},
746        {"Raynsford", "RNSF", "RNSF"},
747        {"Reakirt", "RKRT", "RKRT"},
748        {"Reaves", "RFS", "RFS"},
749        {"Reeves", "RFS", "RFS"},
750        {"Reichert", "RXRT", "RKRT"},
751        {"Remmele", "RML", "RML"},
752        {"Reynolds", "RNLT", "RNLT"},
753        {"Rhodes", "RTS", "RTS"},
754        {"Richards", "RXRT", "RKRT"},
755        {"Richardson", "RXRT", "RKRT"},
756        {"Ring", "RNK", "RNK"},
757        {"Roberts", "RPRT", "RPRT"},
758        {"Robertson", "RPRT", "RPRT"},
759        {"Robson", "RPSN", "RPSN"},
760        {"Rodie", "RT", "RT"},
761        {"Rody", "RT", "RT"},
762        {"Rogers", "RKRS", "RJRS"},
763        {"Ross", "RS", "RS"},
764        {"Rosslevin", "RSLF", "RSLF"},
765        {"Rowland", "RLNT", "RLNT"},
766        {"Ruehl", "RL", "RL"},
767        {"Russell", "RSL", "RSL"},
768        {"Ruth", "R0", "RT"},
769        {"Ryan", "RN", "RN"},
770        {"Rysse", "RS", "RS"},
771        {"Sadler", "STLR", "STLR"},
772        {"Salmon", "SLMN", "SLMN"},
773        {"Salter", "SLTR", "SLTR"},
774        {"Salvatore", "SLFT", "SLFT"},
775        {"Sanders", "SNTR", "SNTR"},
776        {"Sands", "SNTS", "SNTS"},
777        {"Sanford", "SNFR", "SNFR"},
778        {"Sanger", "SNKR", "SNJR"},
779        {"Sargent", "SRJN", "SRKN"},
780        {"Saunders", "SNTR", "SNTR"},
781        {"Schilling", "XLNK", "XLNK"},
782        {"Schlegel", "XLKL", "SLKL"},
783        {"Scott", "SKT", "SKT"},
784        {"Sears", "SRS", "SRS"},
785        {"Segersall", "SJRS", "SKRS"},
786        {"Senecal", "SNKL", "SNKL"},
787        {"Sergeaux", "SRJ", "SRK"},
788        {"Severance", "SFRN", "SFRN"},
789        {"Sharp", "XRP", "XRP"},
790        {"Sharpe", "XRP", "XRP"},
791        {"Sharply", "XRPL", "XRPL"},
792        {"Shatswell", "XTSL", "XTSL"},
793        {"Shattack", "XTK", "XTK"},
794        {"Shattock", "XTK", "XTK"},
795        {"Shattuck", "XTK", "XTK"},
796        {"Shaw", "X", "XF"},
797        {"Sheldon", "XLTN", "XLTN"},
798        {"Sherman", "XRMN", "XRMN"},
799        {"Shinn", "XN", "XN"},
800        {"Shirford", "XRFR", "XRFR"},
801        {"Shirley", "XRL", "XRL"},
802        {"Shively", "XFL", "XFL"},
803        {"Shoemaker", "XMKR", "XMKR"},
804        {"Short", "XRT", "XRT"},
805        {"Shotwell", "XTL", "XTL"},
806        {"Shute", "XT", "XT"},
807        {"Sibley", "SPL", "SPL"},
808        {"Silver", "SLFR", "SLFR"},
809        {"Simes", "SMS", "SMS"},
810        {"Sinken", "SNKN", "SNKN"},
811        {"Sinn", "SN", "SN"},
812        {"Skelton", "SKLT", "SKLT"},
813        {"Skiffe", "SKF", "SKF"},
814        {"Skotkonung", "SKTK", "SKTK"},
815        {"Slade", "SLT", "XLT"},
816        {"Slye", "SL", "XL"},
817        {"Smedley", "SMTL", "XMTL"},
818        {"Smith", "SM0", "XMT"},
819        {"Smythe", "SM0", "XMT"},
820        {"Snow", "SN", "XNF"},
821        {"Soole", "SL", "SL"},
822        {"Soule", "SL", "SL"},
823        {"Southworth", "S0R0", "STRT"},
824        {"Sowles", "SLS", "SLS"},
825        {"Spalding", "SPLT", "SPLT"},
826        {"Spark", "SPRK", "SPRK"},
827        {"Spencer", "SPNS", "SPNS"},
828        {"Sperry", "SPR", "SPR"},
829        {"Spofford", "SPFR", "SPFR"},
830        {"Spooner", "SPNR", "SPNR"},
831        {"Sprague", "SPRK", "SPRK"},
832        {"Springer", "SPRN", "SPRN"},
833        {"St. Clair", "STKL", "STKL"},
834        {"St. Claire", "STKL", "STKL"},
835        {"St. Leger", "STLJ", "STLK"},
836        {"St. Omer", "STMR", "STMR"},
837        {"Stafferton", "STFR", "STFR"},
838        {"Stafford", "STFR", "STFR"},
839        {"Stalham", "STLM", "STLM"},
840        {"Stanford", "STNF", "STNF"},
841        {"Stanton", "STNT", "STNT"},
842        {"Star", "STR", "STR"},
843        {"Starbuck", "STRP", "STRP"},
844        {"Starkey", "STRK", "STRK"},
845        {"Starkweather", "STRK", "STRK"},
846        {"Stearns", "STRN", "STRN"},
847        {"Stebbins", "STPN", "STPN"},
848        {"Steele", "STL", "STL"},
849        {"Stephenson", "STFN", "STFN"},
850        {"Stevens", "STFN", "STFN"},
851        {"Stoddard", "STTR", "STTR"},
852        {"Stodder", "STTR", "STTR"},
853        {"Stone", "STN", "STN"},
854        {"Storey", "STR", "STR"},
855        {"Storrada", "STRT", "STRT"},
856        {"Story", "STR", "STR"},
857        {"Stoughton", "STFT", "STFT"},
858        {"Stout", "STT", "STT"},
859        {"Stow", "ST", "STF"},
860        {"Strong", "STRN", "STRN"},
861        {"Strutt", "STRT", "STRT"},
862        {"Stryker", "STRK", "STRK"},
863        {"Stuckeley", "STKL", "STKL"},
864        {"Sturges", "STRJ", "STRK"},
865        {"Sturgess", "STRJ", "STRK"},
866        {"Sturgis", "STRJ", "STRK"},
867        {"Suevain", "SFN", "SFN"},
868        {"Sulyard", "SLRT", "SLRT"},
869        {"Sutton", "STN", "STN"},
870        {"Swain", "SN", "XN"},
871        {"Swayne", "SN", "XN"},
872        {"Swayze", "SS", "XTS"},
873        {"Swift", "SFT", "XFT"},
874        {"Taber", "TPR", "TPR"},
875        {"Talcott", "TLKT", "TLKT"},
876        {"Tarne", "TRN", "TRN"},
877        {"Tatum", "TTM", "TTM"},
878        {"Taverner", "TFRN", "TFRN"},
879        {"Taylor", "TLR", "TLR"},
880        {"Tenney", "TN", "TN"},
881        {"Thayer", "0R", "TR"},
882        {"Thember", "0MPR", "TMPR"},
883        {"Thomas", "TMS", "TMS"},
884        {"Thompson", "TMPS", "TMPS"},
885        {"Thorne", "0RN", "TRN"},
886        {"Thornycraft", "0RNK", "TRNK"},
887        {"Threlkeld", "0RLK", "TRLK"},
888        {"Throckmorton", "0RKM", "TRKM"},
889        {"Thwaits", "0TS", "TTS"},
890        {"Tibbetts", "TPTS", "TPTS"},
891        {"Tidd", "TT", "TT"},
892        {"Tierney", "TRN", "TRN"},
893        {"Tilley", "TL", "TL"},
894        {"Tillieres", "TLRS", "TLRS"},
895        {"Tilly", "TL", "TL"},
896        {"Tisdale", "TSTL", "TSTL"},
897        {"Titus", "TTS", "TTS"},
898        {"Tobey", "TP", "TP"},
899        {"Tooker", "TKR", "TKR"},
900        {"Towle", "TL", "TL"},
901        {"Towne", "TN", "TN"},
902        {"Townsend", "TNSN", "TNSN"},
903        {"Treadway", "TRT", "TRT"},
904        {"Trelawney", "TRLN", "TRLN"},
905        {"Trinder", "TRNT", "TRNT"},
906        {"Tripp", "TRP", "TRP"},
907        {"Trippe", "TRP", "TRP"},
908        {"Trott", "TRT", "TRT"},
909        {"True", "TR", "TR"},
910        {"Trussebut", "TRSP", "TRSP"},
911        {"Tucker", "TKR", "TKR"},
912        {"Turgeon", "TRJN", "TRKN"},
913        {"Turner", "TRNR", "TRNR"},
914        {"Tuttle", "TTL", "TTL"},
915        {"Tyler", "TLR", "TLR"},
916        {"Tylle", "TL", "TL"},
917        {"Tyrrel", "TRL", "TRL"},
918        {"Ua Tuathail", "AT0L", "ATTL"},
919        {"Ulrich", "ALRX", "ALRK"},
920        {"Underhill", "ANTR", "ANTR"},
921        {"Underwood", "ANTR", "ANTR"},
922        {"Unknown", "ANKN", "ANKN"},
923        {"Valentine", "FLNT", "FLNT"},
924        {"Van Egmond", "FNKM", "FNKM"},
925        {"Van der Beek", "FNTR", "FNTR"},
926        {"Vaughan", "FKN", "FKN"},
927        {"Vermenlen", "FRMN", "FRMN"},
928        {"Vincent", "FNSN", "FNSN"},
929        {"Volentine", "FLNT", "FLNT"},
930        {"Wagner", "AKNR", "FKNR"},
931        {"Waite", "AT", "FT"},
932        {"Walker", "ALKR", "FLKR"},
933        {"Walter", "ALTR", "FLTR"},
934        {"Wandell", "ANTL", "FNTL"},
935        {"Wandesford", "ANTS", "FNTS"},
936        {"Warbleton", "ARPL", "FRPL"},
937        {"Ward", "ART", "FRT"},
938        {"Warde", "ART", "FRT"},
939        {"Ware", "AR", "FR"},
940        {"Wareham", "ARHM", "FRHM"},
941        {"Warner", "ARNR", "FRNR"},
942        {"Warren", "ARN", "FRN"},
943        {"Washburne", "AXPR", "FXPR"},
944        {"Waterbury", "ATRP", "FTRP"},
945        {"Watson", "ATSN", "FTSN"},
946        {"WatsonEllithorpe", "ATSN", "FTSN"},
947        {"Watts", "ATS", "FTS"},
948        {"Wayne", "AN", "FN"},
949        {"Webb", "AP", "FP"},
950        {"Weber", "APR", "FPR"},
951        {"Webster", "APST", "FPST"},
952        {"Weed", "AT", "FT"},
953        {"Weeks", "AKS", "FKS"},
954        {"Wells", "ALS", "FLS"},
955        {"Wenzell", "ANSL", "FNTS"},
956        {"West", "AST", "FST"},
957        {"Westbury", "ASTP", "FSTP"},
958        {"Whatlocke", "ATLK", "ATLK"},
959        {"Wheeler", "ALR", "ALR"},
960        {"Whiston", "ASTN", "ASTN"},
961        {"White", "AT", "AT"},
962        {"Whitman", "ATMN", "ATMN"},
963        {"Whiton", "ATN", "ATN"},
964        {"Whitson", "ATSN", "ATSN"},
965        {"Wickes", "AKS", "FKS"},
966        {"Wilbur", "ALPR", "FLPR"},
967        {"Wilcotes", "ALKT", "FLKT"},
968        {"Wilkinson", "ALKN", "FLKN"},
969        {"Willets", "ALTS", "FLTS"},
970        {"Willett", "ALT", "FLT"},
971        {"Willey", "AL", "FL"},
972        {"Williams", "ALMS", "FLMS"},
973        {"Williston", "ALST", "FLST"},
974        {"Wilson", "ALSN", "FLSN"},
975        {"Wimes", "AMS", "FMS"},
976        {"Winch", "ANX", "FNK"},
977        {"Winegar", "ANKR", "FNKR"},
978        {"Wing", "ANK", "FNK"},
979        {"Winsley", "ANSL", "FNSL"},
980        {"Winslow", "ANSL", "FNSL"},
981        {"Winthrop", "AN0R", "FNTR"},
982        {"Wise", "AS", "FS"},
983        {"Wood", "AT", "FT"},
984        {"Woodbridge", "ATPR", "FTPR"},
985        {"Woodward", "ATRT", "FTRT"},
986        {"Wooley", "AL", "FL"},
987        {"Woolley", "AL", "FL"},
988        {"Worth", "AR0", "FRT"},
989        {"Worthen", "AR0N", "FRTN"},
990        {"Worthley", "AR0L", "FRTL"},
991        {"Wright", "RT", "RT"},
992        {"Wyer", "AR", "FR"},
993        {"Wyere", "AR", "FR"},
994        {"Wynkoop", "ANKP", "FNKP"},
995        {"Yarnall", "ARNL", "ARNL"},
996        {"Yeoman", "AMN", "AMN"},
997        {"Yorke", "ARK", "ARK"},
998        {"Young", "ANK", "ANK"},
999        {"ab Wennonwen", "APNN", "APNN"},
1000        {"ap Llewellyn", "APLL", "APLL"},
1001        {"ap Lorwerth", "APLR", "APLR"},
1002        {"d'Angouleme", "TNKL", "TNKL"},
1003        {"de Audeham", "TTHM", "TTHM"},
1004        {"de Bavant", "TPFN", "TPFN"},
1005        {"de Beauchamp", "TPXM", "TPKM"},
1006        {"de Beaumont", "TPMN", "TPMN"},
1007        {"de Bolbec", "TPLP", "TPLP"},
1008        {"de Braiose", "TPRS", "TPRS"},
1009        {"de Braose", "TPRS", "TPRS"},
1010        {"de Briwere", "TPRR", "TPRR"},
1011        {"de Cantelou", "TKNT", "TKNT"},
1012        {"de Cherelton", "TXRL", "TKRL"},
1013        {"de Cherleton", "TXRL", "TKRL"},
1014        {"de Clare", "TKLR", "TKLR"},
1015        {"de Claremont", "TKLR", "TKLR"},
1016        {"de Clifford", "TKLF", "TKLF"},
1017        {"de Colville", "TKLF", "TKLF"},
1018        {"de Courtenay", "TKRT", "TKRT"},
1019        {"de Fauconberg", "TFKN", "TFKN"},
1020        {"de Forest", "TFRS", "TFRS"},
1021        {"de Gai", "TK", "TK"},
1022        {"de Grey", "TKR", "TKR"},
1023        {"de Guernons", "TKRN", "TKRN"},
1024        {"de Haia", "T", "T"},
1025        {"de Harcourt", "TRKR", "TRKR"},
1026        {"de Hastings", "TSTN", "TSTN"},
1027        {"de Hoke", "TK", "TK"},
1028        {"de Hooch", "TK", "TK"},
1029        {"de Hugelville", "TJLF", "TKLF"},
1030        {"de Huntingdon", "TNTN", "TNTN"},
1031        {"de Insula", "TNSL", "TNSL"},
1032        {"de Keynes", "TKNS", "TKNS"},
1033        {"de Lacy", "TLS", "TLS"},
1034        {"de Lexington", "TLKS", "TLKS"},
1035        {"de Lusignan", "TLSN", "TLSK"},
1036        {"de Manvers", "TMNF", "TMNF"},
1037        {"de Montagu", "TMNT", "TMNT"},
1038        {"de Montault", "TMNT", "TMNT"},
1039        {"de Montfort", "TMNT", "TMNT"},
1040        {"de Mortimer", "TMRT", "TMRT"},
1041        {"de Morville", "TMRF", "TMRF"},
1042        {"de Morvois", "TMRF", "TMRF"},
1043        {"de Neufmarche", "TNFM", "TNFM"},
1044        {"de Odingsells", "TTNK", "TTNK"},
1045        {"de Odyngsells", "TTNK", "TTNK"},
1046        {"de Percy", "TPRS", "TPRS"},
1047        {"de Pierrepont", "TPRP", "TPRP"},
1048        {"de Plessetis", "TPLS", "TPLS"},
1049        {"de Porhoet", "TPRT", "TPRT"},
1050        {"de Prouz", "TPRS", "TPRS"},
1051        {"de Quincy", "TKNS", "TKNS"},
1052        {"de Ripellis", "TRPL", "TRPL"},
1053        {"de Ros", "TRS", "TRS"},
1054        {"de Salisbury", "TSLS", "TSLS"},
1055        {"de Sanford", "TSNF", "TSNF"},
1056        {"de Somery", "TSMR", "TSMR"},
1057        {"de St. Hilary", "TSTL", "TSTL"},
1058        {"de St. Liz", "TSTL", "TSTL"},
1059        {"de Sutton", "TSTN", "TSTN"},
1060        {"de Toeni", "TTN", "TTN"},
1061        {"de Tony", "TTN", "TTN"},
1062        {"de Umfreville", "TMFR", "TMFR"},
1063        {"de Valognes", "TFLN", "TFLK"},
1064        {"de Vaux", "TF", "TF"},
1065        {"de Vere", "TFR", "TFR"},
1066        {"de Vermandois", "TFRM", "TFRM"},
1067        {"de Vernon", "TFRN", "TFRN"},
1068        {"de Vexin", "TFKS", "TFKS"},
1069        {"de Vitre", "TFTR", "TFTR"},
1070        {"de Wandesford", "TNTS", "TNTS"},
1071        {"de Warenne", "TRN", "TRN"},
1072        {"de Westbury", "TSTP", "TSTP"},
1073        {"di Saluzzo", "TSLS", "TSLT"},
1074        {"fitz Alan", "FTSL", "FTSL"},
1075        {"fitz Geoffrey", "FTSJ", "FTSK"},
1076        {"fitz Herbert", "FTSR", "FTSR"},
1077        {"fitz John", "FTSJ", "FTSJ"},
1078        {"fitz Patrick", "FTSP", "FTSP"},
1079        {"fitz Payn", "FTSP", "FTSP"},
1080        {"fitz Piers", "FTSP", "FTSP"},
1081        {"fitz Randolph", "FTSR", "FTSR"},
1082        {"fitz Richard", "FTSR", "FTSR"},
1083        {"fitz Robert", "FTSR", "FTSR"},
1084        {"fitz Roy", "FTSR", "FTSR"},
1085        {"fitz Scrob", "FTSS", "FTSS"},
1086        {"fitz Walter", "FTSL", "FTSL"},
1087        {"fitz Warin", "FTSR", "FTSR"},
1088        {"fitz Williams", "FTSL", "FTSL"},
1089        {"la Zouche", "LSX", "LSK"},
1090        {"le Botiller", "LPTL", "LPTL"},
1091        {"le Despenser", "LTSP", "LTSP"},
1092        {"le deSpencer", "LTSP", "LTSP"},
1093        {"of Allendale", "AFLN", "AFLN"},
1094        {"of Angouleme", "AFNK", "AFNK"},
1095        {"of Anjou", "AFNJ", "AFNJ"},
1096        {"of Aquitaine", "AFKT", "AFKT"},
1097        {"of Aumale", "AFML", "AFML"},
1098        {"of Bavaria", "AFPF", "AFPF"},
1099        {"of Boulogne", "AFPL", "AFPL"},
1100        {"of Brittany", "AFPR", "AFPR"},
1101        {"of Brittary", "AFPR", "AFPR"},
1102        {"of Castile", "AFKS", "AFKS"},
1103        {"of Chester", "AFXS", "AFKS"},
1104        {"of Clermont", "AFKL", "AFKL"},
1105        {"of Cologne", "AFKL", "AFKL"},
1106        {"of Dinan", "AFTN", "AFTN"},
1107        {"of Dunbar", "AFTN", "AFTN"},
1108        {"of England", "AFNK", "AFNK"},
1109        {"of Essex", "AFSK", "AFSK"},
1110        {"of Falaise", "AFFL", "AFFL"},
1111        {"of Flanders", "AFFL", "AFFL"},
1112        {"of Galloway", "AFKL", "AFKL"},
1113        {"of Germany", "AFKR", "AFJR"},
1114        {"of Gloucester", "AFKL", "AFKL"},
1115        {"of Heristal", "AFRS", "AFRS"},
1116        {"of Hungary", "AFNK", "AFNK"},
1117        {"of Huntington", "AFNT", "AFNT"},
1118        {"of Kiev", "AFKF", "AFKF"},
1119        {"of Kuno", "AFKN", "AFKN"},
1120        {"of Landen", "AFLN", "AFLN"},
1121        {"of Laon", "AFLN", "AFLN"},
1122        {"of Leinster", "AFLN", "AFLN"},
1123        {"of Lens", "AFLN", "AFLN"},
1124        {"of Lorraine", "AFLR", "AFLR"},
1125        {"of Louvain", "AFLF", "AFLF"},
1126        {"of Mercia", "AFMR", "AFMR"},
1127        {"of Metz", "AFMT", "AFMT"},
1128        {"of Meulan", "AFML", "AFML"},
1129        {"of Nass", "AFNS", "AFNS"},
1130        {"of Normandy", "AFNR", "AFNR"},
1131        {"of Ohningen", "AFNN", "AFNN"},
1132        {"of Orleans", "AFRL", "AFRL"},
1133        {"of Poitou", "AFPT", "AFPT"},
1134        {"of Polotzk", "AFPL", "AFPL"},
1135        {"of Provence", "AFPR", "AFPR"},
1136        {"of Ringelheim", "AFRN", "AFRN"},
1137        {"of Salisbury", "AFSL", "AFSL"},
1138        {"of Saxony", "AFSK", "AFSK"},
1139        {"of Scotland", "AFSK", "AFSK"},
1140        {"of Senlis", "AFSN", "AFSN"},
1141        {"of Stafford", "AFST", "AFST"},
1142        {"of Swabia", "AFSP", "AFSP"},
1143        {"of Tongres", "AFTN", "AFTN"},
1144        {"of the Tributes", "AF0T", "AFTT"},
1145        {"unknown", "ANKN", "ANKN"},
1146        {"van der Gouda", "FNTR", "FNTR"},
1147        {"von Adenbaugh", "FNTN", "FNTN"},
1148        {"ARCHITure", "ARKT", "ARKT"},
1149        {"Arnoff", "ARNF", "ARNF"},
1150        {"Arnow", "ARN", "ARNF"},
1151        {"DANGER", "TNJR", "TNKR"},
1152        {"Jankelowicz", "JNKL", "ANKL"},
1153        {"MANGER", "MNJR", "MNKR"},
1154        {"McClellan", "MKLL", "MKLL"},
1155        {"McHugh", "MK", "MK"},
1156        {"McLaughlin", "MKLF", "MKLF"},
1157        {"ORCHEStra", "ARKS", "ARKS"},
1158        {"ORCHID", "ARKT", "ARKT"},
1159        {"Pierce", "PRS", "PRS"},
1160        {"RANGER", "RNJR", "RNKR"},
1161        {"Schlesinger", "XLSN", "SLSN"},
1162        {"Uomo", "AM", "AM"},
1163        {"Vasserman", "FSRM", "FSRM"},
1164        {"Wasserman", "ASRM", "FSRM"},
1165        {"Womo", "AM", "FM"},
1166        {"Yankelovich", "ANKL", "ANKL"},
1167        {"accede", "AKST", "AKST"},
1168        {"accident", "AKST", "AKST"},
1169        {"adelsheim", "ATLS", "ATLS"},
1170        {"aged", "AJT", "AKT"},
1171        {"ageless", "AJLS", "AKLS"},
1172        {"agency", "AJNS", "AKNS"},
1173        {"aghast", "AKST", "AKST"},
1174        {"agio", "AJ", "AK"},
1175        {"agrimony", "AKRM", "AKRM"},
1176        {"album", "ALPM", "ALPM"},
1177        {"alcmene", "ALKM", "ALKM"},
1178        {"alehouse", "ALHS", "ALHS"},
1179        {"antique", "ANTK", "ANTK"},
1180        {"artois", "ART", "ARTS"},
1181        {"automation", "ATMX", "ATMX"},
1182        {"bacchus", "PKS", "PKS"},
1183        {"bacci", "PX", "PX"},
1184        {"bajador", "PJTR", "PHTR"},
1185        {"bellocchio", "PLX", "PLX"},
1186        {"bertucci", "PRTX", "PRTX"},
1187        {"biaggi", "PJ", "PK"},
1188        {"bough", "P", "P"},
1189        {"breaux", "PR", "PR"},
1190        {"broughton", "PRTN", "PRTN"},
1191        {"cabrillo", "KPRL", "KPR"},
1192        {"caesar", "SSR", "SSR"},
1193        {"cagney", "KKN", "KKN"},
1194        {"campbell", "KMPL", "KMPL"},
1195        {"carlisle", "KRLL", "KRLL"},
1196        {"carlysle", "KRLL", "KRLL"},
1197        {"chemistry", "KMST", "KMST"},
1198        {"chianti", "KNT", "KNT"},
1199        {"chorus", "KRS", "KRS"},
1200        {"cough", "KF", "KF"},
1201        {"czerny", "SRN", "XRN"},
1202        {"deffenbacher", "TFNP", "TFNP"},
1203        {"dumb", "TM", "TM"},
1204        {"edgar", "ATKR", "ATKR"},
1205        {"edge", "AJ", "AJ"},
1206        {"filipowicz", "FLPT", "FLPF"},
1207        {"focaccia", "FKX", "FKX"},
1208        {"gallegos", "KLKS", "KKS"},
1209        {"gambrelli", "KMPR", "KMPR"},
1210        {"geithain", "K0N", "JTN"},
1211        {"ghiradelli", "JRTL", "JRTL"},
1212        {"ghislane", "JLN", "JLN"},
1213        {"gough", "KF", "KF"},
1214        {"hartheim", "HR0M", "HRTM"},
1215        {"heimsheim", "HMSM", "HMSM"},
1216        {"hochmeier", "HKMR", "HKMR"},
1217        {"hugh", "H", "H"},
1218        {"hunger", "HNKR", "HNJR"},
1219        {"hungry", "HNKR", "HNKR"},
1220        {"island", "ALNT", "ALNT"},
1221        {"isle", "AL", "AL"},
1222        {"jose", "HS", "HS"},
1223        {"laugh", "LF", "LF"},
1224        {"mac caffrey", "MKFR", "MKFR"},
1225        {"mac gregor", "MKRK", "MKRK"},
1226        {"pegnitz", "PNTS", "PKNT"},
1227        {"piskowitz", "PSKT", "PSKF"},
1228        {"queen", "KN", "KN"},
1229        {"raspberry", "RSPR", "RSPR"},
1230        {"resnais", "RSN", "RSNS"},
1231        {"rogier", "RJ", "RJR"},
1232        {"rough", "RF", "RF"},
1233        {"san jacinto", "SNHS", "SNHS"},
1234        {"schenker", "XNKR", "SKNK"},
1235        {"schermerhorn", "XRMR", "SKRM"},
1236        {"schmidt", "XMT", "SMT"},
1237        {"schneider", "XNTR", "SNTR"},
1238        {"school", "SKL", "SKL"},
1239        {"schooner", "SKNR", "SKNR"},
1240        {"schrozberg", "XRSP", "SRSP"},
1241        {"schulman", "XLMN", "XLMN"},
1242        {"schwabach", "XPK", "XFPK"},
1243        {"schwarzach", "XRSK", "XFRT"},
1244        {"smith", "SM0", "XMT"},
1245        {"snider", "SNTR", "XNTR"},
1246        {"succeed", "SKST", "SKST"},
1247        {"sugarcane", "XKRK", "SKRK"},
1248        {"svobodka", "SFPT", "SFPT"},
1249        {"tagliaro", "TKLR", "TLR"},
1250        {"thames", "TMS", "TMS"},
1251        {"theilheim", "0LM", "TLM"},
1252        {"thomas", "TMS", "TMS"},
1253        {"thumb", "0M", "TM"},
1254        {"tichner", "TXNR", "TKNR"},
1255        {"tough", "TF", "TF"},
1256        {"umbrella", "AMPR", "AMPR"},
1257        {"vilshofen", "FLXF", "FLXF"},
1258        {"von schuller", "FNXL", "FNXL"},
1259        {"wachtler", "AKTL", "FKTL"},
1260        {"wechsler", "AKSL", "FKSL"},
1261        {"weikersheim", "AKRS", "FKRS"},
1262        {"zhao", "J", "J"}};
1263
1264    private void checkDoubleMetaphone(final int typeIndex, final boolean alternate) {
1265        for (int i = 0; i < TEST_DATA.length; i++) {
1266            final String value = TEST_DATA[i][0];
1267            assertEquals("Test [" + i + "]=" + value, TEST_DATA[i][typeIndex], this.getStringEncoder().doubleMetaphone(value, alternate));
1268        }
1269    }
1270
1271    @Override
1272    protected DoubleMetaphone createStringEncoder() {
1273        return new DoubleMetaphone();
1274    }
1275
1276    /**
1277     * Test alternative encoding.
1278     */
1279    @Test
1280    public void testDoubleMetaphoneAlternate() {
1281        this.checkDoubleMetaphone(ALTERNATE_INDEX, true);
1282    }
1283
1284    /**
1285     * Test primary encoding.
1286     */
1287    @Test
1288    public void testDoubleMetaphonePrimary() {
1289        this.checkDoubleMetaphone(PRIMARY_INDEX, false);
1290    }
1291}