multi_translate 0.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,15 @@
1
+ ---
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ YTk2OTg2MzAyYmY0OWFjOTJkOGNjZDA0YzVjNTk1NGNiMDQ5NmNmYw==
5
+ data.tar.gz: !binary |-
6
+ ODIyMjcyMzI5NDFkNDBiZGZkYzMwMjU4ZjE2NmIwMjJlMDE5ZTY5MQ==
7
+ !binary "U0hBNTEy":
8
+ metadata.gz: !binary |-
9
+ MjkwNjMyMTlmOTQyMGI4ZTI5NDdjZTM5MTIwYWNlNjJhMzliMjIyMjE3YTIw
10
+ ZDBjNDcxYzVmMWQ3ZDZhYTBhODg1NThlZDg1MzM1OGY4YWFhODZhNjE2ZmI1
11
+ YzZkZTI2OTAzMGRjYmQ1NWU3M2QwYmY3NjI2Y2M3MmVmMTAzMDA=
12
+ data.tar.gz: !binary |-
13
+ OTA3MTQ0ZTk3MGE2NmY4MmZmYWZmZWNkMGZkNThlNGQ5MTRkZGNhZjdjNDdj
14
+ ZTMyNGQzNzQzYzJmN2M2YmVjNTNkYWIzNzg3YzYyOGEwMjUwMzU3MjVjOGI0
15
+ ZGIyNzUxMDUyOTA3NGUxY2IyZmU1MDg5ZDM1ZmYwNmJkODE2ZWU=
data/LICENSE ADDED
@@ -0,0 +1,20 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2014 Roberto Romero
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy of
6
+ this software and associated documentation files (the "Software"), to deal in
7
+ the Software without restriction, including without limitation the rights to
8
+ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
9
+ the Software, and to permit persons to whom the Software is furnished to do so,
10
+ subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
17
+ FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
18
+ COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
19
+ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
20
+ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,41 @@
1
+ require 'open-uri'
2
+ require 'uri'
3
+ require 'nokogiri'
4
+
5
+ require 'multi_translate/language_pairs.rb'
6
+ require 'multi_translate/languages.rb'
7
+ require 'multi_translate/engines.rb'
8
+
9
+ module MultiTranslate
10
+ # Performs a translation between "from" and "to" languages, using "text" as the input, and using "engine"
11
+ # as translation engine.
12
+ # You must check that the input and output languages are supported by the selected translation engine. Otherwise
13
+ # this method will raise an exception.
14
+ def self.translate(engine, from, to, text)
15
+ if from == Languages::AUTODETECT && engine != Engines::GOOGLE
16
+ raise "The autodetect feature is only available for the Google engine"
17
+ end
18
+
19
+ raise "You can't use autodetect for the destination laguage" if to == Languages::AUTODETECT
20
+ raise "There is no engine called #{engine}" unless LANGUAGE_PAIRS[engine]
21
+ unless LANGUAGE_PAIRS[engine].include?([from, to])
22
+ raise "There is no such language pairs (#{from}, #{to}) for the engine #{engine}"
23
+ end
24
+
25
+ begin
26
+ case engine
27
+ when Engines::APERTIUM
28
+ url = "http://xixona.dlsi.ua.es/webservice/ws.php?mode=#{from}-#{to}&format=txt&text=#{text}"
29
+ result = open(URI.escape(url), {'User-Agent' => 'apertium2perl'}).read.strip
30
+ return result
31
+ when Engines::GOOGLE
32
+ url = "http://translate.google.com/?langpair=#{from}|#{to}&text=#{text}"
33
+ doc = Nokogiri::HTML(open(URI.escape(url)))
34
+ result = doc.search('//span[@id="result_box"]').text
35
+ return result
36
+ end
37
+ rescue OpenURI::HTTPError
38
+ return ''
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,6 @@
1
+ module MultiTranslate
2
+ module Engines
3
+ GOOGLE = 'google'
4
+ APERTIUM = 'apertium'
5
+ end
6
+ end
@@ -0,0 +1,1235 @@
1
+ module MultiTranslate
2
+ LANGUAGE_PAIRS = {
3
+ 'google' => [
4
+ ['auto', 'ar'],
5
+ ['auto', 'bg'],
6
+ ['auto', 'ca'],
7
+ ['auto', 'zh-CN'],
8
+ ['auto', 'hr'],
9
+ ['auto', 'cs'],
10
+ ['auto', 'da'],
11
+ ['auto', 'nl'],
12
+ ['auto', 'en'],
13
+ ['auto', 'tl'],
14
+ ['auto', 'fi'],
15
+ ['auto', 'fr'],
16
+ ['auto', 'de'],
17
+ ['auto', 'el'],
18
+ ['auto', 'iw'],
19
+ ['auto', 'hi'],
20
+ ['auto', 'id'],
21
+ ['auto', 'it'],
22
+ ['auto', 'ja'],
23
+ ['auto', 'ko'],
24
+ ['auto', 'lv'],
25
+ ['auto', 'lt'],
26
+ ['auto', 'no'],
27
+ ['auto', 'pl'],
28
+ ['auto', 'pt'],
29
+ ['auto', 'ro'],
30
+ ['auto', 'ru'],
31
+ ['auto', 'sr'],
32
+ ['auto', 'sk'],
33
+ ['auto', 'sl'],
34
+ ['auto', 'es'],
35
+ ['auto', 'sv'],
36
+ ['auto', 'uk'],
37
+ ['auto', 'vi'],
38
+ ['ar', 'ar'],
39
+ ['ar', 'bg'],
40
+ ['ar', 'ca'],
41
+ ['ar', 'zh-CN'],
42
+ ['ar', 'hr'],
43
+ ['ar', 'cs'],
44
+ ['ar', 'da'],
45
+ ['ar', 'nl'],
46
+ ['ar', 'en'],
47
+ ['ar', 'tl'],
48
+ ['ar', 'fi'],
49
+ ['ar', 'fr'],
50
+ ['ar', 'de'],
51
+ ['ar', 'el'],
52
+ ['ar', 'iw'],
53
+ ['ar', 'hi'],
54
+ ['ar', 'id'],
55
+ ['ar', 'it'],
56
+ ['ar', 'ja'],
57
+ ['ar', 'ko'],
58
+ ['ar', 'lv'],
59
+ ['ar', 'lt'],
60
+ ['ar', 'no'],
61
+ ['ar', 'pl'],
62
+ ['ar', 'pt'],
63
+ ['ar', 'ro'],
64
+ ['ar', 'ru'],
65
+ ['ar', 'sr'],
66
+ ['ar', 'sk'],
67
+ ['ar', 'sl'],
68
+ ['ar', 'es'],
69
+ ['ar', 'sv'],
70
+ ['ar', 'uk'],
71
+ ['ar', 'vi'],
72
+ ['bg', 'ar'],
73
+ ['bg', 'bg'],
74
+ ['bg', 'ca'],
75
+ ['bg', 'zh-CN'],
76
+ ['bg', 'hr'],
77
+ ['bg', 'cs'],
78
+ ['bg', 'da'],
79
+ ['bg', 'nl'],
80
+ ['bg', 'en'],
81
+ ['bg', 'tl'],
82
+ ['bg', 'fi'],
83
+ ['bg', 'fr'],
84
+ ['bg', 'de'],
85
+ ['bg', 'el'],
86
+ ['bg', 'iw'],
87
+ ['bg', 'hi'],
88
+ ['bg', 'id'],
89
+ ['bg', 'it'],
90
+ ['bg', 'ja'],
91
+ ['bg', 'ko'],
92
+ ['bg', 'lv'],
93
+ ['bg', 'lt'],
94
+ ['bg', 'no'],
95
+ ['bg', 'pl'],
96
+ ['bg', 'pt'],
97
+ ['bg', 'ro'],
98
+ ['bg', 'ru'],
99
+ ['bg', 'sr'],
100
+ ['bg', 'sk'],
101
+ ['bg', 'sl'],
102
+ ['bg', 'es'],
103
+ ['bg', 'sv'],
104
+ ['bg', 'uk'],
105
+ ['bg', 'vi'],
106
+ ['ca', 'ar'],
107
+ ['ca', 'bg'],
108
+ ['ca', 'ca'],
109
+ ['ca', 'zh-CN'],
110
+ ['ca', 'hr'],
111
+ ['ca', 'cs'],
112
+ ['ca', 'da'],
113
+ ['ca', 'nl'],
114
+ ['ca', 'en'],
115
+ ['ca', 'tl'],
116
+ ['ca', 'fi'],
117
+ ['ca', 'fr'],
118
+ ['ca', 'de'],
119
+ ['ca', 'el'],
120
+ ['ca', 'iw'],
121
+ ['ca', 'hi'],
122
+ ['ca', 'id'],
123
+ ['ca', 'it'],
124
+ ['ca', 'ja'],
125
+ ['ca', 'ko'],
126
+ ['ca', 'lv'],
127
+ ['ca', 'lt'],
128
+ ['ca', 'no'],
129
+ ['ca', 'pl'],
130
+ ['ca', 'pt'],
131
+ ['ca', 'ro'],
132
+ ['ca', 'ru'],
133
+ ['ca', 'sr'],
134
+ ['ca', 'sk'],
135
+ ['ca', 'sl'],
136
+ ['ca', 'es'],
137
+ ['ca', 'sv'],
138
+ ['ca', 'uk'],
139
+ ['ca', 'vi'],
140
+ ['zh-CN', 'ar'],
141
+ ['zh-CN', 'bg'],
142
+ ['zh-CN', 'ca'],
143
+ ['zh-CN', 'zh-CN'],
144
+ ['zh-CN', 'hr'],
145
+ ['zh-CN', 'cs'],
146
+ ['zh-CN', 'da'],
147
+ ['zh-CN', 'nl'],
148
+ ['zh-CN', 'en'],
149
+ ['zh-CN', 'tl'],
150
+ ['zh-CN', 'fi'],
151
+ ['zh-CN', 'fr'],
152
+ ['zh-CN', 'de'],
153
+ ['zh-CN', 'el'],
154
+ ['zh-CN', 'iw'],
155
+ ['zh-CN', 'hi'],
156
+ ['zh-CN', 'id'],
157
+ ['zh-CN', 'it'],
158
+ ['zh-CN', 'ja'],
159
+ ['zh-CN', 'ko'],
160
+ ['zh-CN', 'lv'],
161
+ ['zh-CN', 'lt'],
162
+ ['zh-CN', 'no'],
163
+ ['zh-CN', 'pl'],
164
+ ['zh-CN', 'pt'],
165
+ ['zh-CN', 'ro'],
166
+ ['zh-CN', 'ru'],
167
+ ['zh-CN', 'sr'],
168
+ ['zh-CN', 'sk'],
169
+ ['zh-CN', 'sl'],
170
+ ['zh-CN', 'es'],
171
+ ['zh-CN', 'sv'],
172
+ ['zh-CN', 'uk'],
173
+ ['zh-CN', 'vi'],
174
+ ['hr', 'ar'],
175
+ ['hr', 'bg'],
176
+ ['hr', 'ca'],
177
+ ['hr', 'zh-CN'],
178
+ ['hr', 'hr'],
179
+ ['hr', 'cs'],
180
+ ['hr', 'da'],
181
+ ['hr', 'nl'],
182
+ ['hr', 'en'],
183
+ ['hr', 'tl'],
184
+ ['hr', 'fi'],
185
+ ['hr', 'fr'],
186
+ ['hr', 'de'],
187
+ ['hr', 'el'],
188
+ ['hr', 'iw'],
189
+ ['hr', 'hi'],
190
+ ['hr', 'id'],
191
+ ['hr', 'it'],
192
+ ['hr', 'ja'],
193
+ ['hr', 'ko'],
194
+ ['hr', 'lv'],
195
+ ['hr', 'lt'],
196
+ ['hr', 'no'],
197
+ ['hr', 'pl'],
198
+ ['hr', 'pt'],
199
+ ['hr', 'ro'],
200
+ ['hr', 'ru'],
201
+ ['hr', 'sr'],
202
+ ['hr', 'sk'],
203
+ ['hr', 'sl'],
204
+ ['hr', 'es'],
205
+ ['hr', 'sv'],
206
+ ['hr', 'uk'],
207
+ ['hr', 'vi'],
208
+ ['cs', 'ar'],
209
+ ['cs', 'bg'],
210
+ ['cs', 'ca'],
211
+ ['cs', 'zh-CN'],
212
+ ['cs', 'hr'],
213
+ ['cs', 'cs'],
214
+ ['cs', 'da'],
215
+ ['cs', 'nl'],
216
+ ['cs', 'en'],
217
+ ['cs', 'tl'],
218
+ ['cs', 'fi'],
219
+ ['cs', 'fr'],
220
+ ['cs', 'de'],
221
+ ['cs', 'el'],
222
+ ['cs', 'iw'],
223
+ ['cs', 'hi'],
224
+ ['cs', 'id'],
225
+ ['cs', 'it'],
226
+ ['cs', 'ja'],
227
+ ['cs', 'ko'],
228
+ ['cs', 'lv'],
229
+ ['cs', 'lt'],
230
+ ['cs', 'no'],
231
+ ['cs', 'pl'],
232
+ ['cs', 'pt'],
233
+ ['cs', 'ro'],
234
+ ['cs', 'ru'],
235
+ ['cs', 'sr'],
236
+ ['cs', 'sk'],
237
+ ['cs', 'sl'],
238
+ ['cs', 'es'],
239
+ ['cs', 'sv'],
240
+ ['cs', 'uk'],
241
+ ['cs', 'vi'],
242
+ ['da', 'ar'],
243
+ ['da', 'bg'],
244
+ ['da', 'ca'],
245
+ ['da', 'zh-CN'],
246
+ ['da', 'hr'],
247
+ ['da', 'cs'],
248
+ ['da', 'da'],
249
+ ['da', 'nl'],
250
+ ['da', 'en'],
251
+ ['da', 'tl'],
252
+ ['da', 'fi'],
253
+ ['da', 'fr'],
254
+ ['da', 'de'],
255
+ ['da', 'el'],
256
+ ['da', 'iw'],
257
+ ['da', 'hi'],
258
+ ['da', 'id'],
259
+ ['da', 'it'],
260
+ ['da', 'ja'],
261
+ ['da', 'ko'],
262
+ ['da', 'lv'],
263
+ ['da', 'lt'],
264
+ ['da', 'no'],
265
+ ['da', 'pl'],
266
+ ['da', 'pt'],
267
+ ['da', 'ro'],
268
+ ['da', 'ru'],
269
+ ['da', 'sr'],
270
+ ['da', 'sk'],
271
+ ['da', 'sl'],
272
+ ['da', 'es'],
273
+ ['da', 'sv'],
274
+ ['da', 'uk'],
275
+ ['da', 'vi'],
276
+ ['nl', 'ar'],
277
+ ['nl', 'bg'],
278
+ ['nl', 'ca'],
279
+ ['nl', 'zh-CN'],
280
+ ['nl', 'hr'],
281
+ ['nl', 'cs'],
282
+ ['nl', 'da'],
283
+ ['nl', 'nl'],
284
+ ['nl', 'en'],
285
+ ['nl', 'tl'],
286
+ ['nl', 'fi'],
287
+ ['nl', 'fr'],
288
+ ['nl', 'de'],
289
+ ['nl', 'el'],
290
+ ['nl', 'iw'],
291
+ ['nl', 'hi'],
292
+ ['nl', 'id'],
293
+ ['nl', 'it'],
294
+ ['nl', 'ja'],
295
+ ['nl', 'ko'],
296
+ ['nl', 'lv'],
297
+ ['nl', 'lt'],
298
+ ['nl', 'no'],
299
+ ['nl', 'pl'],
300
+ ['nl', 'pt'],
301
+ ['nl', 'ro'],
302
+ ['nl', 'ru'],
303
+ ['nl', 'sr'],
304
+ ['nl', 'sk'],
305
+ ['nl', 'sl'],
306
+ ['nl', 'es'],
307
+ ['nl', 'sv'],
308
+ ['nl', 'uk'],
309
+ ['nl', 'vi'],
310
+ ['en', 'ar'],
311
+ ['en', 'bg'],
312
+ ['en', 'ca'],
313
+ ['en', 'zh-CN'],
314
+ ['en', 'hr'],
315
+ ['en', 'cs'],
316
+ ['en', 'da'],
317
+ ['en', 'nl'],
318
+ ['en', 'en'],
319
+ ['en', 'tl'],
320
+ ['en', 'fi'],
321
+ ['en', 'fr'],
322
+ ['en', 'de'],
323
+ ['en', 'el'],
324
+ ['en', 'iw'],
325
+ ['en', 'hi'],
326
+ ['en', 'id'],
327
+ ['en', 'it'],
328
+ ['en', 'ja'],
329
+ ['en', 'ko'],
330
+ ['en', 'lv'],
331
+ ['en', 'lt'],
332
+ ['en', 'no'],
333
+ ['en', 'pl'],
334
+ ['en', 'pt'],
335
+ ['en', 'ro'],
336
+ ['en', 'ru'],
337
+ ['en', 'sr'],
338
+ ['en', 'sk'],
339
+ ['en', 'sl'],
340
+ ['en', 'es'],
341
+ ['en', 'sv'],
342
+ ['en', 'uk'],
343
+ ['en', 'vi'],
344
+ ['tl', 'ar'],
345
+ ['tl', 'bg'],
346
+ ['tl', 'ca'],
347
+ ['tl', 'zh-CN'],
348
+ ['tl', 'hr'],
349
+ ['tl', 'cs'],
350
+ ['tl', 'da'],
351
+ ['tl', 'nl'],
352
+ ['tl', 'en'],
353
+ ['tl', 'tl'],
354
+ ['tl', 'fi'],
355
+ ['tl', 'fr'],
356
+ ['tl', 'de'],
357
+ ['tl', 'el'],
358
+ ['tl', 'iw'],
359
+ ['tl', 'hi'],
360
+ ['tl', 'id'],
361
+ ['tl', 'it'],
362
+ ['tl', 'ja'],
363
+ ['tl', 'ko'],
364
+ ['tl', 'lv'],
365
+ ['tl', 'lt'],
366
+ ['tl', 'no'],
367
+ ['tl', 'pl'],
368
+ ['tl', 'pt'],
369
+ ['tl', 'ro'],
370
+ ['tl', 'ru'],
371
+ ['tl', 'sr'],
372
+ ['tl', 'sk'],
373
+ ['tl', 'sl'],
374
+ ['tl', 'es'],
375
+ ['tl', 'sv'],
376
+ ['tl', 'uk'],
377
+ ['tl', 'vi'],
378
+ ['fi', 'ar'],
379
+ ['fi', 'bg'],
380
+ ['fi', 'ca'],
381
+ ['fi', 'zh-CN'],
382
+ ['fi', 'hr'],
383
+ ['fi', 'cs'],
384
+ ['fi', 'da'],
385
+ ['fi', 'nl'],
386
+ ['fi', 'en'],
387
+ ['fi', 'tl'],
388
+ ['fi', 'fi'],
389
+ ['fi', 'fr'],
390
+ ['fi', 'de'],
391
+ ['fi', 'el'],
392
+ ['fi', 'iw'],
393
+ ['fi', 'hi'],
394
+ ['fi', 'id'],
395
+ ['fi', 'it'],
396
+ ['fi', 'ja'],
397
+ ['fi', 'ko'],
398
+ ['fi', 'lv'],
399
+ ['fi', 'lt'],
400
+ ['fi', 'no'],
401
+ ['fi', 'pl'],
402
+ ['fi', 'pt'],
403
+ ['fi', 'ro'],
404
+ ['fi', 'ru'],
405
+ ['fi', 'sr'],
406
+ ['fi', 'sk'],
407
+ ['fi', 'sl'],
408
+ ['fi', 'es'],
409
+ ['fi', 'sv'],
410
+ ['fi', 'uk'],
411
+ ['fi', 'vi'],
412
+ ['fr', 'ar'],
413
+ ['fr', 'bg'],
414
+ ['fr', 'ca'],
415
+ ['fr', 'zh-CN'],
416
+ ['fr', 'hr'],
417
+ ['fr', 'cs'],
418
+ ['fr', 'da'],
419
+ ['fr', 'nl'],
420
+ ['fr', 'en'],
421
+ ['fr', 'tl'],
422
+ ['fr', 'fi'],
423
+ ['fr', 'fr'],
424
+ ['fr', 'de'],
425
+ ['fr', 'el'],
426
+ ['fr', 'iw'],
427
+ ['fr', 'hi'],
428
+ ['fr', 'id'],
429
+ ['fr', 'it'],
430
+ ['fr', 'ja'],
431
+ ['fr', 'ko'],
432
+ ['fr', 'lv'],
433
+ ['fr', 'lt'],
434
+ ['fr', 'no'],
435
+ ['fr', 'pl'],
436
+ ['fr', 'pt'],
437
+ ['fr', 'ro'],
438
+ ['fr', 'ru'],
439
+ ['fr', 'sr'],
440
+ ['fr', 'sk'],
441
+ ['fr', 'sl'],
442
+ ['fr', 'es'],
443
+ ['fr', 'sv'],
444
+ ['fr', 'uk'],
445
+ ['fr', 'vi'],
446
+ ['de', 'ar'],
447
+ ['de', 'bg'],
448
+ ['de', 'ca'],
449
+ ['de', 'zh-CN'],
450
+ ['de', 'hr'],
451
+ ['de', 'cs'],
452
+ ['de', 'da'],
453
+ ['de', 'nl'],
454
+ ['de', 'en'],
455
+ ['de', 'tl'],
456
+ ['de', 'fi'],
457
+ ['de', 'fr'],
458
+ ['de', 'de'],
459
+ ['de', 'el'],
460
+ ['de', 'iw'],
461
+ ['de', 'hi'],
462
+ ['de', 'id'],
463
+ ['de', 'it'],
464
+ ['de', 'ja'],
465
+ ['de', 'ko'],
466
+ ['de', 'lv'],
467
+ ['de', 'lt'],
468
+ ['de', 'no'],
469
+ ['de', 'pl'],
470
+ ['de', 'pt'],
471
+ ['de', 'ro'],
472
+ ['de', 'ru'],
473
+ ['de', 'sr'],
474
+ ['de', 'sk'],
475
+ ['de', 'sl'],
476
+ ['de', 'es'],
477
+ ['de', 'sv'],
478
+ ['de', 'uk'],
479
+ ['de', 'vi'],
480
+ ['el', 'ar'],
481
+ ['el', 'bg'],
482
+ ['el', 'ca'],
483
+ ['el', 'zh-CN'],
484
+ ['el', 'hr'],
485
+ ['el', 'cs'],
486
+ ['el', 'da'],
487
+ ['el', 'nl'],
488
+ ['el', 'en'],
489
+ ['el', 'tl'],
490
+ ['el', 'fi'],
491
+ ['el', 'fr'],
492
+ ['el', 'de'],
493
+ ['el', 'el'],
494
+ ['el', 'iw'],
495
+ ['el', 'hi'],
496
+ ['el', 'id'],
497
+ ['el', 'it'],
498
+ ['el', 'ja'],
499
+ ['el', 'ko'],
500
+ ['el', 'lv'],
501
+ ['el', 'lt'],
502
+ ['el', 'no'],
503
+ ['el', 'pl'],
504
+ ['el', 'pt'],
505
+ ['el', 'ro'],
506
+ ['el', 'ru'],
507
+ ['el', 'sr'],
508
+ ['el', 'sk'],
509
+ ['el', 'sl'],
510
+ ['el', 'es'],
511
+ ['el', 'sv'],
512
+ ['el', 'uk'],
513
+ ['el', 'vi'],
514
+ ['iw', 'ar'],
515
+ ['iw', 'bg'],
516
+ ['iw', 'ca'],
517
+ ['iw', 'zh-CN'],
518
+ ['iw', 'hr'],
519
+ ['iw', 'cs'],
520
+ ['iw', 'da'],
521
+ ['iw', 'nl'],
522
+ ['iw', 'en'],
523
+ ['iw', 'tl'],
524
+ ['iw', 'fi'],
525
+ ['iw', 'fr'],
526
+ ['iw', 'de'],
527
+ ['iw', 'el'],
528
+ ['iw', 'iw'],
529
+ ['iw', 'hi'],
530
+ ['iw', 'id'],
531
+ ['iw', 'it'],
532
+ ['iw', 'ja'],
533
+ ['iw', 'ko'],
534
+ ['iw', 'lv'],
535
+ ['iw', 'lt'],
536
+ ['iw', 'no'],
537
+ ['iw', 'pl'],
538
+ ['iw', 'pt'],
539
+ ['iw', 'ro'],
540
+ ['iw', 'ru'],
541
+ ['iw', 'sr'],
542
+ ['iw', 'sk'],
543
+ ['iw', 'sl'],
544
+ ['iw', 'es'],
545
+ ['iw', 'sv'],
546
+ ['iw', 'uk'],
547
+ ['iw', 'vi'],
548
+ ['hi', 'ar'],
549
+ ['hi', 'bg'],
550
+ ['hi', 'ca'],
551
+ ['hi', 'zh-CN'],
552
+ ['hi', 'hr'],
553
+ ['hi', 'cs'],
554
+ ['hi', 'da'],
555
+ ['hi', 'nl'],
556
+ ['hi', 'en'],
557
+ ['hi', 'tl'],
558
+ ['hi', 'fi'],
559
+ ['hi', 'fr'],
560
+ ['hi', 'de'],
561
+ ['hi', 'el'],
562
+ ['hi', 'iw'],
563
+ ['hi', 'hi'],
564
+ ['hi', 'id'],
565
+ ['hi', 'it'],
566
+ ['hi', 'ja'],
567
+ ['hi', 'ko'],
568
+ ['hi', 'lv'],
569
+ ['hi', 'lt'],
570
+ ['hi', 'no'],
571
+ ['hi', 'pl'],
572
+ ['hi', 'pt'],
573
+ ['hi', 'ro'],
574
+ ['hi', 'ru'],
575
+ ['hi', 'sr'],
576
+ ['hi', 'sk'],
577
+ ['hi', 'sl'],
578
+ ['hi', 'es'],
579
+ ['hi', 'sv'],
580
+ ['hi', 'uk'],
581
+ ['hi', 'vi'],
582
+ ['id', 'ar'],
583
+ ['id', 'bg'],
584
+ ['id', 'ca'],
585
+ ['id', 'zh-CN'],
586
+ ['id', 'hr'],
587
+ ['id', 'cs'],
588
+ ['id', 'da'],
589
+ ['id', 'nl'],
590
+ ['id', 'en'],
591
+ ['id', 'tl'],
592
+ ['id', 'fi'],
593
+ ['id', 'fr'],
594
+ ['id', 'de'],
595
+ ['id', 'el'],
596
+ ['id', 'iw'],
597
+ ['id', 'hi'],
598
+ ['id', 'id'],
599
+ ['id', 'it'],
600
+ ['id', 'ja'],
601
+ ['id', 'ko'],
602
+ ['id', 'lv'],
603
+ ['id', 'lt'],
604
+ ['id', 'no'],
605
+ ['id', 'pl'],
606
+ ['id', 'pt'],
607
+ ['id', 'ro'],
608
+ ['id', 'ru'],
609
+ ['id', 'sr'],
610
+ ['id', 'sk'],
611
+ ['id', 'sl'],
612
+ ['id', 'es'],
613
+ ['id', 'sv'],
614
+ ['id', 'uk'],
615
+ ['id', 'vi'],
616
+ ['it', 'ar'],
617
+ ['it', 'bg'],
618
+ ['it', 'ca'],
619
+ ['it', 'zh-CN'],
620
+ ['it', 'hr'],
621
+ ['it', 'cs'],
622
+ ['it', 'da'],
623
+ ['it', 'nl'],
624
+ ['it', 'en'],
625
+ ['it', 'tl'],
626
+ ['it', 'fi'],
627
+ ['it', 'fr'],
628
+ ['it', 'de'],
629
+ ['it', 'el'],
630
+ ['it', 'iw'],
631
+ ['it', 'hi'],
632
+ ['it', 'id'],
633
+ ['it', 'it'],
634
+ ['it', 'ja'],
635
+ ['it', 'ko'],
636
+ ['it', 'lv'],
637
+ ['it', 'lt'],
638
+ ['it', 'no'],
639
+ ['it', 'pl'],
640
+ ['it', 'pt'],
641
+ ['it', 'ro'],
642
+ ['it', 'ru'],
643
+ ['it', 'sr'],
644
+ ['it', 'sk'],
645
+ ['it', 'sl'],
646
+ ['it', 'es'],
647
+ ['it', 'sv'],
648
+ ['it', 'uk'],
649
+ ['it', 'vi'],
650
+ ['ja', 'ar'],
651
+ ['ja', 'bg'],
652
+ ['ja', 'ca'],
653
+ ['ja', 'zh-CN'],
654
+ ['ja', 'hr'],
655
+ ['ja', 'cs'],
656
+ ['ja', 'da'],
657
+ ['ja', 'nl'],
658
+ ['ja', 'en'],
659
+ ['ja', 'tl'],
660
+ ['ja', 'fi'],
661
+ ['ja', 'fr'],
662
+ ['ja', 'de'],
663
+ ['ja', 'el'],
664
+ ['ja', 'iw'],
665
+ ['ja', 'hi'],
666
+ ['ja', 'id'],
667
+ ['ja', 'it'],
668
+ ['ja', 'ja'],
669
+ ['ja', 'ko'],
670
+ ['ja', 'lv'],
671
+ ['ja', 'lt'],
672
+ ['ja', 'no'],
673
+ ['ja', 'pl'],
674
+ ['ja', 'pt'],
675
+ ['ja', 'ro'],
676
+ ['ja', 'ru'],
677
+ ['ja', 'sr'],
678
+ ['ja', 'sk'],
679
+ ['ja', 'sl'],
680
+ ['ja', 'es'],
681
+ ['ja', 'sv'],
682
+ ['ja', 'uk'],
683
+ ['ja', 'vi'],
684
+ ['ko', 'ar'],
685
+ ['ko', 'bg'],
686
+ ['ko', 'ca'],
687
+ ['ko', 'zh-CN'],
688
+ ['ko', 'hr'],
689
+ ['ko', 'cs'],
690
+ ['ko', 'da'],
691
+ ['ko', 'nl'],
692
+ ['ko', 'en'],
693
+ ['ko', 'tl'],
694
+ ['ko', 'fi'],
695
+ ['ko', 'fr'],
696
+ ['ko', 'de'],
697
+ ['ko', 'el'],
698
+ ['ko', 'iw'],
699
+ ['ko', 'hi'],
700
+ ['ko', 'id'],
701
+ ['ko', 'it'],
702
+ ['ko', 'ja'],
703
+ ['ko', 'ko'],
704
+ ['ko', 'lv'],
705
+ ['ko', 'lt'],
706
+ ['ko', 'no'],
707
+ ['ko', 'pl'],
708
+ ['ko', 'pt'],
709
+ ['ko', 'ro'],
710
+ ['ko', 'ru'],
711
+ ['ko', 'sr'],
712
+ ['ko', 'sk'],
713
+ ['ko', 'sl'],
714
+ ['ko', 'es'],
715
+ ['ko', 'sv'],
716
+ ['ko', 'uk'],
717
+ ['ko', 'vi'],
718
+ ['lv', 'ar'],
719
+ ['lv', 'bg'],
720
+ ['lv', 'ca'],
721
+ ['lv', 'zh-CN'],
722
+ ['lv', 'hr'],
723
+ ['lv', 'cs'],
724
+ ['lv', 'da'],
725
+ ['lv', 'nl'],
726
+ ['lv', 'en'],
727
+ ['lv', 'tl'],
728
+ ['lv', 'fi'],
729
+ ['lv', 'fr'],
730
+ ['lv', 'de'],
731
+ ['lv', 'el'],
732
+ ['lv', 'iw'],
733
+ ['lv', 'hi'],
734
+ ['lv', 'id'],
735
+ ['lv', 'it'],
736
+ ['lv', 'ja'],
737
+ ['lv', 'ko'],
738
+ ['lv', 'lv'],
739
+ ['lv', 'lt'],
740
+ ['lv', 'no'],
741
+ ['lv', 'pl'],
742
+ ['lv', 'pt'],
743
+ ['lv', 'ro'],
744
+ ['lv', 'ru'],
745
+ ['lv', 'sr'],
746
+ ['lv', 'sk'],
747
+ ['lv', 'sl'],
748
+ ['lv', 'es'],
749
+ ['lv', 'sv'],
750
+ ['lv', 'uk'],
751
+ ['lv', 'vi'],
752
+ ['lt', 'ar'],
753
+ ['lt', 'bg'],
754
+ ['lt', 'ca'],
755
+ ['lt', 'zh-CN'],
756
+ ['lt', 'hr'],
757
+ ['lt', 'cs'],
758
+ ['lt', 'da'],
759
+ ['lt', 'nl'],
760
+ ['lt', 'en'],
761
+ ['lt', 'tl'],
762
+ ['lt', 'fi'],
763
+ ['lt', 'fr'],
764
+ ['lt', 'de'],
765
+ ['lt', 'el'],
766
+ ['lt', 'iw'],
767
+ ['lt', 'hi'],
768
+ ['lt', 'id'],
769
+ ['lt', 'it'],
770
+ ['lt', 'ja'],
771
+ ['lt', 'ko'],
772
+ ['lt', 'lv'],
773
+ ['lt', 'lt'],
774
+ ['lt', 'no'],
775
+ ['lt', 'pl'],
776
+ ['lt', 'pt'],
777
+ ['lt', 'ro'],
778
+ ['lt', 'ru'],
779
+ ['lt', 'sr'],
780
+ ['lt', 'sk'],
781
+ ['lt', 'sl'],
782
+ ['lt', 'es'],
783
+ ['lt', 'sv'],
784
+ ['lt', 'uk'],
785
+ ['lt', 'vi'],
786
+ ['no', 'ar'],
787
+ ['no', 'bg'],
788
+ ['no', 'ca'],
789
+ ['no', 'zh-CN'],
790
+ ['no', 'hr'],
791
+ ['no', 'cs'],
792
+ ['no', 'da'],
793
+ ['no', 'nl'],
794
+ ['no', 'en'],
795
+ ['no', 'tl'],
796
+ ['no', 'fi'],
797
+ ['no', 'fr'],
798
+ ['no', 'de'],
799
+ ['no', 'el'],
800
+ ['no', 'iw'],
801
+ ['no', 'hi'],
802
+ ['no', 'id'],
803
+ ['no', 'it'],
804
+ ['no', 'ja'],
805
+ ['no', 'ko'],
806
+ ['no', 'lv'],
807
+ ['no', 'lt'],
808
+ ['no', 'no'],
809
+ ['no', 'pl'],
810
+ ['no', 'pt'],
811
+ ['no', 'ro'],
812
+ ['no', 'ru'],
813
+ ['no', 'sr'],
814
+ ['no', 'sk'],
815
+ ['no', 'sl'],
816
+ ['no', 'es'],
817
+ ['no', 'sv'],
818
+ ['no', 'uk'],
819
+ ['no', 'vi'],
820
+ ['pl', 'ar'],
821
+ ['pl', 'bg'],
822
+ ['pl', 'ca'],
823
+ ['pl', 'zh-CN'],
824
+ ['pl', 'hr'],
825
+ ['pl', 'cs'],
826
+ ['pl', 'da'],
827
+ ['pl', 'nl'],
828
+ ['pl', 'en'],
829
+ ['pl', 'tl'],
830
+ ['pl', 'fi'],
831
+ ['pl', 'fr'],
832
+ ['pl', 'de'],
833
+ ['pl', 'el'],
834
+ ['pl', 'iw'],
835
+ ['pl', 'hi'],
836
+ ['pl', 'id'],
837
+ ['pl', 'it'],
838
+ ['pl', 'ja'],
839
+ ['pl', 'ko'],
840
+ ['pl', 'lv'],
841
+ ['pl', 'lt'],
842
+ ['pl', 'no'],
843
+ ['pl', 'pl'],
844
+ ['pl', 'pt'],
845
+ ['pl', 'ro'],
846
+ ['pl', 'ru'],
847
+ ['pl', 'sr'],
848
+ ['pl', 'sk'],
849
+ ['pl', 'sl'],
850
+ ['pl', 'es'],
851
+ ['pl', 'sv'],
852
+ ['pl', 'uk'],
853
+ ['pl', 'vi'],
854
+ ['pt', 'ar'],
855
+ ['pt', 'bg'],
856
+ ['pt', 'ca'],
857
+ ['pt', 'zh-CN'],
858
+ ['pt', 'hr'],
859
+ ['pt', 'cs'],
860
+ ['pt', 'da'],
861
+ ['pt', 'nl'],
862
+ ['pt', 'en'],
863
+ ['pt', 'tl'],
864
+ ['pt', 'fi'],
865
+ ['pt', 'fr'],
866
+ ['pt', 'de'],
867
+ ['pt', 'el'],
868
+ ['pt', 'iw'],
869
+ ['pt', 'hi'],
870
+ ['pt', 'id'],
871
+ ['pt', 'it'],
872
+ ['pt', 'ja'],
873
+ ['pt', 'ko'],
874
+ ['pt', 'lv'],
875
+ ['pt', 'lt'],
876
+ ['pt', 'no'],
877
+ ['pt', 'pl'],
878
+ ['pt', 'pt'],
879
+ ['pt', 'ro'],
880
+ ['pt', 'ru'],
881
+ ['pt', 'sr'],
882
+ ['pt', 'sk'],
883
+ ['pt', 'sl'],
884
+ ['pt', 'es'],
885
+ ['pt', 'sv'],
886
+ ['pt', 'uk'],
887
+ ['pt', 'vi'],
888
+ ['ro', 'ar'],
889
+ ['ro', 'bg'],
890
+ ['ro', 'ca'],
891
+ ['ro', 'zh-CN'],
892
+ ['ro', 'hr'],
893
+ ['ro', 'cs'],
894
+ ['ro', 'da'],
895
+ ['ro', 'nl'],
896
+ ['ro', 'en'],
897
+ ['ro', 'tl'],
898
+ ['ro', 'fi'],
899
+ ['ro', 'fr'],
900
+ ['ro', 'de'],
901
+ ['ro', 'el'],
902
+ ['ro', 'iw'],
903
+ ['ro', 'hi'],
904
+ ['ro', 'id'],
905
+ ['ro', 'it'],
906
+ ['ro', 'ja'],
907
+ ['ro', 'ko'],
908
+ ['ro', 'lv'],
909
+ ['ro', 'lt'],
910
+ ['ro', 'no'],
911
+ ['ro', 'pl'],
912
+ ['ro', 'pt'],
913
+ ['ro', 'ro'],
914
+ ['ro', 'ru'],
915
+ ['ro', 'sr'],
916
+ ['ro', 'sk'],
917
+ ['ro', 'sl'],
918
+ ['ro', 'es'],
919
+ ['ro', 'sv'],
920
+ ['ro', 'uk'],
921
+ ['ro', 'vi'],
922
+ ['ru', 'ar'],
923
+ ['ru', 'bg'],
924
+ ['ru', 'ca'],
925
+ ['ru', 'zh-CN'],
926
+ ['ru', 'hr'],
927
+ ['ru', 'cs'],
928
+ ['ru', 'da'],
929
+ ['ru', 'nl'],
930
+ ['ru', 'en'],
931
+ ['ru', 'tl'],
932
+ ['ru', 'fi'],
933
+ ['ru', 'fr'],
934
+ ['ru', 'de'],
935
+ ['ru', 'el'],
936
+ ['ru', 'iw'],
937
+ ['ru', 'hi'],
938
+ ['ru', 'id'],
939
+ ['ru', 'it'],
940
+ ['ru', 'ja'],
941
+ ['ru', 'ko'],
942
+ ['ru', 'lv'],
943
+ ['ru', 'lt'],
944
+ ['ru', 'no'],
945
+ ['ru', 'pl'],
946
+ ['ru', 'pt'],
947
+ ['ru', 'ro'],
948
+ ['ru', 'ru'],
949
+ ['ru', 'sr'],
950
+ ['ru', 'sk'],
951
+ ['ru', 'sl'],
952
+ ['ru', 'es'],
953
+ ['ru', 'sv'],
954
+ ['ru', 'uk'],
955
+ ['ru', 'vi'],
956
+ ['sr', 'ar'],
957
+ ['sr', 'bg'],
958
+ ['sr', 'ca'],
959
+ ['sr', 'zh-CN'],
960
+ ['sr', 'hr'],
961
+ ['sr', 'cs'],
962
+ ['sr', 'da'],
963
+ ['sr', 'nl'],
964
+ ['sr', 'en'],
965
+ ['sr', 'tl'],
966
+ ['sr', 'fi'],
967
+ ['sr', 'fr'],
968
+ ['sr', 'de'],
969
+ ['sr', 'el'],
970
+ ['sr', 'iw'],
971
+ ['sr', 'hi'],
972
+ ['sr', 'id'],
973
+ ['sr', 'it'],
974
+ ['sr', 'ja'],
975
+ ['sr', 'ko'],
976
+ ['sr', 'lv'],
977
+ ['sr', 'lt'],
978
+ ['sr', 'no'],
979
+ ['sr', 'pl'],
980
+ ['sr', 'pt'],
981
+ ['sr', 'ro'],
982
+ ['sr', 'ru'],
983
+ ['sr', 'sr'],
984
+ ['sr', 'sk'],
985
+ ['sr', 'sl'],
986
+ ['sr', 'es'],
987
+ ['sr', 'sv'],
988
+ ['sr', 'uk'],
989
+ ['sr', 'vi'],
990
+ ['sk', 'ar'],
991
+ ['sk', 'bg'],
992
+ ['sk', 'ca'],
993
+ ['sk', 'zh-CN'],
994
+ ['sk', 'hr'],
995
+ ['sk', 'cs'],
996
+ ['sk', 'da'],
997
+ ['sk', 'nl'],
998
+ ['sk', 'en'],
999
+ ['sk', 'tl'],
1000
+ ['sk', 'fi'],
1001
+ ['sk', 'fr'],
1002
+ ['sk', 'de'],
1003
+ ['sk', 'el'],
1004
+ ['sk', 'iw'],
1005
+ ['sk', 'hi'],
1006
+ ['sk', 'id'],
1007
+ ['sk', 'it'],
1008
+ ['sk', 'ja'],
1009
+ ['sk', 'ko'],
1010
+ ['sk', 'lv'],
1011
+ ['sk', 'lt'],
1012
+ ['sk', 'no'],
1013
+ ['sk', 'pl'],
1014
+ ['sk', 'pt'],
1015
+ ['sk', 'ro'],
1016
+ ['sk', 'ru'],
1017
+ ['sk', 'sr'],
1018
+ ['sk', 'sk'],
1019
+ ['sk', 'sl'],
1020
+ ['sk', 'es'],
1021
+ ['sk', 'sv'],
1022
+ ['sk', 'uk'],
1023
+ ['sk', 'vi'],
1024
+ ['sl', 'ar'],
1025
+ ['sl', 'bg'],
1026
+ ['sl', 'ca'],
1027
+ ['sl', 'zh-CN'],
1028
+ ['sl', 'hr'],
1029
+ ['sl', 'cs'],
1030
+ ['sl', 'da'],
1031
+ ['sl', 'nl'],
1032
+ ['sl', 'en'],
1033
+ ['sl', 'tl'],
1034
+ ['sl', 'fi'],
1035
+ ['sl', 'fr'],
1036
+ ['sl', 'de'],
1037
+ ['sl', 'el'],
1038
+ ['sl', 'iw'],
1039
+ ['sl', 'hi'],
1040
+ ['sl', 'id'],
1041
+ ['sl', 'it'],
1042
+ ['sl', 'ja'],
1043
+ ['sl', 'ko'],
1044
+ ['sl', 'lv'],
1045
+ ['sl', 'lt'],
1046
+ ['sl', 'no'],
1047
+ ['sl', 'pl'],
1048
+ ['sl', 'pt'],
1049
+ ['sl', 'ro'],
1050
+ ['sl', 'ru'],
1051
+ ['sl', 'sr'],
1052
+ ['sl', 'sk'],
1053
+ ['sl', 'sl'],
1054
+ ['sl', 'es'],
1055
+ ['sl', 'sv'],
1056
+ ['sl', 'uk'],
1057
+ ['sl', 'vi'],
1058
+ ['es', 'ar'],
1059
+ ['es', 'bg'],
1060
+ ['es', 'ca'],
1061
+ ['es', 'zh-CN'],
1062
+ ['es', 'hr'],
1063
+ ['es', 'cs'],
1064
+ ['es', 'da'],
1065
+ ['es', 'nl'],
1066
+ ['es', 'en'],
1067
+ ['es', 'tl'],
1068
+ ['es', 'fi'],
1069
+ ['es', 'fr'],
1070
+ ['es', 'de'],
1071
+ ['es', 'el'],
1072
+ ['es', 'iw'],
1073
+ ['es', 'hi'],
1074
+ ['es', 'id'],
1075
+ ['es', 'it'],
1076
+ ['es', 'ja'],
1077
+ ['es', 'ko'],
1078
+ ['es', 'lv'],
1079
+ ['es', 'lt'],
1080
+ ['es', 'no'],
1081
+ ['es', 'pl'],
1082
+ ['es', 'pt'],
1083
+ ['es', 'ro'],
1084
+ ['es', 'ru'],
1085
+ ['es', 'sr'],
1086
+ ['es', 'sk'],
1087
+ ['es', 'sl'],
1088
+ ['es', 'es'],
1089
+ ['es', 'sv'],
1090
+ ['es', 'uk'],
1091
+ ['es', 'vi'],
1092
+ ['sv', 'ar'],
1093
+ ['sv', 'bg'],
1094
+ ['sv', 'ca'],
1095
+ ['sv', 'zh-CN'],
1096
+ ['sv', 'hr'],
1097
+ ['sv', 'cs'],
1098
+ ['sv', 'da'],
1099
+ ['sv', 'nl'],
1100
+ ['sv', 'en'],
1101
+ ['sv', 'tl'],
1102
+ ['sv', 'fi'],
1103
+ ['sv', 'fr'],
1104
+ ['sv', 'de'],
1105
+ ['sv', 'el'],
1106
+ ['sv', 'iw'],
1107
+ ['sv', 'hi'],
1108
+ ['sv', 'id'],
1109
+ ['sv', 'it'],
1110
+ ['sv', 'ja'],
1111
+ ['sv', 'ko'],
1112
+ ['sv', 'lv'],
1113
+ ['sv', 'lt'],
1114
+ ['sv', 'no'],
1115
+ ['sv', 'pl'],
1116
+ ['sv', 'pt'],
1117
+ ['sv', 'ro'],
1118
+ ['sv', 'ru'],
1119
+ ['sv', 'sr'],
1120
+ ['sv', 'sk'],
1121
+ ['sv', 'sl'],
1122
+ ['sv', 'es'],
1123
+ ['sv', 'sv'],
1124
+ ['sv', 'uk'],
1125
+ ['sv', 'vi'],
1126
+ ['uk', 'ar'],
1127
+ ['uk', 'bg'],
1128
+ ['uk', 'ca'],
1129
+ ['uk', 'zh-CN'],
1130
+ ['uk', 'hr'],
1131
+ ['uk', 'cs'],
1132
+ ['uk', 'da'],
1133
+ ['uk', 'nl'],
1134
+ ['uk', 'en'],
1135
+ ['uk', 'tl'],
1136
+ ['uk', 'fi'],
1137
+ ['uk', 'fr'],
1138
+ ['uk', 'de'],
1139
+ ['uk', 'el'],
1140
+ ['uk', 'iw'],
1141
+ ['uk', 'hi'],
1142
+ ['uk', 'id'],
1143
+ ['uk', 'it'],
1144
+ ['uk', 'ja'],
1145
+ ['uk', 'ko'],
1146
+ ['uk', 'lv'],
1147
+ ['uk', 'lt'],
1148
+ ['uk', 'no'],
1149
+ ['uk', 'pl'],
1150
+ ['uk', 'pt'],
1151
+ ['uk', 'ro'],
1152
+ ['uk', 'ru'],
1153
+ ['uk', 'sr'],
1154
+ ['uk', 'sk'],
1155
+ ['uk', 'sl'],
1156
+ ['uk', 'es'],
1157
+ ['uk', 'sv'],
1158
+ ['uk', 'uk'],
1159
+ ['uk', 'vi'],
1160
+ ['vi', 'ar'],
1161
+ ['vi', 'bg'],
1162
+ ['vi', 'ca'],
1163
+ ['vi', 'zh-CN'],
1164
+ ['vi', 'hr'],
1165
+ ['vi', 'cs'],
1166
+ ['vi', 'da'],
1167
+ ['vi', 'nl'],
1168
+ ['vi', 'en'],
1169
+ ['vi', 'tl'],
1170
+ ['vi', 'fi'],
1171
+ ['vi', 'fr'],
1172
+ ['vi', 'de'],
1173
+ ['vi', 'el'],
1174
+ ['vi', 'iw'],
1175
+ ['vi', 'hi'],
1176
+ ['vi', 'id'],
1177
+ ['vi', 'it'],
1178
+ ['vi', 'ja'],
1179
+ ['vi', 'ko'],
1180
+ ['vi', 'lv'],
1181
+ ['vi', 'lt'],
1182
+ ['vi', 'no'],
1183
+ ['vi', 'pl'],
1184
+ ['vi', 'pt'],
1185
+ ['vi', 'ro'],
1186
+ ['vi', 'ru'],
1187
+ ['vi', 'sr'],
1188
+ ['vi', 'sk'],
1189
+ ['vi', 'sl'],
1190
+ ['vi', 'es'],
1191
+ ['vi', 'sv'],
1192
+ ['vi', 'uk'],
1193
+ ['vi', 'vi']
1194
+ ],
1195
+ 'apertium' => [
1196
+ ['br', 'fr'],
1197
+ ['ca', 'en'],
1198
+ ['ca', 'eo'],
1199
+ ['ca', 'es'],
1200
+ ['ca', 'fr'],
1201
+ ['ca', 'oc'],
1202
+ ['ca', 'oc_aran'],
1203
+ ['ca', 'pt'],
1204
+ ['cy', 'en'],
1205
+ ['en', 'ca'],
1206
+ ['en', 'eo'],
1207
+ ['en', 'es'],
1208
+ ['en', 'gl'],
1209
+ ['eo', 'en'],
1210
+ ['es', 'ast'],
1211
+ ['es', 'ca'],
1212
+ ['es', 'ca_valencia'],
1213
+ ['es', 'en'],
1214
+ ['es', 'eo'],
1215
+ ['es', 'fr'],
1216
+ ['es', 'gl'],
1217
+ ['es', 'pt'],
1218
+ ['es', 'pt_BR'],
1219
+ ['eu', 'es'],
1220
+ ['fr', 'ca'],
1221
+ ['fr', 'es'],
1222
+ ['gl', 'en'],
1223
+ ['gl', 'es'],
1224
+ ['is', 'en'],
1225
+ ['nb', 'nn'],
1226
+ ['nn', 'nb'],
1227
+ ['oc', 'ca'],
1228
+ ['oc_aran', 'ca'],
1229
+ ['pt', 'ca'],
1230
+ ['pt', 'es'],
1231
+ ['ro', 'es'],
1232
+ ['sv', 'da'],
1233
+ ]
1234
+ }
1235
+ end