1 package org.robolectric.res.android; 2 3 import java.util.Collections; 4 import java.util.HashMap; 5 import java.util.HashSet; 6 import java.util.Map; 7 import java.util.Set; 8 9 // transliterated from https://android.googlesource.com/platform/frameworks/base/+/android-9.0.0_r12/libs/androidfw/LocaleDataTables.cpp 10 public class LocaleDataTables { 11 12 // Auto-generated by ./tools/localedata/extract_icu_data.py 13 static final byte[][] SCRIPT_CODES = { 14 /* 0 */ {'A', 'h', 'o', 'm'}, 15 /* 1 */ {'A', 'r', 'a', 'b'}, 16 /* 2 */ {'A', 'r', 'm', 'i'}, 17 /* 3 */ {'A', 'r', 'm', 'n'}, 18 /* 4 */ {'A', 'v', 's', 't'}, 19 /* 5 */ {'B', 'a', 'm', 'u'}, 20 /* 6 */ {'B', 'a', 's', 's'}, 21 /* 7 */ {'B', 'e', 'n', 'g'}, 22 /* 8 */ {'B', 'r', 'a', 'h'}, 23 /* 9 */ {'C', 'a', 'n', 's'}, 24 /* 10 */ {'C', 'a', 'r', 'i'}, 25 /* 11 */ {'C', 'h', 'a', 'm'}, 26 /* 12 */ {'C', 'h', 'e', 'r'}, 27 /* 13 */ {'C', 'o', 'p', 't'}, 28 /* 14 */ {'C', 'p', 'r', 't'}, 29 /* 15 */ {'C', 'y', 'r', 'l'}, 30 /* 16 */ {'D', 'e', 'v', 'a'}, 31 /* 17 */ {'E', 'g', 'y', 'p'}, 32 /* 18 */ {'E', 't', 'h', 'i'}, 33 /* 19 */ {'G', 'e', 'o', 'r'}, 34 /* 20 */ {'G', 'o', 't', 'h'}, 35 /* 21 */ {'G', 'r', 'e', 'k'}, 36 /* 22 */ {'G', 'u', 'j', 'r'}, 37 /* 23 */ {'G', 'u', 'r', 'u'}, 38 /* 24 */ {'H', 'a', 'n', 's'}, 39 /* 25 */ {'H', 'a', 'n', 't'}, 40 /* 26 */ {'H', 'a', 't', 'r'}, 41 /* 27 */ {'H', 'e', 'b', 'r'}, 42 /* 28 */ {'H', 'l', 'u', 'w'}, 43 /* 29 */ {'H', 'm', 'n', 'g'}, 44 /* 30 */ {'I', 't', 'a', 'l'}, 45 /* 31 */ {'J', 'p', 'a', 'n'}, 46 /* 32 */ {'K', 'a', 'l', 'i'}, 47 /* 33 */ {'K', 'a', 'n', 'a'}, 48 /* 34 */ {'K', 'h', 'a', 'r'}, 49 /* 35 */ {'K', 'h', 'm', 'r'}, 50 /* 36 */ {'K', 'n', 'd', 'a'}, 51 /* 37 */ {'K', 'o', 'r', 'e'}, 52 /* 38 */ {'L', 'a', 'n', 'a'}, 53 /* 39 */ {'L', 'a', 'o', 'o'}, 54 /* 40 */ {'L', 'a', 't', 'n'}, 55 /* 41 */ {'L', 'e', 'p', 'c'}, 56 /* 42 */ {'L', 'i', 'n', 'a'}, 57 /* 43 */ {'L', 'i', 's', 'u'}, 58 /* 44 */ {'L', 'y', 'c', 'i'}, 59 /* 45 */ {'L', 'y', 'd', 'i'}, 60 /* 46 */ {'M', 'a', 'n', 'd'}, 61 /* 47 */ {'M', 'a', 'n', 'i'}, 62 /* 48 */ {'M', 'e', 'r', 'c'}, 63 /* 49 */ {'M', 'l', 'y', 'm'}, 64 /* 50 */ {'M', 'o', 'n', 'g'}, 65 /* 51 */ {'M', 'r', 'o', 'o'}, 66 /* 52 */ {'M', 'y', 'm', 'r'}, 67 /* 53 */ {'N', 'a', 'r', 'b'}, 68 /* 54 */ {'N', 'k', 'o', 'o'}, 69 /* 55 */ {'O', 'g', 'a', 'm'}, 70 /* 56 */ {'O', 'r', 'k', 'h'}, 71 /* 57 */ {'O', 'r', 'y', 'a'}, 72 /* 58 */ {'O', 's', 'g', 'e'}, 73 /* 59 */ {'P', 'a', 'u', 'c'}, 74 /* 60 */ {'P', 'h', 'l', 'i'}, 75 /* 61 */ {'P', 'h', 'n', 'x'}, 76 /* 62 */ {'P', 'l', 'r', 'd'}, 77 /* 63 */ {'P', 'r', 't', 'i'}, 78 /* 64 */ {'R', 'u', 'n', 'r'}, 79 /* 65 */ {'S', 'a', 'm', 'r'}, 80 /* 66 */ {'S', 'a', 'r', 'b'}, 81 /* 67 */ {'S', 'a', 'u', 'r'}, 82 /* 68 */ {'S', 'g', 'n', 'w'}, 83 /* 69 */ {'S', 'i', 'n', 'h'}, 84 /* 70 */ {'S', 'o', 'r', 'a'}, 85 /* 71 */ {'S', 'y', 'r', 'c'}, 86 /* 72 */ {'T', 'a', 'l', 'e'}, 87 /* 73 */ {'T', 'a', 'l', 'u'}, 88 /* 74 */ {'T', 'a', 'm', 'l'}, 89 /* 75 */ {'T', 'a', 'n', 'g'}, 90 /* 76 */ {'T', 'a', 'v', 't'}, 91 /* 77 */ {'T', 'e', 'l', 'u'}, 92 /* 78 */ {'T', 'f', 'n', 'g'}, 93 /* 79 */ {'T', 'h', 'a', 'a'}, 94 /* 80 */ {'T', 'h', 'a', 'i'}, 95 /* 81 */ {'T', 'i', 'b', 't'}, 96 /* 82 */ {'U', 'g', 'a', 'r'}, 97 /* 83 */ {'V', 'a', 'i', 'i'}, 98 /* 84 */ {'X', 'p', 'e', 'o'}, 99 /* 85 */ {'X', 's', 'u', 'x'}, 100 /* 86 */ {'Y', 'i', 'i', 'i'}, 101 /* 87 */ {'~', '~', '~', 'A'}, 102 /* 88 */ {'~', '~', '~', 'B'}, 103 }; 104 105 static final Map<Integer, Byte> LIKELY_SCRIPTS; 106 107 static { 108 int[][] entries = { 109 {0x61610000, 40}, // aa -> Latn 110 {0xA0000000, 40}, // aai -> Latn 111 {0xA8000000, 40}, // aak -> Latn 112 {0xD0000000, 40}, // aau -> Latn 113 {0x61620000, 15}, // ab -> Cyrl 114 {0xA0200000, 40}, // abi -> Latn 115 {0xC4200000, 40}, // abr -> Latn 116 {0xCC200000, 40}, // abt -> Latn 117 {0xE0200000, 40}, // aby -> Latn 118 {0x8C400000, 40}, // acd -> Latn 119 {0x90400000, 40}, // ace -> Latn 120 {0x9C400000, 40}, // ach -> Latn 121 {0x80600000, 40}, // ada -> Latn 122 {0x90600000, 40}, // ade -> Latn 123 {0xA4600000, 40}, // adj -> Latn 124 {0xE0600000, 15}, // ady -> Cyrl 125 {0xE4600000, 40}, // adz -> Latn 126 {0x61650000, 4}, // ae -> Avst 127 {0x84800000, 1}, // aeb -> Arab 128 {0xE0800000, 40}, // aey -> Latn 129 {0x61660000, 40}, // af -> Latn 130 {0x88C00000, 40}, // agc -> Latn 131 {0x8CC00000, 40}, // agd -> Latn 132 {0x98C00000, 40}, // agg -> Latn 133 {0xB0C00000, 40}, // agm -> Latn 134 {0xB8C00000, 40}, // ago -> Latn 135 {0xC0C00000, 40}, // agq -> Latn 136 {0x80E00000, 40}, // aha -> Latn 137 {0xACE00000, 40}, // ahl -> Latn 138 {0xB8E00000, 0}, // aho -> Ahom 139 {0x99200000, 40}, // ajg -> Latn 140 {0x616B0000, 40}, // ak -> Latn 141 {0xA9400000, 85}, // akk -> Xsux 142 {0x81600000, 40}, // ala -> Latn 143 {0xA1600000, 40}, // ali -> Latn 144 {0xB5600000, 40}, // aln -> Latn 145 {0xCD600000, 15}, // alt -> Cyrl 146 {0x616D0000, 18}, // am -> Ethi 147 {0xB1800000, 40}, // amm -> Latn 148 {0xB5800000, 40}, // amn -> Latn 149 {0xB9800000, 40}, // amo -> Latn 150 {0xBD800000, 40}, // amp -> Latn 151 {0x89A00000, 40}, // anc -> Latn 152 {0xA9A00000, 40}, // ank -> Latn 153 {0xB5A00000, 40}, // ann -> Latn 154 {0xE1A00000, 40}, // any -> Latn 155 {0xA5C00000, 40}, // aoj -> Latn 156 {0xB1C00000, 40}, // aom -> Latn 157 {0xE5C00000, 40}, // aoz -> Latn 158 {0x89E00000, 1}, // apc -> Arab 159 {0x8DE00000, 1}, // apd -> Arab 160 {0x91E00000, 40}, // ape -> Latn 161 {0xC5E00000, 40}, // apr -> Latn 162 {0xC9E00000, 40}, // aps -> Latn 163 {0xE5E00000, 40}, // apz -> Latn 164 {0x61720000, 1}, // ar -> Arab 165 {0x61725842, 88}, // ar-XB -> ~~~B 166 {0x8A200000, 2}, // arc -> Armi 167 {0x9E200000, 40}, // arh -> Latn 168 {0xB6200000, 40}, // arn -> Latn 169 {0xBA200000, 40}, // aro -> Latn 170 {0xC2200000, 1}, // arq -> Arab 171 {0xE2200000, 1}, // ary -> Arab 172 {0xE6200000, 1}, // arz -> Arab 173 {0x61730000, 7}, // as -> Beng 174 {0x82400000, 40}, // asa -> Latn 175 {0x92400000, 68}, // ase -> Sgnw 176 {0x9A400000, 40}, // asg -> Latn 177 {0xBA400000, 40}, // aso -> Latn 178 {0xCE400000, 40}, // ast -> Latn 179 {0x82600000, 40}, // ata -> Latn 180 {0x9A600000, 40}, // atg -> Latn 181 {0xA6600000, 40}, // atj -> Latn 182 {0xE2800000, 40}, // auy -> Latn 183 {0x61760000, 15}, // av -> Cyrl 184 {0xAEA00000, 1}, // avl -> Arab 185 {0xB6A00000, 40}, // avn -> Latn 186 {0xCEA00000, 40}, // avt -> Latn 187 {0xD2A00000, 40}, // avu -> Latn 188 {0x82C00000, 16}, // awa -> Deva 189 {0x86C00000, 40}, // awb -> Latn 190 {0xBAC00000, 40}, // awo -> Latn 191 {0xDEC00000, 40}, // awx -> Latn 192 {0x61790000, 40}, // ay -> Latn 193 {0x87000000, 40}, // ayb -> Latn 194 {0x617A0000, 40}, // az -> Latn 195 {0x617A4951, 1}, // az-IQ -> Arab 196 {0x617A4952, 1}, // az-IR -> Arab 197 {0x617A5255, 15}, // az-RU -> Cyrl 198 {0x62610000, 15}, // ba -> Cyrl 199 {0xAC010000, 1}, // bal -> Arab 200 {0xB4010000, 40}, // ban -> Latn 201 {0xBC010000, 16}, // bap -> Deva 202 {0xC4010000, 40}, // bar -> Latn 203 {0xC8010000, 40}, // bas -> Latn 204 {0xD4010000, 40}, // bav -> Latn 205 {0xDC010000, 5}, // bax -> Bamu 206 {0x80210000, 40}, // bba -> Latn 207 {0x84210000, 40}, // bbb -> Latn 208 {0x88210000, 40}, // bbc -> Latn 209 {0x8C210000, 40}, // bbd -> Latn 210 {0xA4210000, 40}, // bbj -> Latn 211 {0xBC210000, 40}, // bbp -> Latn 212 {0xC4210000, 40}, // bbr -> Latn 213 {0x94410000, 40}, // bcf -> Latn 214 {0x9C410000, 40}, // bch -> Latn 215 {0xA0410000, 40}, // bci -> Latn 216 {0xB0410000, 40}, // bcm -> Latn 217 {0xB4410000, 40}, // bcn -> Latn 218 {0xB8410000, 40}, // bco -> Latn 219 {0xC0410000, 18}, // bcq -> Ethi 220 {0xD0410000, 40}, // bcu -> Latn 221 {0x8C610000, 40}, // bdd -> Latn 222 {0x62650000, 15}, // be -> Cyrl 223 {0x94810000, 40}, // bef -> Latn 224 {0x9C810000, 40}, // beh -> Latn 225 {0xA4810000, 1}, // bej -> Arab 226 {0xB0810000, 40}, // bem -> Latn 227 {0xCC810000, 40}, // bet -> Latn 228 {0xD8810000, 40}, // bew -> Latn 229 {0xDC810000, 40}, // bex -> Latn 230 {0xE4810000, 40}, // bez -> Latn 231 {0x8CA10000, 40}, // bfd -> Latn 232 {0xC0A10000, 74}, // bfq -> Taml 233 {0xCCA10000, 1}, // bft -> Arab 234 {0xE0A10000, 16}, // bfy -> Deva 235 {0x62670000, 15}, // bg -> Cyrl 236 {0x88C10000, 16}, // bgc -> Deva 237 {0xB4C10000, 1}, // bgn -> Arab 238 {0xDCC10000, 21}, // bgx -> Grek 239 {0x84E10000, 16}, // bhb -> Deva 240 {0x98E10000, 40}, // bhg -> Latn 241 {0xA0E10000, 16}, // bhi -> Deva 242 {0xA8E10000, 40}, // bhk -> Latn 243 {0xACE10000, 40}, // bhl -> Latn 244 {0xB8E10000, 16}, // bho -> Deva 245 {0xE0E10000, 40}, // bhy -> Latn 246 {0x62690000, 40}, // bi -> Latn 247 {0x85010000, 40}, // bib -> Latn 248 {0x99010000, 40}, // big -> Latn 249 {0xA9010000, 40}, // bik -> Latn 250 {0xB1010000, 40}, // bim -> Latn 251 {0xB5010000, 40}, // bin -> Latn 252 {0xB9010000, 40}, // bio -> Latn 253 {0xC1010000, 40}, // biq -> Latn 254 {0x9D210000, 40}, // bjh -> Latn 255 {0xA1210000, 18}, // bji -> Ethi 256 {0xA5210000, 16}, // bjj -> Deva 257 {0xB5210000, 40}, // bjn -> Latn 258 {0xB9210000, 40}, // bjo -> Latn 259 {0xC5210000, 40}, // bjr -> Latn 260 {0xE5210000, 40}, // bjz -> Latn 261 {0x89410000, 40}, // bkc -> Latn 262 {0xB1410000, 40}, // bkm -> Latn 263 {0xC1410000, 40}, // bkq -> Latn 264 {0xD1410000, 40}, // bku -> Latn 265 {0xD5410000, 40}, // bkv -> Latn 266 {0xCD610000, 76}, // blt -> Tavt 267 {0x626D0000, 40}, // bm -> Latn 268 {0x9D810000, 40}, // bmh -> Latn 269 {0xA9810000, 40}, // bmk -> Latn 270 {0xC1810000, 40}, // bmq -> Latn 271 {0xD1810000, 40}, // bmu -> Latn 272 {0x626E0000, 7}, // bn -> Beng 273 {0x99A10000, 40}, // bng -> Latn 274 {0xB1A10000, 40}, // bnm -> Latn 275 {0xBDA10000, 40}, // bnp -> Latn 276 {0x626F0000, 81}, // bo -> Tibt 277 {0xA5C10000, 40}, // boj -> Latn 278 {0xB1C10000, 40}, // bom -> Latn 279 {0xB5C10000, 40}, // bon -> Latn 280 {0xE1E10000, 7}, // bpy -> Beng 281 {0x8A010000, 40}, // bqc -> Latn 282 {0xA2010000, 1}, // bqi -> Arab 283 {0xBE010000, 40}, // bqp -> Latn 284 {0xD6010000, 40}, // bqv -> Latn 285 {0x62720000, 40}, // br -> Latn 286 {0x82210000, 16}, // bra -> Deva 287 {0x9E210000, 1}, // brh -> Arab 288 {0xDE210000, 16}, // brx -> Deva 289 {0xE6210000, 40}, // brz -> Latn 290 {0x62730000, 40}, // bs -> Latn 291 {0xA6410000, 40}, // bsj -> Latn 292 {0xC2410000, 6}, // bsq -> Bass 293 {0xCA410000, 40}, // bss -> Latn 294 {0xCE410000, 18}, // bst -> Ethi 295 {0xBA610000, 40}, // bto -> Latn 296 {0xCE610000, 40}, // btt -> Latn 297 {0xD6610000, 16}, // btv -> Deva 298 {0x82810000, 15}, // bua -> Cyrl 299 {0x8A810000, 40}, // buc -> Latn 300 {0x8E810000, 40}, // bud -> Latn 301 {0x9A810000, 40}, // bug -> Latn 302 {0xAA810000, 40}, // buk -> Latn 303 {0xB2810000, 40}, // bum -> Latn 304 {0xBA810000, 40}, // buo -> Latn 305 {0xCA810000, 40}, // bus -> Latn 306 {0xD2810000, 40}, // buu -> Latn 307 {0x86A10000, 40}, // bvb -> Latn 308 {0x8EC10000, 40}, // bwd -> Latn 309 {0xC6C10000, 40}, // bwr -> Latn 310 {0x9EE10000, 40}, // bxh -> Latn 311 {0x93010000, 40}, // bye -> Latn 312 {0xB7010000, 18}, // byn -> Ethi 313 {0xC7010000, 40}, // byr -> Latn 314 {0xCB010000, 40}, // bys -> Latn 315 {0xD7010000, 40}, // byv -> Latn 316 {0xDF010000, 40}, // byx -> Latn 317 {0x83210000, 40}, // bza -> Latn 318 {0x93210000, 40}, // bze -> Latn 319 {0x97210000, 40}, // bzf -> Latn 320 {0x9F210000, 40}, // bzh -> Latn 321 {0xDB210000, 40}, // bzw -> Latn 322 {0x63610000, 40}, // ca -> Latn 323 {0xB4020000, 40}, // can -> Latn 324 {0xA4220000, 40}, // cbj -> Latn 325 {0x9C420000, 40}, // cch -> Latn 326 {0xBC420000, 7}, // ccp -> Beng 327 {0x63650000, 15}, // ce -> Cyrl 328 {0x84820000, 40}, // ceb -> Latn 329 {0x80A20000, 40}, // cfa -> Latn 330 {0x98C20000, 40}, // cgg -> Latn 331 {0x63680000, 40}, // ch -> Latn 332 {0xA8E20000, 40}, // chk -> Latn 333 {0xB0E20000, 15}, // chm -> Cyrl 334 {0xB8E20000, 40}, // cho -> Latn 335 {0xBCE20000, 40}, // chp -> Latn 336 {0xC4E20000, 12}, // chr -> Cher 337 {0x81220000, 1}, // cja -> Arab 338 {0xB1220000, 11}, // cjm -> Cham 339 {0xD5220000, 40}, // cjv -> Latn 340 {0x85420000, 1}, // ckb -> Arab 341 {0xAD420000, 40}, // ckl -> Latn 342 {0xB9420000, 40}, // cko -> Latn 343 {0xE1420000, 40}, // cky -> Latn 344 {0x81620000, 40}, // cla -> Latn 345 {0x91820000, 40}, // cme -> Latn 346 {0x636F0000, 40}, // co -> Latn 347 {0xBDC20000, 13}, // cop -> Copt 348 {0xC9E20000, 40}, // cps -> Latn 349 {0x63720000, 9}, // cr -> Cans 350 {0xA6220000, 9}, // crj -> Cans 351 {0xAA220000, 9}, // crk -> Cans 352 {0xAE220000, 9}, // crl -> Cans 353 {0xB2220000, 9}, // crm -> Cans 354 {0xCA220000, 40}, // crs -> Latn 355 {0x63730000, 40}, // cs -> Latn 356 {0x86420000, 40}, // csb -> Latn 357 {0xDA420000, 9}, // csw -> Cans 358 {0x8E620000, 59}, // ctd -> Pauc 359 {0x63750000, 15}, // cu -> Cyrl 360 {0x63760000, 15}, // cv -> Cyrl 361 {0x63790000, 40}, // cy -> Latn 362 {0x64610000, 40}, // da -> Latn 363 {0x8C030000, 40}, // dad -> Latn 364 {0x94030000, 40}, // daf -> Latn 365 {0x98030000, 40}, // dag -> Latn 366 {0x9C030000, 40}, // dah -> Latn 367 {0xA8030000, 40}, // dak -> Latn 368 {0xC4030000, 15}, // dar -> Cyrl 369 {0xD4030000, 40}, // dav -> Latn 370 {0x8C230000, 40}, // dbd -> Latn 371 {0xC0230000, 40}, // dbq -> Latn 372 {0x88430000, 1}, // dcc -> Arab 373 {0xB4630000, 40}, // ddn -> Latn 374 {0x64650000, 40}, // de -> Latn 375 {0x8C830000, 40}, // ded -> Latn 376 {0xB4830000, 40}, // den -> Latn 377 {0x80C30000, 40}, // dga -> Latn 378 {0x9CC30000, 40}, // dgh -> Latn 379 {0xA0C30000, 40}, // dgi -> Latn 380 {0xACC30000, 1}, // dgl -> Arab 381 {0xC4C30000, 40}, // dgr -> Latn 382 {0xE4C30000, 40}, // dgz -> Latn 383 {0x81030000, 40}, // dia -> Latn 384 {0x91230000, 40}, // dje -> Latn 385 {0xA5A30000, 40}, // dnj -> Latn 386 {0x85C30000, 40}, // dob -> Latn 387 {0xA1C30000, 1}, // doi -> Arab 388 {0xBDC30000, 40}, // dop -> Latn 389 {0xD9C30000, 40}, // dow -> Latn 390 {0xA2230000, 40}, // dri -> Latn 391 {0xCA230000, 18}, // drs -> Ethi 392 {0x86430000, 40}, // dsb -> Latn 393 {0xB2630000, 40}, // dtm -> Latn 394 {0xBE630000, 40}, // dtp -> Latn 395 {0xCA630000, 40}, // dts -> Latn 396 {0xE2630000, 16}, // dty -> Deva 397 {0x82830000, 40}, // dua -> Latn 398 {0x8A830000, 40}, // duc -> Latn 399 {0x8E830000, 40}, // dud -> Latn 400 {0x9A830000, 40}, // dug -> Latn 401 {0x64760000, 79}, // dv -> Thaa 402 {0x82A30000, 40}, // dva -> Latn 403 {0xDAC30000, 40}, // dww -> Latn 404 {0xBB030000, 40}, // dyo -> Latn 405 {0xD3030000, 40}, // dyu -> Latn 406 {0x647A0000, 81}, // dz -> Tibt 407 {0x9B230000, 40}, // dzg -> Latn 408 {0xD0240000, 40}, // ebu -> Latn 409 {0x65650000, 40}, // ee -> Latn 410 {0xA0A40000, 40}, // efi -> Latn 411 {0xACC40000, 40}, // egl -> Latn 412 {0xE0C40000, 17}, // egy -> Egyp 413 {0xE1440000, 32}, // eky -> Kali 414 {0x656C0000, 21}, // el -> Grek 415 {0x81840000, 40}, // ema -> Latn 416 {0xA1840000, 40}, // emi -> Latn 417 {0x656E0000, 40}, // en -> Latn 418 {0x656E5841, 87}, // en-XA -> ~~~A 419 {0xB5A40000, 40}, // enn -> Latn 420 {0xC1A40000, 40}, // enq -> Latn 421 {0x656F0000, 40}, // eo -> Latn 422 {0xA2240000, 40}, // eri -> Latn 423 {0x65730000, 40}, // es -> Latn 424 {0xD2440000, 40}, // esu -> Latn 425 {0x65740000, 40}, // et -> Latn 426 {0xC6640000, 40}, // etr -> Latn 427 {0xCE640000, 30}, // ett -> Ital 428 {0xD2640000, 40}, // etu -> Latn 429 {0xDE640000, 40}, // etx -> Latn 430 {0x65750000, 40}, // eu -> Latn 431 {0xBAC40000, 40}, // ewo -> Latn 432 {0xCEE40000, 40}, // ext -> Latn 433 {0x66610000, 1}, // fa -> Arab 434 {0x80050000, 40}, // faa -> Latn 435 {0x84050000, 40}, // fab -> Latn 436 {0x98050000, 40}, // fag -> Latn 437 {0xA0050000, 40}, // fai -> Latn 438 {0xB4050000, 40}, // fan -> Latn 439 {0x66660000, 40}, // ff -> Latn 440 {0xA0A50000, 40}, // ffi -> Latn 441 {0xB0A50000, 40}, // ffm -> Latn 442 {0x66690000, 40}, // fi -> Latn 443 {0x81050000, 1}, // fia -> Arab 444 {0xAD050000, 40}, // fil -> Latn 445 {0xCD050000, 40}, // fit -> Latn 446 {0x666A0000, 40}, // fj -> Latn 447 {0xC5650000, 40}, // flr -> Latn 448 {0xBD850000, 40}, // fmp -> Latn 449 {0x666F0000, 40}, // fo -> Latn 450 {0x8DC50000, 40}, // fod -> Latn 451 {0xB5C50000, 40}, // fon -> Latn 452 {0xC5C50000, 40}, // for -> Latn 453 {0x91E50000, 40}, // fpe -> Latn 454 {0xCA050000, 40}, // fqs -> Latn 455 {0x66720000, 40}, // fr -> Latn 456 {0x8A250000, 40}, // frc -> Latn 457 {0xBE250000, 40}, // frp -> Latn 458 {0xC6250000, 40}, // frr -> Latn 459 {0xCA250000, 40}, // frs -> Latn 460 {0x86850000, 1}, // fub -> Arab 461 {0x8E850000, 40}, // fud -> Latn 462 {0x92850000, 40}, // fue -> Latn 463 {0x96850000, 40}, // fuf -> Latn 464 {0x9E850000, 40}, // fuh -> Latn 465 {0xC2850000, 40}, // fuq -> Latn 466 {0xC6850000, 40}, // fur -> Latn 467 {0xD6850000, 40}, // fuv -> Latn 468 {0xE2850000, 40}, // fuy -> Latn 469 {0xC6A50000, 40}, // fvr -> Latn 470 {0x66790000, 40}, // fy -> Latn 471 {0x67610000, 40}, // ga -> Latn 472 {0x80060000, 40}, // gaa -> Latn 473 {0x94060000, 40}, // gaf -> Latn 474 {0x98060000, 40}, // gag -> Latn 475 {0x9C060000, 40}, // gah -> Latn 476 {0xA4060000, 40}, // gaj -> Latn 477 {0xB0060000, 40}, // gam -> Latn 478 {0xB4060000, 24}, // gan -> Hans 479 {0xD8060000, 40}, // gaw -> Latn 480 {0xE0060000, 40}, // gay -> Latn 481 {0x94260000, 40}, // gbf -> Latn 482 {0xB0260000, 16}, // gbm -> Deva 483 {0xE0260000, 40}, // gby -> Latn 484 {0xE4260000, 1}, // gbz -> Arab 485 {0xC4460000, 40}, // gcr -> Latn 486 {0x67640000, 40}, // gd -> Latn 487 {0x90660000, 40}, // gde -> Latn 488 {0xB4660000, 40}, // gdn -> Latn 489 {0xC4660000, 40}, // gdr -> Latn 490 {0x84860000, 40}, // geb -> Latn 491 {0xA4860000, 40}, // gej -> Latn 492 {0xAC860000, 40}, // gel -> Latn 493 {0xE4860000, 18}, // gez -> Ethi 494 {0xA8A60000, 40}, // gfk -> Latn 495 {0xB4C60000, 16}, // ggn -> Deva 496 {0xC8E60000, 40}, // ghs -> Latn 497 {0xAD060000, 40}, // gil -> Latn 498 {0xB1060000, 40}, // gim -> Latn 499 {0xA9260000, 1}, // gjk -> Arab 500 {0xB5260000, 40}, // gjn -> Latn 501 {0xD1260000, 1}, // gju -> Arab 502 {0xB5460000, 40}, // gkn -> Latn 503 {0xBD460000, 40}, // gkp -> Latn 504 {0x676C0000, 40}, // gl -> Latn 505 {0xA9660000, 1}, // glk -> Arab 506 {0xB1860000, 40}, // gmm -> Latn 507 {0xD5860000, 18}, // gmv -> Ethi 508 {0x676E0000, 40}, // gn -> Latn 509 {0x8DA60000, 40}, // gnd -> Latn 510 {0x99A60000, 40}, // gng -> Latn 511 {0x8DC60000, 40}, // god -> Latn 512 {0x95C60000, 18}, // gof -> Ethi 513 {0xA1C60000, 40}, // goi -> Latn 514 {0xB1C60000, 16}, // gom -> Deva 515 {0xB5C60000, 77}, // gon -> Telu 516 {0xC5C60000, 40}, // gor -> Latn 517 {0xC9C60000, 40}, // gos -> Latn 518 {0xCDC60000, 20}, // got -> Goth 519 {0x8A260000, 14}, // grc -> Cprt 520 {0xCE260000, 7}, // grt -> Beng 521 {0xDA260000, 40}, // grw -> Latn 522 {0xDA460000, 40}, // gsw -> Latn 523 {0x67750000, 22}, // gu -> Gujr 524 {0x86860000, 40}, // gub -> Latn 525 {0x8A860000, 40}, // guc -> Latn 526 {0x8E860000, 40}, // gud -> Latn 527 {0xC6860000, 40}, // gur -> Latn 528 {0xDA860000, 40}, // guw -> Latn 529 {0xDE860000, 40}, // gux -> Latn 530 {0xE6860000, 40}, // guz -> Latn 531 {0x67760000, 40}, // gv -> Latn 532 {0x96A60000, 40}, // gvf -> Latn 533 {0xC6A60000, 16}, // gvr -> Deva 534 {0xCAA60000, 40}, // gvs -> Latn 535 {0x8AC60000, 1}, // gwc -> Arab 536 {0xA2C60000, 40}, // gwi -> Latn 537 {0xCEC60000, 1}, // gwt -> Arab 538 {0xA3060000, 40}, // gyi -> Latn 539 {0x68610000, 40}, // ha -> Latn 540 {0x6861434D, 1}, // ha-CM -> Arab 541 {0x68615344, 1}, // ha-SD -> Arab 542 {0x98070000, 40}, // hag -> Latn 543 {0xA8070000, 24}, // hak -> Hans 544 {0xB0070000, 40}, // ham -> Latn 545 {0xD8070000, 40}, // haw -> Latn 546 {0xE4070000, 1}, // haz -> Arab 547 {0x84270000, 40}, // hbb -> Latn 548 {0xE0670000, 18}, // hdy -> Ethi 549 {0x68650000, 27}, // he -> Hebr 550 {0xE0E70000, 40}, // hhy -> Latn 551 {0x68690000, 16}, // hi -> Deva 552 {0x81070000, 40}, // hia -> Latn 553 {0x95070000, 40}, // hif -> Latn 554 {0x99070000, 40}, // hig -> Latn 555 {0x9D070000, 40}, // hih -> Latn 556 {0xAD070000, 40}, // hil -> Latn 557 {0x81670000, 40}, // hla -> Latn 558 {0xD1670000, 28}, // hlu -> Hluw 559 {0x8D870000, 62}, // hmd -> Plrd 560 {0xCD870000, 40}, // hmt -> Latn 561 {0x8DA70000, 1}, // hnd -> Arab 562 {0x91A70000, 16}, // hne -> Deva 563 {0xA5A70000, 29}, // hnj -> Hmng 564 {0xB5A70000, 40}, // hnn -> Latn 565 {0xB9A70000, 1}, // hno -> Arab 566 {0x686F0000, 40}, // ho -> Latn 567 {0x89C70000, 16}, // hoc -> Deva 568 {0xA5C70000, 16}, // hoj -> Deva 569 {0xCDC70000, 40}, // hot -> Latn 570 {0x68720000, 40}, // hr -> Latn 571 {0x86470000, 40}, // hsb -> Latn 572 {0xB6470000, 24}, // hsn -> Hans 573 {0x68740000, 40}, // ht -> Latn 574 {0x68750000, 40}, // hu -> Latn 575 {0xA2870000, 40}, // hui -> Latn 576 {0x68790000, 3}, // hy -> Armn 577 {0x687A0000, 40}, // hz -> Latn 578 {0x69610000, 40}, // ia -> Latn 579 {0xB4080000, 40}, // ian -> Latn 580 {0xC4080000, 40}, // iar -> Latn 581 {0x80280000, 40}, // iba -> Latn 582 {0x84280000, 40}, // ibb -> Latn 583 {0xE0280000, 40}, // iby -> Latn 584 {0x80480000, 40}, // ica -> Latn 585 {0x9C480000, 40}, // ich -> Latn 586 {0x69640000, 40}, // id -> Latn 587 {0x8C680000, 40}, // idd -> Latn 588 {0xA0680000, 40}, // idi -> Latn 589 {0xD0680000, 40}, // idu -> Latn 590 {0x69670000, 40}, // ig -> Latn 591 {0x84C80000, 40}, // igb -> Latn 592 {0x90C80000, 40}, // ige -> Latn 593 {0x69690000, 86}, // ii -> Yiii 594 {0xA5280000, 40}, // ijj -> Latn 595 {0x696B0000, 40}, // ik -> Latn 596 {0xA9480000, 40}, // ikk -> Latn 597 {0xCD480000, 40}, // ikt -> Latn 598 {0xD9480000, 40}, // ikw -> Latn 599 {0xDD480000, 40}, // ikx -> Latn 600 {0xB9680000, 40}, // ilo -> Latn 601 {0xB9880000, 40}, // imo -> Latn 602 {0x696E0000, 40}, // in -> Latn 603 {0x9DA80000, 15}, // inh -> Cyrl 604 {0xD1C80000, 40}, // iou -> Latn 605 {0xA2280000, 40}, // iri -> Latn 606 {0x69730000, 40}, // is -> Latn 607 {0x69740000, 40}, // it -> Latn 608 {0x69750000, 9}, // iu -> Cans 609 {0x69770000, 27}, // iw -> Hebr 610 {0xB2C80000, 40}, // iwm -> Latn 611 {0xCAC80000, 40}, // iws -> Latn 612 {0x9F280000, 40}, // izh -> Latn 613 {0xA3280000, 40}, // izi -> Latn 614 {0x6A610000, 31}, // ja -> Jpan 615 {0x84090000, 40}, // jab -> Latn 616 {0xB0090000, 40}, // jam -> Latn 617 {0xD0290000, 40}, // jbu -> Latn 618 {0xB4890000, 40}, // jen -> Latn 619 {0xA8C90000, 40}, // jgk -> Latn 620 {0xB8C90000, 40}, // jgo -> Latn 621 {0x6A690000, 27}, // ji -> Hebr 622 {0x85090000, 40}, // jib -> Latn 623 {0x89890000, 40}, // jmc -> Latn 624 {0xAD890000, 16}, // jml -> Deva 625 {0x82290000, 40}, // jra -> Latn 626 {0xCE890000, 40}, // jut -> Latn 627 {0x6A760000, 40}, // jv -> Latn 628 {0x6A770000, 40}, // jw -> Latn 629 {0x6B610000, 19}, // ka -> Geor 630 {0x800A0000, 15}, // kaa -> Cyrl 631 {0x840A0000, 40}, // kab -> Latn 632 {0x880A0000, 40}, // kac -> Latn 633 {0x8C0A0000, 40}, // kad -> Latn 634 {0xA00A0000, 40}, // kai -> Latn 635 {0xA40A0000, 40}, // kaj -> Latn 636 {0xB00A0000, 40}, // kam -> Latn 637 {0xB80A0000, 40}, // kao -> Latn 638 {0x8C2A0000, 15}, // kbd -> Cyrl 639 {0xB02A0000, 40}, // kbm -> Latn 640 {0xBC2A0000, 40}, // kbp -> Latn 641 {0xC02A0000, 40}, // kbq -> Latn 642 {0xDC2A0000, 40}, // kbx -> Latn 643 {0xE02A0000, 1}, // kby -> Arab 644 {0x984A0000, 40}, // kcg -> Latn 645 {0xA84A0000, 40}, // kck -> Latn 646 {0xAC4A0000, 40}, // kcl -> Latn 647 {0xCC4A0000, 40}, // kct -> Latn 648 {0x906A0000, 40}, // kde -> Latn 649 {0x9C6A0000, 1}, // kdh -> Arab 650 {0xAC6A0000, 40}, // kdl -> Latn 651 {0xCC6A0000, 80}, // kdt -> Thai 652 {0x808A0000, 40}, // kea -> Latn 653 {0xB48A0000, 40}, // ken -> Latn 654 {0xE48A0000, 40}, // kez -> Latn 655 {0xB8AA0000, 40}, // kfo -> Latn 656 {0xC4AA0000, 16}, // kfr -> Deva 657 {0xE0AA0000, 16}, // kfy -> Deva 658 {0x6B670000, 40}, // kg -> Latn 659 {0x90CA0000, 40}, // kge -> Latn 660 {0x94CA0000, 40}, // kgf -> Latn 661 {0xBCCA0000, 40}, // kgp -> Latn 662 {0x80EA0000, 40}, // kha -> Latn 663 {0x84EA0000, 73}, // khb -> Talu 664 {0xB4EA0000, 16}, // khn -> Deva 665 {0xC0EA0000, 40}, // khq -> Latn 666 {0xC8EA0000, 40}, // khs -> Latn 667 {0xCCEA0000, 52}, // kht -> Mymr 668 {0xD8EA0000, 1}, // khw -> Arab 669 {0xE4EA0000, 40}, // khz -> Latn 670 {0x6B690000, 40}, // ki -> Latn 671 {0xA50A0000, 40}, // kij -> Latn 672 {0xD10A0000, 40}, // kiu -> Latn 673 {0xD90A0000, 40}, // kiw -> Latn 674 {0x6B6A0000, 40}, // kj -> Latn 675 {0x8D2A0000, 40}, // kjd -> Latn 676 {0x992A0000, 39}, // kjg -> Laoo 677 {0xC92A0000, 40}, // kjs -> Latn 678 {0xE12A0000, 40}, // kjy -> Latn 679 {0x6B6B0000, 15}, // kk -> Cyrl 680 {0x6B6B4146, 1}, // kk-AF -> Arab 681 {0x6B6B434E, 1}, // kk-CN -> Arab 682 {0x6B6B4952, 1}, // kk-IR -> Arab 683 {0x6B6B4D4E, 1}, // kk-MN -> Arab 684 {0x894A0000, 40}, // kkc -> Latn 685 {0xA54A0000, 40}, // kkj -> Latn 686 {0x6B6C0000, 40}, // kl -> Latn 687 {0xB56A0000, 40}, // kln -> Latn 688 {0xC16A0000, 40}, // klq -> Latn 689 {0xCD6A0000, 40}, // klt -> Latn 690 {0xDD6A0000, 40}, // klx -> Latn 691 {0x6B6D0000, 35}, // km -> Khmr 692 {0x858A0000, 40}, // kmb -> Latn 693 {0x9D8A0000, 40}, // kmh -> Latn 694 {0xB98A0000, 40}, // kmo -> Latn 695 {0xC98A0000, 40}, // kms -> Latn 696 {0xD18A0000, 40}, // kmu -> Latn 697 {0xD98A0000, 40}, // kmw -> Latn 698 {0x6B6E0000, 36}, // kn -> Knda 699 {0xBDAA0000, 40}, // knp -> Latn 700 {0x6B6F0000, 37}, // ko -> Kore 701 {0xA1CA0000, 15}, // koi -> Cyrl 702 {0xA9CA0000, 16}, // kok -> Deva 703 {0xADCA0000, 40}, // kol -> Latn 704 {0xC9CA0000, 40}, // kos -> Latn 705 {0xE5CA0000, 40}, // koz -> Latn 706 {0x91EA0000, 40}, // kpe -> Latn 707 {0x95EA0000, 40}, // kpf -> Latn 708 {0xB9EA0000, 40}, // kpo -> Latn 709 {0xC5EA0000, 40}, // kpr -> Latn 710 {0xDDEA0000, 40}, // kpx -> Latn 711 {0x860A0000, 40}, // kqb -> Latn 712 {0x960A0000, 40}, // kqf -> Latn 713 {0xCA0A0000, 40}, // kqs -> Latn 714 {0xE20A0000, 18}, // kqy -> Ethi 715 {0x8A2A0000, 15}, // krc -> Cyrl 716 {0xA22A0000, 40}, // kri -> Latn 717 {0xA62A0000, 40}, // krj -> Latn 718 {0xAE2A0000, 40}, // krl -> Latn 719 {0xCA2A0000, 40}, // krs -> Latn 720 {0xD22A0000, 16}, // kru -> Deva 721 {0x6B730000, 1}, // ks -> Arab 722 {0x864A0000, 40}, // ksb -> Latn 723 {0x8E4A0000, 40}, // ksd -> Latn 724 {0x964A0000, 40}, // ksf -> Latn 725 {0x9E4A0000, 40}, // ksh -> Latn 726 {0xA64A0000, 40}, // ksj -> Latn 727 {0xC64A0000, 40}, // ksr -> Latn 728 {0x866A0000, 18}, // ktb -> Ethi 729 {0xB26A0000, 40}, // ktm -> Latn 730 {0xBA6A0000, 40}, // kto -> Latn 731 {0x6B750000, 40}, // ku -> Latn 732 {0x6B754952, 1}, // ku-IR -> Arab 733 {0x6B754C42, 1}, // ku-LB -> Arab 734 {0x868A0000, 40}, // kub -> Latn 735 {0x8E8A0000, 40}, // kud -> Latn 736 {0x928A0000, 40}, // kue -> Latn 737 {0xA68A0000, 40}, // kuj -> Latn 738 {0xB28A0000, 15}, // kum -> Cyrl 739 {0xB68A0000, 40}, // kun -> Latn 740 {0xBE8A0000, 40}, // kup -> Latn 741 {0xCA8A0000, 40}, // kus -> Latn 742 {0x6B760000, 15}, // kv -> Cyrl 743 {0x9AAA0000, 40}, // kvg -> Latn 744 {0xC6AA0000, 40}, // kvr -> Latn 745 {0xDEAA0000, 1}, // kvx -> Arab 746 {0x6B770000, 40}, // kw -> Latn 747 {0xA6CA0000, 40}, // kwj -> Latn 748 {0xBACA0000, 40}, // kwo -> Latn 749 {0x82EA0000, 40}, // kxa -> Latn 750 {0x8AEA0000, 18}, // kxc -> Ethi 751 {0xB2EA0000, 80}, // kxm -> Thai 752 {0xBEEA0000, 1}, // kxp -> Arab 753 {0xDAEA0000, 40}, // kxw -> Latn 754 {0xE6EA0000, 40}, // kxz -> Latn 755 {0x6B790000, 15}, // ky -> Cyrl 756 {0x6B79434E, 1}, // ky-CN -> Arab 757 {0x6B795452, 40}, // ky-TR -> Latn 758 {0x930A0000, 40}, // kye -> Latn 759 {0xDF0A0000, 40}, // kyx -> Latn 760 {0xC72A0000, 40}, // kzr -> Latn 761 {0x6C610000, 40}, // la -> Latn 762 {0x840B0000, 42}, // lab -> Lina 763 {0x8C0B0000, 27}, // lad -> Hebr 764 {0x980B0000, 40}, // lag -> Latn 765 {0x9C0B0000, 1}, // lah -> Arab 766 {0xA40B0000, 40}, // laj -> Latn 767 {0xC80B0000, 40}, // las -> Latn 768 {0x6C620000, 40}, // lb -> Latn 769 {0x902B0000, 15}, // lbe -> Cyrl 770 {0xD02B0000, 40}, // lbu -> Latn 771 {0xD82B0000, 40}, // lbw -> Latn 772 {0xB04B0000, 40}, // lcm -> Latn 773 {0xBC4B0000, 80}, // lcp -> Thai 774 {0x846B0000, 40}, // ldb -> Latn 775 {0x8C8B0000, 40}, // led -> Latn 776 {0x908B0000, 40}, // lee -> Latn 777 {0xB08B0000, 40}, // lem -> Latn 778 {0xBC8B0000, 41}, // lep -> Lepc 779 {0xC08B0000, 40}, // leq -> Latn 780 {0xD08B0000, 40}, // leu -> Latn 781 {0xE48B0000, 15}, // lez -> Cyrl 782 {0x6C670000, 40}, // lg -> Latn 783 {0x98CB0000, 40}, // lgg -> Latn 784 {0x6C690000, 40}, // li -> Latn 785 {0x810B0000, 40}, // lia -> Latn 786 {0x8D0B0000, 40}, // lid -> Latn 787 {0x950B0000, 16}, // lif -> Deva 788 {0x990B0000, 40}, // lig -> Latn 789 {0x9D0B0000, 40}, // lih -> Latn 790 {0xA50B0000, 40}, // lij -> Latn 791 {0xC90B0000, 43}, // lis -> Lisu 792 {0xBD2B0000, 40}, // ljp -> Latn 793 {0xA14B0000, 1}, // lki -> Arab 794 {0xCD4B0000, 40}, // lkt -> Latn 795 {0x916B0000, 40}, // lle -> Latn 796 {0xB56B0000, 40}, // lln -> Latn 797 {0xB58B0000, 77}, // lmn -> Telu 798 {0xB98B0000, 40}, // lmo -> Latn 799 {0xBD8B0000, 40}, // lmp -> Latn 800 {0x6C6E0000, 40}, // ln -> Latn 801 {0xC9AB0000, 40}, // lns -> Latn 802 {0xD1AB0000, 40}, // lnu -> Latn 803 {0x6C6F0000, 39}, // lo -> Laoo 804 {0xA5CB0000, 40}, // loj -> Latn 805 {0xA9CB0000, 40}, // lok -> Latn 806 {0xADCB0000, 40}, // lol -> Latn 807 {0xC5CB0000, 40}, // lor -> Latn 808 {0xC9CB0000, 40}, // los -> Latn 809 {0xE5CB0000, 40}, // loz -> Latn 810 {0x8A2B0000, 1}, // lrc -> Arab 811 {0x6C740000, 40}, // lt -> Latn 812 {0x9A6B0000, 40}, // ltg -> Latn 813 {0x6C750000, 40}, // lu -> Latn 814 {0x828B0000, 40}, // lua -> Latn 815 {0xBA8B0000, 40}, // luo -> Latn 816 {0xE28B0000, 40}, // luy -> Latn 817 {0xE68B0000, 1}, // luz -> Arab 818 {0x6C760000, 40}, // lv -> Latn 819 {0xAECB0000, 80}, // lwl -> Thai 820 {0x9F2B0000, 24}, // lzh -> Hans 821 {0xE72B0000, 40}, // lzz -> Latn 822 {0x8C0C0000, 40}, // mad -> Latn 823 {0x940C0000, 40}, // maf -> Latn 824 {0x980C0000, 16}, // mag -> Deva 825 {0xA00C0000, 16}, // mai -> Deva 826 {0xA80C0000, 40}, // mak -> Latn 827 {0xB40C0000, 40}, // man -> Latn 828 {0xB40C474E, 54}, // man-GN -> Nkoo 829 {0xC80C0000, 40}, // mas -> Latn 830 {0xD80C0000, 40}, // maw -> Latn 831 {0xE40C0000, 40}, // maz -> Latn 832 {0x9C2C0000, 40}, // mbh -> Latn 833 {0xB82C0000, 40}, // mbo -> Latn 834 {0xC02C0000, 40}, // mbq -> Latn 835 {0xD02C0000, 40}, // mbu -> Latn 836 {0xD82C0000, 40}, // mbw -> Latn 837 {0xA04C0000, 40}, // mci -> Latn 838 {0xBC4C0000, 40}, // mcp -> Latn 839 {0xC04C0000, 40}, // mcq -> Latn 840 {0xC44C0000, 40}, // mcr -> Latn 841 {0xD04C0000, 40}, // mcu -> Latn 842 {0x806C0000, 40}, // mda -> Latn 843 {0x906C0000, 1}, // mde -> Arab 844 {0x946C0000, 15}, // mdf -> Cyrl 845 {0x9C6C0000, 40}, // mdh -> Latn 846 {0xA46C0000, 40}, // mdj -> Latn 847 {0xC46C0000, 40}, // mdr -> Latn 848 {0xDC6C0000, 18}, // mdx -> Ethi 849 {0x8C8C0000, 40}, // med -> Latn 850 {0x908C0000, 40}, // mee -> Latn 851 {0xA88C0000, 40}, // mek -> Latn 852 {0xB48C0000, 40}, // men -> Latn 853 {0xC48C0000, 40}, // mer -> Latn 854 {0xCC8C0000, 40}, // met -> Latn 855 {0xD08C0000, 40}, // meu -> Latn 856 {0x80AC0000, 1}, // mfa -> Arab 857 {0x90AC0000, 40}, // mfe -> Latn 858 {0xB4AC0000, 40}, // mfn -> Latn 859 {0xB8AC0000, 40}, // mfo -> Latn 860 {0xC0AC0000, 40}, // mfq -> Latn 861 {0x6D670000, 40}, // mg -> Latn 862 {0x9CCC0000, 40}, // mgh -> Latn 863 {0xACCC0000, 40}, // mgl -> Latn 864 {0xB8CC0000, 40}, // mgo -> Latn 865 {0xBCCC0000, 16}, // mgp -> Deva 866 {0xE0CC0000, 40}, // mgy -> Latn 867 {0x6D680000, 40}, // mh -> Latn 868 {0xA0EC0000, 40}, // mhi -> Latn 869 {0xACEC0000, 40}, // mhl -> Latn 870 {0x6D690000, 40}, // mi -> Latn 871 {0x950C0000, 40}, // mif -> Latn 872 {0xB50C0000, 40}, // min -> Latn 873 {0xC90C0000, 26}, // mis -> Hatr 874 {0xD90C0000, 40}, // miw -> Latn 875 {0x6D6B0000, 15}, // mk -> Cyrl 876 {0xA14C0000, 1}, // mki -> Arab 877 {0xAD4C0000, 40}, // mkl -> Latn 878 {0xBD4C0000, 40}, // mkp -> Latn 879 {0xD94C0000, 40}, // mkw -> Latn 880 {0x6D6C0000, 49}, // ml -> Mlym 881 {0x916C0000, 40}, // mle -> Latn 882 {0xBD6C0000, 40}, // mlp -> Latn 883 {0xC96C0000, 40}, // mls -> Latn 884 {0xB98C0000, 40}, // mmo -> Latn 885 {0xD18C0000, 40}, // mmu -> Latn 886 {0xDD8C0000, 40}, // mmx -> Latn 887 {0x6D6E0000, 15}, // mn -> Cyrl 888 {0x6D6E434E, 50}, // mn-CN -> Mong 889 {0x81AC0000, 40}, // mna -> Latn 890 {0x95AC0000, 40}, // mnf -> Latn 891 {0xA1AC0000, 7}, // mni -> Beng 892 {0xD9AC0000, 52}, // mnw -> Mymr 893 {0x81CC0000, 40}, // moa -> Latn 894 {0x91CC0000, 40}, // moe -> Latn 895 {0x9DCC0000, 40}, // moh -> Latn 896 {0xC9CC0000, 40}, // mos -> Latn 897 {0xDDCC0000, 40}, // mox -> Latn 898 {0xBDEC0000, 40}, // mpp -> Latn 899 {0xC9EC0000, 40}, // mps -> Latn 900 {0xCDEC0000, 40}, // mpt -> Latn 901 {0xDDEC0000, 40}, // mpx -> Latn 902 {0xAE0C0000, 40}, // mql -> Latn 903 {0x6D720000, 16}, // mr -> Deva 904 {0x8E2C0000, 16}, // mrd -> Deva 905 {0xA62C0000, 15}, // mrj -> Cyrl 906 {0xBA2C0000, 51}, // mro -> Mroo 907 {0x6D730000, 40}, // ms -> Latn 908 {0x6D734343, 1}, // ms-CC -> Arab 909 {0x6D734944, 1}, // ms-ID -> Arab 910 {0x6D740000, 40}, // mt -> Latn 911 {0x8A6C0000, 40}, // mtc -> Latn 912 {0x966C0000, 40}, // mtf -> Latn 913 {0xA26C0000, 40}, // mti -> Latn 914 {0xC66C0000, 16}, // mtr -> Deva 915 {0x828C0000, 40}, // mua -> Latn 916 {0xC68C0000, 40}, // mur -> Latn 917 {0xCA8C0000, 40}, // mus -> Latn 918 {0x82AC0000, 40}, // mva -> Latn 919 {0xB6AC0000, 40}, // mvn -> Latn 920 {0xE2AC0000, 1}, // mvy -> Arab 921 {0xAACC0000, 40}, // mwk -> Latn 922 {0xC6CC0000, 16}, // mwr -> Deva 923 {0xD6CC0000, 40}, // mwv -> Latn 924 {0x8AEC0000, 40}, // mxc -> Latn 925 {0xB2EC0000, 40}, // mxm -> Latn 926 {0x6D790000, 52}, // my -> Mymr 927 {0xAB0C0000, 40}, // myk -> Latn 928 {0xB30C0000, 18}, // mym -> Ethi 929 {0xD70C0000, 15}, // myv -> Cyrl 930 {0xDB0C0000, 40}, // myw -> Latn 931 {0xDF0C0000, 40}, // myx -> Latn 932 {0xE70C0000, 46}, // myz -> Mand 933 {0xAB2C0000, 40}, // mzk -> Latn 934 {0xB32C0000, 40}, // mzm -> Latn 935 {0xB72C0000, 1}, // mzn -> Arab 936 {0xBF2C0000, 40}, // mzp -> Latn 937 {0xDB2C0000, 40}, // mzw -> Latn 938 {0xE72C0000, 40}, // mzz -> Latn 939 {0x6E610000, 40}, // na -> Latn 940 {0x880D0000, 40}, // nac -> Latn 941 {0x940D0000, 40}, // naf -> Latn 942 {0xA80D0000, 40}, // nak -> Latn 943 {0xB40D0000, 24}, // nan -> Hans 944 {0xBC0D0000, 40}, // nap -> Latn 945 {0xC00D0000, 40}, // naq -> Latn 946 {0xC80D0000, 40}, // nas -> Latn 947 {0x6E620000, 40}, // nb -> Latn 948 {0x804D0000, 40}, // nca -> Latn 949 {0x904D0000, 40}, // nce -> Latn 950 {0x944D0000, 40}, // ncf -> Latn 951 {0x9C4D0000, 40}, // nch -> Latn 952 {0xB84D0000, 40}, // nco -> Latn 953 {0xD04D0000, 40}, // ncu -> Latn 954 {0x6E640000, 40}, // nd -> Latn 955 {0x886D0000, 40}, // ndc -> Latn 956 {0xC86D0000, 40}, // nds -> Latn 957 {0x6E650000, 16}, // ne -> Deva 958 {0x848D0000, 40}, // neb -> Latn 959 {0xD88D0000, 16}, // new -> Deva 960 {0xDC8D0000, 40}, // nex -> Latn 961 {0xC4AD0000, 40}, // nfr -> Latn 962 {0x6E670000, 40}, // ng -> Latn 963 {0x80CD0000, 40}, // nga -> Latn 964 {0x84CD0000, 40}, // ngb -> Latn 965 {0xACCD0000, 40}, // ngl -> Latn 966 {0x84ED0000, 40}, // nhb -> Latn 967 {0x90ED0000, 40}, // nhe -> Latn 968 {0xD8ED0000, 40}, // nhw -> Latn 969 {0x950D0000, 40}, // nif -> Latn 970 {0xA10D0000, 40}, // nii -> Latn 971 {0xA50D0000, 40}, // nij -> Latn 972 {0xB50D0000, 40}, // nin -> Latn 973 {0xD10D0000, 40}, // niu -> Latn 974 {0xE10D0000, 40}, // niy -> Latn 975 {0xE50D0000, 40}, // niz -> Latn 976 {0xB92D0000, 40}, // njo -> Latn 977 {0x994D0000, 40}, // nkg -> Latn 978 {0xB94D0000, 40}, // nko -> Latn 979 {0x6E6C0000, 40}, // nl -> Latn 980 {0x998D0000, 40}, // nmg -> Latn 981 {0xE58D0000, 40}, // nmz -> Latn 982 {0x6E6E0000, 40}, // nn -> Latn 983 {0x95AD0000, 40}, // nnf -> Latn 984 {0x9DAD0000, 40}, // nnh -> Latn 985 {0xA9AD0000, 40}, // nnk -> Latn 986 {0xB1AD0000, 40}, // nnm -> Latn 987 {0x6E6F0000, 40}, // no -> Latn 988 {0x8DCD0000, 38}, // nod -> Lana 989 {0x91CD0000, 16}, // noe -> Deva 990 {0xB5CD0000, 64}, // non -> Runr 991 {0xBDCD0000, 40}, // nop -> Latn 992 {0xD1CD0000, 40}, // nou -> Latn 993 {0xBA0D0000, 54}, // nqo -> Nkoo 994 {0x6E720000, 40}, // nr -> Latn 995 {0x862D0000, 40}, // nrb -> Latn 996 {0xAA4D0000, 9}, // nsk -> Cans 997 {0xB64D0000, 40}, // nsn -> Latn 998 {0xBA4D0000, 40}, // nso -> Latn 999 {0xCA4D0000, 40}, // nss -> Latn 1000 {0xB26D0000, 40}, // ntm -> Latn 1001 {0xC66D0000, 40}, // ntr -> Latn 1002 {0xA28D0000, 40}, // nui -> Latn 1003 {0xBE8D0000, 40}, // nup -> Latn 1004 {0xCA8D0000, 40}, // nus -> Latn 1005 {0xD68D0000, 40}, // nuv -> Latn 1006 {0xDE8D0000, 40}, // nux -> Latn 1007 {0x6E760000, 40}, // nv -> Latn 1008 {0x86CD0000, 40}, // nwb -> Latn 1009 {0xC2ED0000, 40}, // nxq -> Latn 1010 {0xC6ED0000, 40}, // nxr -> Latn 1011 {0x6E790000, 40}, // ny -> Latn 1012 {0xB30D0000, 40}, // nym -> Latn 1013 {0xB70D0000, 40}, // nyn -> Latn 1014 {0xA32D0000, 40}, // nzi -> Latn 1015 {0x6F630000, 40}, // oc -> Latn 1016 {0x88CE0000, 40}, // ogc -> Latn 1017 {0xC54E0000, 40}, // okr -> Latn 1018 {0xD54E0000, 40}, // okv -> Latn 1019 {0x6F6D0000, 40}, // om -> Latn 1020 {0x99AE0000, 40}, // ong -> Latn 1021 {0xB5AE0000, 40}, // onn -> Latn 1022 {0xC9AE0000, 40}, // ons -> Latn 1023 {0xB1EE0000, 40}, // opm -> Latn 1024 {0x6F720000, 57}, // or -> Orya 1025 {0xBA2E0000, 40}, // oro -> Latn 1026 {0xD22E0000, 1}, // oru -> Arab 1027 {0x6F730000, 15}, // os -> Cyrl 1028 {0x824E0000, 58}, // osa -> Osge 1029 {0x826E0000, 1}, // ota -> Arab 1030 {0xAA6E0000, 56}, // otk -> Orkh 1031 {0xB32E0000, 40}, // ozm -> Latn 1032 {0x70610000, 23}, // pa -> Guru 1033 {0x7061504B, 1}, // pa-PK -> Arab 1034 {0x980F0000, 40}, // pag -> Latn 1035 {0xAC0F0000, 60}, // pal -> Phli 1036 {0xB00F0000, 40}, // pam -> Latn 1037 {0xBC0F0000, 40}, // pap -> Latn 1038 {0xD00F0000, 40}, // pau -> Latn 1039 {0xA02F0000, 40}, // pbi -> Latn 1040 {0x8C4F0000, 40}, // pcd -> Latn 1041 {0xB04F0000, 40}, // pcm -> Latn 1042 {0x886F0000, 40}, // pdc -> Latn 1043 {0xCC6F0000, 40}, // pdt -> Latn 1044 {0x8C8F0000, 40}, // ped -> Latn 1045 {0xB88F0000, 84}, // peo -> Xpeo 1046 {0xDC8F0000, 40}, // pex -> Latn 1047 {0xACAF0000, 40}, // pfl -> Latn 1048 {0xACEF0000, 1}, // phl -> Arab 1049 {0xB4EF0000, 61}, // phn -> Phnx 1050 {0xAD0F0000, 40}, // pil -> Latn 1051 {0xBD0F0000, 40}, // pip -> Latn 1052 {0x814F0000, 8}, // pka -> Brah 1053 {0xB94F0000, 40}, // pko -> Latn 1054 {0x706C0000, 40}, // pl -> Latn 1055 {0x816F0000, 40}, // pla -> Latn 1056 {0xC98F0000, 40}, // pms -> Latn 1057 {0x99AF0000, 40}, // png -> Latn 1058 {0xB5AF0000, 40}, // pnn -> Latn 1059 {0xCDAF0000, 21}, // pnt -> Grek 1060 {0xB5CF0000, 40}, // pon -> Latn 1061 {0xB9EF0000, 40}, // ppo -> Latn 1062 {0x822F0000, 34}, // pra -> Khar 1063 {0x8E2F0000, 1}, // prd -> Arab 1064 {0x9A2F0000, 40}, // prg -> Latn 1065 {0x70730000, 1}, // ps -> Arab 1066 {0xCA4F0000, 40}, // pss -> Latn 1067 {0x70740000, 40}, // pt -> Latn 1068 {0xBE6F0000, 40}, // ptp -> Latn 1069 {0xD28F0000, 40}, // puu -> Latn 1070 {0x82CF0000, 40}, // pwa -> Latn 1071 {0x71750000, 40}, // qu -> Latn 1072 {0x8A900000, 40}, // quc -> Latn 1073 {0x9A900000, 40}, // qug -> Latn 1074 {0xA0110000, 40}, // rai -> Latn 1075 {0xA4110000, 16}, // raj -> Deva 1076 {0xB8110000, 40}, // rao -> Latn 1077 {0x94510000, 40}, // rcf -> Latn 1078 {0xA4910000, 40}, // rej -> Latn 1079 {0xAC910000, 40}, // rel -> Latn 1080 {0xC8910000, 40}, // res -> Latn 1081 {0xB4D10000, 40}, // rgn -> Latn 1082 {0x98F10000, 1}, // rhg -> Arab 1083 {0x81110000, 40}, // ria -> Latn 1084 {0x95110000, 78}, // rif -> Tfng 1085 {0x95114E4C, 40}, // rif-NL -> Latn 1086 {0xC9310000, 16}, // rjs -> Deva 1087 {0xCD510000, 7}, // rkt -> Beng 1088 {0x726D0000, 40}, // rm -> Latn 1089 {0x95910000, 40}, // rmf -> Latn 1090 {0xB9910000, 40}, // rmo -> Latn 1091 {0xCD910000, 1}, // rmt -> Arab 1092 {0xD1910000, 40}, // rmu -> Latn 1093 {0x726E0000, 40}, // rn -> Latn 1094 {0x81B10000, 40}, // rna -> Latn 1095 {0x99B10000, 40}, // rng -> Latn 1096 {0x726F0000, 40}, // ro -> Latn 1097 {0x85D10000, 40}, // rob -> Latn 1098 {0x95D10000, 40}, // rof -> Latn 1099 {0xB9D10000, 40}, // roo -> Latn 1100 {0xBA310000, 40}, // rro -> Latn 1101 {0xB2710000, 40}, // rtm -> Latn 1102 {0x72750000, 15}, // ru -> Cyrl 1103 {0x92910000, 15}, // rue -> Cyrl 1104 {0x9A910000, 40}, // rug -> Latn 1105 {0x72770000, 40}, // rw -> Latn 1106 {0xAAD10000, 40}, // rwk -> Latn 1107 {0xBAD10000, 40}, // rwo -> Latn 1108 {0xD3110000, 33}, // ryu -> Kana 1109 {0x73610000, 16}, // sa -> Deva 1110 {0x94120000, 40}, // saf -> Latn 1111 {0x9C120000, 15}, // sah -> Cyrl 1112 {0xC0120000, 40}, // saq -> Latn 1113 {0xC8120000, 40}, // sas -> Latn 1114 {0xCC120000, 40}, // sat -> Latn 1115 {0xE4120000, 67}, // saz -> Saur 1116 {0x80320000, 40}, // sba -> Latn 1117 {0x90320000, 40}, // sbe -> Latn 1118 {0xBC320000, 40}, // sbp -> Latn 1119 {0x73630000, 40}, // sc -> Latn 1120 {0xA8520000, 16}, // sck -> Deva 1121 {0xAC520000, 1}, // scl -> Arab 1122 {0xB4520000, 40}, // scn -> Latn 1123 {0xB8520000, 40}, // sco -> Latn 1124 {0xC8520000, 40}, // scs -> Latn 1125 {0x73640000, 1}, // sd -> Arab 1126 {0x88720000, 40}, // sdc -> Latn 1127 {0x9C720000, 1}, // sdh -> Arab 1128 {0x73650000, 40}, // se -> Latn 1129 {0x94920000, 40}, // sef -> Latn 1130 {0x9C920000, 40}, // seh -> Latn 1131 {0xA0920000, 40}, // sei -> Latn 1132 {0xC8920000, 40}, // ses -> Latn 1133 {0x73670000, 40}, // sg -> Latn 1134 {0x80D20000, 55}, // sga -> Ogam 1135 {0xC8D20000, 40}, // sgs -> Latn 1136 {0xD8D20000, 18}, // sgw -> Ethi 1137 {0xE4D20000, 40}, // sgz -> Latn 1138 {0x73680000, 40}, // sh -> Latn 1139 {0xA0F20000, 78}, // shi -> Tfng 1140 {0xA8F20000, 40}, // shk -> Latn 1141 {0xB4F20000, 52}, // shn -> Mymr 1142 {0xD0F20000, 1}, // shu -> Arab 1143 {0x73690000, 69}, // si -> Sinh 1144 {0x8D120000, 40}, // sid -> Latn 1145 {0x99120000, 40}, // sig -> Latn 1146 {0xAD120000, 40}, // sil -> Latn 1147 {0xB1120000, 40}, // sim -> Latn 1148 {0xC5320000, 40}, // sjr -> Latn 1149 {0x736B0000, 40}, // sk -> Latn 1150 {0x89520000, 40}, // skc -> Latn 1151 {0xC5520000, 1}, // skr -> Arab 1152 {0xC9520000, 40}, // sks -> Latn 1153 {0x736C0000, 40}, // sl -> Latn 1154 {0x8D720000, 40}, // sld -> Latn 1155 {0xA1720000, 40}, // sli -> Latn 1156 {0xAD720000, 40}, // sll -> Latn 1157 {0xE1720000, 40}, // sly -> Latn 1158 {0x736D0000, 40}, // sm -> Latn 1159 {0x81920000, 40}, // sma -> Latn 1160 {0xA5920000, 40}, // smj -> Latn 1161 {0xB5920000, 40}, // smn -> Latn 1162 {0xBD920000, 65}, // smp -> Samr 1163 {0xC1920000, 40}, // smq -> Latn 1164 {0xC9920000, 40}, // sms -> Latn 1165 {0x736E0000, 40}, // sn -> Latn 1166 {0x89B20000, 40}, // snc -> Latn 1167 {0xA9B20000, 40}, // snk -> Latn 1168 {0xBDB20000, 40}, // snp -> Latn 1169 {0xDDB20000, 40}, // snx -> Latn 1170 {0xE1B20000, 40}, // sny -> Latn 1171 {0x736F0000, 40}, // so -> Latn 1172 {0xA9D20000, 40}, // sok -> Latn 1173 {0xC1D20000, 40}, // soq -> Latn 1174 {0xD1D20000, 80}, // sou -> Thai 1175 {0xE1D20000, 40}, // soy -> Latn 1176 {0x8DF20000, 40}, // spd -> Latn 1177 {0xADF20000, 40}, // spl -> Latn 1178 {0xC9F20000, 40}, // sps -> Latn 1179 {0x73710000, 40}, // sq -> Latn 1180 {0x73720000, 15}, // sr -> Cyrl 1181 {0x73724D45, 40}, // sr-ME -> Latn 1182 {0x7372524F, 40}, // sr-RO -> Latn 1183 {0x73725255, 40}, // sr-RU -> Latn 1184 {0x73725452, 40}, // sr-TR -> Latn 1185 {0x86320000, 70}, // srb -> Sora 1186 {0xB6320000, 40}, // srn -> Latn 1187 {0xC6320000, 40}, // srr -> Latn 1188 {0xDE320000, 16}, // srx -> Deva 1189 {0x73730000, 40}, // ss -> Latn 1190 {0x8E520000, 40}, // ssd -> Latn 1191 {0x9A520000, 40}, // ssg -> Latn 1192 {0xE2520000, 40}, // ssy -> Latn 1193 {0x73740000, 40}, // st -> Latn 1194 {0xAA720000, 40}, // stk -> Latn 1195 {0xC2720000, 40}, // stq -> Latn 1196 {0x73750000, 40}, // su -> Latn 1197 {0x82920000, 40}, // sua -> Latn 1198 {0x92920000, 40}, // sue -> Latn 1199 {0xAA920000, 40}, // suk -> Latn 1200 {0xC6920000, 40}, // sur -> Latn 1201 {0xCA920000, 40}, // sus -> Latn 1202 {0x73760000, 40}, // sv -> Latn 1203 {0x73770000, 40}, // sw -> Latn 1204 {0x86D20000, 1}, // swb -> Arab 1205 {0x8AD20000, 40}, // swc -> Latn 1206 {0x9AD20000, 40}, // swg -> Latn 1207 {0xBED20000, 40}, // swp -> Latn 1208 {0xD6D20000, 16}, // swv -> Deva 1209 {0xB6F20000, 40}, // sxn -> Latn 1210 {0xDAF20000, 40}, // sxw -> Latn 1211 {0xAF120000, 7}, // syl -> Beng 1212 {0xC7120000, 71}, // syr -> Syrc 1213 {0xAF320000, 40}, // szl -> Latn 1214 {0x74610000, 74}, // ta -> Taml 1215 {0xA4130000, 16}, // taj -> Deva 1216 {0xAC130000, 40}, // tal -> Latn 1217 {0xB4130000, 40}, // tan -> Latn 1218 {0xC0130000, 40}, // taq -> Latn 1219 {0x88330000, 40}, // tbc -> Latn 1220 {0x8C330000, 40}, // tbd -> Latn 1221 {0x94330000, 40}, // tbf -> Latn 1222 {0x98330000, 40}, // tbg -> Latn 1223 {0xB8330000, 40}, // tbo -> Latn 1224 {0xD8330000, 40}, // tbw -> Latn 1225 {0xE4330000, 40}, // tbz -> Latn 1226 {0xA0530000, 40}, // tci -> Latn 1227 {0xE0530000, 36}, // tcy -> Knda 1228 {0x8C730000, 72}, // tdd -> Tale 1229 {0x98730000, 16}, // tdg -> Deva 1230 {0x9C730000, 16}, // tdh -> Deva 1231 {0x74650000, 77}, // te -> Telu 1232 {0x8C930000, 40}, // ted -> Latn 1233 {0xB0930000, 40}, // tem -> Latn 1234 {0xB8930000, 40}, // teo -> Latn 1235 {0xCC930000, 40}, // tet -> Latn 1236 {0xA0B30000, 40}, // tfi -> Latn 1237 {0x74670000, 15}, // tg -> Cyrl 1238 {0x7467504B, 1}, // tg-PK -> Arab 1239 {0x88D30000, 40}, // tgc -> Latn 1240 {0xB8D30000, 40}, // tgo -> Latn 1241 {0xD0D30000, 40}, // tgu -> Latn 1242 {0x74680000, 80}, // th -> Thai 1243 {0xACF30000, 16}, // thl -> Deva 1244 {0xC0F30000, 16}, // thq -> Deva 1245 {0xC4F30000, 16}, // thr -> Deva 1246 {0x74690000, 18}, // ti -> Ethi 1247 {0x95130000, 40}, // tif -> Latn 1248 {0x99130000, 18}, // tig -> Ethi 1249 {0xA9130000, 40}, // tik -> Latn 1250 {0xB1130000, 40}, // tim -> Latn 1251 {0xB9130000, 40}, // tio -> Latn 1252 {0xD5130000, 40}, // tiv -> Latn 1253 {0x746B0000, 40}, // tk -> Latn 1254 {0xAD530000, 40}, // tkl -> Latn 1255 {0xC5530000, 40}, // tkr -> Latn 1256 {0xCD530000, 16}, // tkt -> Deva 1257 {0x746C0000, 40}, // tl -> Latn 1258 {0x95730000, 40}, // tlf -> Latn 1259 {0xDD730000, 40}, // tlx -> Latn 1260 {0xE1730000, 40}, // tly -> Latn 1261 {0x9D930000, 40}, // tmh -> Latn 1262 {0xE1930000, 40}, // tmy -> Latn 1263 {0x746E0000, 40}, // tn -> Latn 1264 {0x9DB30000, 40}, // tnh -> Latn 1265 {0x746F0000, 40}, // to -> Latn 1266 {0x95D30000, 40}, // tof -> Latn 1267 {0x99D30000, 40}, // tog -> Latn 1268 {0xC1D30000, 40}, // toq -> Latn 1269 {0xA1F30000, 40}, // tpi -> Latn 1270 {0xB1F30000, 40}, // tpm -> Latn 1271 {0xE5F30000, 40}, // tpz -> Latn 1272 {0xBA130000, 40}, // tqo -> Latn 1273 {0x74720000, 40}, // tr -> Latn 1274 {0xD2330000, 40}, // tru -> Latn 1275 {0xD6330000, 40}, // trv -> Latn 1276 {0xDA330000, 1}, // trw -> Arab 1277 {0x74730000, 40}, // ts -> Latn 1278 {0x8E530000, 21}, // tsd -> Grek 1279 {0x96530000, 16}, // tsf -> Deva 1280 {0x9A530000, 40}, // tsg -> Latn 1281 {0xA6530000, 81}, // tsj -> Tibt 1282 {0xDA530000, 40}, // tsw -> Latn 1283 {0x74740000, 15}, // tt -> Cyrl 1284 {0x8E730000, 40}, // ttd -> Latn 1285 {0x92730000, 40}, // tte -> Latn 1286 {0xA6730000, 40}, // ttj -> Latn 1287 {0xC6730000, 40}, // ttr -> Latn 1288 {0xCA730000, 80}, // tts -> Thai 1289 {0xCE730000, 40}, // ttt -> Latn 1290 {0x9E930000, 40}, // tuh -> Latn 1291 {0xAE930000, 40}, // tul -> Latn 1292 {0xB2930000, 40}, // tum -> Latn 1293 {0xC2930000, 40}, // tuq -> Latn 1294 {0x8EB30000, 40}, // tvd -> Latn 1295 {0xAEB30000, 40}, // tvl -> Latn 1296 {0xD2B30000, 40}, // tvu -> Latn 1297 {0x9ED30000, 40}, // twh -> Latn 1298 {0xC2D30000, 40}, // twq -> Latn 1299 {0x9AF30000, 75}, // txg -> Tang 1300 {0x74790000, 40}, // ty -> Latn 1301 {0x83130000, 40}, // tya -> Latn 1302 {0xD7130000, 15}, // tyv -> Cyrl 1303 {0xB3330000, 40}, // tzm -> Latn 1304 {0xD0340000, 40}, // ubu -> Latn 1305 {0xB0740000, 15}, // udm -> Cyrl 1306 {0x75670000, 1}, // ug -> Arab 1307 {0x75674B5A, 15}, // ug-KZ -> Cyrl 1308 {0x75674D4E, 15}, // ug-MN -> Cyrl 1309 {0x80D40000, 82}, // uga -> Ugar 1310 {0x756B0000, 15}, // uk -> Cyrl 1311 {0xA1740000, 40}, // uli -> Latn 1312 {0x85940000, 40}, // umb -> Latn 1313 {0xC5B40000, 7}, // unr -> Beng 1314 {0xC5B44E50, 16}, // unr-NP -> Deva 1315 {0xDDB40000, 7}, // unx -> Beng 1316 {0x75720000, 1}, // ur -> Arab 1317 {0xA2340000, 40}, // uri -> Latn 1318 {0xCE340000, 40}, // urt -> Latn 1319 {0xDA340000, 40}, // urw -> Latn 1320 {0x82540000, 40}, // usa -> Latn 1321 {0xC6740000, 40}, // utr -> Latn 1322 {0x9EB40000, 40}, // uvh -> Latn 1323 {0xAEB40000, 40}, // uvl -> Latn 1324 {0x757A0000, 40}, // uz -> Latn 1325 {0x757A4146, 1}, // uz-AF -> Arab 1326 {0x757A434E, 15}, // uz-CN -> Cyrl 1327 {0x98150000, 40}, // vag -> Latn 1328 {0xA0150000, 83}, // vai -> Vaii 1329 {0xB4150000, 40}, // van -> Latn 1330 {0x76650000, 40}, // ve -> Latn 1331 {0x88950000, 40}, // vec -> Latn 1332 {0xBC950000, 40}, // vep -> Latn 1333 {0x76690000, 40}, // vi -> Latn 1334 {0x89150000, 40}, // vic -> Latn 1335 {0xD5150000, 40}, // viv -> Latn 1336 {0xC9750000, 40}, // vls -> Latn 1337 {0x95950000, 40}, // vmf -> Latn 1338 {0xD9950000, 40}, // vmw -> Latn 1339 {0x766F0000, 40}, // vo -> Latn 1340 {0xCDD50000, 40}, // vot -> Latn 1341 {0xBA350000, 40}, // vro -> Latn 1342 {0xB6950000, 40}, // vun -> Latn 1343 {0xCE950000, 40}, // vut -> Latn 1344 {0x77610000, 40}, // wa -> Latn 1345 {0x90160000, 40}, // wae -> Latn 1346 {0xA4160000, 40}, // waj -> Latn 1347 {0xAC160000, 18}, // wal -> Ethi 1348 {0xB4160000, 40}, // wan -> Latn 1349 {0xC4160000, 40}, // war -> Latn 1350 {0xBC360000, 40}, // wbp -> Latn 1351 {0xC0360000, 77}, // wbq -> Telu 1352 {0xC4360000, 16}, // wbr -> Deva 1353 {0xA0560000, 40}, // wci -> Latn 1354 {0xC4960000, 40}, // wer -> Latn 1355 {0xA0D60000, 40}, // wgi -> Latn 1356 {0x98F60000, 40}, // whg -> Latn 1357 {0x85160000, 40}, // wib -> Latn 1358 {0xD1160000, 40}, // wiu -> Latn 1359 {0xD5160000, 40}, // wiv -> Latn 1360 {0x81360000, 40}, // wja -> Latn 1361 {0xA1360000, 40}, // wji -> Latn 1362 {0xC9760000, 40}, // wls -> Latn 1363 {0xB9960000, 40}, // wmo -> Latn 1364 {0x89B60000, 40}, // wnc -> Latn 1365 {0xA1B60000, 1}, // wni -> Arab 1366 {0xD1B60000, 40}, // wnu -> Latn 1367 {0x776F0000, 40}, // wo -> Latn 1368 {0x85D60000, 40}, // wob -> Latn 1369 {0xC9D60000, 40}, // wos -> Latn 1370 {0xCA360000, 40}, // wrs -> Latn 1371 {0xAA560000, 40}, // wsk -> Latn 1372 {0xB2760000, 16}, // wtm -> Deva 1373 {0xD2960000, 24}, // wuu -> Hans 1374 {0xD6960000, 40}, // wuv -> Latn 1375 {0x82D60000, 40}, // wwa -> Latn 1376 {0xD4170000, 40}, // xav -> Latn 1377 {0xA0370000, 40}, // xbi -> Latn 1378 {0xC4570000, 10}, // xcr -> Cari 1379 {0xC8970000, 40}, // xes -> Latn 1380 {0x78680000, 40}, // xh -> Latn 1381 {0x81770000, 40}, // xla -> Latn 1382 {0x89770000, 44}, // xlc -> Lyci 1383 {0x8D770000, 45}, // xld -> Lydi 1384 {0x95970000, 19}, // xmf -> Geor 1385 {0xB5970000, 47}, // xmn -> Mani 1386 {0xC5970000, 48}, // xmr -> Merc 1387 {0x81B70000, 53}, // xna -> Narb 1388 {0xC5B70000, 16}, // xnr -> Deva 1389 {0x99D70000, 40}, // xog -> Latn 1390 {0xB5D70000, 40}, // xon -> Latn 1391 {0xC5F70000, 63}, // xpr -> Prti 1392 {0x86370000, 40}, // xrb -> Latn 1393 {0x82570000, 66}, // xsa -> Sarb 1394 {0xA2570000, 40}, // xsi -> Latn 1395 {0xB2570000, 40}, // xsm -> Latn 1396 {0xC6570000, 16}, // xsr -> Deva 1397 {0x92D70000, 40}, // xwe -> Latn 1398 {0xB0180000, 40}, // yam -> Latn 1399 {0xB8180000, 40}, // yao -> Latn 1400 {0xBC180000, 40}, // yap -> Latn 1401 {0xC8180000, 40}, // yas -> Latn 1402 {0xCC180000, 40}, // yat -> Latn 1403 {0xD4180000, 40}, // yav -> Latn 1404 {0xE0180000, 40}, // yay -> Latn 1405 {0xE4180000, 40}, // yaz -> Latn 1406 {0x80380000, 40}, // yba -> Latn 1407 {0x84380000, 40}, // ybb -> Latn 1408 {0xE0380000, 40}, // yby -> Latn 1409 {0xC4980000, 40}, // yer -> Latn 1410 {0xC4D80000, 40}, // ygr -> Latn 1411 {0xD8D80000, 40}, // ygw -> Latn 1412 {0x79690000, 27}, // yi -> Hebr 1413 {0xB9580000, 40}, // yko -> Latn 1414 {0x91780000, 40}, // yle -> Latn 1415 {0x99780000, 40}, // ylg -> Latn 1416 {0xAD780000, 40}, // yll -> Latn 1417 {0xAD980000, 40}, // yml -> Latn 1418 {0x796F0000, 40}, // yo -> Latn 1419 {0xB5D80000, 40}, // yon -> Latn 1420 {0x86380000, 40}, // yrb -> Latn 1421 {0x92380000, 40}, // yre -> Latn 1422 {0xAE380000, 40}, // yrl -> Latn 1423 {0xCA580000, 40}, // yss -> Latn 1424 {0x82980000, 40}, // yua -> Latn 1425 {0x92980000, 25}, // yue -> Hant 1426 {0x9298434E, 24}, // yue-CN -> Hans 1427 {0xA6980000, 40}, // yuj -> Latn 1428 {0xCE980000, 40}, // yut -> Latn 1429 {0xDA980000, 40}, // yuw -> Latn 1430 {0x7A610000, 40}, // za -> Latn 1431 {0x98190000, 40}, // zag -> Latn 1432 {0xA4790000, 1}, // zdj -> Arab 1433 {0x80990000, 40}, // zea -> Latn 1434 {0x9CD90000, 78}, // zgh -> Tfng 1435 {0x7A680000, 24}, // zh -> Hans 1436 {0x7A684155, 25}, // zh-AU -> Hant 1437 {0x7A68424E, 25}, // zh-BN -> Hant 1438 {0x7A684742, 25}, // zh-GB -> Hant 1439 {0x7A684746, 25}, // zh-GF -> Hant 1440 {0x7A68484B, 25}, // zh-HK -> Hant 1441 {0x7A684944, 25}, // zh-ID -> Hant 1442 {0x7A684D4F, 25}, // zh-MO -> Hant 1443 {0x7A684D59, 25}, // zh-MY -> Hant 1444 {0x7A685041, 25}, // zh-PA -> Hant 1445 {0x7A685046, 25}, // zh-PF -> Hant 1446 {0x7A685048, 25}, // zh-PH -> Hant 1447 {0x7A685352, 25}, // zh-SR -> Hant 1448 {0x7A685448, 25}, // zh-TH -> Hant 1449 {0x7A685457, 25}, // zh-TW -> Hant 1450 {0x7A685553, 25}, // zh-US -> Hant 1451 {0x7A68564E, 25}, // zh-VN -> Hant 1452 {0x81190000, 40}, // zia -> Latn 1453 {0xB1790000, 40}, // zlm -> Latn 1454 {0xA1990000, 40}, // zmi -> Latn 1455 {0x91B90000, 40}, // zne -> Latn 1456 {0x7A750000, 40}, // zu -> Latn 1457 {0x83390000, 40}, // zza -> Latn 1458 }; 1459 1460 Map<Integer, Byte> buildMap = new HashMap<>(); 1461 for (int[] entry : entries) { buildMap.put(entry[0], (byte) entry[1])1462 buildMap.put(entry[0], (byte) entry[1]); 1463 } 1464 LIKELY_SCRIPTS = Collections.unmodifiableMap(buildMap); 1465 } 1466 1467 static final Set<Long> REPRESENTATIVE_LOCALES; 1468 1469 static { 1470 long[] entries = { 1471 0x616145544C61746EL, // aa_Latn_ET 1472 0x616247454379726CL, // ab_Cyrl_GE 1473 0xC42047484C61746EL, // abr_Latn_GH 1474 0x904049444C61746EL, // ace_Latn_ID 1475 0x9C4055474C61746EL, // ach_Latn_UG 1476 0x806047484C61746EL, // ada_Latn_GH 1477 0xE06052554379726CL, // ady_Cyrl_RU 1478 0x6165495241767374L, // ae_Avst_IR 1479 0x8480544E41726162L, // aeb_Arab_TN 1480 0x61665A414C61746EL, // af_Latn_ZA 1481 0xC0C0434D4C61746EL, // agq_Latn_CM 1482 0xB8E0494E41686F6DL, // aho_Ahom_IN 1483 0x616B47484C61746EL, // ak_Latn_GH 1484 0xA940495158737578L, // akk_Xsux_IQ 1485 0xB560584B4C61746EL, // aln_Latn_XK 1486 0xCD6052554379726CL, // alt_Cyrl_RU 1487 0x616D455445746869L, // am_Ethi_ET 1488 0xB9804E474C61746EL, // amo_Latn_NG 1489 0xE5C049444C61746EL, // aoz_Latn_ID 1490 0x8DE0544741726162L, // apd_Arab_TG 1491 0x6172454741726162L, // ar_Arab_EG 1492 0x8A20495241726D69L, // arc_Armi_IR 1493 0x8A204A4F4E626174L, // arc_Nbat_JO 1494 0x8A20535950616C6DL, // arc_Palm_SY 1495 0xB620434C4C61746EL, // arn_Latn_CL 1496 0xBA20424F4C61746EL, // aro_Latn_BO 1497 0xC220445A41726162L, // arq_Arab_DZ 1498 0xE2204D4141726162L, // ary_Arab_MA 1499 0xE620454741726162L, // arz_Arab_EG 1500 0x6173494E42656E67L, // as_Beng_IN 1501 0x8240545A4C61746EL, // asa_Latn_TZ 1502 0x9240555353676E77L, // ase_Sgnw_US 1503 0xCE4045534C61746EL, // ast_Latn_ES 1504 0xA66043414C61746EL, // atj_Latn_CA 1505 0x617652554379726CL, // av_Cyrl_RU 1506 0x82C0494E44657661L, // awa_Deva_IN 1507 0x6179424F4C61746EL, // ay_Latn_BO 1508 0x617A495241726162L, // az_Arab_IR 1509 0x617A415A4C61746EL, // az_Latn_AZ 1510 0x626152554379726CL, // ba_Cyrl_RU 1511 0xAC01504B41726162L, // bal_Arab_PK 1512 0xB40149444C61746EL, // ban_Latn_ID 1513 0xBC014E5044657661L, // bap_Deva_NP 1514 0xC40141544C61746EL, // bar_Latn_AT 1515 0xC801434D4C61746EL, // bas_Latn_CM 1516 0xDC01434D42616D75L, // bax_Bamu_CM 1517 0x882149444C61746EL, // bbc_Latn_ID 1518 0xA421434D4C61746EL, // bbj_Latn_CM 1519 0xA04143494C61746EL, // bci_Latn_CI 1520 0x626542594379726CL, // be_Cyrl_BY 1521 0xA481534441726162L, // bej_Arab_SD 1522 0xB0815A4D4C61746EL, // bem_Latn_ZM 1523 0xD88149444C61746EL, // bew_Latn_ID 1524 0xE481545A4C61746EL, // bez_Latn_TZ 1525 0x8CA1434D4C61746EL, // bfd_Latn_CM 1526 0xC0A1494E54616D6CL, // bfq_Taml_IN 1527 0xCCA1504B41726162L, // bft_Arab_PK 1528 0xE0A1494E44657661L, // bfy_Deva_IN 1529 0x626742474379726CL, // bg_Cyrl_BG 1530 0x88C1494E44657661L, // bgc_Deva_IN 1531 0xB4C1504B41726162L, // bgn_Arab_PK 1532 0xDCC154524772656BL, // bgx_Grek_TR 1533 0x84E1494E44657661L, // bhb_Deva_IN 1534 0xA0E1494E44657661L, // bhi_Deva_IN 1535 0xA8E150484C61746EL, // bhk_Latn_PH 1536 0xB8E1494E44657661L, // bho_Deva_IN 1537 0x626956554C61746EL, // bi_Latn_VU 1538 0xA90150484C61746EL, // bik_Latn_PH 1539 0xB5014E474C61746EL, // bin_Latn_NG 1540 0xA521494E44657661L, // bjj_Deva_IN 1541 0xB52149444C61746EL, // bjn_Latn_ID 1542 0xB141434D4C61746EL, // bkm_Latn_CM 1543 0xD14150484C61746EL, // bku_Latn_PH 1544 0xCD61564E54617674L, // blt_Tavt_VN 1545 0x626D4D4C4C61746EL, // bm_Latn_ML 1546 0xC1814D4C4C61746EL, // bmq_Latn_ML 1547 0x626E424442656E67L, // bn_Beng_BD 1548 0x626F434E54696274L, // bo_Tibt_CN 1549 0xE1E1494E42656E67L, // bpy_Beng_IN 1550 0xA201495241726162L, // bqi_Arab_IR 1551 0xD60143494C61746EL, // bqv_Latn_CI 1552 0x627246524C61746EL, // br_Latn_FR 1553 0x8221494E44657661L, // bra_Deva_IN 1554 0x9E21504B41726162L, // brh_Arab_PK 1555 0xDE21494E44657661L, // brx_Deva_IN 1556 0x627342414C61746EL, // bs_Latn_BA 1557 0xC2414C5242617373L, // bsq_Bass_LR 1558 0xCA41434D4C61746EL, // bss_Latn_CM 1559 0xBA6150484C61746EL, // bto_Latn_PH 1560 0xD661504B44657661L, // btv_Deva_PK 1561 0x828152554379726CL, // bua_Cyrl_RU 1562 0x8A8159544C61746EL, // buc_Latn_YT 1563 0x9A8149444C61746EL, // bug_Latn_ID 1564 0xB281434D4C61746EL, // bum_Latn_CM 1565 0x86A147514C61746EL, // bvb_Latn_GQ 1566 0xB701455245746869L, // byn_Ethi_ER 1567 0xD701434D4C61746EL, // byv_Latn_CM 1568 0x93214D4C4C61746EL, // bze_Latn_ML 1569 0x636145534C61746EL, // ca_Latn_ES 1570 0x9C424E474C61746EL, // cch_Latn_NG 1571 0xBC42494E42656E67L, // ccp_Beng_IN 1572 0xBC42424443616B6DL, // ccp_Cakm_BD 1573 0x636552554379726CL, // ce_Cyrl_RU 1574 0x848250484C61746EL, // ceb_Latn_PH 1575 0x98C255474C61746EL, // cgg_Latn_UG 1576 0x636847554C61746EL, // ch_Latn_GU 1577 0xA8E2464D4C61746EL, // chk_Latn_FM 1578 0xB0E252554379726CL, // chm_Cyrl_RU 1579 0xB8E255534C61746EL, // cho_Latn_US 1580 0xBCE243414C61746EL, // chp_Latn_CA 1581 0xC4E2555343686572L, // chr_Cher_US 1582 0x81224B4841726162L, // cja_Arab_KH 1583 0xB122564E4368616DL, // cjm_Cham_VN 1584 0x8542495141726162L, // ckb_Arab_IQ 1585 0x636F46524C61746EL, // co_Latn_FR 1586 0xBDC24547436F7074L, // cop_Copt_EG 1587 0xC9E250484C61746EL, // cps_Latn_PH 1588 0x6372434143616E73L, // cr_Cans_CA 1589 0xA622434143616E73L, // crj_Cans_CA 1590 0xAA22434143616E73L, // crk_Cans_CA 1591 0xAE22434143616E73L, // crl_Cans_CA 1592 0xB222434143616E73L, // crm_Cans_CA 1593 0xCA2253434C61746EL, // crs_Latn_SC 1594 0x6373435A4C61746EL, // cs_Latn_CZ 1595 0x8642504C4C61746EL, // csb_Latn_PL 1596 0xDA42434143616E73L, // csw_Cans_CA 1597 0x8E624D4D50617563L, // ctd_Pauc_MM 1598 0x637552554379726CL, // cu_Cyrl_RU 1599 0x63754247476C6167L, // cu_Glag_BG 1600 0x637652554379726CL, // cv_Cyrl_RU 1601 0x637947424C61746EL, // cy_Latn_GB 1602 0x6461444B4C61746EL, // da_Latn_DK 1603 0xA80355534C61746EL, // dak_Latn_US 1604 0xC40352554379726CL, // dar_Cyrl_RU 1605 0xD4034B454C61746EL, // dav_Latn_KE 1606 0x8843494E41726162L, // dcc_Arab_IN 1607 0x646544454C61746EL, // de_Latn_DE 1608 0xB48343414C61746EL, // den_Latn_CA 1609 0xC4C343414C61746EL, // dgr_Latn_CA 1610 0x91234E454C61746EL, // dje_Latn_NE 1611 0xA5A343494C61746EL, // dnj_Latn_CI 1612 0xA1C3494E41726162L, // doi_Arab_IN 1613 0x864344454C61746EL, // dsb_Latn_DE 1614 0xB2634D4C4C61746EL, // dtm_Latn_ML 1615 0xBE634D594C61746EL, // dtp_Latn_MY 1616 0xE2634E5044657661L, // dty_Deva_NP 1617 0x8283434D4C61746EL, // dua_Latn_CM 1618 0x64764D5654686161L, // dv_Thaa_MV 1619 0xBB03534E4C61746EL, // dyo_Latn_SN 1620 0xD30342464C61746EL, // dyu_Latn_BF 1621 0x647A425454696274L, // dz_Tibt_BT 1622 0xD0244B454C61746EL, // ebu_Latn_KE 1623 0x656547484C61746EL, // ee_Latn_GH 1624 0xA0A44E474C61746EL, // efi_Latn_NG 1625 0xACC449544C61746EL, // egl_Latn_IT 1626 0xE0C4454745677970L, // egy_Egyp_EG 1627 0xE1444D4D4B616C69L, // eky_Kali_MM 1628 0x656C47524772656BL, // el_Grek_GR 1629 0x656E47424C61746EL, // en_Latn_GB 1630 0x656E55534C61746EL, // en_Latn_US 1631 0x656E474253686177L, // en_Shaw_GB 1632 0x657345534C61746EL, // es_Latn_ES 1633 0x65734D584C61746EL, // es_Latn_MX 1634 0x657355534C61746EL, // es_Latn_US 1635 0xD24455534C61746EL, // esu_Latn_US 1636 0x657445454C61746EL, // et_Latn_EE 1637 0xCE6449544974616CL, // ett_Ital_IT 1638 0x657545534C61746EL, // eu_Latn_ES 1639 0xBAC4434D4C61746EL, // ewo_Latn_CM 1640 0xCEE445534C61746EL, // ext_Latn_ES 1641 0x6661495241726162L, // fa_Arab_IR 1642 0xB40547514C61746EL, // fan_Latn_GQ 1643 0x6666474E41646C6DL, // ff_Adlm_GN 1644 0x6666534E4C61746EL, // ff_Latn_SN 1645 0xB0A54D4C4C61746EL, // ffm_Latn_ML 1646 0x666946494C61746EL, // fi_Latn_FI 1647 0x8105534441726162L, // fia_Arab_SD 1648 0xAD0550484C61746EL, // fil_Latn_PH 1649 0xCD0553454C61746EL, // fit_Latn_SE 1650 0x666A464A4C61746EL, // fj_Latn_FJ 1651 0x666F464F4C61746EL, // fo_Latn_FO 1652 0xB5C5424A4C61746EL, // fon_Latn_BJ 1653 0x667246524C61746EL, // fr_Latn_FR 1654 0x8A2555534C61746EL, // frc_Latn_US 1655 0xBE2546524C61746EL, // frp_Latn_FR 1656 0xC62544454C61746EL, // frr_Latn_DE 1657 0xCA2544454C61746EL, // frs_Latn_DE 1658 0x8685434D41726162L, // fub_Arab_CM 1659 0x8E8557464C61746EL, // fud_Latn_WF 1660 0x9685474E4C61746EL, // fuf_Latn_GN 1661 0xC2854E454C61746EL, // fuq_Latn_NE 1662 0xC68549544C61746EL, // fur_Latn_IT 1663 0xD6854E474C61746EL, // fuv_Latn_NG 1664 0xC6A553444C61746EL, // fvr_Latn_SD 1665 0x66794E4C4C61746EL, // fy_Latn_NL 1666 0x676149454C61746EL, // ga_Latn_IE 1667 0x800647484C61746EL, // gaa_Latn_GH 1668 0x98064D444C61746EL, // gag_Latn_MD 1669 0xB406434E48616E73L, // gan_Hans_CN 1670 0xE00649444C61746EL, // gay_Latn_ID 1671 0xB026494E44657661L, // gbm_Deva_IN 1672 0xE426495241726162L, // gbz_Arab_IR 1673 0xC44647464C61746EL, // gcr_Latn_GF 1674 0x676447424C61746EL, // gd_Latn_GB 1675 0xE486455445746869L, // gez_Ethi_ET 1676 0xB4C64E5044657661L, // ggn_Deva_NP 1677 0xAD064B494C61746EL, // gil_Latn_KI 1678 0xA926504B41726162L, // gjk_Arab_PK 1679 0xD126504B41726162L, // gju_Arab_PK 1680 0x676C45534C61746EL, // gl_Latn_ES 1681 0xA966495241726162L, // glk_Arab_IR 1682 0x676E50594C61746EL, // gn_Latn_PY 1683 0xB1C6494E44657661L, // gom_Deva_IN 1684 0xB5C6494E54656C75L, // gon_Telu_IN 1685 0xC5C649444C61746EL, // gor_Latn_ID 1686 0xC9C64E4C4C61746EL, // gos_Latn_NL 1687 0xCDC65541476F7468L, // got_Goth_UA 1688 0x8A26435943707274L, // grc_Cprt_CY 1689 0x8A2647524C696E62L, // grc_Linb_GR 1690 0xCE26494E42656E67L, // grt_Beng_IN 1691 0xDA4643484C61746EL, // gsw_Latn_CH 1692 0x6775494E47756A72L, // gu_Gujr_IN 1693 0x868642524C61746EL, // gub_Latn_BR 1694 0x8A86434F4C61746EL, // guc_Latn_CO 1695 0xC68647484C61746EL, // gur_Latn_GH 1696 0xE6864B454C61746EL, // guz_Latn_KE 1697 0x6776494D4C61746EL, // gv_Latn_IM 1698 0xC6A64E5044657661L, // gvr_Deva_NP 1699 0xA2C643414C61746EL, // gwi_Latn_CA 1700 0x68614E474C61746EL, // ha_Latn_NG 1701 0xA807434E48616E73L, // hak_Hans_CN 1702 0xD80755534C61746EL, // haw_Latn_US 1703 0xE407414641726162L, // haz_Arab_AF 1704 0x6865494C48656272L, // he_Hebr_IL 1705 0x6869494E44657661L, // hi_Deva_IN 1706 0x9507464A4C61746EL, // hif_Latn_FJ 1707 0xAD0750484C61746EL, // hil_Latn_PH 1708 0xD1675452486C7577L, // hlu_Hluw_TR 1709 0x8D87434E506C7264L, // hmd_Plrd_CN 1710 0x8DA7504B41726162L, // hnd_Arab_PK 1711 0x91A7494E44657661L, // hne_Deva_IN 1712 0xA5A74C41486D6E67L, // hnj_Hmng_LA 1713 0xB5A750484C61746EL, // hnn_Latn_PH 1714 0xB9A7504B41726162L, // hno_Arab_PK 1715 0x686F50474C61746EL, // ho_Latn_PG 1716 0x89C7494E44657661L, // hoc_Deva_IN 1717 0xA5C7494E44657661L, // hoj_Deva_IN 1718 0x687248524C61746EL, // hr_Latn_HR 1719 0x864744454C61746EL, // hsb_Latn_DE 1720 0xB647434E48616E73L, // hsn_Hans_CN 1721 0x687448544C61746EL, // ht_Latn_HT 1722 0x687548554C61746EL, // hu_Latn_HU 1723 0x6879414D41726D6EL, // hy_Armn_AM 1724 0x687A4E414C61746EL, // hz_Latn_NA 1725 0x696146524C61746EL, // ia_Latn_FR 1726 0x80284D594C61746EL, // iba_Latn_MY 1727 0x84284E474C61746EL, // ibb_Latn_NG 1728 0x696449444C61746EL, // id_Latn_ID 1729 0x69674E474C61746EL, // ig_Latn_NG 1730 0x6969434E59696969L, // ii_Yiii_CN 1731 0x696B55534C61746EL, // ik_Latn_US 1732 0xCD4843414C61746EL, // ikt_Latn_CA 1733 0xB96850484C61746EL, // ilo_Latn_PH 1734 0x696E49444C61746EL, // in_Latn_ID 1735 0x9DA852554379726CL, // inh_Cyrl_RU 1736 0x697349534C61746EL, // is_Latn_IS 1737 0x697449544C61746EL, // it_Latn_IT 1738 0x6975434143616E73L, // iu_Cans_CA 1739 0x6977494C48656272L, // iw_Hebr_IL 1740 0x9F2852554C61746EL, // izh_Latn_RU 1741 0x6A614A504A70616EL, // ja_Jpan_JP 1742 0xB0094A4D4C61746EL, // jam_Latn_JM 1743 0xB8C9434D4C61746EL, // jgo_Latn_CM 1744 0x8989545A4C61746EL, // jmc_Latn_TZ 1745 0xAD894E5044657661L, // jml_Deva_NP 1746 0xCE89444B4C61746EL, // jut_Latn_DK 1747 0x6A7649444C61746EL, // jv_Latn_ID 1748 0x6A7749444C61746EL, // jw_Latn_ID 1749 0x6B61474547656F72L, // ka_Geor_GE 1750 0x800A555A4379726CL, // kaa_Cyrl_UZ 1751 0x840A445A4C61746EL, // kab_Latn_DZ 1752 0x880A4D4D4C61746EL, // kac_Latn_MM 1753 0xA40A4E474C61746EL, // kaj_Latn_NG 1754 0xB00A4B454C61746EL, // kam_Latn_KE 1755 0xB80A4D4C4C61746EL, // kao_Latn_ML 1756 0x8C2A52554379726CL, // kbd_Cyrl_RU 1757 0xE02A4E4541726162L, // kby_Arab_NE 1758 0x984A4E474C61746EL, // kcg_Latn_NG 1759 0xA84A5A574C61746EL, // kck_Latn_ZW 1760 0x906A545A4C61746EL, // kde_Latn_TZ 1761 0x9C6A544741726162L, // kdh_Arab_TG 1762 0xCC6A544854686169L, // kdt_Thai_TH 1763 0x808A43564C61746EL, // kea_Latn_CV 1764 0xB48A434D4C61746EL, // ken_Latn_CM 1765 0xB8AA43494C61746EL, // kfo_Latn_CI 1766 0xC4AA494E44657661L, // kfr_Deva_IN 1767 0xE0AA494E44657661L, // kfy_Deva_IN 1768 0x6B6743444C61746EL, // kg_Latn_CD 1769 0x90CA49444C61746EL, // kge_Latn_ID 1770 0xBCCA42524C61746EL, // kgp_Latn_BR 1771 0x80EA494E4C61746EL, // kha_Latn_IN 1772 0x84EA434E54616C75L, // khb_Talu_CN 1773 0xB4EA494E44657661L, // khn_Deva_IN 1774 0xC0EA4D4C4C61746EL, // khq_Latn_ML 1775 0xCCEA494E4D796D72L, // kht_Mymr_IN 1776 0xD8EA504B41726162L, // khw_Arab_PK 1777 0x6B694B454C61746EL, // ki_Latn_KE 1778 0xD10A54524C61746EL, // kiu_Latn_TR 1779 0x6B6A4E414C61746EL, // kj_Latn_NA 1780 0x992A4C414C616F6FL, // kjg_Laoo_LA 1781 0x6B6B434E41726162L, // kk_Arab_CN 1782 0x6B6B4B5A4379726CL, // kk_Cyrl_KZ 1783 0xA54A434D4C61746EL, // kkj_Latn_CM 1784 0x6B6C474C4C61746EL, // kl_Latn_GL 1785 0xB56A4B454C61746EL, // kln_Latn_KE 1786 0x6B6D4B484B686D72L, // km_Khmr_KH 1787 0x858A414F4C61746EL, // kmb_Latn_AO 1788 0x6B6E494E4B6E6461L, // kn_Knda_IN 1789 0x6B6F4B524B6F7265L, // ko_Kore_KR 1790 0xA1CA52554379726CL, // koi_Cyrl_RU 1791 0xA9CA494E44657661L, // kok_Deva_IN 1792 0xC9CA464D4C61746EL, // kos_Latn_FM 1793 0x91EA4C524C61746EL, // kpe_Latn_LR 1794 0x8A2A52554379726CL, // krc_Cyrl_RU 1795 0xA22A534C4C61746EL, // kri_Latn_SL 1796 0xA62A50484C61746EL, // krj_Latn_PH 1797 0xAE2A52554C61746EL, // krl_Latn_RU 1798 0xD22A494E44657661L, // kru_Deva_IN 1799 0x6B73494E41726162L, // ks_Arab_IN 1800 0x864A545A4C61746EL, // ksb_Latn_TZ 1801 0x964A434D4C61746EL, // ksf_Latn_CM 1802 0x9E4A44454C61746EL, // ksh_Latn_DE 1803 0x6B75495141726162L, // ku_Arab_IQ 1804 0x6B7554524C61746EL, // ku_Latn_TR 1805 0xB28A52554379726CL, // kum_Cyrl_RU 1806 0x6B7652554379726CL, // kv_Cyrl_RU 1807 0xC6AA49444C61746EL, // kvr_Latn_ID 1808 0xDEAA504B41726162L, // kvx_Arab_PK 1809 0x6B7747424C61746EL, // kw_Latn_GB 1810 0xB2EA544854686169L, // kxm_Thai_TH 1811 0xBEEA504B41726162L, // kxp_Arab_PK 1812 0x6B79434E41726162L, // ky_Arab_CN 1813 0x6B794B474379726CL, // ky_Cyrl_KG 1814 0x6B7954524C61746EL, // ky_Latn_TR 1815 0x6C6156414C61746EL, // la_Latn_VA 1816 0x840B47524C696E61L, // lab_Lina_GR 1817 0x8C0B494C48656272L, // lad_Hebr_IL 1818 0x980B545A4C61746EL, // lag_Latn_TZ 1819 0x9C0B504B41726162L, // lah_Arab_PK 1820 0xA40B55474C61746EL, // laj_Latn_UG 1821 0x6C624C554C61746EL, // lb_Latn_LU 1822 0x902B52554379726CL, // lbe_Cyrl_RU 1823 0xD82B49444C61746EL, // lbw_Latn_ID 1824 0xBC4B434E54686169L, // lcp_Thai_CN 1825 0xBC8B494E4C657063L, // lep_Lepc_IN 1826 0xE48B52554379726CL, // lez_Cyrl_RU 1827 0x6C6755474C61746EL, // lg_Latn_UG 1828 0x6C694E4C4C61746EL, // li_Latn_NL 1829 0x950B4E5044657661L, // lif_Deva_NP 1830 0x950B494E4C696D62L, // lif_Limb_IN 1831 0xA50B49544C61746EL, // lij_Latn_IT 1832 0xC90B434E4C697375L, // lis_Lisu_CN 1833 0xBD2B49444C61746EL, // ljp_Latn_ID 1834 0xA14B495241726162L, // lki_Arab_IR 1835 0xCD4B55534C61746EL, // lkt_Latn_US 1836 0xB58B494E54656C75L, // lmn_Telu_IN 1837 0xB98B49544C61746EL, // lmo_Latn_IT 1838 0x6C6E43444C61746EL, // ln_Latn_CD 1839 0x6C6F4C414C616F6FL, // lo_Laoo_LA 1840 0xADCB43444C61746EL, // lol_Latn_CD 1841 0xE5CB5A4D4C61746EL, // loz_Latn_ZM 1842 0x8A2B495241726162L, // lrc_Arab_IR 1843 0x6C744C544C61746EL, // lt_Latn_LT 1844 0x9A6B4C564C61746EL, // ltg_Latn_LV 1845 0x6C7543444C61746EL, // lu_Latn_CD 1846 0x828B43444C61746EL, // lua_Latn_CD 1847 0xBA8B4B454C61746EL, // luo_Latn_KE 1848 0xE28B4B454C61746EL, // luy_Latn_KE 1849 0xE68B495241726162L, // luz_Arab_IR 1850 0x6C764C564C61746EL, // lv_Latn_LV 1851 0xAECB544854686169L, // lwl_Thai_TH 1852 0x9F2B434E48616E73L, // lzh_Hans_CN 1853 0xE72B54524C61746EL, // lzz_Latn_TR 1854 0x8C0C49444C61746EL, // mad_Latn_ID 1855 0x940C434D4C61746EL, // maf_Latn_CM 1856 0x980C494E44657661L, // mag_Deva_IN 1857 0xA00C494E44657661L, // mai_Deva_IN 1858 0xA80C49444C61746EL, // mak_Latn_ID 1859 0xB40C474D4C61746EL, // man_Latn_GM 1860 0xB40C474E4E6B6F6FL, // man_Nkoo_GN 1861 0xC80C4B454C61746EL, // mas_Latn_KE 1862 0xE40C4D584C61746EL, // maz_Latn_MX 1863 0x946C52554379726CL, // mdf_Cyrl_RU 1864 0x9C6C50484C61746EL, // mdh_Latn_PH 1865 0xC46C49444C61746EL, // mdr_Latn_ID 1866 0xB48C534C4C61746EL, // men_Latn_SL 1867 0xC48C4B454C61746EL, // mer_Latn_KE 1868 0x80AC544841726162L, // mfa_Arab_TH 1869 0x90AC4D554C61746EL, // mfe_Latn_MU 1870 0x6D674D474C61746EL, // mg_Latn_MG 1871 0x9CCC4D5A4C61746EL, // mgh_Latn_MZ 1872 0xB8CC434D4C61746EL, // mgo_Latn_CM 1873 0xBCCC4E5044657661L, // mgp_Deva_NP 1874 0xE0CC545A4C61746EL, // mgy_Latn_TZ 1875 0x6D684D484C61746EL, // mh_Latn_MH 1876 0x6D694E5A4C61746EL, // mi_Latn_NZ 1877 0xB50C49444C61746EL, // min_Latn_ID 1878 0xC90C495148617472L, // mis_Hatr_IQ 1879 0x6D6B4D4B4379726CL, // mk_Cyrl_MK 1880 0x6D6C494E4D6C796DL, // ml_Mlym_IN 1881 0xC96C53444C61746EL, // mls_Latn_SD 1882 0x6D6E4D4E4379726CL, // mn_Cyrl_MN 1883 0x6D6E434E4D6F6E67L, // mn_Mong_CN 1884 0xA1AC494E42656E67L, // mni_Beng_IN 1885 0xD9AC4D4D4D796D72L, // mnw_Mymr_MM 1886 0x91CC43414C61746EL, // moe_Latn_CA 1887 0x9DCC43414C61746EL, // moh_Latn_CA 1888 0xC9CC42464C61746EL, // mos_Latn_BF 1889 0x6D72494E44657661L, // mr_Deva_IN 1890 0x8E2C4E5044657661L, // mrd_Deva_NP 1891 0xA62C52554379726CL, // mrj_Cyrl_RU 1892 0xBA2C42444D726F6FL, // mro_Mroo_BD 1893 0x6D734D594C61746EL, // ms_Latn_MY 1894 0x6D744D544C61746EL, // mt_Latn_MT 1895 0xC66C494E44657661L, // mtr_Deva_IN 1896 0x828C434D4C61746EL, // mua_Latn_CM 1897 0xCA8C55534C61746EL, // mus_Latn_US 1898 0xE2AC504B41726162L, // mvy_Arab_PK 1899 0xAACC4D4C4C61746EL, // mwk_Latn_ML 1900 0xC6CC494E44657661L, // mwr_Deva_IN 1901 0xD6CC49444C61746EL, // mwv_Latn_ID 1902 0x8AEC5A574C61746EL, // mxc_Latn_ZW 1903 0x6D794D4D4D796D72L, // my_Mymr_MM 1904 0xD70C52554379726CL, // myv_Cyrl_RU 1905 0xDF0C55474C61746EL, // myx_Latn_UG 1906 0xE70C49524D616E64L, // myz_Mand_IR 1907 0xB72C495241726162L, // mzn_Arab_IR 1908 0x6E614E524C61746EL, // na_Latn_NR 1909 0xB40D434E48616E73L, // nan_Hans_CN 1910 0xBC0D49544C61746EL, // nap_Latn_IT 1911 0xC00D4E414C61746EL, // naq_Latn_NA 1912 0x6E624E4F4C61746EL, // nb_Latn_NO 1913 0x9C4D4D584C61746EL, // nch_Latn_MX 1914 0x6E645A574C61746EL, // nd_Latn_ZW 1915 0x886D4D5A4C61746EL, // ndc_Latn_MZ 1916 0xC86D44454C61746EL, // nds_Latn_DE 1917 0x6E654E5044657661L, // ne_Deva_NP 1918 0xD88D4E5044657661L, // new_Deva_NP 1919 0x6E674E414C61746EL, // ng_Latn_NA 1920 0xACCD4D5A4C61746EL, // ngl_Latn_MZ 1921 0x90ED4D584C61746EL, // nhe_Latn_MX 1922 0xD8ED4D584C61746EL, // nhw_Latn_MX 1923 0xA50D49444C61746EL, // nij_Latn_ID 1924 0xD10D4E554C61746EL, // niu_Latn_NU 1925 0xB92D494E4C61746EL, // njo_Latn_IN 1926 0x6E6C4E4C4C61746EL, // nl_Latn_NL 1927 0x998D434D4C61746EL, // nmg_Latn_CM 1928 0x6E6E4E4F4C61746EL, // nn_Latn_NO 1929 0x9DAD434D4C61746EL, // nnh_Latn_CM 1930 0x6E6F4E4F4C61746EL, // no_Latn_NO 1931 0x8DCD54484C616E61L, // nod_Lana_TH 1932 0x91CD494E44657661L, // noe_Deva_IN 1933 0xB5CD534552756E72L, // non_Runr_SE 1934 0xBA0D474E4E6B6F6FL, // nqo_Nkoo_GN 1935 0x6E725A414C61746EL, // nr_Latn_ZA 1936 0xAA4D434143616E73L, // nsk_Cans_CA 1937 0xBA4D5A414C61746EL, // nso_Latn_ZA 1938 0xCA8D53534C61746EL, // nus_Latn_SS 1939 0x6E7655534C61746EL, // nv_Latn_US 1940 0xC2ED434E4C61746EL, // nxq_Latn_CN 1941 0x6E794D574C61746EL, // ny_Latn_MW 1942 0xB30D545A4C61746EL, // nym_Latn_TZ 1943 0xB70D55474C61746EL, // nyn_Latn_UG 1944 0xA32D47484C61746EL, // nzi_Latn_GH 1945 0x6F6346524C61746EL, // oc_Latn_FR 1946 0x6F6D45544C61746EL, // om_Latn_ET 1947 0x6F72494E4F727961L, // or_Orya_IN 1948 0x6F7347454379726CL, // os_Cyrl_GE 1949 0x824E55534F736765L, // osa_Osge_US 1950 0xAA6E4D4E4F726B68L, // otk_Orkh_MN 1951 0x7061504B41726162L, // pa_Arab_PK 1952 0x7061494E47757275L, // pa_Guru_IN 1953 0x980F50484C61746EL, // pag_Latn_PH 1954 0xAC0F495250686C69L, // pal_Phli_IR 1955 0xAC0F434E50686C70L, // pal_Phlp_CN 1956 0xB00F50484C61746EL, // pam_Latn_PH 1957 0xBC0F41574C61746EL, // pap_Latn_AW 1958 0xD00F50574C61746EL, // pau_Latn_PW 1959 0x8C4F46524C61746EL, // pcd_Latn_FR 1960 0xB04F4E474C61746EL, // pcm_Latn_NG 1961 0x886F55534C61746EL, // pdc_Latn_US 1962 0xCC6F43414C61746EL, // pdt_Latn_CA 1963 0xB88F49525870656FL, // peo_Xpeo_IR 1964 0xACAF44454C61746EL, // pfl_Latn_DE 1965 0xB4EF4C4250686E78L, // phn_Phnx_LB 1966 0x814F494E42726168L, // pka_Brah_IN 1967 0xB94F4B454C61746EL, // pko_Latn_KE 1968 0x706C504C4C61746EL, // pl_Latn_PL 1969 0xC98F49544C61746EL, // pms_Latn_IT 1970 0xCDAF47524772656BL, // pnt_Grek_GR 1971 0xB5CF464D4C61746EL, // pon_Latn_FM 1972 0x822F504B4B686172L, // pra_Khar_PK 1973 0x8E2F495241726162L, // prd_Arab_IR 1974 0x7073414641726162L, // ps_Arab_AF 1975 0x707442524C61746EL, // pt_Latn_BR 1976 0xD28F47414C61746EL, // puu_Latn_GA 1977 0x717550454C61746EL, // qu_Latn_PE 1978 0x8A9047544C61746EL, // quc_Latn_GT 1979 0x9A9045434C61746EL, // qug_Latn_EC 1980 0xA411494E44657661L, // raj_Deva_IN 1981 0x945152454C61746EL, // rcf_Latn_RE 1982 0xA49149444C61746EL, // rej_Latn_ID 1983 0xB4D149544C61746EL, // rgn_Latn_IT 1984 0x8111494E4C61746EL, // ria_Latn_IN 1985 0x95114D4154666E67L, // rif_Tfng_MA 1986 0xC9314E5044657661L, // rjs_Deva_NP 1987 0xCD51424442656E67L, // rkt_Beng_BD 1988 0x726D43484C61746EL, // rm_Latn_CH 1989 0x959146494C61746EL, // rmf_Latn_FI 1990 0xB99143484C61746EL, // rmo_Latn_CH 1991 0xCD91495241726162L, // rmt_Arab_IR 1992 0xD19153454C61746EL, // rmu_Latn_SE 1993 0x726E42494C61746EL, // rn_Latn_BI 1994 0x99B14D5A4C61746EL, // rng_Latn_MZ 1995 0x726F524F4C61746EL, // ro_Latn_RO 1996 0x85D149444C61746EL, // rob_Latn_ID 1997 0x95D1545A4C61746EL, // rof_Latn_TZ 1998 0xB271464A4C61746EL, // rtm_Latn_FJ 1999 0x727552554379726CL, // ru_Cyrl_RU 2000 0x929155414379726CL, // rue_Cyrl_UA 2001 0x9A9153424C61746EL, // rug_Latn_SB 2002 0x727752574C61746EL, // rw_Latn_RW 2003 0xAAD1545A4C61746EL, // rwk_Latn_TZ 2004 0xD3114A504B616E61L, // ryu_Kana_JP 2005 0x7361494E44657661L, // sa_Deva_IN 2006 0x941247484C61746EL, // saf_Latn_GH 2007 0x9C1252554379726CL, // sah_Cyrl_RU 2008 0xC0124B454C61746EL, // saq_Latn_KE 2009 0xC81249444C61746EL, // sas_Latn_ID 2010 0xCC12494E4C61746EL, // sat_Latn_IN 2011 0xE412494E53617572L, // saz_Saur_IN 2012 0xBC32545A4C61746EL, // sbp_Latn_TZ 2013 0x736349544C61746EL, // sc_Latn_IT 2014 0xA852494E44657661L, // sck_Deva_IN 2015 0xB45249544C61746EL, // scn_Latn_IT 2016 0xB85247424C61746EL, // sco_Latn_GB 2017 0xC85243414C61746EL, // scs_Latn_CA 2018 0x7364504B41726162L, // sd_Arab_PK 2019 0x7364494E44657661L, // sd_Deva_IN 2020 0x7364494E4B686F6AL, // sd_Khoj_IN 2021 0x7364494E53696E64L, // sd_Sind_IN 2022 0x887249544C61746EL, // sdc_Latn_IT 2023 0x9C72495241726162L, // sdh_Arab_IR 2024 0x73654E4F4C61746EL, // se_Latn_NO 2025 0x949243494C61746EL, // sef_Latn_CI 2026 0x9C924D5A4C61746EL, // seh_Latn_MZ 2027 0xA0924D584C61746EL, // sei_Latn_MX 2028 0xC8924D4C4C61746EL, // ses_Latn_ML 2029 0x736743464C61746EL, // sg_Latn_CF 2030 0x80D249454F67616DL, // sga_Ogam_IE 2031 0xC8D24C544C61746EL, // sgs_Latn_LT 2032 0xA0F24D4154666E67L, // shi_Tfng_MA 2033 0xB4F24D4D4D796D72L, // shn_Mymr_MM 2034 0x73694C4B53696E68L, // si_Sinh_LK 2035 0x8D1245544C61746EL, // sid_Latn_ET 2036 0x736B534B4C61746EL, // sk_Latn_SK 2037 0xC552504B41726162L, // skr_Arab_PK 2038 0x736C53494C61746EL, // sl_Latn_SI 2039 0xA172504C4C61746EL, // sli_Latn_PL 2040 0xE17249444C61746EL, // sly_Latn_ID 2041 0x736D57534C61746EL, // sm_Latn_WS 2042 0x819253454C61746EL, // sma_Latn_SE 2043 0xA59253454C61746EL, // smj_Latn_SE 2044 0xB59246494C61746EL, // smn_Latn_FI 2045 0xBD92494C53616D72L, // smp_Samr_IL 2046 0xC99246494C61746EL, // sms_Latn_FI 2047 0x736E5A574C61746EL, // sn_Latn_ZW 2048 0xA9B24D4C4C61746EL, // snk_Latn_ML 2049 0x736F534F4C61746EL, // so_Latn_SO 2050 0xD1D2544854686169L, // sou_Thai_TH 2051 0x7371414C4C61746EL, // sq_Latn_AL 2052 0x737252534379726CL, // sr_Cyrl_RS 2053 0x737252534C61746EL, // sr_Latn_RS 2054 0x8632494E536F7261L, // srb_Sora_IN 2055 0xB63253524C61746EL, // srn_Latn_SR 2056 0xC632534E4C61746EL, // srr_Latn_SN 2057 0xDE32494E44657661L, // srx_Deva_IN 2058 0x73735A414C61746EL, // ss_Latn_ZA 2059 0xE25245524C61746EL, // ssy_Latn_ER 2060 0x73745A414C61746EL, // st_Latn_ZA 2061 0xC27244454C61746EL, // stq_Latn_DE 2062 0x737549444C61746EL, // su_Latn_ID 2063 0xAA92545A4C61746EL, // suk_Latn_TZ 2064 0xCA92474E4C61746EL, // sus_Latn_GN 2065 0x737653454C61746EL, // sv_Latn_SE 2066 0x7377545A4C61746EL, // sw_Latn_TZ 2067 0x86D2595441726162L, // swb_Arab_YT 2068 0x8AD243444C61746EL, // swc_Latn_CD 2069 0x9AD244454C61746EL, // swg_Latn_DE 2070 0xD6D2494E44657661L, // swv_Deva_IN 2071 0xB6F249444C61746EL, // sxn_Latn_ID 2072 0xAF12424442656E67L, // syl_Beng_BD 2073 0xC712495153797263L, // syr_Syrc_IQ 2074 0xAF32504C4C61746EL, // szl_Latn_PL 2075 0x7461494E54616D6CL, // ta_Taml_IN 2076 0xA4134E5044657661L, // taj_Deva_NP 2077 0xD83350484C61746EL, // tbw_Latn_PH 2078 0xE053494E4B6E6461L, // tcy_Knda_IN 2079 0x8C73434E54616C65L, // tdd_Tale_CN 2080 0x98734E5044657661L, // tdg_Deva_NP 2081 0x9C734E5044657661L, // tdh_Deva_NP 2082 0x7465494E54656C75L, // te_Telu_IN 2083 0xB093534C4C61746EL, // tem_Latn_SL 2084 0xB89355474C61746EL, // teo_Latn_UG 2085 0xCC93544C4C61746EL, // tet_Latn_TL 2086 0x7467504B41726162L, // tg_Arab_PK 2087 0x7467544A4379726CL, // tg_Cyrl_TJ 2088 0x7468544854686169L, // th_Thai_TH 2089 0xACF34E5044657661L, // thl_Deva_NP 2090 0xC0F34E5044657661L, // thq_Deva_NP 2091 0xC4F34E5044657661L, // thr_Deva_NP 2092 0x7469455445746869L, // ti_Ethi_ET 2093 0x9913455245746869L, // tig_Ethi_ER 2094 0xD5134E474C61746EL, // tiv_Latn_NG 2095 0x746B544D4C61746EL, // tk_Latn_TM 2096 0xAD53544B4C61746EL, // tkl_Latn_TK 2097 0xC553415A4C61746EL, // tkr_Latn_AZ 2098 0xCD534E5044657661L, // tkt_Deva_NP 2099 0x746C50484C61746EL, // tl_Latn_PH 2100 0xE173415A4C61746EL, // tly_Latn_AZ 2101 0x9D934E454C61746EL, // tmh_Latn_NE 2102 0x746E5A414C61746EL, // tn_Latn_ZA 2103 0x746F544F4C61746EL, // to_Latn_TO 2104 0x99D34D574C61746EL, // tog_Latn_MW 2105 0xA1F350474C61746EL, // tpi_Latn_PG 2106 0x747254524C61746EL, // tr_Latn_TR 2107 0xD23354524C61746EL, // tru_Latn_TR 2108 0xD63354574C61746EL, // trv_Latn_TW 2109 0x74735A414C61746EL, // ts_Latn_ZA 2110 0x8E5347524772656BL, // tsd_Grek_GR 2111 0x96534E5044657661L, // tsf_Deva_NP 2112 0x9A5350484C61746EL, // tsg_Latn_PH 2113 0xA653425454696274L, // tsj_Tibt_BT 2114 0x747452554379726CL, // tt_Cyrl_RU 2115 0xA67355474C61746EL, // ttj_Latn_UG 2116 0xCA73544854686169L, // tts_Thai_TH 2117 0xCE73415A4C61746EL, // ttt_Latn_AZ 2118 0xB2934D574C61746EL, // tum_Latn_MW 2119 0xAEB354564C61746EL, // tvl_Latn_TV 2120 0xC2D34E454C61746EL, // twq_Latn_NE 2121 0x9AF3434E54616E67L, // txg_Tang_CN 2122 0x747950464C61746EL, // ty_Latn_PF 2123 0xD71352554379726CL, // tyv_Cyrl_RU 2124 0xB3334D414C61746EL, // tzm_Latn_MA 2125 0xB07452554379726CL, // udm_Cyrl_RU 2126 0x7567434E41726162L, // ug_Arab_CN 2127 0x75674B5A4379726CL, // ug_Cyrl_KZ 2128 0x80D4535955676172L, // uga_Ugar_SY 2129 0x756B55414379726CL, // uk_Cyrl_UA 2130 0xA174464D4C61746EL, // uli_Latn_FM 2131 0x8594414F4C61746EL, // umb_Latn_AO 2132 0xC5B4494E42656E67L, // unr_Beng_IN 2133 0xC5B44E5044657661L, // unr_Deva_NP 2134 0xDDB4494E42656E67L, // unx_Beng_IN 2135 0x7572504B41726162L, // ur_Arab_PK 2136 0x757A414641726162L, // uz_Arab_AF 2137 0x757A555A4C61746EL, // uz_Latn_UZ 2138 0xA0154C5256616969L, // vai_Vaii_LR 2139 0x76655A414C61746EL, // ve_Latn_ZA 2140 0x889549544C61746EL, // vec_Latn_IT 2141 0xBC9552554C61746EL, // vep_Latn_RU 2142 0x7669564E4C61746EL, // vi_Latn_VN 2143 0x891553584C61746EL, // vic_Latn_SX 2144 0xC97542454C61746EL, // vls_Latn_BE 2145 0x959544454C61746EL, // vmf_Latn_DE 2146 0xD9954D5A4C61746EL, // vmw_Latn_MZ 2147 0xCDD552554C61746EL, // vot_Latn_RU 2148 0xBA3545454C61746EL, // vro_Latn_EE 2149 0xB695545A4C61746EL, // vun_Latn_TZ 2150 0x776142454C61746EL, // wa_Latn_BE 2151 0x901643484C61746EL, // wae_Latn_CH 2152 0xAC16455445746869L, // wal_Ethi_ET 2153 0xC41650484C61746EL, // war_Latn_PH 2154 0xBC3641554C61746EL, // wbp_Latn_AU 2155 0xC036494E54656C75L, // wbq_Telu_IN 2156 0xC436494E44657661L, // wbr_Deva_IN 2157 0xC97657464C61746EL, // wls_Latn_WF 2158 0xA1B64B4D41726162L, // wni_Arab_KM 2159 0x776F534E4C61746EL, // wo_Latn_SN 2160 0xB276494E44657661L, // wtm_Deva_IN 2161 0xD296434E48616E73L, // wuu_Hans_CN 2162 0xD41742524C61746EL, // xav_Latn_BR 2163 0xC457545243617269L, // xcr_Cari_TR 2164 0x78685A414C61746EL, // xh_Latn_ZA 2165 0x897754524C796369L, // xlc_Lyci_TR 2166 0x8D7754524C796469L, // xld_Lydi_TR 2167 0x9597474547656F72L, // xmf_Geor_GE 2168 0xB597434E4D616E69L, // xmn_Mani_CN 2169 0xC59753444D657263L, // xmr_Merc_SD 2170 0x81B753414E617262L, // xna_Narb_SA 2171 0xC5B7494E44657661L, // xnr_Deva_IN 2172 0x99D755474C61746EL, // xog_Latn_UG 2173 0xC5F7495250727469L, // xpr_Prti_IR 2174 0x8257594553617262L, // xsa_Sarb_YE 2175 0xC6574E5044657661L, // xsr_Deva_NP 2176 0xB8184D5A4C61746EL, // yao_Latn_MZ 2177 0xBC18464D4C61746EL, // yap_Latn_FM 2178 0xD418434D4C61746EL, // yav_Latn_CM 2179 0x8438434D4C61746EL, // ybb_Latn_CM 2180 0x796F4E474C61746EL, // yo_Latn_NG 2181 0xAE3842524C61746EL, // yrl_Latn_BR 2182 0x82984D584C61746EL, // yua_Latn_MX 2183 0x9298434E48616E73L, // yue_Hans_CN 2184 0x9298484B48616E74L, // yue_Hant_HK 2185 0x7A61434E4C61746EL, // za_Latn_CN 2186 0x981953444C61746EL, // zag_Latn_SD 2187 0xA4794B4D41726162L, // zdj_Arab_KM 2188 0x80994E4C4C61746EL, // zea_Latn_NL 2189 0x9CD94D4154666E67L, // zgh_Tfng_MA 2190 0x7A685457426F706FL, // zh_Bopo_TW 2191 0x7A68545748616E62L, // zh_Hanb_TW 2192 0x7A68434E48616E73L, // zh_Hans_CN 2193 0x7A68545748616E74L, // zh_Hant_TW 2194 0xB17954474C61746EL, // zlm_Latn_TG 2195 0xA1994D594C61746EL, // zmi_Latn_MY 2196 0x7A755A414C61746EL, // zu_Latn_ZA 2197 0x833954524C61746EL, // zza_Latn_TR 2198 }; 2199 2200 HashSet<Long> buildSet = new HashSet<>(); 2201 for (long entry : entries) { 2202 buildSet.add(entry); 2203 } 2204 REPRESENTATIVE_LOCALES = Collections.unmodifiableSet(buildSet); 2205 } 2206 2207 static final Map<Integer, Integer> ARAB_PARENTS; 2208 2209 static { 2210 int[][] entries = { 2211 {0x6172445A, 0x61729420}, // ar-DZ -> ar-015 2212 {0x61724548, 0x61729420}, // ar-EH -> ar-015 2213 {0x61724C59, 0x61729420}, // ar-LY -> ar-015 2214 {0x61724D41, 0x61729420}, // ar-MA -> ar-015 2215 {0x6172544E, 0x61729420}, // ar-TN -> ar-015 2216 }; 2217 2218 Map<Integer, Integer> buildMap = new HashMap<>(); 2219 for (int[] entry : entries) { buildMap.put(entry[0], entry[1])2220 buildMap.put(entry[0], entry[1]); 2221 } 2222 ARAB_PARENTS = Collections.unmodifiableMap(buildMap); 2223 } 2224 2225 static final Map<Integer, Integer> HANT_PARENTS; 2226 2227 static { 2228 int[][] entries = { 2229 {0x7A684D4F, 0x7A68484B}, // zh-Hant-MO -> zh-Hant-HK 2230 }; 2231 2232 Map<Integer, Integer> buildMap = new HashMap<>(); 2233 for (int[] entry : entries) { buildMap.put(entry[0], entry[1])2234 buildMap.put(entry[0], entry[1]); 2235 } 2236 HANT_PARENTS = Collections.unmodifiableMap(buildMap); 2237 } 2238 2239 static final Map<Integer, Integer> LATN_PARENTS; 2240 2241 static { 2242 int[][] entries = { 2243 {0x656E80A1, 0x656E8400}, // en-150 -> en-001 2244 {0x656E4147, 0x656E8400}, // en-AG -> en-001 2245 {0x656E4149, 0x656E8400}, // en-AI -> en-001 2246 {0x656E4154, 0x656E80A1}, // en-AT -> en-150 2247 {0x656E4155, 0x656E8400}, // en-AU -> en-001 2248 {0x656E4242, 0x656E8400}, // en-BB -> en-001 2249 {0x656E4245, 0x656E8400}, // en-BE -> en-001 2250 {0x656E424D, 0x656E8400}, // en-BM -> en-001 2251 {0x656E4253, 0x656E8400}, // en-BS -> en-001 2252 {0x656E4257, 0x656E8400}, // en-BW -> en-001 2253 {0x656E425A, 0x656E8400}, // en-BZ -> en-001 2254 {0x656E4341, 0x656E8400}, // en-CA -> en-001 2255 {0x656E4343, 0x656E8400}, // en-CC -> en-001 2256 {0x656E4348, 0x656E80A1}, // en-CH -> en-150 2257 {0x656E434B, 0x656E8400}, // en-CK -> en-001 2258 {0x656E434D, 0x656E8400}, // en-CM -> en-001 2259 {0x656E4358, 0x656E8400}, // en-CX -> en-001 2260 {0x656E4359, 0x656E8400}, // en-CY -> en-001 2261 {0x656E4445, 0x656E80A1}, // en-DE -> en-150 2262 {0x656E4447, 0x656E8400}, // en-DG -> en-001 2263 {0x656E444B, 0x656E80A1}, // en-DK -> en-150 2264 {0x656E444D, 0x656E8400}, // en-DM -> en-001 2265 {0x656E4552, 0x656E8400}, // en-ER -> en-001 2266 {0x656E4649, 0x656E80A1}, // en-FI -> en-150 2267 {0x656E464A, 0x656E8400}, // en-FJ -> en-001 2268 {0x656E464B, 0x656E8400}, // en-FK -> en-001 2269 {0x656E464D, 0x656E8400}, // en-FM -> en-001 2270 {0x656E4742, 0x656E8400}, // en-GB -> en-001 2271 {0x656E4744, 0x656E8400}, // en-GD -> en-001 2272 {0x656E4747, 0x656E8400}, // en-GG -> en-001 2273 {0x656E4748, 0x656E8400}, // en-GH -> en-001 2274 {0x656E4749, 0x656E8400}, // en-GI -> en-001 2275 {0x656E474D, 0x656E8400}, // en-GM -> en-001 2276 {0x656E4759, 0x656E8400}, // en-GY -> en-001 2277 {0x656E484B, 0x656E8400}, // en-HK -> en-001 2278 {0x656E4945, 0x656E8400}, // en-IE -> en-001 2279 {0x656E494C, 0x656E8400}, // en-IL -> en-001 2280 {0x656E494D, 0x656E8400}, // en-IM -> en-001 2281 {0x656E494E, 0x656E8400}, // en-IN -> en-001 2282 {0x656E494F, 0x656E8400}, // en-IO -> en-001 2283 {0x656E4A45, 0x656E8400}, // en-JE -> en-001 2284 {0x656E4A4D, 0x656E8400}, // en-JM -> en-001 2285 {0x656E4B45, 0x656E8400}, // en-KE -> en-001 2286 {0x656E4B49, 0x656E8400}, // en-KI -> en-001 2287 {0x656E4B4E, 0x656E8400}, // en-KN -> en-001 2288 {0x656E4B59, 0x656E8400}, // en-KY -> en-001 2289 {0x656E4C43, 0x656E8400}, // en-LC -> en-001 2290 {0x656E4C52, 0x656E8400}, // en-LR -> en-001 2291 {0x656E4C53, 0x656E8400}, // en-LS -> en-001 2292 {0x656E4D47, 0x656E8400}, // en-MG -> en-001 2293 {0x656E4D4F, 0x656E8400}, // en-MO -> en-001 2294 {0x656E4D53, 0x656E8400}, // en-MS -> en-001 2295 {0x656E4D54, 0x656E8400}, // en-MT -> en-001 2296 {0x656E4D55, 0x656E8400}, // en-MU -> en-001 2297 {0x656E4D57, 0x656E8400}, // en-MW -> en-001 2298 {0x656E4D59, 0x656E8400}, // en-MY -> en-001 2299 {0x656E4E41, 0x656E8400}, // en-NA -> en-001 2300 {0x656E4E46, 0x656E8400}, // en-NF -> en-001 2301 {0x656E4E47, 0x656E8400}, // en-NG -> en-001 2302 {0x656E4E4C, 0x656E80A1}, // en-NL -> en-150 2303 {0x656E4E52, 0x656E8400}, // en-NR -> en-001 2304 {0x656E4E55, 0x656E8400}, // en-NU -> en-001 2305 {0x656E4E5A, 0x656E8400}, // en-NZ -> en-001 2306 {0x656E5047, 0x656E8400}, // en-PG -> en-001 2307 {0x656E5048, 0x656E8400}, // en-PH -> en-001 2308 {0x656E504B, 0x656E8400}, // en-PK -> en-001 2309 {0x656E504E, 0x656E8400}, // en-PN -> en-001 2310 {0x656E5057, 0x656E8400}, // en-PW -> en-001 2311 {0x656E5257, 0x656E8400}, // en-RW -> en-001 2312 {0x656E5342, 0x656E8400}, // en-SB -> en-001 2313 {0x656E5343, 0x656E8400}, // en-SC -> en-001 2314 {0x656E5344, 0x656E8400}, // en-SD -> en-001 2315 {0x656E5345, 0x656E80A1}, // en-SE -> en-150 2316 {0x656E5347, 0x656E8400}, // en-SG -> en-001 2317 {0x656E5348, 0x656E8400}, // en-SH -> en-001 2318 {0x656E5349, 0x656E80A1}, // en-SI -> en-150 2319 {0x656E534C, 0x656E8400}, // en-SL -> en-001 2320 {0x656E5353, 0x656E8400}, // en-SS -> en-001 2321 {0x656E5358, 0x656E8400}, // en-SX -> en-001 2322 {0x656E535A, 0x656E8400}, // en-SZ -> en-001 2323 {0x656E5443, 0x656E8400}, // en-TC -> en-001 2324 {0x656E544B, 0x656E8400}, // en-TK -> en-001 2325 {0x656E544F, 0x656E8400}, // en-TO -> en-001 2326 {0x656E5454, 0x656E8400}, // en-TT -> en-001 2327 {0x656E5456, 0x656E8400}, // en-TV -> en-001 2328 {0x656E545A, 0x656E8400}, // en-TZ -> en-001 2329 {0x656E5547, 0x656E8400}, // en-UG -> en-001 2330 {0x656E5643, 0x656E8400}, // en-VC -> en-001 2331 {0x656E5647, 0x656E8400}, // en-VG -> en-001 2332 {0x656E5655, 0x656E8400}, // en-VU -> en-001 2333 {0x656E5753, 0x656E8400}, // en-WS -> en-001 2334 {0x656E5A41, 0x656E8400}, // en-ZA -> en-001 2335 {0x656E5A4D, 0x656E8400}, // en-ZM -> en-001 2336 {0x656E5A57, 0x656E8400}, // en-ZW -> en-001 2337 {0x65734152, 0x6573A424}, // es-AR -> es-419 2338 {0x6573424F, 0x6573A424}, // es-BO -> es-419 2339 {0x65734252, 0x6573A424}, // es-BR -> es-419 2340 {0x6573434C, 0x6573A424}, // es-CL -> es-419 2341 {0x6573434F, 0x6573A424}, // es-CO -> es-419 2342 {0x65734352, 0x6573A424}, // es-CR -> es-419 2343 {0x65734355, 0x6573A424}, // es-CU -> es-419 2344 {0x6573444F, 0x6573A424}, // es-DO -> es-419 2345 {0x65734543, 0x6573A424}, // es-EC -> es-419 2346 {0x65734754, 0x6573A424}, // es-GT -> es-419 2347 {0x6573484E, 0x6573A424}, // es-HN -> es-419 2348 {0x65734D58, 0x6573A424}, // es-MX -> es-419 2349 {0x65734E49, 0x6573A424}, // es-NI -> es-419 2350 {0x65735041, 0x6573A424}, // es-PA -> es-419 2351 {0x65735045, 0x6573A424}, // es-PE -> es-419 2352 {0x65735052, 0x6573A424}, // es-PR -> es-419 2353 {0x65735059, 0x6573A424}, // es-PY -> es-419 2354 {0x65735356, 0x6573A424}, // es-SV -> es-419 2355 {0x65735553, 0x6573A424}, // es-US -> es-419 2356 {0x65735559, 0x6573A424}, // es-UY -> es-419 2357 {0x65735645, 0x6573A424}, // es-VE -> es-419 2358 {0x7074414F, 0x70745054}, // pt-AO -> pt-PT 2359 {0x70744348, 0x70745054}, // pt-CH -> pt-PT 2360 {0x70744356, 0x70745054}, // pt-CV -> pt-PT 2361 {0x70744751, 0x70745054}, // pt-GQ -> pt-PT 2362 {0x70744757, 0x70745054}, // pt-GW -> pt-PT 2363 {0x70744C55, 0x70745054}, // pt-LU -> pt-PT 2364 {0x70744D4F, 0x70745054}, // pt-MO -> pt-PT 2365 {0x70744D5A, 0x70745054}, // pt-MZ -> pt-PT 2366 {0x70745354, 0x70745054}, // pt-ST -> pt-PT 2367 {0x7074544C, 0x70745054}, // pt-TL -> pt-PT 2368 }; 2369 Map<Integer, Integer> buildMap = new HashMap<>(); 2370 for (int[] entry : entries) { buildMap.put(entry[0], entry[1])2371 buildMap.put(entry[0], entry[1]); 2372 } 2373 LATN_PARENTS = Collections.unmodifiableMap(buildMap); 2374 } 2375 2376 static final Map<String, Map<Integer, Integer>> SCRIPT_PARENTS; 2377 2378 static { 2379 Map<String, Map<Integer, Integer>> buildMap = new HashMap<>(); 2380 buildMap.put("Arab", ARAB_PARENTS); 2381 buildMap.put("Hant", HANT_PARENTS); 2382 buildMap.put("Latn", LATN_PARENTS); 2383 SCRIPT_PARENTS = Collections.unmodifiableMap(buildMap); 2384 } 2385 2386 static final int MAX_PARENT_DEPTH = 3; 2387 } 2388