language_detection 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (100) hide show
  1. data/.gitignore +19 -0
  2. data/Gemfile +4 -0
  3. data/LICENSE.txt +22 -0
  4. data/README.md +85 -0
  5. data/Rakefile +11 -0
  6. data/ext/cld/Makefile +34 -0
  7. data/ext/cld/base/basictypes.h +348 -0
  8. data/ext/cld/base/build_config.h +124 -0
  9. data/ext/cld/base/casts.h +156 -0
  10. data/ext/cld/base/commandlineflags.h +443 -0
  11. data/ext/cld/base/crash.h +41 -0
  12. data/ext/cld/base/dynamic_annotations.h +358 -0
  13. data/ext/cld/base/global_strip_options.h +59 -0
  14. data/ext/cld/base/log_severity.h +46 -0
  15. data/ext/cld/base/logging.h +1403 -0
  16. data/ext/cld/base/macros.h +243 -0
  17. data/ext/cld/base/port.h +54 -0
  18. data/ext/cld/base/scoped_ptr.h +428 -0
  19. data/ext/cld/base/stl_decl.h +0 -0
  20. data/ext/cld/base/stl_decl_msvc.h +107 -0
  21. data/ext/cld/base/string_util.h +29 -0
  22. data/ext/cld/base/strtoint.h +93 -0
  23. data/ext/cld/base/template_util.h +96 -0
  24. data/ext/cld/base/type_traits.h +198 -0
  25. data/ext/cld/base/vlog_is_on.h +143 -0
  26. data/ext/cld/cld.so +0 -0
  27. data/ext/cld/encodings/compact_lang_det/cldutil.cc +905 -0
  28. data/ext/cld/encodings/compact_lang_det/cldutil.h +1205 -0
  29. data/ext/cld/encodings/compact_lang_det/cldutil_dbg.h +76 -0
  30. data/ext/cld/encodings/compact_lang_det/cldutil_dbg_empty.cc +76 -0
  31. data/ext/cld/encodings/compact_lang_det/compact_lang_det.cc +62 -0
  32. data/ext/cld/encodings/compact_lang_det/compact_lang_det.h +145 -0
  33. data/ext/cld/encodings/compact_lang_det/compact_lang_det_impl.cc +2574 -0
  34. data/ext/cld/encodings/compact_lang_det/compact_lang_det_impl.h +173 -0
  35. data/ext/cld/encodings/compact_lang_det/compact_lang_det_unittest_small.cc +406 -0
  36. data/ext/cld/encodings/compact_lang_det/compile.cmd +1 -0
  37. data/ext/cld/encodings/compact_lang_det/ext_lang_enc.cc +545 -0
  38. data/ext/cld/encodings/compact_lang_det/ext_lang_enc.h +119 -0
  39. data/ext/cld/encodings/compact_lang_det/generated/cld_generated_score_deltaoctachrome_0406.cc +380 -0
  40. data/ext/cld/encodings/compact_lang_det/generated/cld_generated_score_quadchrome_0406.cc +382 -0
  41. data/ext/cld/encodings/compact_lang_det/generated/compact_lang_det_generated_cjkbis_0.cc +49 -0
  42. data/ext/cld/encodings/compact_lang_det/generated/compact_lang_det_generated_ctjkvz.cc +7119 -0
  43. data/ext/cld/encodings/compact_lang_det/generated/compact_lang_det_generated_ctjkvz_0.cc +61 -0
  44. data/ext/cld/encodings/compact_lang_det/generated/compact_lang_det_generated_deltaoctachrome.cc +1263 -0
  45. data/ext/cld/encodings/compact_lang_det/generated/compact_lang_det_generated_longwords8_0.cc +53 -0
  46. data/ext/cld/encodings/compact_lang_det/generated/compact_lang_det_generated_meanscore.h +10 -0
  47. data/ext/cld/encodings/compact_lang_det/generated/compact_lang_det_generated_quads_0.cc +50 -0
  48. data/ext/cld/encodings/compact_lang_det/generated/compact_lang_det_generated_quadschrome.cc +70935 -0
  49. data/ext/cld/encodings/compact_lang_det/getonescriptspan.cc +570 -0
  50. data/ext/cld/encodings/compact_lang_det/getonescriptspan.h +131 -0
  51. data/ext/cld/encodings/compact_lang_det/letterscript_enum.cc +117 -0
  52. data/ext/cld/encodings/compact_lang_det/letterscript_enum.h +99 -0
  53. data/ext/cld/encodings/compact_lang_det/subsetsequence.cc +259 -0
  54. data/ext/cld/encodings/compact_lang_det/subsetsequence.h +44 -0
  55. data/ext/cld/encodings/compact_lang_det/subsetsequence_unittest.cc +99 -0
  56. data/ext/cld/encodings/compact_lang_det/tote.cc +299 -0
  57. data/ext/cld/encodings/compact_lang_det/tote.h +89 -0
  58. data/ext/cld/encodings/compact_lang_det/unittest_data.h +193 -0
  59. data/ext/cld/encodings/compact_lang_det/utf8propjustletter.h +1162 -0
  60. data/ext/cld/encodings/compact_lang_det/utf8propletterscriptnum.h +1222 -0
  61. data/ext/cld/encodings/compact_lang_det/utf8scannotjustletterspecial.h +1185 -0
  62. data/ext/cld/encodings/compact_lang_det/win/cld_basictypes.h +10 -0
  63. data/ext/cld/encodings/compact_lang_det/win/cld_commandlineflags.h +28 -0
  64. data/ext/cld/encodings/compact_lang_det/win/cld_google.h +18 -0
  65. data/ext/cld/encodings/compact_lang_det/win/cld_htmlutils.h +13 -0
  66. data/ext/cld/encodings/compact_lang_det/win/cld_htmlutils_google3.cc +32 -0
  67. data/ext/cld/encodings/compact_lang_det/win/cld_htmlutils_windows.cc +29 -0
  68. data/ext/cld/encodings/compact_lang_det/win/cld_logging.h +21 -0
  69. data/ext/cld/encodings/compact_lang_det/win/cld_macros.h +19 -0
  70. data/ext/cld/encodings/compact_lang_det/win/cld_strtoint.h +26 -0
  71. data/ext/cld/encodings/compact_lang_det/win/cld_unicodetext.cc +84 -0
  72. data/ext/cld/encodings/compact_lang_det/win/cld_unicodetext.h +40 -0
  73. data/ext/cld/encodings/compact_lang_det/win/cld_unilib.h +15 -0
  74. data/ext/cld/encodings/compact_lang_det/win/cld_unilib_google3.cc +18 -0
  75. data/ext/cld/encodings/compact_lang_det/win/cld_unilib_windows.cc +29 -0
  76. data/ext/cld/encodings/compact_lang_det/win/cld_utf.h +24 -0
  77. data/ext/cld/encodings/compact_lang_det/win/cld_utf8statetable.cc +224 -0
  78. data/ext/cld/encodings/compact_lang_det/win/cld_utf8statetable.h +141 -0
  79. data/ext/cld/encodings/compact_lang_det/win/cld_utf8utils.h +22 -0
  80. data/ext/cld/encodings/compact_lang_det/win/cld_utf8utils_google3.cc +18 -0
  81. data/ext/cld/encodings/compact_lang_det/win/cld_utf8utils_windows.cc +17 -0
  82. data/ext/cld/encodings/compact_lang_det/win/normalizedunicodetext.cc +172 -0
  83. data/ext/cld/encodings/compact_lang_det/win/normalizedunicodetext.h +67 -0
  84. data/ext/cld/encodings/internal/encodings.cc +12 -0
  85. data/ext/cld/encodings/lang_enc.h +254 -0
  86. data/ext/cld/encodings/proto/encodings.pb.h +169 -0
  87. data/ext/cld/encodings/public/encodings.h +301 -0
  88. data/ext/cld/extconf.rb +1 -0
  89. data/ext/cld/language_detection.cc +88 -0
  90. data/ext/cld/languages/internal/languages.cc +337 -0
  91. data/ext/cld/languages/proto/languages.pb.h +179 -0
  92. data/ext/cld/languages/public/languages.h +379 -0
  93. data/language_detection.gemspec +28 -0
  94. data/lib/language_detection/string.rb +1 -0
  95. data/lib/language_detection/version.rb +3 -0
  96. data/lib/language_detection.rb +54 -0
  97. data/test/_helper.rb +15 -0
  98. data/test/fixtures/languages.csv +80 -0
  99. data/test/language_detection_test.rb +88 -0
  100. metadata +250 -0
@@ -0,0 +1,380 @@
1
+ // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2
+ // Use of this source code is governed by a BSD-style license that can be
3
+ // found in the LICENSE file.
4
+
5
+ #include "encodings/compact_lang_det/ext_lang_enc.h"
6
+
7
+ // score_me text [ 8] ja not found in tables
8
+ // score_me text [ 9] ko not found in tables
9
+ // score_me text [ 16] zh not found in tables
10
+ // score_me text [ 18] el not found in tables
11
+ // score_me text [ 26] un not found in tables
12
+ // score_me text [ 39] la not found in tables
13
+ // score_me text [ 41] ml not found in tables
14
+ // score_me text [ 43] ne not found in tables
15
+ // score_me text [ 44] te not found in tables
16
+ // score_me text [ 46] ta not found in tables
17
+ // score_me text [ 48] jw not found in tables
18
+ // score_me text [ 49] oc not found in tables
19
+ // score_me text [ 51] bh not found in tables
20
+ // score_me text [ 52] gu not found in tables
21
+ // score_me text [ 53] th not found in tables
22
+ // score_me text [ 56] eo not found in tables
23
+ // score_me text [ 58] ia not found in tables
24
+ // score_me text [ 59] kn not found in tables
25
+ // score_me text [ 60] pa not found in tables
26
+ // score_me text [ 61] gd not found in tables
27
+ // score_me text [ 64] mr not found in tables
28
+ // score_me text [ 67] fy not found in tables
29
+ // score_me text [ 69] zhT not found in tables
30
+ // score_me text [ 70] fo not found in tables
31
+ // score_me text [ 71] su not found in tables
32
+ // score_me text [ 72] uz not found in tables
33
+ // score_me text [ 73] am not found in tables
34
+ // score_me text [ 75] ka not found in tables
35
+ // score_me text [ 76] ti not found in tables
36
+ // score_me text [ 78] bs not found in tables
37
+ // score_me text [ 79] si not found in tables
38
+ // score_me text [ 80] nn not found in tables
39
+ // score_me text [ 83] xh not found in tables
40
+ // score_me text [ 84] zu not found in tables
41
+ // score_me text [ 85] gn not found in tables
42
+ // score_me text [ 86] st not found in tables
43
+ // score_me text [ 87] tk not found in tables
44
+ // score_me text [ 88] ky not found in tables
45
+ // score_me text [ 89] br not found in tables
46
+ // score_me text [ 90] tw not found in tables
47
+ // score_me text [ 93] so not found in tables
48
+ // score_me text [ 94] ug not found in tables
49
+ // score_me text [ 95] ku not found in tables
50
+ // score_me text [ 96] mn not found in tables
51
+ // score_me text [ 97] hy not found in tables
52
+ // score_me text [ 98] lo not found in tables
53
+ // score_me text [ 99] sd not found in tables
54
+ // score_me text [100] rm not found in tables
55
+ // score_me text [102] lb not found in tables
56
+ // score_me text [103] my not found in tables
57
+ // score_me text [104] km not found in tables
58
+ // score_me text [105] bo not found in tables
59
+ // score_me text [107] chr not found in tables
60
+ // score_me text [109] sit-NP not found in tables
61
+ // score_me text [110] or not found in tables
62
+ // score_me text [111] as not found in tables
63
+ // score_me text [112] co not found in tables
64
+ // score_me text [113] ie not found in tables
65
+ // score_me text [114] kk not found in tables
66
+ // score_me text [115] ln not found in tables
67
+ // score_me text [116] mo not found in tables
68
+ // score_me text [117] ps not found in tables
69
+ // score_me text [118] qu not found in tables
70
+ // score_me text [119] sn not found in tables
71
+ // score_me text [120] tg not found in tables
72
+ // score_me text [121] tt not found in tables
73
+ // score_me text [122] to not found in tables
74
+ // score_me text [123] yo not found in tables
75
+ // score_me text [128] mi not found in tables
76
+ // score_me text [129] wo not found in tables
77
+ // score_me text [130] ab not found in tables
78
+ // score_me text [131] aa not found in tables
79
+ // score_me text [132] ay not found in tables
80
+ // score_me text [133] ba not found in tables
81
+ // score_me text [134] bi not found in tables
82
+ // score_me text [135] dz not found in tables
83
+ // score_me text [136] fj not found in tables
84
+ // score_me text [137] kl not found in tables
85
+ // score_me text [138] ha not found in tables
86
+ // score_me text [140] ik not found in tables
87
+ // score_me text [141] iu not found in tables
88
+ // score_me text [142] ks not found in tables
89
+ // score_me text [143] rw not found in tables
90
+ // score_me text [144] mg not found in tables
91
+ // score_me text [145] na not found in tables
92
+ // score_me text [146] om not found in tables
93
+ // score_me text [147] rn not found in tables
94
+ // score_me text [148] sm not found in tables
95
+ // score_me text [149] sg not found in tables
96
+ // score_me text [150] sa not found in tables
97
+ // score_me text [151] ss not found in tables
98
+ // score_me text [152] ts not found in tables
99
+ // score_me text [153] tn not found in tables
100
+ // score_me text [154] vo not found in tables
101
+ // score_me text [155] za not found in tables
102
+ // score_me text [156] kha not found in tables
103
+ // score_me text [157] sco not found in tables
104
+ // score_me text [158] lg not found in tables
105
+ // score_me text [159] gv not found in tables
106
+ // score_me text [160] srM not found in tables
107
+ // score_me text [161] ak not found in tables
108
+ // score_me text [162] ig not found in tables
109
+ // score_me text [163] mfe not found in tables
110
+ // score_me text [164] haw not found in tables
111
+ // score_me text [165] nso not found in tables
112
+ // score_me text [166] nr not found in tables
113
+ // score_me text [167] ve not found in tables
114
+ // score_me text [168] ny not found in tables
115
+ // score_me text [169] crs not found in tables
116
+ // score_me text [185] zzb not found in tables
117
+ // score_me text [186] zzp not found in tables
118
+ // score_me text [187] zzh not found in tables
119
+ // score_me text [188] tlh not found in tables
120
+ // score_me text [189] zze not found in tables
121
+
122
+ // No score_me text for [ 25] xxx
123
+
124
+ // Average score per 1024 bytes
125
+ extern const short kAvgDeltaOctaScore[244 * 4] = {
126
+ // Latn Cyrl Arab Other script
127
+ 1266, 0, 0, 0, // [ 0] ENGLISH en
128
+ 744, 0, 0, 0, // [ 1] DANISH da
129
+ 1069, 0, 0, 0, // [ 2] DUTCH nl
130
+ 1356, 0, 0, 0, // [ 3] FINNISH fi
131
+ 1013, 0, 0, 0, // [ 4] FRENCH fr
132
+ 1243, 0, 0, 0, // [ 5] GERMAN de
133
+ 0, 0, 0, 729, // [ 6] HEBREW iw
134
+ 914, 0, 0, 0, // [ 7] ITALIAN it
135
+ 0, 0, 0, 0, // [ 8] Japanese ja ==Zero==
136
+ 0, 0, 0, 0, // [ 9] Korean ko ==Zero==
137
+ 865, 0, 0, 0, // [ 10] NORWEGIAN no
138
+ 1300, 0, 0, 0, // [ 11] POLISH pl
139
+ 764, 0, 0, 0, // [ 12] PORTUGUESE pt
140
+ 0, 784, 0, 0, // [ 13] RUSSIAN ru
141
+ 687, 0, 0, 0, // [ 14] SPANISH es
142
+ 861, 0, 0, 0, // [ 15] SWEDISH sv
143
+ 0, 0, 0, 0, // [ 16] Chinese zh ==Zero==
144
+ 1001, 0, 0, 0, // [ 17] CZECH cs
145
+ 0, 0, 0, 0, // [ 18] GREEK el ==Zero==
146
+ 1233, 0, 0, 0, // [ 19] ICELANDIC is
147
+ 1222, 0, 0, 0, // [ 20] LATVIAN lv
148
+ 1246, 0, 0, 0, // [ 21] LITHUANIAN lt
149
+ 974, 0, 0, 0, // [ 22] ROMANIAN ro
150
+ 1345, 0, 0, 0, // [ 23] HUNGARIAN hu
151
+ 1187, 0, 0, 0, // [ 24] ESTONIAN et
152
+ 0, 0, 0, 0, // [ 25] Ignore xxx ==Zero==
153
+ 0, 0, 0, 0, // [ 26] Unknown un ==Zero==
154
+ 0, 697, 0, 0, // [ 27] BULGARIAN bg
155
+ 794, 0, 0, 0, // [ 28] CROATIAN hr
156
+ 1079, 696, 0, 0, // [ 29] SERBIAN sr
157
+ 1530, 0, 0, 0, // [ 30] IRISH ga
158
+ 480, 0, 0, 0, // [ 31] GALICIAN gl
159
+
160
+ 1586, 0, 0, 0, // [ 32] TAGALOG tl
161
+ 1414, 0, 0, 0, // [ 33] TURKISH tr
162
+ 0, 691, 0, 0, // [ 34] UKRAINIAN uk
163
+ 0, 0, 0, 602, // [ 35] HINDI hi
164
+ 0, 703, 0, 0, // [ 36] MACEDONIAN mk
165
+ 0, 0, 0, 567, // [ 37] BENGALI bn
166
+ 1354, 0, 0, 0, // [ 38] INDONESIAN id
167
+ 0, 0, 0, 0, // [ 39] LATIN la ==Zero==
168
+ 1445, 0, 0, 0, // [ 40] MALAY ms
169
+ 0, 0, 0, 0, // [ 41] MALAYALAM ml ==Zero==
170
+ 1581, 0, 0, 0, // [ 42] WELSH cy
171
+ 0, 0, 0, 0, // [ 43] NEPALI ne ==Zero==
172
+ 0, 0, 0, 0, // [ 44] TELUGU te ==Zero==
173
+ 1163, 0, 0, 0, // [ 45] ALBANIAN sq
174
+ 0, 0, 0, 0, // [ 46] TAMIL ta ==Zero==
175
+ 0, 846, 0, 0, // [ 47] BELARUSIAN be
176
+ 0, 0, 0, 0, // [ 48] JAVANESE jw ==Zero==
177
+ 0, 0, 0, 0, // [ 49] OCCITAN oc ==Zero==
178
+ 0, 0, 966, 0, // [ 50] URDU ur
179
+ 0, 0, 0, 0, // [ 51] BIHARI bh ==Zero==
180
+ 0, 0, 0, 0, // [ 52] GUJARATI gu ==Zero==
181
+ 0, 0, 0, 0, // [ 53] THAI th ==Zero==
182
+ 0, 0, 737, 0, // [ 54] ARABIC ar
183
+ 682, 0, 0, 0, // [ 55] CATALAN ca
184
+ 0, 0, 0, 0, // [ 56] ESPERANTO eo ==Zero==
185
+ 1474, 0, 0, 0, // [ 57] BASQUE eu
186
+ 0, 0, 0, 0, // [ 58] INTERLINGUA ia ==Zero==
187
+ 0, 0, 0, 0, // [ 59] KANNADA kn ==Zero==
188
+ 0, 0, 0, 0, // [ 60] PUNJABI pa ==Zero==
189
+ 0, 0, 0, 0, // [ 61] SCOTS_GAELIC gd ==Zero==
190
+ 1472, 0, 0, 0, // [ 62] SWAHILI sw
191
+ 917, 0, 0, 0, // [ 63] SLOVENIAN sl
192
+
193
+ 0, 0, 0, 0, // [ 64] MARATHI mr ==Zero==
194
+ 1043, 0, 0, 0, // [ 65] MALTESE mt
195
+ 1102, 0, 0, 0, // [ 66] VIETNAMESE vi
196
+ 0, 0, 0, 0, // [ 67] FRISIAN fy ==Zero==
197
+ 1039, 0, 0, 0, // [ 68] SLOVAK sk
198
+ 0, 0, 0, 0, // [ 69] ChineseT zhT ==Zero==
199
+ 0, 0, 0, 0, // [ 70] FAROESE fo ==Zero==
200
+ 0, 0, 0, 0, // [ 71] SUNDANESE su ==Zero==
201
+ 0, 0, 0, 0, // [ 72] UZBEK uz ==Zero==
202
+ 0, 0, 0, 0, // [ 73] AMHARIC am ==Zero==
203
+ 1384, 0, 0, 0, // [ 74] AZERBAIJANI az
204
+ 0, 0, 0, 0, // [ 75] GEORGIAN ka ==Zero==
205
+ 0, 0, 0, 0, // [ 76] TIGRINYA ti ==Zero==
206
+ 0, 0, 861, 0, // [ 77] PERSIAN fa
207
+ 0, 0, 0, 0, // [ 78] BOSNIAN bs ==Zero==
208
+ 0, 0, 0, 0, // [ 79] SINHALESE si ==Zero==
209
+ 0, 0, 0, 0, // [ 80] NORWEGIAN_N nn ==Zero==
210
+ 0, 0, 0, 0, // [ 81] PORTUGUESE_P pt-PT ==Zero==
211
+ 0, 0, 0, 0, // [ 82] PORTUGUESE_B pt-BR ==Zero==
212
+ 0, 0, 0, 0, // [ 83] XHOSA xh ==Zero==
213
+ 0, 0, 0, 0, // [ 84] ZULU zu ==Zero==
214
+ 0, 0, 0, 0, // [ 85] GUARANI gn ==Zero==
215
+ 0, 0, 0, 0, // [ 86] SESOTHO st ==Zero==
216
+ 0, 0, 0, 0, // [ 87] TURKMEN tk ==Zero==
217
+ 0, 0, 0, 0, // [ 88] KYRGYZ ky ==Zero==
218
+ 0, 0, 0, 0, // [ 89] BRETON br ==Zero==
219
+ 0, 0, 0, 0, // [ 90] TWI tw ==Zero==
220
+ 0, 0, 0, 814, // [ 91] YIDDISH yi
221
+ 0, 0, 0, 0, // [ 92] SERBO_CROATIAN sh ==Zero==
222
+ 0, 0, 0, 0, // [ 93] SOMALI so ==Zero==
223
+ 0, 0, 0, 0, // [ 94] UIGHUR ug ==Zero==
224
+ 0, 0, 0, 0, // [ 95] KURDISH ku ==Zero==
225
+
226
+ 0, 0, 0, 0, // [ 96] MONGOLIAN mn ==Zero==
227
+ 0, 0, 0, 0, // [ 97] ARMENIAN hy ==Zero==
228
+ 0, 0, 0, 0, // [ 98] LAOTHIAN lo ==Zero==
229
+ 0, 0, 0, 0, // [ 99] SINDHI sd ==Zero==
230
+ 0, 0, 0, 0, // [100] RHAETO_ROMANCE rm ==Zero==
231
+ 908, 0, 0, 0, // [101] AFRIKAANS af
232
+ 0, 0, 0, 0, // [102] LUXEMBOURGISH lb ==Zero==
233
+ 0, 0, 0, 0, // [103] BURMESE my ==Zero==
234
+ 0, 0, 0, 0, // [104] KHMER km ==Zero==
235
+ 0, 0, 0, 0, // [105] TIBETAN bo ==Zero==
236
+ 0, 0, 0, 0, // [106] DHIVEHI dv ==Zero==
237
+ 0, 0, 0, 0, // [107] CHEROKEE chr ==Zero==
238
+ 0, 0, 0, 0, // [108] SYRIAC syr ==Zero==
239
+ 0, 0, 0, 0, // [109] LIMBU sit-NP ==Zero==
240
+ 0, 0, 0, 0, // [110] ORIYA or ==Zero==
241
+ 0, 0, 0, 0, // [111] ASSAMESE as ==Zero==
242
+ 0, 0, 0, 0, // [112] CORSICAN co ==Zero==
243
+ 0, 0, 0, 0, // [113] INTERLINGUE ie ==Zero==
244
+ 0, 0, 0, 0, // [114] KAZAKH kk ==Zero==
245
+ 0, 0, 0, 0, // [115] LINGALA ln ==Zero==
246
+ 0, 0, 0, 0, // [116] MOLDAVIAN mo ==Zero==
247
+ 0, 0, 0, 0, // [117] PASHTO ps ==Zero==
248
+ 0, 0, 0, 0, // [118] QUECHUA qu ==Zero==
249
+ 0, 0, 0, 0, // [119] SHONA sn ==Zero==
250
+ 0, 0, 0, 0, // [120] TAJIK tg ==Zero==
251
+ 0, 0, 0, 0, // [121] TATAR tt ==Zero==
252
+ 0, 0, 0, 0, // [122] TONGA to ==Zero==
253
+ 0, 0, 0, 0, // [123] YORUBA yo ==Zero==
254
+ 0, 0, 0, 0, // [124] CREOLES_AND_PIDGINS_ENGLISH_BASED cpe ==Zero==
255
+ 0, 0, 0, 0, // [125] CREOLES_AND_PIDGINS_FRENCH_BASED cpf ==Zero==
256
+ 0, 0, 0, 0, // [126] CREOLES_AND_PIDGINS_PORTUGUESE_BASED cpp ==Zero==
257
+ 0, 0, 0, 0, // [127] CREOLES_AND_PIDGINS_OTHER crp ==Zero==
258
+
259
+ 0, 0, 0, 0, // [128] MAORI mi ==Zero==
260
+ 0, 0, 0, 0, // [129] WOLOF wo ==Zero==
261
+ 0, 0, 0, 0, // [130] ABKHAZIAN ab ==Zero==
262
+ 0, 0, 0, 0, // [131] AFAR aa ==Zero==
263
+ 0, 0, 0, 0, // [132] AYMARA ay ==Zero==
264
+ 0, 0, 0, 0, // [133] BASHKIR ba ==Zero==
265
+ 0, 0, 0, 0, // [134] BISLAMA bi ==Zero==
266
+ 0, 0, 0, 0, // [135] DZONGKHA dz ==Zero==
267
+ 0, 0, 0, 0, // [136] FIJIAN fj ==Zero==
268
+ 0, 0, 0, 0, // [137] GREENLANDIC kl ==Zero==
269
+ 0, 0, 0, 0, // [138] HAUSA ha ==Zero==
270
+ 1216, 0, 0, 0, // [139] HAITIAN_CREOLE ht
271
+ 0, 0, 0, 0, // [140] INUPIAK ik ==Zero==
272
+ 0, 0, 0, 0, // [141] INUKTITUT iu ==Zero==
273
+ 0, 0, 0, 0, // [142] KASHMIRI ks ==Zero==
274
+ 0, 0, 0, 0, // [143] KINYARWANDA rw ==Zero==
275
+ 0, 0, 0, 0, // [144] MALAGASY mg ==Zero==
276
+ 0, 0, 0, 0, // [145] NAURU na ==Zero==
277
+ 0, 0, 0, 0, // [146] OROMO om ==Zero==
278
+ 0, 0, 0, 0, // [147] RUNDI rn ==Zero==
279
+ 0, 0, 0, 0, // [148] SAMOAN sm ==Zero==
280
+ 0, 0, 0, 0, // [149] SANGO sg ==Zero==
281
+ 0, 0, 0, 0, // [150] SANSKRIT sa ==Zero==
282
+ 0, 0, 0, 0, // [151] SISWANT ss ==Zero==
283
+ 0, 0, 0, 0, // [152] TSONGA ts ==Zero==
284
+ 0, 0, 0, 0, // [153] TSWANA tn ==Zero==
285
+ 0, 0, 0, 0, // [154] VOLAPUK vo ==Zero==
286
+ 0, 0, 0, 0, // [155] ZHUANG za ==Zero==
287
+ 0, 0, 0, 0, // [156] KHASI kha ==Zero==
288
+ 0, 0, 0, 0, // [157] SCOTS sco ==Zero==
289
+ 0, 0, 0, 0, // [158] GANDA lg ==Zero==
290
+ 0, 0, 0, 0, // [159] MANX gv ==Zero==
291
+
292
+ 0, 0, 0, 0, // [160] MONTENEGRIN srM ==Zero==
293
+ 0, 0, 0, 0, // [161] AKAN ak ==Zero==
294
+ 0, 0, 0, 0, // [162] IGBO ig ==Zero==
295
+ 0, 0, 0, 0, // [163] MAURITIAN_CREOLE mfe ==Zero==
296
+ 0, 0, 0, 0, // [164] HAWAIIAN haw ==Zero==
297
+ 0, 0, 0, 0, // [165] PEDI nso ==Zero==
298
+ 0, 0, 0, 0, // [166] NDEBELE nr ==Zero==
299
+ 0, 0, 0, 0, // [167] VENDA ve ==Zero==
300
+ 0, 0, 0, 0, // [168] CHICHEWA ny ==Zero==
301
+ 0, 0, 0, 0, // [169] SESELWA crs ==Zero==
302
+ 0, 0, 0, 0, // [170] invalid_language ?? ==Zero==
303
+ 0, 0, 0, 0, // [171] invalid_language ?? ==Zero==
304
+ 0, 0, 0, 0, // [172] invalid_language ?? ==Zero==
305
+ 0, 0, 0, 0, // [173] invalid_language ?? ==Zero==
306
+ 0, 0, 0, 0, // [174] invalid_language ?? ==Zero==
307
+ 0, 0, 0, 0, // [175] invalid_language ?? ==Zero==
308
+ 0, 0, 0, 0, // [176] invalid_language ?? ==Zero==
309
+ 0, 0, 0, 0, // [177] invalid_language ?? ==Zero==
310
+ 0, 0, 0, 0, // [178] invalid_language ?? ==Zero==
311
+ 0, 0, 0, 0, // [179] invalid_language ?? ==Zero==
312
+ 0, 0, 0, 0, // [180] invalid_language ?? ==Zero==
313
+ 0, 0, 0, 0, // [181] invalid_language ?? ==Zero==
314
+ 0, 0, 0, 0, // [182] invalid_language ?? ==Zero==
315
+ 0, 0, 0, 0, // [183] invalid_language ?? ==Zero==
316
+ 0, 0, 0, 0, // [184] invalid_language ?? ==Zero==
317
+ 0, 0, 0, 0, // [185] X_BORK_BORK_BORK zzb ==Zero==
318
+ 0, 0, 0, 0, // [186] X_PIG_LATIN zzp ==Zero==
319
+ 0, 0, 0, 0, // [187] X_HACKER zzh ==Zero==
320
+ 0, 0, 0, 0, // [188] X_KLINGON tlh ==Zero==
321
+ 0, 0, 0, 0, // [189] X_ELMER_FUDD zze ==Zero==
322
+ 0, 0, 0, 0, // [190] X_OGHAM xx-Ogam ==Zero==
323
+ 0, 0, 0, 0, // [191] X_RUNIC xx-Runr ==Zero==
324
+
325
+ 0, 0, 0, 0, // [192] X_YI xx-Yiii ==Zero==
326
+ 0, 0, 0, 0, // [193] X_OLD_ITALIC xx-Ital ==Zero==
327
+ 0, 0, 0, 0, // [194] X_GOTHIC xx-Goth ==Zero==
328
+ 0, 0, 0, 0, // [195] X_DESERET xx-Dsrt ==Zero==
329
+ 0, 0, 0, 0, // [196] X_HANUNOO xx-Hano ==Zero==
330
+ 0, 0, 0, 0, // [197] X_BUHID xx-Buhd ==Zero==
331
+ 0, 0, 0, 0, // [198] X_TAGBANWA xx-Tagb ==Zero==
332
+ 0, 0, 0, 0, // [199] X_TAI_LE xx-Tale ==Zero==
333
+ 0, 0, 0, 0, // [200] X_LINEAR_B xx-Linb ==Zero==
334
+ 0, 0, 0, 0, // [201] X_UGARITIC xx-Ugar ==Zero==
335
+ 0, 0, 0, 0, // [202] X_SHAVIAN xx-Shaw ==Zero==
336
+ 0, 0, 0, 0, // [203] X_OSMANYA xx-Osma ==Zero==
337
+ 0, 0, 0, 0, // [204] X_CYPRIOT xx-Cprt ==Zero==
338
+ 0, 0, 0, 0, // [205] X_BUGINESE xx-Bugi ==Zero==
339
+ 0, 0, 0, 0, // [206] X_COPTIC xx-Copt ==Zero==
340
+ 0, 0, 0, 0, // [207] X_NEW_TAI_LUE xx-Talu ==Zero==
341
+ 0, 0, 0, 0, // [208] X_GLAGOLITIC xx-Glag ==Zero==
342
+ 0, 0, 0, 0, // [209] X_TIFINAGH xx-Tfng ==Zero==
343
+ 0, 0, 0, 0, // [210] X_SYLOTI_NAGRI xx-Sylo ==Zero==
344
+ 0, 0, 0, 0, // [211] X_OLD_PERSIAN xx-Xpeo ==Zero==
345
+ 0, 0, 0, 0, // [212] X_KHAROSHTHI xx-Khar ==Zero==
346
+ 0, 0, 0, 0, // [213] X_BALINESE xx-Bali ==Zero==
347
+ 0, 0, 0, 0, // [214] X_CUNEIFORM xx-Xsux ==Zero==
348
+ 0, 0, 0, 0, // [215] X_PHOENICIAN xx-Phnx ==Zero==
349
+ 0, 0, 0, 0, // [216] X_PHAGS_PA xx-Phag ==Zero==
350
+ 0, 0, 0, 0, // [217] X_NKO xx-Nkoo ==Zero==
351
+ 0, 0, 0, 0, // [218] X_SUDANESE xx-Sund ==Zero==
352
+ 0, 0, 0, 0, // [219] X_LEPCHA xx-Lepc ==Zero==
353
+ 0, 0, 0, 0, // [220] X_OL_CHIKI xx-Olck ==Zero==
354
+ 0, 0, 0, 0, // [221] X_VAI xx-Vaii ==Zero==
355
+ 0, 0, 0, 0, // [222] X_SAURASHTRA xx-Saur ==Zero==
356
+ 0, 0, 0, 0, // [223] X_KAYAH_LI xx-Kali ==Zero==
357
+
358
+ 0, 0, 0, 0, // [224] X_REJANG xx-Rjng ==Zero==
359
+ 0, 0, 0, 0, // [225] X_LYCIAN xx-Lyci ==Zero==
360
+ 0, 0, 0, 0, // [226] X_CARIAN xx-Cari ==Zero==
361
+ 0, 0, 0, 0, // [227] X_LYDIAN xx-Lydi ==Zero==
362
+ 0, 0, 0, 0, // [228] X_CHAM xx-Cham ==Zero==
363
+ 0, 0, 0, 0, // [229] invalid_language ?? ==Zero==
364
+ 0, 0, 0, 0, // [230] invalid_language ?? ==Zero==
365
+ 0, 0, 0, 0, // [231] invalid_language ?? ==Zero==
366
+ 0, 0, 0, 0, // [232] invalid_language ?? ==Zero==
367
+ 0, 0, 0, 0, // [233] invalid_language ?? ==Zero==
368
+ 0, 0, 0, 0, // [234] invalid_language ?? ==Zero==
369
+ 0, 0, 0, 0, // [235] invalid_language ?? ==Zero==
370
+ 0, 0, 0, 0, // [236] invalid_language ?? ==Zero==
371
+ 0, 0, 0, 0, // [237] invalid_language ?? ==Zero==
372
+ 0, 0, 0, 0, // [238] invalid_language ?? ==Zero==
373
+ 0, 0, 0, 0, // [239] invalid_language ?? ==Zero==
374
+ 0, 0, 0, 0, // [240] invalid_language ?? ==Zero==
375
+ 0, 0, 0, 0, // [241] invalid_language ?? ==Zero==
376
+ 0, 0, 0, 0, // [242] invalid_language ?? ==Zero==
377
+ 0, 0, 0, 0, // [243] invalid_language ?? ==Zero==
378
+ };
379
+
380
+ COMPILE_ASSERT(EXT_NUM_LANGUAGES >= 209, k_ext_num_languages_changed);