Grammalecte  Hex Artifact Content

Artifact 56bb99858888db2905e4b7bfb7864dc0f8c293ae90e5c1637a23fc18c566b1ea:


0000: 2f 2f 20 6c 69 73 74 20 6f 66 20 73 69 6d 69 6c  // list of simil
0010: 61 72 20 63 68 61 72 73 0a 2f 2f 20 75 73 65 66  ar chars.// usef
0020: 75 6c 20 66 6f 72 20 73 75 67 67 65 73 74 69 6f  ul for suggestio
0030: 6e 20 6d 65 63 68 61 6e 69 73 6d 0a 0a 24 7b 6d  n mechanism..${m
0040: 61 70 7d 0a 0a 0a 76 61 72 20 63 68 61 72 5f 70  ap}...var char_p
0050: 6c 61 79 65 72 20 3d 20 7b 0a 0a 20 20 20 20 64  layer = {..    d
0060: 69 73 74 61 6e 63 65 44 61 6d 65 72 61 75 4c 65  istanceDamerauLe
0070: 76 65 6e 73 68 74 65 69 6e 3a 20 66 75 6e 63 74  venshtein: funct
0080: 69 6f 6e 20 28 73 31 2c 20 73 32 29 20 7b 0a 20  ion (s1, s2) {. 
0090: 20 20 20 20 20 20 20 2f 2f 20 64 69 73 74 61 6e         // distan
00a0: 63 65 20 6f 66 20 44 61 6d 65 72 61 75 2d 4c 65  ce of Damerau-Le
00b0: 76 65 6e 73 68 74 65 69 6e 20 62 65 74 77 65 65  venshtein betwee
00c0: 6e 20 3c 73 31 3e 20 61 6e 64 20 3c 73 32 3e 0a  n <s1> and <s2>.
00d0: 20 20 20 20 20 20 20 20 2f 2f 20 68 74 74 70 73          // https
00e0: 3a 2f 2f 66 72 2e 77 69 6b 69 70 65 64 69 61 2e  ://fr.wikipedia.
00f0: 6f 72 67 2f 77 69 6b 69 2f 44 69 73 74 61 6e 63  org/wiki/Distanc
0100: 65 5f 64 65 5f 44 61 6d 65 72 61 75 2d 4c 65 76  e_de_Damerau-Lev
0110: 65 6e 73 68 74 65 69 6e 0a 20 20 20 20 20 20 20  enshtein.       
0120: 20 74 72 79 20 7b 0a 20 20 20 20 20 20 20 20 20   try {.         
0130: 20 20 20 6c 65 74 20 6e 4c 65 6e 31 20 3d 20 73     let nLen1 = s
0140: 31 2e 6c 65 6e 67 74 68 3b 0a 20 20 20 20 20 20  1.length;.      
0150: 20 20 20 20 20 20 6c 65 74 20 6e 4c 65 6e 32 20        let nLen2 
0160: 3d 20 73 32 2e 6c 65 6e 67 74 68 3b 0a 20 20 20  = s2.length;.   
0170: 20 20 20 20 20 20 20 20 20 6c 65 74 20 6d 61 74           let mat
0180: 72 69 78 20 3d 20 5b 5d 3b 0a 20 20 20 20 20 20  rix = [];.      
0190: 20 20 20 20 20 20 66 6f 72 20 28 6c 65 74 20 69        for (let i
01a0: 20 3d 20 30 3b 20 20 69 20 3c 3d 20 6e 4c 65 6e   = 0;  i <= nLen
01b0: 31 3b 20 20 69 2b 2b 29 20 7b 0a 20 20 20 20 20  1;  i++) {.     
01c0: 20 20 20 20 20 20 20 20 20 20 20 6d 61 74 72 69             matri
01d0: 78 5b 69 5d 20 3d 20 6e 65 77 20 41 72 72 61 79  x[i] = new Array
01e0: 28 6e 4c 65 6e 32 20 2b 20 31 29 3b 0a 20 20 20  (nLen2 + 1);.   
01f0: 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20           }.     
0200: 20 20 20 20 20 20 20 66 6f 72 20 28 6c 65 74 20         for (let 
0210: 69 20 3d 20 30 3b 20 20 69 20 3c 3d 20 6e 4c 65  i = 0;  i <= nLe
0220: 6e 31 3b 20 20 69 2b 2b 29 20 7b 0a 20 20 20 20  n1;  i++) {.    
0230: 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 74 72              matr
0240: 69 78 5b 69 5d 5b 30 5d 20 3d 20 69 3b 0a 20 20  ix[i][0] = i;.  
0250: 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20            }.    
0260: 20 20 20 20 20 20 20 20 66 6f 72 20 28 6c 65 74          for (let
0270: 20 6a 20 3d 20 30 3b 20 20 6a 20 3c 3d 20 6e 4c   j = 0;  j <= nL
0280: 65 6e 32 3b 20 20 6a 2b 2b 29 20 7b 0a 20 20 20  en2;  j++) {.   
0290: 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 74               mat
02a0: 72 69 78 5b 30 5d 5b 6a 5d 20 3d 20 6a 3b 0a 20  rix[0][j] = j;. 
02b0: 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20             }.   
02c0: 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 6c 65           for (le
02d0: 74 20 69 20 3d 20 31 3b 20 20 69 20 3c 3d 20 6e  t i = 1;  i <= n
02e0: 4c 65 6e 31 3b 20 20 69 2b 2b 29 20 7b 0a 20 20  Len1;  i++) {.  
02f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f                fo
0300: 72 20 28 6c 65 74 20 6a 20 3d 20 31 3b 20 20 6a  r (let j = 1;  j
0310: 20 3c 3d 20 6e 4c 65 6e 32 3b 20 20 6a 2b 2b 29   <= nLen2;  j++)
0320: 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20   {.             
0330: 20 20 20 20 20 20 20 6c 65 74 20 6e 43 6f 73 74         let nCost
0340: 20 3d 20 28 73 31 5b 69 5d 20 3d 3d 3d 20 73 32   = (s1[i] === s2
0350: 5b 6a 5d 29 20 3f 20 30 20 3a 20 31 3b 0a 20 20  [j]) ? 0 : 1;.  
0360: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0370: 20 20 6d 61 74 72 69 78 5b 69 5d 5b 6a 5d 20 3d    matrix[i][j] =
0380: 20 4d 61 74 68 2e 6d 69 6e 28 0a 20 20 20 20 20   Math.min(.     
0390: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
03a0: 20 20 20 6d 61 74 72 69 78 5b 69 2d 31 5d 5b 6a     matrix[i-1][j
03b0: 5d 20 2b 20 31 2c 20 20 20 20 20 20 20 20 20 2f  ] + 1,         /
03c0: 2f 20 44 65 6c 65 74 69 6f 6e 0a 20 20 20 20 20  / Deletion.     
03d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
03e0: 20 20 20 6d 61 74 72 69 78 5b 69 5d 5b 6a 2d 31     matrix[i][j-1
03f0: 5d 20 2b 20 31 2c 20 20 20 20 20 20 20 20 20 2f  ] + 1,         /
0400: 2f 20 49 6e 73 65 72 74 69 6f 6e 0a 20 20 20 20  / Insertion.    
0410: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0420: 20 20 20 20 6d 61 74 72 69 78 5b 69 2d 31 5d 5b      matrix[i-1][
0430: 6a 2d 31 5d 20 2b 20 6e 43 6f 73 74 20 20 20 20  j-1] + nCost    
0440: 2f 2f 20 53 75 62 73 74 69 74 75 74 69 6f 6e 0a  // Substitution.
0450: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0460: 20 20 20 20 29 3b 0a 20 20 20 20 20 20 20 20 20      );.         
0470: 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 69             if (i
0480: 20 3e 20 31 20 26 26 20 6a 20 3e 20 31 20 26 26   > 1 && j > 1 &&
0490: 20 73 31 5b 69 5d 20 3d 3d 20 73 32 5b 6a 2d 31   s1[i] == s2[j-1
04a0: 5d 20 26 26 20 73 31 5b 69 2d 31 5d 20 3d 3d 20  ] && s1[i-1] == 
04b0: 73 32 5b 6a 5d 29 20 7b 0a 20 20 20 20 20 20 20  s2[j]) {.       
04c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
04d0: 20 6d 61 74 72 69 78 5b 69 5d 5b 6a 5d 20 3d 20   matrix[i][j] = 
04e0: 4d 61 74 68 2e 6d 69 6e 28 6d 61 74 72 69 78 5b  Math.min(matrix[
04f0: 69 5d 5b 6a 5d 2c 20 6d 61 74 72 69 78 5b 69 2d  i][j], matrix[i-
0500: 32 5d 5b 6a 2d 32 5d 20 2b 20 6e 43 6f 73 74 29  2][j-2] + nCost)
0510: 3b 20 20 2f 2f 20 54 72 61 6e 73 70 6f 73 69 74  ;  // Transposit
0520: 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20  ion.            
0530: 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20          }.      
0540: 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20            }.    
0550: 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20          }.      
0560: 20 20 20 20 20 20 2f 2f 63 6f 6e 73 6f 6c 65 2e        //console.
0570: 6c 6f 67 28 73 32 20 2b 20 22 3a 20 22 20 2b 20  log(s2 + ": " + 
0580: 6d 61 74 72 69 78 5b 6e 4c 65 6e 31 5d 5b 6e 4c  matrix[nLen1][nL
0590: 65 6e 32 5d 29 3b 0a 20 20 20 20 20 20 20 20 20  en2]);.         
05a0: 20 20 20 72 65 74 75 72 6e 20 6d 61 74 72 69 78     return matrix
05b0: 5b 6e 4c 65 6e 31 5d 5b 6e 4c 65 6e 32 5d 3b 0a  [nLen1][nLen2];.
05c0: 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20          }.      
05d0: 20 20 63 61 74 63 68 20 28 65 29 20 7b 0a 20 20    catch (e) {.  
05e0: 20 20 20 20 20 20 20 20 20 20 68 65 6c 70 65 72            helper
05f0: 73 2e 6c 6f 67 65 72 72 6f 72 28 65 29 3b 0a 20  s.logerror(e);. 
0600: 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 2c 0a         }.    },.
0610: 0a 0a 20 20 20 20 2f 2f 20 4d 65 74 68 6f 64 3a  ..    // Method:
0620: 20 52 65 6d 6f 76 65 20 55 73 65 6c 65 73 73 20   Remove Useless 
0630: 43 68 61 72 73 0a 0a 20 20 20 20 61 56 6f 76 65  Chars..    aVove
0640: 6c 73 3a 20 6e 65 77 20 53 65 74 28 5b 0a 20 20  ls: new Set([.  
0650: 20 20 20 20 20 20 27 61 27 2c 20 27 65 27 2c 20        'a', 'e', 
0660: 27 69 27 2c 20 27 6f 27 2c 20 27 75 27 2c 20 27  'i', 'o', 'u', '
0670: 79 27 2c 0a 20 20 20 20 20 20 20 20 27 c3 a0 27  y',.        '..'
0680: 2c 20 27 c3 a9 27 2c 20 27 c3 ae 27 2c 20 27 c3  , '..', '..', '.
0690: b4 27 2c 20 27 c3 bb 27 2c 20 27 c3 bf 27 2c 0a  .', '..', '..',.
06a0: 20 20 20 20 20 20 20 20 27 c3 a2 27 2c 20 27 c3          '..', '.
06b0: a8 27 2c 20 27 c3 af 27 2c 20 27 c3 b6 27 2c 20  .', '..', '..', 
06c0: 27 c3 b9 27 2c 20 27 c5 b7 27 2c 0a 20 20 20 20  '..', '..',.    
06d0: 20 20 20 20 27 c3 a4 27 2c 20 27 c3 aa 27 2c 20      '..', '..', 
06e0: 27 c3 ad 27 2c 20 27 c3 b3 27 2c 20 27 c3 bc 27  '..', '..', '..'
06f0: 2c 20 27 c3 bd 27 2c 0a 20 20 20 20 20 20 20 20  , '..',.        
0700: 27 c3 a1 27 2c 20 27 c3 ab 27 2c 20 27 c3 ac 27  '..', '..', '..'
0710: 2c 20 27 c3 b2 27 2c 20 27 c3 ba 27 2c 20 27 e1  , '..', '..', '.
0720: bb b3 27 2c 0a 20 20 20 20 20 20 20 20 27 c4 81  ..',.        '..
0730: 27 2c 20 27 c4 93 27 2c 20 27 c4 ab 27 2c 20 27  ', '..', '..', '
0740: c5 8d 27 2c 20 27 c5 ab 27 2c 20 27 c8 b3 27 2c  ..', '..', '..',
0750: 0a 20 20 20 20 20 20 20 20 27 68 27 2c 20 27 c5  .        'h', '.
0760: 93 27 2c 20 27 c3 a6 27 0a 20 20 20 20 5d 29 2c  .', '..'.    ]),
0770: 0a 0a 20 20 20 20 63 6c 65 61 72 57 6f 72 64 3a  ..    clearWord:
0780: 20 66 75 6e 63 74 69 6f 6e 20 28 73 57 6f 72 64   function (sWord
0790: 29 20 7b 0a 20 20 20 20 20 20 20 20 2f 2f 20 72  ) {.        // r
07a0: 65 6d 6f 76 65 20 76 6f 76 65 6c 73 20 61 6e 64  emove vovels and
07b0: 20 68 0a 20 20 20 20 20 20 20 20 6c 65 74 20 73   h.        let s
07c0: 52 65 73 20 3d 20 22 22 3b 0a 20 20 20 20 20 20  Res = "";.      
07d0: 20 20 66 6f 72 20 28 6c 65 74 20 63 43 68 61 72    for (let cChar
07e0: 20 6f 66 20 73 57 6f 72 64 2e 73 6c 69 63 65 28   of sWord.slice(
07f0: 31 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20  1)) {.          
0800: 20 20 69 66 20 28 21 74 68 69 73 2e 61 56 6f 76    if (!this.aVov
0810: 65 6c 73 2e 68 61 73 28 63 43 68 61 72 29 29 20  els.has(cChar)) 
0820: 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  {.              
0830: 20 20 73 52 65 73 20 2b 3d 20 63 43 68 61 72 3b    sRes += cChar;
0840: 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20  .            }. 
0850: 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20         }.       
0860: 20 72 65 74 75 72 6e 20 73 57 6f 72 64 2e 73 6c   return sWord.sl
0870: 69 63 65 28 30 2c 20 31 29 2e 72 65 70 6c 61 63  ice(0, 1).replac
0880: 65 28 22 68 22 2c 20 22 22 29 20 2b 20 73 52 65  e("h", "") + sRe
0890: 73 3b 0a 20 20 20 20 7d 2c 0a 0a 0a 20 20 20 20  s;.    },...    
08a0: 2f 2f 20 53 69 6d 69 6c 61 72 20 63 68 61 72 73  // Similar chars
08b0: 0a 0a 20 20 20 20 64 31 74 6f 31 3a 20 6e 65 77  ..    d1to1: new
08c0: 20 4d 61 70 28 5b 0a 20 20 20 20 20 20 20 20 5b   Map([.        [
08d0: 22 31 22 2c 20 22 6c 69 c3 ae 4c 49 c3 8e 22 5d  "1", "li..LI.."]
08e0: 2c 0a 20 20 20 20 20 20 20 20 5b 22 32 22 2c 20  ,.        ["2", 
08f0: 22 7a 5a 22 5d 2c 0a 20 20 20 20 20 20 20 20 5b  "zZ"],.        [
0900: 22 33 22 2c 20 22 65 c3 a9 c3 a8 c3 aa 45 c3 89  "3", "e......E..
0910: c3 88 c3 8a 22 5d 2c 0a 20 20 20 20 20 20 20 20  ...."],.        
0920: 5b 22 34 22 2c 20 22 61 c3 a0 c3 a2 41 c3 80 c3  ["4", "a....A...
0930: 82 22 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 35  ."],.        ["5
0940: 22 2c 20 22 73 67 53 47 22 5d 2c 0a 20 20 20 20  ", "sgSG"],.    
0950: 20 20 20 20 5b 22 36 22 2c 20 22 62 64 67 42 44      ["6", "bdgBD
0960: 47 22 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 37  G"],.        ["7
0970: 22 2c 20 22 6c 74 4c 54 22 5d 2c 0a 20 20 20 20  ", "ltLT"],.    
0980: 20 20 20 20 5b 22 38 22 2c 20 22 62 42 22 5d 2c      ["8", "bB"],
0990: 0a 20 20 20 20 20 20 20 20 5b 22 39 22 2c 20 22  .        ["9", "
09a0: 67 62 64 47 42 44 22 5d 2c 0a 20 20 20 20 20 20  gbdGBD"],.      
09b0: 20 20 5b 22 30 22 2c 20 22 6f c3 b4 4f c3 94 22    ["0", "o..O.."
09c0: 5d 2c 0a 0a 20 20 20 20 20 20 20 20 5b 22 61 22  ],..        ["a"
09d0: 2c 20 22 61 c3 a0 c3 a2 c3 a1 c3 a4 c3 a6 22 5d  , "a.........."]
09e0: 2c 0a 20 20 20 20 20 20 20 20 5b 22 41 22 2c 20  ,.        ["A", 
09f0: 22 41 c3 80 c3 82 c3 81 c3 84 c3 86 22 5d 2c 0a  "A.........."],.
0a00: 20 20 20 20 20 20 20 20 5b 22 c3 a0 22 2c 20 22          ["..", "
0a10: 61 c3 a0 c3 a2 c3 a1 c3 a4 c3 a6 22 5d 2c 0a 20  a.........."],. 
0a20: 20 20 20 20 20 20 20 5b 22 c3 80 22 2c 20 22 41         ["..", "A
0a30: c3 80 c3 82 c3 81 c3 84 c3 86 22 5d 2c 0a 20 20  .........."],.  
0a40: 20 20 20 20 20 20 5b 22 c3 a2 22 2c 20 22 61 c3        ["..", "a.
0a50: a0 c3 a2 c3 a1 c3 a4 c3 a6 22 5d 2c 0a 20 20 20  ........."],.   
0a60: 20 20 20 20 20 5b 22 c3 82 22 2c 20 22 41 c3 80       ["..", "A..
0a70: c3 82 c3 81 c3 84 c3 86 22 5d 2c 0a 20 20 20 20  ........"],.    
0a80: 20 20 20 20 5b 22 c3 a1 22 2c 20 22 61 c3 a0 c3      ["..", "a...
0a90: a2 c3 a1 c3 a4 c3 a6 22 5d 2c 0a 20 20 20 20 20  ......."],.     
0aa0: 20 20 20 5b 22 c3 81 22 2c 20 22 41 c3 80 c3 82     ["..", "A....
0ab0: c3 81 c3 84 c3 86 22 5d 2c 0a 20 20 20 20 20 20  ......"],.      
0ac0: 20 20 5b 22 c3 a4 22 2c 20 22 61 c3 a0 c3 a2 c3    ["..", "a.....
0ad0: a1 c3 a4 c3 a6 22 5d 2c 0a 20 20 20 20 20 20 20  ....."],.       
0ae0: 20 5b 22 c3 84 22 2c 20 22 41 c3 80 c3 82 c3 81   ["..", "A......
0af0: c3 84 c3 86 22 5d 2c 0a 0a 20 20 20 20 20 20 20  ...."],..       
0b00: 20 5b 22 c3 a6 22 2c 20 22 c3 a6 c3 a9 61 22 5d   ["..", "....a"]
0b10: 2c 0a 20 20 20 20 20 20 20 20 5b 22 c3 86 22 2c  ,.        ["..",
0b20: 20 22 c3 86 c3 89 41 22 5d 2c 0a 0a 20 20 20 20   "....A"],..    
0b30: 20 20 20 20 5b 22 63 22 2c 20 22 63 c3 a7 73 6b      ["c", "c..sk
0b40: 71 c5 9b c5 9d 22 5d 2c 0a 20 20 20 20 20 20 20  q...."],.       
0b50: 20 5b 22 43 22 2c 20 22 43 c3 87 53 4b 51 c5 9a   ["C", "C..SKQ..
0b60: c5 9c 22 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22  .."],.        ["
0b70: c3 a7 22 2c 20 22 63 c3 a7 73 6b 71 c5 9b c5 9d  ..", "c..skq....
0b80: 22 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 c3 87  "],.        ["..
0b90: 22 2c 20 22 43 c3 87 53 4b 51 c5 9a c5 9c 22 5d  ", "C..SKQ...."]
0ba0: 2c 0a 0a 20 20 20 20 20 20 20 20 5b 22 65 22 2c  ,..        ["e",
0bb0: 20 22 65 c3 a9 c3 a8 c3 aa c3 ab c5 93 22 5d 2c   "e.........."],
0bc0: 0a 20 20 20 20 20 20 20 20 5b 22 45 22 2c 20 22  .        ["E", "
0bd0: 45 c3 89 c3 88 c3 8a c3 8b c5 92 22 5d 2c 0a 20  E.........."],. 
0be0: 20 20 20 20 20 20 20 5b 22 c3 a9 22 2c 20 22 65         ["..", "e
0bf0: c3 a9 c3 a8 c3 aa c3 ab c5 93 22 5d 2c 0a 20 20  .........."],.  
0c00: 20 20 20 20 20 20 5b 22 c3 89 22 2c 20 22 45 c3        ["..", "E.
0c10: 89 c3 88 c3 8a c3 8b c5 92 22 5d 2c 0a 20 20 20  ........."],.   
0c20: 20 20 20 20 20 5b 22 c3 aa 22 2c 20 22 65 c3 a9       ["..", "e..
0c30: c3 a8 c3 aa c3 ab c5 93 22 5d 2c 0a 20 20 20 20  ........"],.    
0c40: 20 20 20 20 5b 22 c3 8a 22 2c 20 22 45 c3 89 c3      ["..", "E...
0c50: 88 c3 8a c3 8b c5 92 22 5d 2c 0a 20 20 20 20 20  ......."],.     
0c60: 20 20 20 5b 22 c3 a8 22 2c 20 22 65 c3 a9 c3 a8     ["..", "e....
0c70: c3 aa c3 ab c5 93 22 5d 2c 0a 20 20 20 20 20 20  ......"],.      
0c80: 20 20 5b 22 c3 88 22 2c 20 22 45 c3 89 c3 88 c3    ["..", "E.....
0c90: 8a c3 8b c5 92 22 5d 2c 0a 20 20 20 20 20 20 20  ....."],.       
0ca0: 20 5b 22 c3 ab 22 2c 20 22 65 c3 a9 c3 a8 c3 aa   ["..", "e......
0cb0: c3 ab c5 93 22 5d 2c 0a 20 20 20 20 20 20 20 20  ...."],.        
0cc0: 5b 22 c3 8b 22 2c 20 22 45 c3 89 c3 88 c3 8a c3  ["..", "E.......
0cd0: 8b c5 92 22 5d 2c 0a 0a 20 20 20 20 20 20 20 20  ..."],..        
0ce0: 5b 22 67 22 2c 20 22 67 6a 22 5d 2c 0a 20 20 20  ["g", "gj"],.   
0cf0: 20 20 20 20 20 5b 22 47 22 2c 20 22 47 4a 22 5d       ["G", "GJ"]
0d00: 2c 0a 20 20 20 20 20 20 20 20 0a 20 20 20 20 20  ,.        .     
0d10: 20 20 20 5b 22 69 22 2c 20 22 69 c3 ae c3 af 79     ["i", "i....y
0d20: c3 ad c3 ac c3 bf 22 5d 2c 0a 20 20 20 20 20 20  ......"],.      
0d30: 20 20 5b 22 49 22 2c 20 22 49 c3 8e c3 8f 59 c3    ["I", "I....Y.
0d40: 8d c3 8c c5 b8 22 5d 2c 0a 20 20 20 20 20 20 20  ....."],.       
0d50: 20 5b 22 c3 ae 22 2c 20 22 69 c3 ae c3 af 79 c3   ["..", "i....y.
0d60: ad c3 ac c3 bf 22 5d 2c 0a 20 20 20 20 20 20 20  ....."],.       
0d70: 20 5b 22 c3 8e 22 2c 20 22 49 c3 8e c3 8f 59 c3   ["..", "I....Y.
0d80: 8d c3 8c c5 b8 22 5d 2c 0a 20 20 20 20 20 20 20  ....."],.       
0d90: 20 5b 22 c3 af 22 2c 20 22 69 c3 ae c3 af 79 c3   ["..", "i....y.
0da0: ad c3 ac c3 bf 22 5d 2c 0a 20 20 20 20 20 20 20  ....."],.       
0db0: 20 5b 22 c3 8f 22 2c 20 22 49 c3 8e c3 8f 59 c3   ["..", "I....Y.
0dc0: 8d c3 8c c5 b8 22 5d 2c 0a 20 20 20 20 20 20 20  ....."],.       
0dd0: 20 5b 22 c3 ad 22 2c 20 22 69 c3 ae c3 af 79 c3   ["..", "i....y.
0de0: ad c3 ac c3 bf 22 5d 2c 0a 20 20 20 20 20 20 20  ....."],.       
0df0: 20 5b 22 c3 8d 22 2c 20 22 49 c3 8e c3 8f 59 c3   ["..", "I....Y.
0e00: 8d c3 8c c5 b8 22 5d 2c 0a 20 20 20 20 20 20 20  ....."],.       
0e10: 20 5b 22 c3 ac 22 2c 20 22 69 c3 ae c3 af 79 c3   ["..", "i....y.
0e20: ad c3 ac c3 bf 22 5d 2c 0a 20 20 20 20 20 20 20  ....."],.       
0e30: 20 5b 22 c3 8c 22 2c 20 22 49 c3 8e c3 8f 59 c3   ["..", "I....Y.
0e40: 8d c3 8c c5 b8 22 5d 2c 0a 0a 20 20 20 20 20 20  ....."],..      
0e50: 20 20 5b 22 6a 22 2c 20 22 6a 67 22 5d 2c 0a 20    ["j", "jg"],. 
0e60: 20 20 20 20 20 20 20 5b 22 4a 22 2c 20 22 4a 47         ["J", "JG
0e70: 22 5d 2c 0a 0a 20 20 20 20 20 20 20 20 5b 22 6b  "],..        ["k
0e80: 22 2c 20 22 6b 63 71 22 5d 2c 0a 20 20 20 20 20  ", "kcq"],.     
0e90: 20 20 20 5b 22 4b 22 2c 20 22 4b 43 51 22 5d 2c     ["K", "KCQ"],
0ea0: 0a 0a 20 20 20 20 20 20 20 20 5b 22 6e 22 2c 20  ..        ["n", 
0eb0: 22 6e c3 b1 22 5d 2c 0a 20 20 20 20 20 20 20 20  "n.."],.        
0ec0: 5b 22 4e 22 2c 20 22 4e c3 91 22 5d 2c 0a 0a 20  ["N", "N.."],.. 
0ed0: 20 20 20 20 20 20 20 5b 22 6f 22 2c 20 22 6f c3         ["o", "o.
0ee0: b4 c3 b3 c3 b2 c3 b6 c5 93 22 5d 2c 0a 20 20 20  ........."],.   
0ef0: 20 20 20 20 20 5b 22 4f 22 2c 20 22 4f c3 94 c3       ["O", "O...
0f00: 93 c3 92 c3 96 c5 92 22 5d 2c 0a 20 20 20 20 20  ......."],.     
0f10: 20 20 20 5b 22 c3 b4 22 2c 20 22 6f c3 b4 c3 b3     ["..", "o....
0f20: c3 b2 c3 b6 c5 93 22 5d 2c 0a 20 20 20 20 20 20  ......"],.      
0f30: 20 20 5b 22 c3 94 22 2c 20 22 4f c3 94 c3 93 c3    ["..", "O.....
0f40: 92 c3 96 c5 92 22 5d 2c 0a 20 20 20 20 20 20 20  ....."],.       
0f50: 20 5b 22 c3 b3 22 2c 20 22 6f c3 b4 c3 b3 c3 b2   ["..", "o......
0f60: c3 b6 c5 93 22 5d 2c 0a 20 20 20 20 20 20 20 20  ...."],.        
0f70: 5b 22 c3 93 22 2c 20 22 4f c3 94 c3 93 c3 92 c3  ["..", "O.......
0f80: 96 c5 92 22 5d 2c 0a 20 20 20 20 20 20 20 20 5b  ..."],.        [
0f90: 22 c3 b2 22 2c 20 22 6f c3 b4 c3 b3 c3 b2 c3 b6  "..", "o........
0fa0: c5 93 22 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22  .."],.        ["
0fb0: c3 92 22 2c 20 22 4f c3 94 c3 93 c3 92 c3 96 c5  ..", "O.........
0fc0: 92 22 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 c3  ."],.        [".
0fd0: b6 22 2c 20 22 6f c3 b4 c3 b3 c3 b2 c3 b6 c5 93  .", "o..........
0fe0: 22 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 c3 96  "],.        ["..
0ff0: 22 2c 20 22 4f c3 94 c3 93 c3 92 c3 96 c5 92 22  ", "O.........."
1000: 5d 2c 0a 0a 20 20 20 20 20 20 20 20 5b 22 c5 93  ],..        ["..
1010: 22 2c 20 22 c5 93 6f c3 b4 65 c3 a9 c3 a8 c3 aa  ", "..o..e......
1020: c3 ab 22 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22  .."],.        ["
1030: c5 92 22 2c 20 22 c5 92 4f c3 94 45 c3 89 c3 88  ..", "..O..E....
1040: c3 8a c3 8b 22 5d 2c 0a 0a 20 20 20 20 20 20 20  ...."],..       
1050: 20 5b 22 71 22 2c 20 22 71 63 6b 22 5d 2c 0a 20   ["q", "qck"],. 
1060: 20 20 20 20 20 20 20 5b 22 51 22 2c 20 22 51 43         ["Q", "QC
1070: 4b 22 5d 2c 0a 0a 20 20 20 20 20 20 20 20 5b 22  K"],..        ["
1080: 73 22 2c 20 22 73 c5 9b c5 9d 63 c3 a7 22 5d 2c  s", "s....c.."],
1090: 0a 20 20 20 20 20 20 20 20 5b 22 53 22 2c 20 22  .        ["S", "
10a0: 53 c5 9a c5 9c 43 c3 87 22 5d 2c 0a 20 20 20 20  S....C.."],.    
10b0: 20 20 20 20 5b 22 c5 9b 22 2c 20 22 73 c5 9b c5      ["..", "s...
10c0: 9d 63 c3 a7 22 5d 2c 0a 20 20 20 20 20 20 20 20  .c.."],.        
10d0: 5b 22 c5 9a 22 2c 20 22 53 c5 9a c5 9c 43 c3 87  ["..", "S....C..
10e0: 22 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 c5 9d  "],.        ["..
10f0: 22 2c 20 22 73 c5 9b c5 9d 63 c3 a7 22 5d 2c 0a  ", "s....c.."],.
1100: 20 20 20 20 20 20 20 20 5b 22 c5 9c 22 2c 20 22          ["..", "
1110: 53 c5 9a c5 9c 43 c3 87 22 5d 2c 0a 0a 20 20 20  S....C.."],..   
1120: 20 20 20 20 20 5b 22 75 22 2c 20 22 75 c3 bb c3       ["u", "u...
1130: b9 c3 bc c3 ba 22 5d 2c 0a 20 20 20 20 20 20 20  ....."],.       
1140: 20 5b 22 55 22 2c 20 22 55 c3 9b c3 99 c3 9c c3   ["U", "U.......
1150: 9a 22 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 c3  ."],.        [".
1160: bb 22 2c 20 22 75 c3 bb c3 b9 c3 bc c3 ba 22 5d  .", "u........"]
1170: 2c 0a 20 20 20 20 20 20 20 20 5b 22 c3 9b 22 2c  ,.        ["..",
1180: 20 22 55 c3 9b c3 99 c3 9c c3 9a 22 5d 2c 0a 20   "U........"],. 
1190: 20 20 20 20 20 20 20 5b 22 c3 b9 22 2c 20 22 75         ["..", "u
11a0: c3 bb c3 b9 c3 bc c3 ba 22 5d 2c 0a 20 20 20 20  ........"],.    
11b0: 20 20 20 20 5b 22 c3 99 22 2c 20 22 55 c3 9b c3      ["..", "U...
11c0: 99 c3 9c c3 9a 22 5d 2c 0a 20 20 20 20 20 20 20  ....."],.       
11d0: 20 5b 22 c3 bc 22 2c 20 22 75 c3 bb c3 b9 c3 bc   ["..", "u......
11e0: c3 ba 22 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22  .."],.        ["
11f0: c3 9c 22 2c 20 22 55 c3 9b c3 99 c3 9c c3 9a 22  ..", "U........"
1200: 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 c3 ba 22  ],.        [".."
1210: 2c 20 22 75 c3 bb c3 b9 c3 bc c3 ba 22 5d 2c 0a  , "u........"],.
1220: 20 20 20 20 20 20 20 20 5b 22 c3 9a 22 2c 20 22          ["..", "
1230: 55 c3 9b c3 99 c3 9c c3 9a 22 5d 2c 0a 0a 20 20  U........"],..  
1240: 20 20 20 20 20 20 5b 22 76 22 2c 20 22 76 77 22        ["v", "vw"
1250: 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 56 22 2c  ],.        ["V",
1260: 20 22 56 57 22 5d 2c 0a 0a 20 20 20 20 20 20 20   "VW"],..       
1270: 20 5b 22 77 22 2c 20 22 77 76 22 5d 2c 0a 20 20   ["w", "wv"],.  
1280: 20 20 20 20 20 20 5b 22 57 22 2c 20 22 57 56 22        ["W", "WV"
1290: 5d 2c 0a 0a 20 20 20 20 20 20 20 20 5b 22 78 22  ],..        ["x"
12a0: 2c 20 22 78 63 6b 22 5d 2c 0a 20 20 20 20 20 20  , "xck"],.      
12b0: 20 20 5b 22 58 22 2c 20 22 58 43 4b 22 5d 2c 0a    ["X", "XCK"],.
12c0: 0a 20 20 20 20 20 20 20 20 5b 22 79 22 2c 20 22  .        ["y", "
12d0: 79 c3 bf 69 c3 ae c5 b7 c3 bd e1 bb b3 22 5d 2c  y..i........."],
12e0: 0a 20 20 20 20 20 20 20 20 5b 22 59 22 2c 20 22  .        ["Y", "
12f0: 59 c5 b8 49 c3 8e c5 b6 c3 9d e1 bb b2 22 5d 2c  Y..I........."],
1300: 0a 20 20 20 20 20 20 20 20 5b 22 c3 bf 22 2c 20  .        ["..", 
1310: 22 79 c3 bf 69 c3 ae c5 b7 c3 bd e1 bb b3 22 5d  "y..i........."]
1320: 2c 0a 20 20 20 20 20 20 20 20 5b 22 c5 b8 22 2c  ,.        ["..",
1330: 20 22 59 c5 b8 49 c3 8e c5 b6 c3 9d e1 bb b2 22   "Y..I........."
1340: 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 c5 b7 22  ],.        [".."
1350: 2c 20 22 79 c3 bf 69 c3 ae c5 b7 c3 bd e1 bb b3  , "y..i.........
1360: 22 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 c5 b6  "],.        ["..
1370: 22 2c 20 22 59 c5 b8 49 c3 8e c5 b6 c3 9d e1 bb  ", "Y..I........
1380: b2 22 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 c3  ."],.        [".
1390: bd 22 2c 20 22 79 c3 bf 69 c3 ae c5 b7 c3 bd e1  .", "y..i.......
13a0: bb b3 22 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22  .."],.        ["
13b0: c3 9d 22 2c 20 22 59 c5 b8 49 c3 8e c5 b6 c3 9d  ..", "Y..I......
13c0: e1 bb b2 22 5d 2c 0a 20 20 20 20 20 20 20 20 5b  ..."],.        [
13d0: 22 e1 bb b3 22 2c 20 22 79 c3 bf 69 c3 ae c5 b7  "...", "y..i....
13e0: c3 bd e1 bb b3 22 5d 2c 0a 20 20 20 20 20 20 20  ....."],.       
13f0: 20 5b 22 e1 bb b2 22 2c 20 22 59 c5 b8 49 c3 8e   ["...", "Y..I..
1400: c5 b6 c3 9d e1 bb b2 22 5d 2c 0a 0a 20 20 20 20  ......."],..    
1410: 20 20 20 20 5b 22 7a 22 2c 20 22 7a 73 22 5d 2c      ["z", "zs"],
1420: 0a 20 20 20 20 20 20 20 20 5b 22 5a 22 2c 20 22  .        ["Z", "
1430: 5a 53 22 5d 2c 0a 20 20 20 20 5d 29 2c 0a 0a 20  ZS"],.    ]),.. 
1440: 20 20 20 64 31 74 6f 58 3a 20 6e 65 77 20 4d 61     d1toX: new Ma
1450: 70 28 5b 0a 20 20 20 20 20 20 20 20 5b 22 c3 a6  p([.        ["..
1460: 22 2c 20 5b 22 61 65 22 2c 5d 5d 2c 0a 20 20 20  ", ["ae",]],.   
1470: 20 20 20 20 20 5b 22 c3 86 22 2c 20 5b 22 41 45       ["..", ["AE
1480: 22 2c 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22  ",]],.        ["
1490: 62 22 2c 20 5b 22 62 62 22 2c 5d 5d 2c 0a 20 20  b", ["bb",]],.  
14a0: 20 20 20 20 20 20 5b 22 42 22 2c 20 5b 22 42 42        ["B", ["BB
14b0: 22 2c 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22  ",]],.        ["
14c0: 63 22 2c 20 5b 22 63 63 22 2c 20 22 73 73 22 2c  c", ["cc", "ss",
14d0: 20 22 71 75 22 2c 20 22 63 68 22 5d 5d 2c 0a 20   "qu", "ch"]],. 
14e0: 20 20 20 20 20 20 20 5b 22 43 22 2c 20 5b 22 43         ["C", ["C
14f0: 43 22 2c 20 22 53 53 22 2c 20 22 51 55 22 2c 20  C", "SS", "QU", 
1500: 22 43 48 22 5d 5d 2c 0a 20 20 20 20 20 20 20 20  "CH"]],.        
1510: 5b 22 c3 a7 22 2c 20 5b 22 73 73 22 2c 20 22 63  ["..", ["ss", "c
1520: 63 22 2c 20 22 71 68 22 2c 20 22 63 68 22 5d 5d  c", "qh", "ch"]]
1530: 2c 0a 20 20 20 20 20 20 20 20 5b 22 c3 87 22 2c  ,.        ["..",
1540: 20 5b 22 53 53 22 2c 20 22 43 43 22 2c 20 22 51   ["SS", "CC", "Q
1550: 48 22 2c 20 22 43 48 22 5d 5d 2c 0a 20 20 20 20  H", "CH"]],.    
1560: 20 20 20 20 5b 22 64 22 2c 20 5b 22 64 64 22 2c      ["d", ["dd",
1570: 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 44 22  ]],.        ["D"
1580: 2c 20 5b 22 44 44 22 2c 5d 5d 2c 0a 20 20 20 20  , ["DD",]],.    
1590: 20 20 20 20 5b 22 66 22 2c 20 5b 22 66 66 22 2c      ["f", ["ff",
15a0: 20 22 70 68 22 5d 5d 2c 0a 20 20 20 20 20 20 20   "ph"]],.       
15b0: 20 5b 22 46 22 2c 20 5b 22 46 46 22 2c 20 22 50   ["F", ["FF", "P
15c0: 48 22 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22  H"]],.        ["
15d0: 67 22 2c 20 5b 22 67 75 22 2c 20 22 67 65 22 2c  g", ["gu", "ge",
15e0: 20 22 67 67 22 2c 20 22 67 68 22 5d 5d 2c 0a 20   "gg", "gh"]],. 
15f0: 20 20 20 20 20 20 20 5b 22 47 22 2c 20 5b 22 47         ["G", ["G
1600: 55 22 2c 20 22 47 45 22 2c 20 22 47 47 22 2c 20  U", "GE", "GG", 
1610: 22 47 48 22 5d 5d 2c 0a 20 20 20 20 20 20 20 20  "GH"]],.        
1620: 5b 22 69 22 2c 20 5b 22 69 69 22 2c 5d 5d 2c 0a  ["i", ["ii",]],.
1630: 20 20 20 20 20 20 20 20 5b 22 49 22 2c 20 5b 22          ["I", ["
1640: 49 49 22 2c 5d 5d 2c 0a 20 20 20 20 20 20 20 20  II",]],.        
1650: 5b 22 6a 22 2c 20 5b 22 6a 6a 22 2c 20 22 64 6a  ["j", ["jj", "dj
1660: 22 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 4a  "]],.        ["J
1670: 22 2c 20 5b 22 4a 4a 22 2c 20 22 44 4a 22 5d 5d  ", ["JJ", "DJ"]]
1680: 2c 0a 20 20 20 20 20 20 20 20 5b 22 6b 22 2c 20  ,.        ["k", 
1690: 5b 22 71 75 22 2c 20 22 63 6b 22 2c 20 22 63 68  ["qu", "ck", "ch
16a0: 22 2c 20 22 63 75 22 2c 20 22 6b 6b 22 2c 20 22  ", "cu", "kk", "
16b0: 6b 68 22 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b  kh"]],.        [
16c0: 22 4b 22 2c 20 5b 22 51 55 22 2c 20 22 43 4b 22  "K", ["QU", "CK"
16d0: 2c 20 22 43 48 22 2c 20 22 43 55 22 2c 20 22 4b  , "CH", "CU", "K
16e0: 4b 22 2c 20 22 4b 48 22 5d 5d 2c 0a 20 20 20 20  K", "KH"]],.    
16f0: 20 20 20 20 5b 22 6c 22 2c 20 5b 22 6c 6c 22 2c      ["l", ["ll",
1700: 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 4c 22  ]],.        ["L"
1710: 2c 20 5b 22 4c 4c 22 2c 5d 5d 2c 0a 20 20 20 20  , ["LL",]],.    
1720: 20 20 20 20 5b 22 6d 22 2c 20 5b 22 6d 6d 22 2c      ["m", ["mm",
1730: 20 22 6d 6e 22 5d 5d 2c 0a 20 20 20 20 20 20 20   "mn"]],.       
1740: 20 5b 22 4d 22 2c 20 5b 22 4d 4d 22 2c 20 22 4d   ["M", ["MM", "M
1750: 4e 22 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22  N"]],.        ["
1760: 6e 22 2c 20 5b 22 6e 6e 22 2c 20 22 6e 6d 22 2c  n", ["nn", "nm",
1770: 20 22 6d 6e 22 5d 5d 2c 0a 20 20 20 20 20 20 20   "mn"]],.       
1780: 20 5b 22 4e 22 2c 20 5b 22 4e 4e 22 2c 20 22 4e   ["N", ["NN", "N
1790: 4d 22 2c 20 22 4d 4e 22 5d 5d 2c 0a 20 20 20 20  M", "MN"]],.    
17a0: 20 20 20 20 5b 22 6f 22 2c 20 5b 22 61 75 22 2c      ["o", ["au",
17b0: 20 22 65 61 75 22 2c 20 22 61 75 74 22 5d 5d 2c   "eau", "aut"]],
17c0: 0a 20 20 20 20 20 20 20 20 5b 22 4f 22 2c 20 5b  .        ["O", [
17d0: 22 41 55 22 2c 20 22 45 41 55 22 2c 20 22 41 55  "AU", "EAU", "AU
17e0: 54 22 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22  T"]],.        ["
17f0: c5 93 22 2c 20 5b 22 6f 65 22 2c 20 22 65 75 22  ..", ["oe", "eu"
1800: 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 c5 92  ]],.        ["..
1810: 22 2c 20 5b 22 4f 45 22 2c 20 22 45 55 22 5d 5d  ", ["OE", "EU"]]
1820: 2c 0a 20 20 20 20 20 20 20 20 5b 22 70 22 2c 20  ,.        ["p", 
1830: 5b 22 70 70 22 2c 20 22 70 68 22 5d 5d 2c 0a 20  ["pp", "ph"]],. 
1840: 20 20 20 20 20 20 20 5b 22 50 22 2c 20 5b 22 50         ["P", ["P
1850: 50 22 2c 20 22 50 48 22 5d 5d 2c 0a 20 20 20 20  P", "PH"]],.    
1860: 20 20 20 20 5b 22 71 22 2c 20 5b 22 71 75 22 2c      ["q", ["qu",
1870: 20 22 63 68 22 2c 20 22 63 71 22 2c 20 22 63 6b   "ch", "cq", "ck
1880: 22 2c 20 22 6b 6b 22 5d 5d 2c 0a 20 20 20 20 20  ", "kk"]],.     
1890: 20 20 20 5b 22 51 22 2c 20 5b 22 51 55 22 2c 20     ["Q", ["QU", 
18a0: 22 43 48 22 2c 20 22 43 51 22 2c 20 22 43 4b 22  "CH", "CQ", "CK"
18b0: 2c 20 22 4b 4b 22 5d 5d 2c 0a 20 20 20 20 20 20  , "KK"]],.      
18c0: 20 20 5b 22 72 22 2c 20 5b 22 72 72 22 2c 5d 5d    ["r", ["rr",]]
18d0: 2c 0a 20 20 20 20 20 20 20 20 5b 22 52 22 2c 20  ,.        ["R", 
18e0: 5b 22 52 52 22 2c 5d 5d 2c 0a 20 20 20 20 20 20  ["RR",]],.      
18f0: 20 20 5b 22 73 22 2c 20 5b 22 73 73 22 2c 20 22    ["s", ["ss", "
1900: 73 68 22 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b  sh"]],.        [
1910: 22 53 22 2c 20 5b 22 53 53 22 2c 20 22 53 48 22  "S", ["SS", "SH"
1920: 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 74 22  ]],.        ["t"
1930: 2c 20 5b 22 74 74 22 2c 20 22 74 68 22 5d 5d 2c  , ["tt", "th"]],
1940: 0a 20 20 20 20 20 20 20 20 5b 22 54 22 2c 20 5b  .        ["T", [
1950: 22 54 54 22 2c 20 22 54 48 22 5d 5d 2c 0a 20 20  "TT", "TH"]],.  
1960: 20 20 20 20 20 20 5b 22 78 22 2c 20 5b 22 63 63        ["x", ["cc
1970: 22 2c 20 22 63 74 22 2c 20 22 78 78 22 5d 5d 2c  ", "ct", "xx"]],
1980: 0a 20 20 20 20 20 20 20 20 5b 22 58 22 2c 20 5b  .        ["X", [
1990: 22 43 43 22 2c 20 22 43 54 22 2c 20 22 58 58 22  "CC", "CT", "XX"
19a0: 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 7a 22  ]],.        ["z"
19b0: 2c 20 5b 22 73 73 22 2c 20 22 7a 68 22 5d 5d 2c  , ["ss", "zh"]],
19c0: 0a 20 20 20 20 20 20 20 20 5b 22 5a 22 2c 20 5b  .        ["Z", [
19d0: 22 53 53 22 2c 20 22 5a 48 22 5d 5d 2c 0a 20 20  "SS", "ZH"]],.  
19e0: 20 20 5d 29 2c 0a 0a 20 20 20 20 64 32 74 6f 58    ]),..    d2toX
19f0: 3a 20 6e 65 77 20 4d 61 70 28 5b 0a 20 20 20 20  : new Map([.    
1a00: 20 20 20 20 5b 22 61 6e 22 2c 20 5b 22 65 6e 22      ["an", ["en"
1a10: 2c 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 41  ,]],.        ["A
1a20: 4e 22 2c 20 5b 22 45 4e 22 2c 5d 5d 2c 0a 20 20  N", ["EN",]],.  
1a30: 20 20 20 20 20 20 5b 22 65 6e 22 2c 20 5b 22 61        ["en", ["a
1a40: 6e 22 2c 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b  n",]],.        [
1a50: 22 45 4e 22 2c 20 5b 22 41 4e 22 2c 5d 5d 2c 0a  "EN", ["AN",]],.
1a60: 20 20 20 20 20 20 20 20 5b 22 61 69 22 2c 20 5b          ["ai", [
1a70: 22 65 69 22 2c 20 22 c3 a9 22 2c 20 22 c3 a8 22  "ei", "..", ".."
1a80: 2c 20 22 c3 aa 22 2c 20 22 c3 ab 22 5d 5d 2c 0a  , "..", ".."]],.
1a90: 20 20 20 20 20 20 20 20 5b 22 41 49 22 2c 20 5b          ["AI", [
1aa0: 22 45 49 22 2c 20 22 c3 89 22 2c 20 22 c3 88 22  "EI", "..", ".."
1ab0: 2c 20 22 c3 8a 22 2c 20 22 c3 8b 22 5d 5d 2c 0a  , "..", ".."]],.
1ac0: 20 20 20 20 20 20 20 20 5b 22 65 69 22 2c 20 5b          ["ei", [
1ad0: 22 61 69 22 2c 20 22 c3 a9 22 2c 20 22 c3 a8 22  "ai", "..", ".."
1ae0: 2c 20 22 c3 aa 22 2c 20 22 c3 ab 22 5d 5d 2c 0a  , "..", ".."]],.
1af0: 20 20 20 20 20 20 20 20 5b 22 45 49 22 2c 20 5b          ["EI", [
1b00: 22 41 49 22 2c 20 22 c3 89 22 2c 20 22 c3 88 22  "AI", "..", ".."
1b10: 2c 20 22 c3 8a 22 2c 20 22 c3 8b 22 5d 5d 2c 0a  , "..", ".."]],.
1b20: 20 20 20 20 20 20 20 20 5b 22 63 68 22 2c 20 5b          ["ch", [
1b30: 22 73 68 22 2c 20 22 63 22 2c 20 22 73 73 22 5d  "sh", "c", "ss"]
1b40: 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 43 48 22  ],.        ["CH"
1b50: 2c 20 5b 22 53 48 22 2c 20 22 43 22 2c 20 22 53  , ["SH", "C", "S
1b60: 53 22 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22  S"]],.        ["
1b70: 63 74 22 2c 20 5b 22 78 22 2c 20 22 63 63 22 5d  ct", ["x", "cc"]
1b80: 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 43 54 22  ],.        ["CT"
1b90: 2c 20 5b 22 58 22 2c 20 22 43 43 22 5d 5d 2c 0a  , ["X", "CC"]],.
1ba0: 20 20 20 20 20 20 20 20 5b 22 6f 61 22 2c 20 5b          ["oa", [
1bb0: 22 6f 69 22 2c 5d 5d 2c 0a 20 20 20 20 20 20 20  "oi",]],.       
1bc0: 20 5b 22 4f 41 22 2c 20 5b 22 4f 49 22 2c 5d 5d   ["OA", ["OI",]]
1bd0: 2c 0a 20 20 20 20 20 20 20 20 5b 22 6f 69 22 2c  ,.        ["oi",
1be0: 20 5b 22 6f 61 22 2c 20 22 6f 69 65 22 5d 5d 2c   ["oa", "oie"]],
1bf0: 0a 20 20 20 20 20 20 20 20 5b 22 4f 49 22 2c 20  .        ["OI", 
1c00: 5b 22 4f 41 22 2c 20 22 4f 49 45 22 5d 5d 2c 0a  ["OA", "OIE"]],.
1c10: 20 20 20 20 20 20 20 20 5b 22 71 75 22 2c 20 5b          ["qu", [
1c20: 22 71 22 2c 20 22 63 71 22 2c 20 22 63 6b 22 2c  "q", "cq", "ck",
1c30: 20 22 63 22 2c 20 22 6b 22 5d 5d 2c 0a 20 20 20   "c", "k"]],.   
1c40: 20 20 20 20 20 5b 22 51 55 22 2c 20 5b 22 51 22       ["QU", ["Q"
1c50: 2c 20 22 43 51 22 2c 20 22 43 4b 22 2c 20 22 43  , "CQ", "CK", "C
1c60: 22 2c 20 22 4b 22 5d 5d 2c 0a 20 20 20 20 20 20  ", "K"]],.      
1c70: 20 20 5b 22 73 73 22 2c 20 5b 22 63 22 2c 20 22    ["ss", ["c", "
1c80: c3 a7 22 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b  .."]],.        [
1c90: 22 53 53 22 2c 20 5b 22 43 22 2c 20 22 c3 87 22  "SS", ["C", ".."
1ca0: 5d 5d 2c 0a 20 20 20 20 5d 29 2c 0a 0a 20 20 20  ]],.    ]),..   
1cb0: 20 2f 2f 20 45 6e 64 20 6f 66 20 77 6f 72 64 0a   // End of word.
1cc0: 20 20 20 20 64 46 69 6e 61 6c 31 3a 20 6e 65 77      dFinal1: new
1cd0: 20 4d 61 70 28 5b 0a 20 20 20 20 20 20 20 20 5b   Map([.        [
1ce0: 22 61 22 2c 20 5b 22 61 73 22 2c 20 22 61 74 22  "a", ["as", "at"
1cf0: 2c 20 22 61 6e 74 22 2c 20 22 61 68 22 5d 5d 2c  , "ant", "ah"]],
1d00: 0a 20 20 20 20 20 20 20 20 5b 22 41 22 2c 20 5b  .        ["A", [
1d10: 22 41 53 22 2c 20 22 41 54 22 2c 20 22 41 4e 54  "AS", "AT", "ANT
1d20: 22 2c 20 22 41 48 22 5d 5d 2c 0a 20 20 20 20 20  ", "AH"]],.     
1d30: 20 20 20 5b 22 63 22 2c 20 5b 22 63 68 22 2c 5d     ["c", ["ch",]
1d40: 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 43 22 2c  ],.        ["C",
1d50: 20 5b 22 43 48 22 2c 5d 5d 2c 0a 20 20 20 20 20   ["CH",]],.     
1d60: 20 20 20 5b 22 65 22 2c 20 5b 22 65 74 22 2c 20     ["e", ["et", 
1d70: 22 65 72 22 2c 20 22 65 74 73 22 2c 20 22 c3 a9  "er", "ets", "..
1d80: 65 22 2c 20 22 65 7a 22 2c 20 22 61 69 22 2c 20  e", "ez", "ai", 
1d90: 22 61 69 73 22 2c 20 22 61 69 74 22 2c 20 22 65  "ais", "ait", "e
1da0: 6e 74 22 2c 20 22 65 68 22 5d 5d 2c 0a 20 20 20  nt", "eh"]],.   
1db0: 20 20 20 20 20 5b 22 45 22 2c 20 5b 22 45 54 22       ["E", ["ET"
1dc0: 2c 20 22 45 52 22 2c 20 22 45 54 53 22 2c 20 22  , "ER", "ETS", "
1dd0: c3 89 45 22 2c 20 22 45 5a 22 2c 20 22 41 49 22  ..E", "EZ", "AI"
1de0: 2c 20 22 41 49 53 22 2c 20 22 41 49 54 22 2c 20  , "AIS", "AIT", 
1df0: 22 45 4e 54 22 2c 20 22 45 48 22 5d 5d 2c 0a 20  "ENT", "EH"]],. 
1e00: 20 20 20 20 20 20 20 5b 22 c3 a9 22 2c 20 5b 22         ["..", ["
1e10: 65 74 22 2c 20 22 65 72 22 2c 20 22 65 74 73 22  et", "er", "ets"
1e20: 2c 20 22 c3 a9 65 22 2c 20 22 65 7a 22 2c 20 22  , "..e", "ez", "
1e30: 61 69 22 2c 20 22 61 69 73 22 2c 20 22 61 69 74  ai", "ais", "ait
1e40: 22 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 c3  "]],.        [".
1e50: 89 22 2c 20 5b 22 45 54 22 2c 20 22 45 52 22 2c  .", ["ET", "ER",
1e60: 20 22 45 54 53 22 2c 20 22 c3 89 45 22 2c 20 22   "ETS", "..E", "
1e70: 45 5a 22 2c 20 22 41 49 22 2c 20 22 41 49 53 22  EZ", "AI", "AIS"
1e80: 2c 20 22 41 49 54 22 5d 5d 2c 0a 20 20 20 20 20  , "AIT"]],.     
1e90: 20 20 20 5b 22 c3 a8 22 2c 20 5b 22 65 74 22 2c     ["..", ["et",
1ea0: 20 22 65 72 22 2c 20 22 65 74 73 22 2c 20 22 c3   "er", "ets", ".
1eb0: a9 65 22 2c 20 22 65 7a 22 2c 20 22 61 69 22 2c  .e", "ez", "ai",
1ec0: 20 22 61 69 73 22 2c 20 22 61 69 74 22 5d 5d 2c   "ais", "ait"]],
1ed0: 0a 20 20 20 20 20 20 20 20 5b 22 c3 88 22 2c 20  .        ["..", 
1ee0: 5b 22 45 54 22 2c 20 22 45 52 22 2c 20 22 45 54  ["ET", "ER", "ET
1ef0: 53 22 2c 20 22 c3 89 45 22 2c 20 22 45 5a 22 2c  S", "..E", "EZ",
1f00: 20 22 41 49 22 2c 20 22 41 49 53 22 2c 20 22 41   "AI", "AIS", "A
1f10: 49 54 22 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b  IT"]],.        [
1f20: 22 c3 aa 22 2c 20 5b 22 65 74 22 2c 20 22 65 72  "..", ["et", "er
1f30: 22 2c 20 22 65 74 73 22 2c 20 22 c3 a9 65 22 2c  ", "ets", "..e",
1f40: 20 22 65 7a 22 2c 20 22 61 69 22 2c 20 22 61 69   "ez", "ai", "ai
1f50: 73 22 2c 20 22 61 69 74 22 5d 5d 2c 0a 20 20 20  s", "ait"]],.   
1f60: 20 20 20 20 20 5b 22 c3 8a 22 2c 20 5b 22 45 54       ["..", ["ET
1f70: 22 2c 20 22 45 52 22 2c 20 22 45 54 53 22 2c 20  ", "ER", "ETS", 
1f80: 22 c3 89 45 22 2c 20 22 45 5a 22 2c 20 22 41 49  "..E", "EZ", "AI
1f90: 22 2c 20 22 41 49 53 22 2c 20 22 41 49 54 22 5d  ", "AIS", "AIT"]
1fa0: 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 c3 ab 22  ],.        [".."
1fb0: 2c 20 5b 22 65 74 22 2c 20 22 65 72 22 2c 20 22  , ["et", "er", "
1fc0: 65 74 73 22 2c 20 22 c3 a9 65 22 2c 20 22 65 7a  ets", "..e", "ez
1fd0: 22 2c 20 22 61 69 22 2c 20 22 61 69 73 22 2c 20  ", "ai", "ais", 
1fe0: 22 61 69 74 22 5d 5d 2c 0a 20 20 20 20 20 20 20  "ait"]],.       
1ff0: 20 5b 22 c3 8b 22 2c 20 5b 22 45 54 22 2c 20 22   ["..", ["ET", "
2000: 45 52 22 2c 20 22 45 54 53 22 2c 20 22 c3 89 45  ER", "ETS", "..E
2010: 22 2c 20 22 45 5a 22 2c 20 22 41 49 22 2c 20 22  ", "EZ", "AI", "
2020: 41 49 53 22 2c 20 22 41 49 54 22 5d 5d 2c 0a 20  AIS", "AIT"]],. 
2030: 20 20 20 20 20 20 20 5b 22 67 22 2c 20 5b 22 67         ["g", ["g
2040: 68 22 2c 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b  h",]],.        [
2050: 22 47 22 2c 20 5b 22 47 48 22 2c 5d 5d 2c 0a 20  "G", ["GH",]],. 
2060: 20 20 20 20 20 20 20 5b 22 69 22 2c 20 5b 22 69         ["i", ["i
2070: 73 22 2c 20 22 69 74 22 2c 20 22 69 65 22 2c 20  s", "it", "ie", 
2080: 22 69 6e 22 5d 5d 2c 0a 20 20 20 20 20 20 20 20  "in"]],.        
2090: 5b 22 49 22 2c 20 5b 22 49 53 22 2c 20 22 49 54  ["I", ["IS", "IT
20a0: 22 2c 20 22 49 45 22 2c 20 22 49 4e 22 5d 5d 2c  ", "IE", "IN"]],
20b0: 0a 20 20 20 20 20 20 20 20 5b 22 6e 22 2c 20 5b  .        ["n", [
20c0: 22 6e 74 22 2c 20 22 6e 64 22 2c 20 22 6e 73 22  "nt", "nd", "ns"
20d0: 2c 20 22 6e 68 22 5d 5d 2c 0a 20 20 20 20 20 20  , "nh"]],.      
20e0: 20 20 5b 22 4e 22 2c 20 5b 22 4e 54 22 2c 20 22    ["N", ["NT", "
20f0: 4e 44 22 2c 20 22 4e 53 22 2c 20 22 4e 48 22 5d  ND", "NS", "NH"]
2100: 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 6f 22 2c  ],.        ["o",
2110: 20 5b 22 61 75 74 22 2c 20 22 6f 74 22 2c 20 22   ["aut", "ot", "
2120: 6f 73 22 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b  os"]],.        [
2130: 22 4f 22 2c 20 5b 22 41 55 54 22 2c 20 22 4f 54  "O", ["AUT", "OT
2140: 22 2c 20 22 4f 53 22 5d 5d 2c 0a 20 20 20 20 20  ", "OS"]],.     
2150: 20 20 20 5b 22 c3 b4 22 2c 20 5b 22 61 75 74 22     ["..", ["aut"
2160: 2c 20 22 6f 74 22 2c 20 22 6f 73 22 5d 5d 2c 0a  , "ot", "os"]],.
2170: 20 20 20 20 20 20 20 20 5b 22 c3 94 22 2c 20 5b          ["..", [
2180: 22 41 55 54 22 2c 20 22 4f 54 22 2c 20 22 4f 53  "AUT", "OT", "OS
2190: 22 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 c3  "]],.        [".
21a0: b6 22 2c 20 5b 22 61 75 74 22 2c 20 22 6f 74 22  .", ["aut", "ot"
21b0: 2c 20 22 6f 73 22 5d 5d 2c 0a 20 20 20 20 20 20  , "os"]],.      
21c0: 20 20 5b 22 c3 96 22 2c 20 5b 22 41 55 54 22 2c    ["..", ["AUT",
21d0: 20 22 4f 54 22 2c 20 22 4f 53 22 5d 5d 2c 0a 20   "OT", "OS"]],. 
21e0: 20 20 20 20 20 20 20 5b 22 70 22 2c 20 5b 22 70         ["p", ["p
21f0: 68 22 2c 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b  h",]],.        [
2200: 22 50 22 2c 20 5b 22 50 48 22 2c 5d 5d 2c 0a 20  "P", ["PH",]],. 
2210: 20 20 20 20 20 20 20 5b 22 73 22 2c 20 5b 22 73         ["s", ["s
2220: 68 22 2c 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b  h",]],.        [
2230: 22 53 22 2c 20 5b 22 53 48 22 2c 5d 5d 2c 0a 20  "S", ["SH",]],. 
2240: 20 20 20 20 20 20 20 5b 22 74 22 2c 20 5b 22 74         ["t", ["t
2250: 68 22 2c 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b  h",]],.        [
2260: 22 54 22 2c 20 5b 22 54 48 22 2c 5d 5d 2c 0a 20  "T", ["TH",]],. 
2270: 20 20 20 20 20 20 20 5b 22 75 22 2c 20 5b 22 75         ["u", ["u
2280: 74 22 2c 20 22 75 73 22 2c 20 22 75 68 22 5d 5d  t", "us", "uh"]]
2290: 2c 0a 20 20 20 20 20 20 20 20 5b 22 55 22 2c 20  ,.        ["U", 
22a0: 5b 22 55 54 22 2c 20 22 55 53 22 2c 20 22 55 48  ["UT", "US", "UH
22b0: 22 5d 5d 2c 0a 20 20 20 20 5d 29 2c 0a 0a 20 20  "]],.    ]),..  
22c0: 20 20 64 46 69 6e 61 6c 32 3a 20 6e 65 77 20 4d    dFinal2: new M
22d0: 61 70 28 5b 0a 20 20 20 20 20 20 20 20 5b 22 61  ap([.        ["a
22e0: 69 22 2c 20 5b 22 61 69 65 6e 74 22 2c 20 22 61  i", ["aient", "a
22f0: 69 73 22 2c 20 22 65 74 22 5d 5d 2c 0a 20 20 20  is", "et"]],.   
2300: 20 20 20 20 20 5b 22 41 49 22 2c 20 5b 22 41 49       ["AI", ["AI
2310: 45 4e 54 22 2c 20 22 41 49 53 22 2c 20 22 45 54  ENT", "AIS", "ET
2320: 22 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 61  "]],.        ["a
2330: 6e 22 2c 20 5b 22 61 6e 74 22 2c 20 22 65 6e 74  n", ["ant", "ent
2340: 22 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 41  "]],.        ["A
2350: 4e 22 2c 20 5b 22 41 4e 54 22 2c 20 22 45 4e 54  N", ["ANT", "ENT
2360: 22 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 65  "]],.        ["e
2370: 6e 22 2c 20 5b 22 65 6e 74 22 2c 20 22 61 6e 74  n", ["ent", "ant
2380: 22 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 45  "]],.        ["E
2390: 4e 22 2c 20 5b 22 45 4e 54 22 2c 20 22 41 4e 54  N", ["ENT", "ANT
23a0: 22 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 65  "]],.        ["e
23b0: 69 22 2c 20 5b 22 61 69 74 22 2c 20 22 61 69 73  i", ["ait", "ais
23c0: 22 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 45  "]],.        ["E
23d0: 49 22 2c 20 5b 22 41 49 54 22 2c 20 22 41 49 53  I", ["AIT", "AIS
23e0: 22 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 6f  "]],.        ["o
23f0: 6e 22 2c 20 5b 22 6f 6e 73 22 2c 20 22 6f 6e 74  n", ["ons", "ont
2400: 22 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 4f  "]],.        ["O
2410: 4e 22 2c 20 5b 22 4f 4e 53 22 2c 20 22 4f 4e 54  N", ["ONS", "ONT
2420: 22 5d 5d 2c 0a 20 20 20 20 20 20 20 20 5b 22 6f  "]],.        ["o
2430: 69 22 2c 20 5b 22 6f 69 73 22 2c 20 22 6f 69 74  i", ["ois", "oit
2440: 22 2c 20 22 6f 69 78 22 5d 5d 2c 0a 20 20 20 20  ", "oix"]],.    
2450: 20 20 20 20 5b 22 4f 49 22 2c 20 5b 22 4f 49 53      ["OI", ["OIS
2460: 22 2c 20 22 4f 49 54 22 2c 20 22 4f 49 58 22 5d  ", "OIT", "OIX"]
2470: 5d 2c 0a 20 20 20 20 5d 29 2c 0a 0a 0a 20 20 20  ],.    ]),...   
2480: 20 2f 2f 20 50 72 c3 a9 66 69 78 65 73 0a 20 20   // Pr..fixes.  
2490: 20 20 61 50 66 78 31 3a 20 6e 65 77 20 53 65 74    aPfx1: new Set
24a0: 28 5b 0a 20 20 20 20 20 20 20 20 22 61 6e 74 69  ([.        "anti
24b0: 22 2c 20 22 61 72 63 68 69 22 2c 20 22 63 6f 6e  ", "archi", "con
24c0: 74 72 65 22 2c 20 22 68 79 70 65 72 22 2c 20 22  tre", "hyper", "
24d0: 6d c3 a9 22 2c 20 22 6d c3 a9 74 61 22 2c 20 22  m..", "m..ta", "
24e0: 69 6d 22 2c 20 22 69 6e 22 2c 20 22 69 72 22 2c  im", "in", "ir",
24f0: 20 22 70 61 72 22 2c 20 22 70 72 6f 74 6f 22 2c   "par", "proto",
2500: 0a 20 20 20 20 20 20 20 20 22 70 73 65 75 64 6f  .        "pseudo
2510: 22 2c 20 22 70 72 c3 a9 22 2c 20 22 72 65 22 2c  ", "pr..", "re",
2520: 20 22 72 c3 a9 22 2c 20 22 73 61 6e 73 22 2c 20   "r..", "sans", 
2530: 22 73 6f 75 73 22 2c 20 22 73 75 70 72 61 22 2c  "sous", "supra",
2540: 20 22 73 75 72 22 2c 20 22 75 6c 74 72 61 22 0a   "sur", "ultra".
2550: 20 20 20 20 5d 29 2c 0a 0a 20 20 20 20 61 50 66      ]),..    aPf
2560: 78 32 3a 20 6e 65 77 20 53 65 74 28 5b 0a 20 20  x2: new Set([.  
2570: 20 20 20 20 20 20 22 62 65 6c 67 6f 22 2c 20 22        "belgo", "
2580: 66 72 61 6e 63 6f 22 2c 20 22 67 c3 a9 6e 69 74  franco", "g..nit
2590: 6f 22 2c 20 22 67 79 6e c3 a9 63 6f 22 2c 20 22  o", "gyn..co", "
25a0: 6d c3 a9 64 69 63 6f 22 2c 20 22 72 75 73 73 6f  m..dico", "russo
25b0: 22 0a 20 20 20 20 5d 29 2c 0a 0a 20 20 20 20 61  ".    ]),..    a
25c0: 45 78 63 6c 75 64 65 64 53 66 78 3a 20 6e 65 77  ExcludedSfx: new
25d0: 20 53 65 74 28 5b 0a 20 20 20 20 20 20 20 20 22   Set([.        "
25e0: 6a 65 22 2c 20 22 74 75 22 2c 20 22 69 6c 22 2c  je", "tu", "il",
25f0: 20 22 65 6c 6c 65 22 2c 20 22 6f 6e 22 2c 20 22   "elle", "on", "
2600: 74 2d 69 6c 22 2c 20 22 74 2d 65 6c 6c 65 22 2c  t-il", "t-elle",
2610: 20 22 74 2d 6f 6e 22 2c 20 22 6e 6f 75 73 22 2c   "t-on", "nous",
2620: 20 22 76 6f 75 73 22 2c 20 22 69 6c 73 22 2c 20   "vous", "ils", 
2630: 22 65 6c 6c 65 73 22 0a 20 20 20 20 5d 29 0a 0a  "elles".    ])..
2640: 7d 0a 0a 0a 0a 0a 0a                             }......